@charset "utf-8"; /* CSS Document */
@font-face {
    font-family: PageSans;
    src: url('data:font/woff;base64,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') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: PageSans;
    src: url('data:font/woff;base64,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') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

/* Source image: 2048 × 1376. Measurement grid: 1905 × 1280.
   Desktop target: 1980 px. All measured lengths scale by 1980 / 1905.
   Artwork uses external image filenames. UI labels remain HTML.
   Account, game and external destinations were not supplied: those links are disabled.
   The original font was not supplied; the provided background and hero PNGs are used. */
:root {
    color-scheme: dark;
    --surface: #070a0c;
    --text: #f9ebd1;
    --muted: #caad8d;
    --accent: #e3b467
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth
}

body {
    margin: 0;
    background: var(--surface);
    color: var(--text);
    font-family: PageSans, "Noto Sans KR", "Malgun Gothic", sans-serif
}

a {
    color: inherit;
    text-decoration: none;
    -webkit-tap-highlight-color: transparent
}

a:focus-visible {
    outline: 3px solid var(--accent);
    outline-offset: 5px
}

a[aria-disabled=true] {
    cursor: default
}

img {
    display: block;
    max-width: 100%
}

h1, h2, p, ul {
    margin: 0
}

ul {
    list-style: none;
    padding: 0
}

.page {
    width: 100%;
    max-width: 1980px;
    margin-inline: auto; container-type: inline-size;
    overflow: hidden
}

.site-header {
    height: 87.30711px;
    background: linear-gradient(110deg, #070a0c 0%, #1e1711 67%, #241b15 100%);
    border-bottom: 2.079px solid #49382a;
    position: relative;
    z-index: 2
}

.site-header__inner {
    height: 100%;
    margin-left: 128.898px;
    margin-right: 88.308px;
    display: flex;
    align-items: center
}

.site-brand {
    display: block;
    flex: none;
    width: 135.135px;
    height: 73.7946px
}

.site-brand img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.site-nav {
    height: 100%;
    margin-left: 158.004px
}

.site-nav__list {
    display: flex;
    align-items: stretch;
    gap: 67.5576px;
    height: 100%
}

.site-nav__link {
    height: 100%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22.869px;
    font-weight: 700;
    white-space: nowrap;
    min-width: 49.896px
}

.site-nav__link.is-active {
    color: #e3b467;
    text-shadow: 0 0 13.86px #ef215188
}

.site-nav__link.is-active:after {
    content: "";
    position: absolute;
    bottom: -2.079px;
    left: 50%;
    translate: -50% 0;
    width: 43.659px;
    height: 3.1086px;
    background: #e3b467;
    box-shadow: 0 0 9.9px 3.168px #f5466f88
}

.site-header__actions {
    margin-left: auto;
    display: flex;
    gap: 11.4444px
}

.action-link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    white-space: nowrap;
    transition: filter .18s, box-shadow .18s;
    background: #1b1510;
    border: 1px solid #514135;
    border-radius: 999px
}

.action-link--primary {
    background: linear-gradient(180deg, #e8a844, #b8873f);
    border-color: #d8a85c;
    color: #1a1512;
    box-shadow: 0 3.168px 17.82px #ee2f5b2b
}

.action-link--secondary {
    background: linear-gradient(140deg, #291f18, #392b21);
    color: #f1edf0;
    border-color: #725845
}

.site-header__actions .action-link {
    height: 55.0836px;
    font-size: 21.8196px
}

.site-header__actions .action-link:first-child {
    width: 129.9276px
}

.site-header__actions .action-link:last-child {
    width: 145.5102px
}

.main-content {
    background: transparent;
    position: relative;
    /* 공통 레이아웃 테마 API: 외부 테마 CSS에서 필요에 따라 덮어쓸 수 있습니다. */
    --main-content-max-width: 1660px;
    --main-content-desktop-gutter: 18px;
    --main-content-mobile-gutter: 10px
}

.main-content, .main-content__section, .main-content__inner {
    min-width: 0
}

.hero {
    height: 698.456682px;
    position: relative;
    background-size: 100% 100%;
    background-repeat: no-repeat
}

.hero__title {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap
}

.hero__description {
    position: absolute;
    left: 150.678px;
    top: 337.788px;
    width: 291.06px;
    height: 66.33px;
    padding: 3.168px 7.326px;
    background-size: 100% 100%;
    font-size: 19.7406px;
    line-height: 1.44;
    letter-spacing: -.02em;
    text-shadow: 0 1px 3px #261d16;
    font-weight: 700;
    isolation: isolate
}

.hero__description:before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg, #1f293080, transparent)
}

.hero__actions {
    position: absolute;
    left: 729.63px;
    top: 521.7696px;
    display: flex;
    gap: 24.948px
}

.hero__actions .action-link {
    height: 74.844px;
    font-size: 23.8986px;
    border-width: 2.079px;
    justify-content: space-between;
    padding-inline: 46.728px }

.hero__actions .action-link:first-child {
    width: 266.0724px
}

.hero__actions .action-link:last-child {
    width: 235.9368px;
    padding-inline: 58.41px 51.876px }

.action-link__arrow {
    font-family: Arial, sans-serif;
    font-size: 1.65em;
    font-weight: 400;
    line-height: 1
}

.content-section {
    position: relative;
    isolation: isolate;
    padding-bottom: 27.027px
}

.content-section:before, .content-section:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: -1;
    pointer-events: none;
    background-size: 100% 100%;
    background-repeat: no-repeat
}

.content-section:before {
    content: none
}

.content-section:after {
    content: none
}

.content-section__inner {
    width: 1692.108px;
    margin-left: 147.5892px
}

.card-list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 13.51152px
}

.card {
    height: 192.28374px;
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    border: 2.079px solid #3a2c22;
    border-radius: 23.8986px;
    background: linear-gradient(145deg, #16110d, #110d0a 70%);
    box-shadow: inset 0 0 3.564px #4f5b663b, 0 3.96px 9.9px #0005;
    overflow: hidden;
    transition: border-color .18s, transform .18s
}

/* PC: 모든 카드를 한 줄에 균등 배치 */
#games.card-list {
    display: flex;
    flex-wrap: nowrap;
    gap: 13.51152px;
}

#games.card-list > .card {
    flex: 1 1 0;
    min-width: 0;
}

/* 모바일: 한 줄에 2개씩 */
@media (max-width: 700px) {
    #games.card-list {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
}

.card:first-child, .card:last-child {
    border-color: #453528
}

.card:nth-child(4) {
    border-color: #413226
}

.card__media {
    width: 135.036px;
    height: 96.624px;
    flex: none;
    margin-top: 6.237px;
    object-fit: contain;
    mix-blend-mode: screen;
    mask-image: linear-gradient(180deg, #000 82%, transparent)
}

.card__title {
    font-size: 21.8196px;
    font-weight: 700;
    line-height: 1.4;
    margin-top: 2.772px;
    letter-spacing: -.05em
}

.card__description {
    font-size: 17.4636px;
    line-height: 1.4;
    margin-top: 10.098px;
    color: #d8bca6;
    font-weight: 700;
    letter-spacing: -.04em;
    white-space: nowrap
}

.card__arrow {
    position: absolute;
    right: 29.106px;
    bottom: 42.768px;
    border-right: 2.178px solid #be9f87;
    border-top: 2.178px solid #be9f87;
    width: 10.692px;
    height: 10.692px;
    transform: rotate(45deg)
}

.promotion-list {
    display: grid;
    grid-template-columns: 535fr 539fr 516fr;
    gap: 20.79px;
    margin-top: 43.659px
}

.promotion {
    height: 201.6432px;
    border-radius: 23.8986px;
    border: 2.079px solid #463529;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: #140f0c;
    box-shadow: inset 0 0 3.96px #99899d55
}

.promotion--membership {
    border-color: #796034;
    background: linear-gradient(125deg, #120e0a, #100905);
    box-shadow: inset 0 -3.564px 17.82px #930c2b2b
}

.promotion--contact {
    border-color: #584333;
    background: linear-gradient(135deg, #1e1711, #19130e 70%, #3f3729);
    box-shadow: inset 0 -27.72px 39.6px #3a4c5a38
}

.promotion__media {
    position: absolute;
    z-index: -1;
    right: 0;
    top: 0;
    width: 49%;
    height: 100%;
    object-fit: fill;
    mask-image: linear-gradient(90deg, transparent, #000 10%)
}

.promotion--event .promotion__media {
    width: 50%
}

.promotion--contact .promotion__media {
    left: 0;
    right: auto;
    width: 35%;
    object-fit: fill;
    mask-image: linear-gradient(90deg, #000 65%, transparent)
}

.promotion__content {
    padding-top: 32.2146px;
    padding-left: 44.6886px
}

.promotion--membership .promotion__content {
    padding-left: 83.1402px
}

.promotion--contact .promotion__content {
    padding-left: 199.5642px
}

.promotion__heading {
    font-size: 23.8986px;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: -.055em;
    color: #d8a85c;
    white-space: nowrap
}

.promotion__icon {
    position: absolute;
    left: 32.2146px;
    top: 27.027px;
    width: 44.6886px;
    height: 48.8466px;
    object-fit: contain;
    mix-blend-mode: screen
}

.promotion__description {
    margin-top: 2.079px;
    font-size: 17.6616px;
    line-height: 1.4;
    letter-spacing: -.035em;
    font-weight: 700;
    color: #d1b49e
}

.promotion--contact .promotion__description {
    color: #dbab86
}

.promotion__action {
    height: 40.5306px;
    padding-inline: 16.632px; font-size: 14.553px;
    gap: 13.464px;
    margin-top: 14.553px;
    border-color: #3b3841;
    background: linear-gradient(120deg, #15100c, #231b14);
    color: #d8a85c;
    box-shadow: inset 0 0 3.96px #ddd2
}

.promotion--membership .promotion__action {
    border-color: #796034;
    background: linear-gradient(120deg, #251c15, #18100b)
}

.promotion--contact .promotion__action {
    color: #e4c4ac;
    border-color: #36506e;
    background: linear-gradient(110deg, #443427, #2c2119)
}

.site-footer {
    height: 81.0711px;
    background: #120e0a
}

.site-footer__inner {
    width: 1692.108px;
    margin-left: 147.5892px;
    display: flex;
    align-items: center;
    height: 100%;
    border-top: 2.079px solid #2e231b
}

.site-footer__identity {
    display: flex;
    align-items: center;
    gap: 10.494px
}

.site-footer__brand {
    width: 100.8216px;
    height: 55.0836px
}

.site-footer__tagline {
    font-size: 18.711px;
    letter-spacing: .05em;
    color: #bd9f88;
    font-weight: 700;
    white-space: nowrap
}

.site-footer__nav {
    display: flex;
    align-items: center;
    margin-inline: auto; gap: 30.096px;
    font-size: 13.464px;
    font-weight: 700;
    color: #a68973
}

.site-footer__nav li + li {
    border-left: 1px solid #43352a;
    padding-left: 30.096px
}

.site-footer__social {
    display: flex;
    gap: 27.027px;
    align-items: center
}

.site-footer__social img {
    width: 36.3726px;
    height: 34.2936px;
    object-fit: contain
}

.site-footer__social a {
    display: block
}

.card, .promotion {
    scroll-margin-top: 20px
}

@media(hover: hover) {
    a:not([aria-disabled=true]).action-link:hover {
        filter: brightness(1.12)
    }

    .site-nav__link:hover {
        color: #e3b467
    }

    .card:not([aria-disabled=true]):hover {
        border-color: #7e6842;
        transform: translateY(-3px)
    }
}

@media(min-width: 1981px) {
    body {
        background: #110d0a
    }
}

@media(max-width: 1000px) and (min-width:701px) {
    .site-nav__link {
        font-size: 14px
    }

    .site-header {
        min-height: 60px
    }

    .site-header__actions .action-link {
        height: 34px;
        font-size: 13px;
        min-width: 76px
    }

    .site-brand {
        width: 90px;
        height: 50px
    }

    .site-nav {
        margin-left: 118.8px
    }

    .site-nav__list {
        gap: 59.4px
    }

    .card-list {
        grid-template-columns: repeat(3, 1fr);
        gap: 14px
    }

    .card {
        height: 160px
    }

    .card__media {
        width: 106px;
        height: 88px;
        margin-top: 5px
    }

    .card__title {
        font-size: 18px
    }

    .card__description {
        font-size: 14px;
        margin-top: 7px
    }

    .card__arrow {
        width: 8px;
        height: 8px;
        right: 20px;
        bottom: 42px
    }

    .promotion-list {
        grid-template-columns: 1fr;
        gap: 18px
    }

    .promotion {
        height: 185px
    }

    .promotion__media {
        width: 46%;
        object-fit: contain;
        object-position: right
    }

    .promotion__content {
        padding: 26px 35px
    }

    .promotion--membership .promotion__content {
        padding-left: 72px
    }

    .promotion--contact .promotion__content {
        padding-left: 43%
    }

    .promotion__heading {
        font-size: 23px
    }

    .promotion__description {
        font-size: 16px
    }

    .promotion__action {
        font-size: 14px;
        height: 35px;
        margin-top: 12px;
        padding: 0 16px;
        gap: 15px
    }

    .promotion__icon {
        width: 40px;
        height: 44px;
        top: 28px;
        left: 22px
    }

    .promotion--contact .promotion__media {
        width: 38%;
        object-position: left
    }

    .site-footer {
        height: auto;
        padding-block: 14px }

    .site-footer__inner {
        min-height: 74px;
        flex-wrap: wrap;
        gap: 14px;
        padding-top: 12px
    }

    .site-footer__brand {
        width: 82px;
        height: 45px
    }

    .site-footer__tagline {
        font-size: 14px
    }

    .site-footer__nav {
        order: 3;
        width: 100%;
        justify-content: center;
        font-size: 12px
    }

    .site-footer__social {
        margin-left: auto
    }

    .site-footer__social img {
        width: 26px;
        height: 26px
    }
}

@media(max-width: 700px) {
    .site-header {
        height: 112px
    }

    .site-header__inner {
        margin: 0 18px;
        flex-wrap: wrap;
        justify-content: space-between;
        align-content: space-between
    }

    .site-brand {
        width: 90px;
        height: 54px;
        margin-top: 2px
    }

    .site-header__actions {
        gap: 7px;
        margin: 0
    }

    .site-header__actions .action-link {
        height: 34px;
        font-size: 13px
    }

    .site-header__actions .action-link:first-child {
        width: 70px
    }

    .site-header__actions .action-link:last-child {
        width: 78px
    }

    .site-nav {
        width: 100%;
        height: 48px;
        margin: 0;
        order: 3
    }

    .site-nav__list {
        gap: 0;
        justify-content: space-between
    }

    .site-nav__link {
        font-size: 15px;
        min-width: 44px;
        padding-inline: 9px }

    .site-nav__link.is-active:after {
        width: 30px;
        height: 2px;
        bottom: 0
    }

    .hero {
        height: auto;
        padding-top: 515.52666px;
        padding-bottom: 26px;
        background-size: 100% auto;
        background-position: top center;
        background-color: transparent
    }

    .hero__description {
        position: static;
        width: auto;
        height: auto;
        padding: 12px 18px 0;
        background: none;
        text-align: center;
        font-size: 15px;
        line-height: 1.6;
        letter-spacing: -.025em;
        font-weight: 400
    }

    .hero__description:before {
        display: none
    }

    .hero__description br {
        display: none
    }

    .hero__actions {
        position: static;
        justify-content: center;
        gap: 12px;
        margin-top: 18px
    }

    .hero__actions .action-link {
        height: 46px;
        font-size: 15px;
        padding: 0 20px !important;
        border-width: 1px;
        width: calc(50% - 24px) !important;
        max-width: 215px
    }

    .hero__actions .action-link:last-child {
        max-width: 190px
    }

    .content-section {
        padding: 0 16px 22px;
        background: transparent
    }

    .content-section:before, .content-section:after {
        display: none
    }

    .content-section__inner {
        width: 100%;
        margin: 0
    }

    .card-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px
    }

    .card {
        height: 170px;
        border-width: 1px;
        border-radius: 17px
    }

    .card__media {
        width: 112px;
        height: 92px;
        margin-top: 5px
    }

    .card__title {
        font-size: 18px;
        line-height: 1.4;
        margin-top: 0;
        letter-spacing: -.04em
    }

    .card__description {
        font-size: 12px;
        line-height: 1.4;
        margin-top: 7px;
        white-space: normal;
        text-align: center;
        padding-inline: 5px; letter-spacing: -.04em
    }

    .card__arrow {
        width: 7px;
        height: 7px;
        right: 14px;
        bottom: 46px;
        border-width: 1px
    }

    .promotion-list {
        grid-template-columns: 1fr;
        gap: 15px;
        margin-top: 25px
    }

    .promotion {
        height: 170px;
        border-radius: 17px;
        border-width: 1px
    }

    .promotion__media {
        width: 49%;
        object-fit: cover;
        object-position: right
    }

    .promotion--event .promotion__media {
        width: 49%
    }

    .promotion__content {
        padding: 25px 0 0 22px
    }

    .promotion--membership .promotion__content {
        padding-left: 48px
    }

    .promotion--contact .promotion__content {
        padding-left: 50%
    }

    .promotion__heading {
        font-size: 18px;
        line-height: 1.5;
        letter-spacing: -.045em
    }

    .promotion__description {
        font-size: 13px;
        line-height: 1.5;
        margin-top: 5px;
        letter-spacing: -.055em
    }

    .promotion__action {
        height: 32px;
        font-size: 12px;
        gap: 10px;
        padding: 0 12px;
        margin-top: 12px
    }

    .promotion__icon {
        width: 29px;
        height: 33px;
        left: 14px;
        top: 24px
    }

    .promotion--contact .promotion__media {
        width: 38%;
        object-fit: cover;
        object-position: left
    }

    .site-footer {
        height: auto;
        padding: 0 16px 20px
    }

    .site-footer__inner {
        width: 100%;
        margin: 0;
        min-height: 120px;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 5px;
        border-top: 1px solid #372a20;
        padding-top: 12px
    }

    .site-footer__identity {
        gap: 7px
    }

    .site-footer__brand {
        width: 75px;
        height: 42px
    }

    .site-footer__tagline {
        font-size: 12px;
        letter-spacing: .015em
    }

    .site-footer__social {
        gap: 12px
    }

    .site-footer__social img {
        width: 24px;
        height: 24px
    }

    .site-footer__nav {
        width: 100%;
        margin: 0;
        order: 3;
        gap: 11px;
        justify-content: center;
        flex-wrap: wrap;
        font-size: 11px;
        line-height: 1.6
    }

    .site-footer__nav li + li {
        padding-left: 11px
    }

    .card, .promotion {
        scroll-margin-top: 16px
    }
}

@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto
    }

    *, *:before, *:after {
        transition: none !important;
        animation: none !important
    }
}

/* Motion enhancement: final positions and original layout stay unchanged. */
@media (prefers-reduced-motion: no-preference) {
    .action-link {
        position: relative;
        overflow: hidden;
        transition: filter 220ms ease, box-shadow 220ms ease, border-color 220ms ease
    }

    .action-link__arrow {
        transition: transform 220ms ease
    }

    .site-nav__link {
        transition: color 220ms ease, text-shadow 220ms ease
    }

    .site-nav__link.is-active::after {
        animation: nav-indicator-in 350ms ease-out
    }

    .card {
        transition: border-color 240ms ease, box-shadow 240ms ease, transform 240ms ease
    }

    .card__media {
        transition: transform 320ms cubic-bezier(.2, .7, .2, 1), filter 320ms ease
    }

    .promotion__media {
        transition: transform 450ms cubic-bezier(.2, .7, .2, 1), filter 450ms ease;
        transform-origin: center
    }

    .site-brand img, .site-footer__brand {
        transition: filter 250ms ease
    }

    .action-link--primary:not([aria-disabled="true"])::after {
        content: "";
        position: absolute;
        inset: -60% auto -60% -70%;
        width: 40%;
        background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .38), transparent);
        transform: skewX(-22deg);
        opacity: 0;
        pointer-events: none;
    }

    .action-link:not([aria-disabled="true"]):focus-visible .action-link__arrow {
        transform: translateX(4px)
    }

    .card:focus-visible .card__media {
        transform: translateY(-4px) scale(1.045)
    }

    .action-link:not([aria-disabled="true"]):active {
        filter: brightness(.96)
    }

    @media (hover: hover) and (pointer:fine) {
        .action-link:not([aria-disabled="true"]):hover .action-link__arrow {
            transform: translateX(4px)
        }

        .action-link--primary:not([aria-disabled="true"]):hover::after {
            animation: action-sheen 650ms ease-out
        }

        .action-link--primary:not([aria-disabled="true"]):hover {
            box-shadow: 0 3px 22px #ff3c6948
        }

        .card:hover .card__media {
            transform: translateY(-4px) scale(1.045);
            filter: brightness(1.08)
        }

        .card:not([aria-disabled="true"]):hover {
            box-shadow: inset 0 0 12px #f0436b12, 0 6px 18px #0005
        }

        .promotion:hover .promotion__media {
            transform: scale(1.035);
            filter: brightness(1.07)
        }

        .site-brand:hover img, .site-footer__identity a:hover .site-footer__brand {
            filter: brightness(1.14)
        }
    }

    @keyframes action-sheen {
        0% {
            transform: translateX(0) skewX(-22deg);
            opacity: 0
        }

        15% {
            opacity: 1
        }

        100% {
            transform: translateX(525%) skewX(-22deg);
            opacity: 0
        }
    }

    @keyframes nav-indicator-in {
        from {
            opacity: .3;
            transform: scaleX(.5)
        }

        to {
            opacity: 1;
            transform: scaleX(1)
        }
    }
}

/* =========================================================
   VIRTUAL SPORTS PAGE — 가상축구 이미지 기반 콘텐츠 추가
   기존 프리매치 경기목록 클래스(sports-panel, event-group,
   event-date, match-card, match-odds, odd-link)를 그대로 재사용합니다.
   ========================================================= */
.sports-page.virtual-sports-page {
    --sports-bg: var(--surface);
    --sports-surface: #1b1510;
    --sports-surface-2: #291f18;
    --sports-surface-3: #2c2119;
    --sports-surface-4: #392b21;
    --sports-line: #49382a;
    --sports-accent: var(--accent);
    --sports-accent-light: #e3b467;
    --sports-accent-rgb: 227, 180, 103;
    --sports-primary-gradient: linear-gradient(180deg, #e8a844, #b8873f);
    min-height: 100vh;
    padding: 14px 18px 34px;
    background: var(--surface);
}

.sports-page.virtual-sports-page .sports-shell {
    width: min(1660px, 100%);
}

.virtual-provider-nav {
    display: flex;
    align-items: stretch;
    gap: 34px;
    min-height: 38px;
    overflow-x: auto;
    border-bottom: 1px solid #49382a;
    scrollbar-width: none;
}

.virtual-provider-nav::-webkit-scrollbar {
    display: none;
}

.virtual-provider-link {
    position: relative;
    display: inline-flex;
    align-items: flex-start;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 50px;
    padding: 4px 2px 13px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 800;
    transition: color .18s ease;
}

.virtual-provider-link::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 2px;
    background: transparent;
    box-shadow: none;
    content: '';
}

.virtual-provider-link.is-active {
    color: #e3b467;
}

.virtual-provider-link.is-active::after {
    background: var(--accent);
    box-shadow: 0 0 9px #ef215188;
}

.virtual-game-nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
}

.virtual-game-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 70px;
    padding: 10px;
    border: 1px solid #49382a;
    border-radius: 12px;
    background: #1b1510;
    color: var(--text);
    font-size: 13px;
    font-weight: 800;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.virtual-game-link > span:last-child {
    display: grid;
    gap: 5px;
}

.virtual-game-link strong {
    font-size: 14px;
}

.virtual-game-link small {
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.virtual-game-link.is-active {
    border-color: #d8a85c;
    background: #ff3d6a12;
    box-shadow: 0 0 14px #ff3c692e, inset 0 0 0 1px #ff3d6a33;
}

.virtual-game-icon {
    display: grid;
    place-items: center;
    width: 14px;
    height: 18px;
    border-radius: 1px;
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
    font: 700 6px/1 Arial, sans-serif;
}

.virtual-league-nav {
    display: flex;
    justify-content: center;
    gap: 22px;
    margin: 25px 0 15px;
}

.virtual-league-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 78px;
    min-height: 40px;
    padding: 7px 18px;
    border-radius: 4px;
    background: #2c2119;
    color: var(--text);
    font-size: 12px;
    font-weight: 800;
    transition: filter .18s ease, transform .12s ease;
}

.virtual-league-link.is-active {
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
}

.virtual-video {
    position: relative;
    display: grid;
    place-items: center;
    width: 100%;
    aspect-ratio: 4.68 / 1;
    min-height: 230px;
    overflow: hidden;
    background: #000;
}

.virtual-video__play {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 76px;
    height: 76px;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.virtual-video__play span {
    width: 0;
    height: 0;
    margin-left: 8px;
    border-top: 35px solid transparent;
    border-bottom: 35px solid transparent;
    border-left: 59px solid #c8c8c8;
    filter: drop-shadow(0 2px 2px #0008);
}

.virtual-video.is-playing .virtual-video__play span {
    width: 39px;
    height: 55px;
    margin-left: 0;
    border: 0;
    border-right: 12px solid #c8c8c8;
    border-left: 12px solid #c8c8c8;
}

.virtual-video__status {
    position: absolute;
    right: 16px;
    bottom: 12px;
    color: #888;
    font-size: 11px;
}

.virtual-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 20px;
    margin-top: 25px;
    align-items: start;
}

.sports-page.virtual-sports-page .virtual-event-panel, .sports-page.virtual-sports-page .virtual-history-panel {
    min-height: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.sports-page.virtual-sports-page .event-group {
    margin-bottom: 12px;
    border: 0;
}

.sports-page.virtual-sports-page .event-date {
    min-height: 36px;
    padding: 0 12px;
    background: linear-gradient(110deg, #1b1510, #2c2119);
    color: var(--accent);
    font-size: 12px;
}

.sports-page.virtual-sports-page .event-date > span:last-child {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--text);
    font-size: 12px;
}

.virtual-collapse-link {
    display: inline-grid;
    place-items: center;
    width: 19px;
    height: 19px;
    border: 1px solid #66482e;
    border-radius: 4px;
    color: var(--accent);
    font: 800 13px/1 Arial, sans-serif;
}

.sports-page.virtual-sports-page .match-card {
    max-height: 112px;
    padding: 5px 3px 0;
    overflow: hidden;
    border-top: 0;
    background: transparent;
    transition: max-height .22s ease, padding .22s ease, opacity .16s ease;
}

.sports-page.virtual-sports-page .match-card::before {
    content: none;
}

.sports-page.virtual-sports-page .event-group.is-collapsed .match-card {
    max-height: 0;
    padding-block: 0; opacity: 0;
}

.sports-page.virtual-sports-page .virtual-match-odds {
    grid-template-columns: minmax(0, 1.36fr) 74px minmax(0, 1.36fr);
    gap: 6px;
}

.sports-page.virtual-sports-page .odd-link {
    min-height: 36px;
    border-color: #503d2e;
    border-radius: 7px;
    background: #291f18;
    color: var(--text);
    font-family: inherit;
    font-size: 12px;
}

.sports-page.virtual-sports-page .virtual-team-odd {
    justify-content: flex-end;
    gap: 10px;
    padding-inline: 13px; }

.sports-page.virtual-sports-page .virtual-team-odd:nth-child(3n) {
    justify-content: flex-start;
}

.sports-page.virtual-sports-page .virtual-team-odd strong {
    font-size: 12px;
}

.virtual-trend {
    margin-inline: 1px -6px; font: 900 17px/1 Arial, sans-serif;
}

.virtual-trend--up {
    color: var(--accent);
}

.virtual-trend--down {
    color: #a68973;
}

.virtual-history-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 40px;
}

.virtual-history-tabs {
    display: flex;
}

.virtual-history-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 122px;
    min-height: 40px;
    padding: 8px 15px;
    border-radius: 5px 5px 0 0;
    background: #2c2119;
    color: var(--text);
    font-size: 12px;
    font-weight: 800;
}

.virtual-history-tab.is-active {
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
}

.virtual-refresh-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 110px;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 5px;
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
    font-size: 12px;
    font-weight: 800;
}

.virtual-refresh-link span {
    display: inline-block;
}

.virtual-refresh-link.is-refreshing span {
    animation: virtual-refresh .55s linear;
}

@keyframes virtual-refresh {
    to {
        transform: rotate(360deg);
    }
}

.virtual-history-table-wrap {
    overflow-x: auto;
}

.virtual-history-table {
    width: 100%;
    min-width: 620px;
    border-collapse: collapse;
    table-layout: fixed;
    color: var(--text);
    font-size: 12px;
    font-weight: 700;
}

.virtual-history-table th {
    height: 36px;
    padding: 7px 9px;
    background: #291f18;
    text-align: center;
}

.virtual-history-table th:first-child {
    width: 102px;
}

.virtual-history-table th:last-child {
    width: 154px;
}

.virtual-history-table td {
    height: 35px;
    padding: 7px 9px;
    overflow: hidden;
    border-bottom: 1px solid #49382a;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.virtual-history-table td:first-child {
    text-align: center;
}

.virtual-history-table td:last-child {
    text-align: center;
}

@media (hover: hover) {
    .virtual-provider-link:hover {
        color: #e3b467;
    }

    .virtual-game-link:hover {
        border-color: #66482e;
        background: #ff3d6a0d;
    }

    .virtual-league-link:hover, .virtual-history-tab:hover, .virtual-refresh-link:hover {
        filter: brightness(1.1);
    }
}

@media (max-width: 1080px) {
    .virtual-content-layout {
        grid-template-columns: 1fr;
    }

    .virtual-video {
        aspect-ratio: 16 / 5;
    }

    .virtual-game-nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .sports-page.virtual-sports-page {
        padding: 12px 8px 24px;
    }

    .virtual-provider-nav {
        gap: 25px;
    }

    .virtual-game-nav {
        grid-template-columns: 1fr 1fr;
    }

    .virtual-game-link {
        min-height: 60px;
    }

    .virtual-league-nav {
        justify-content: flex-start;
        gap: 8px;
        overflow-x: auto;
    }

    .virtual-league-link {
        flex: 0 0 auto;
        min-width: 74px;
        padding-inline: 13px; }

    .virtual-video {
        min-height: 190px;
        aspect-ratio: 16 / 8;
    }

    .virtual-content-layout {
        gap: 16px;
        margin-top: 16px;
    }

    .sports-page.virtual-sports-page .virtual-match-odds {
        grid-template-columns: minmax(0, 1fr) 56px minmax(0, 1fr);
        gap: 4px;
    }

    .sports-page.virtual-sports-page .virtual-team-odd {
        gap: 5px;
        padding-inline: 7px; }

    .sports-page.virtual-sports-page .odd-link {
        min-height: 34px;
        font-size: 10px;
    }

    .virtual-history-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .virtual-history-tabs {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .virtual-history-tab {
        min-width: 0;
        border-radius: 5px 5px 0 0;
    }

    .virtual-refresh-link {
        align-self: flex-end;
    }
}

@media (max-width: 430px) {
    .virtual-game-nav {
        grid-template-columns: 1fr;
    }

    .virtual-video {
        min-height: 170px;
    }

    .sports-page.virtual-sports-page .event-date {
        padding-inline: 8px; font-size: 10px;
    }

    .sports-page.virtual-sports-page .event-date > span:last-child {
        font-size: 10px;
    }

    .sports-page.virtual-sports-page .virtual-match-odds {
        grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr);
    }

    .sports-page.virtual-sports-page .virtual-team-odd {
        padding-inline: 5px; }
}

/* VIRTUAL SPORTS PAGE END */
@media (prefers-reduced-motion:reduce) {
    .card:not([aria-disabled="true"]):hover {
        transform: none
    }
}

/* bg_main.png is a full-page 2048 x 1376 background; keep its aspect ratio.
   All image references below are filenames only. */
.page {
    --scene-offset: 0px;
    background-color: #070a0c;
    background-image: none;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center var(--scene-offset)
}

/* Supplied PNG assets are referenced by filename, preserving their original alpha.
   The supplied bg_main.png is used unchanged as the page background.
   Coordinate system and animation behaviors remain the same. */
.hero__wordmark, .hero__slogan {
    position: absolute;
    display: block;
    object-fit: contain;
    pointer-events: none;
    user-select: none;
    height: auto
}

.hero__wordmark {
    left: 581.00724px;
    top: 25.98354px;
    width: 769.13298px;
    aspect-ratio: 1199 / 752
}

.hero__slogan {
    left: 106.01514px;
    top: 137.19618px;
    width: 426.14154px;
    aspect-ratio: 618 / 285
}

.hero .hero__description {
    background: none
}

.hero .hero__description::before {
    display: none
}

.card .card__media {
    width: 100%;
    object-fit: contain;
    mix-blend-mode: normal;
    mask-image: none
}

.promotion .promotion__media {
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
    mask-image: none
}

.promotion--contact .promotion__media {
    object-position: left center
}

.site-brand img, .site-footer__brand {
    object-fit: contain
}

@media(max-width: 700px) {
    .hero {
        padding-top: 698.456682px;
        background-size: 100% auto
    }
}

/* Images use only filenames. Add your directory or URL in src and url(). */
a[data-click-effect] {
    position: relative
}

.click-feedback {
    position: absolute;
    inset: 0;
    overflow: hidden;
    border-radius: inherit;
    pointer-events: none;
    z-index: 4
}

.click-feedback__ripple {
    position: absolute;
    display: block;
    border-radius: 50%;
    background: radial-gradient(circle, #e3b467 0%, #ff3d6a99 48%, transparent 72%);
    pointer-events: none;
    opacity: 0
}

@media(prefers-reduced-motion:reduce) {
    .click-feedback {
        display: none
    }
}

/* Keep the scenery aligned below the taller tablet/mobile header. */
@media(min-width: 701px) and (max-width:1000px) {
    .page {
        --scene-offset: calc(60px - 87.30711px)
    }
}

@media(max-width: 700px) {
    .page {
        --scene-offset: calc(112px - 87.30711px)
    }
}

/* Login dialog */
a[role="button"]:not([aria-disabled="true"]) {
    cursor: pointer;
}

.modal {
    position: fixed;
    inset: 0;
    display: none;
    width: min(440px, calc(100% - 32px));
    max-width: none;
    max-height: calc(100% - 32px);
    max-height: calc(100dvh - 32px);
    margin: auto;
    padding: 28px 32px 24px;
    overflow-y: auto;
    overscroll-behavior: contain;
    color: #f9ebd1;
    background: linear-gradient(150deg, #2a2018, #18120e 70%);
    border: 1px solid #66482e;
    border-radius: 24px;
    box-shadow: 0 24px 80px #0009, inset 0 1px 0 #fff1;
    font-family: inherit;
}

.modal[open] {
    display: block;
}

.modal::backdrop {
    background: #050709bd;
    backdrop-filter: blur(5px);
}

.modal .modal__close {
    position: absolute;
    top: 14px;
    right: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #473629;
    border-radius: 50%;
    background: #ffffff05;
    color: #d4b7a1;
    font: 28px/1 Arial, sans-serif;
}

.modal__header {
    text-align: center;
}

.modal__brand {
    width: 100px;
    height: auto;
    margin: 0 auto 10px;
}

.modal__title {
    margin: 0;
    font-size: 27px;
    line-height: 1.4;
    font-weight: 700;
}

.modal__description {
    margin: 9px 0 26px;
    color: #c9a991;
    font-size: 14px;
    line-height: 1.7;
}

.login-form {
    display: grid;
    gap: 18px;
    margin: 0;
}

.form-field {
    min-width: 0;
}

.form-field__label {
    display: block;
    margin-bottom: 9px;
    color: #edd6c4;
    font-size: 14px;
    font-weight: 700;
}

.form-field__control {
    position: relative;
}

.form-field__input {
    display: block;
    width: 100%;
    min-height: 50px;
    padding: 13px 15px;
    border: 1px solid #503d2e;
    border-radius: 12px;
    outline: none;
    background: #19130e;
    color: #f5f6fa;
    font: inherit;
    font-size: 16px;
    line-height: 1.4;
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.form-field__input::placeholder {
    color: #a48369;
}

.form-field__input:focus {
    border-color: #dfbb7d;
    box-shadow: 0 0 0 3px #f0466e1f;
}

.form-field__input--password {
    padding-right: 70px;
}

.modal .form-field__toggle {
    position: absolute;
    top: 3px;
    right: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    height: calc(100% - 6px);
    border-radius: 9px;
    color: #d8a85c;
    font-size: 13px;
}

.login-form__submit {
    width: 100%;
    min-height: 50px;
    margin-top: 6px;
    border-radius: 12px;
    font-size: 16px;
}

.login-form__status {
    min-height: 20px;
    margin: -6px 0 0;
    color: #d8a85c;
    font-size: 13px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

@media (hover: hover) {
    .modal__close:hover {
        color: #e3b467;
        border-color: #977741;
    }

    .form-field__toggle:hover {
        background: #ff3d6a0d;
    }
}

@media (max-width: 480px) {
    .modal {
        padding: 25px 22px 20px;
        border-radius: 20px;
    }

    .modal__title {
        font-size: 24px;
    }
}

@media (prefers-reduced-motion:no-preference) {
    .modal[open] {
        animation: modal-enter 220ms cubic-bezier(.2, .7, .2, 1);
    }

    .modal[open]::backdrop {
        animation: modal-backdrop-enter 220ms ease;
    }

    .modal[open].is-closing {
        animation: modal-leave 160ms ease both;
    }

    .modal[open].is-closing::backdrop {
        animation: modal-backdrop-leave 160ms ease both;
    }

    @keyframes modal-enter {
        from {
            opacity: 0;
            transform: translateY(16px) scale(.98);
        }

        to {
            opacity: 1;
            transform: none;
        }
    }

    @keyframes modal-leave {
        from {
            opacity: 1;
            transform: none;
        }

        to {
            opacity: 0;
            transform: translateY(8px) scale(.99);
        }
    }

    @keyframes modal-backdrop-enter {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes modal-backdrop-leave {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
        }
    }
}

/* =========================================================
   SPORTS PAGE — YAHO 색상
   1. 기본값·색상 변수   2. 종목·검색   3. 경기 목록
   4. 승무패·상세 마켓   5. 베팅카트    6. 반응형
   모든 스포츠 선택자는 .sports-page 안에서만 적용됩니다.
   ========================================================= */
.sports-page, .sports-page * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}

.sports-page a {
    text-decoration: none;
    color: inherit;
}

.sports-page {
    /* YAHO 공통 색상과 연결: 배경 / 패널 / 텍스트 / 강조색 */
    --sports-bg: var(--surface);
    --sports-surface: #1b1510;
    --sports-surface-2: #291f18;
    --sports-surface-3: #2c2119;
    --sports-surface-4: #392b21;
    --sports-line: #49382a;
    --sports-line-strong: rgba(227, 180, 103, .30);
    --sports-text: var(--text);
    --sports-text-soft: var(--muted);
    --sports-text-dim: #a68973;
    --sports-accent: var(--accent);
    --sports-accent-light: #e3b467;
    --sports-accent-border: #d8a85c;
    --sports-accent-rgb: 227, 180, 103;
    --sports-primary-gradient: linear-gradient(180deg, #e8a844, #b8873f);
    --sports-on-accent: #1a1512;
    /* 경기 상태를 나타내는 의미 색상 */
    --sports-positive: #28b884;
    --sports-danger: #e85d68;
    --font-heading: 'Cinzel', serif;
    --font-sub: 'Montserrat', sans-serif;
    --font-kr: 'Noto Sans KR', 'Malgun Gothic', sans-serif;
    font-family: var(--font-kr);
    position: relative;
    z-index: 1;
    min-height: 100vh;
    padding: 28px 18px 34px;
    background: radial-gradient(circle at 50% -10%, rgba(var(--sports-accent-rgb), .10), transparent 31%), linear-gradient(180deg, var(--sports-bg) 0%, var(--sports-bg) 100%);
    color: var(--sports-text);
}

.sports-page a {
    -webkit-tap-highlight-color: transparent;
}

.sports-page .sports-shell {
    width: min(1660px, 100%);
    margin: 0 auto;
}

.sports-page .sports-category-nav {
    display: grid;
    grid-template-columns: repeat(10, minmax(86px, 1fr));
    min-height: 92px;
    margin-bottom: 10px;
    overflow: hidden;
    border: 1px solid var(--sports-line);
    border-radius: 12px;
    background: rgba(27, 21, 16, .95);
    box-shadow: 0 18px 44px rgba(0, 0, 0, .26);
}

.sports-page .sports-category-link {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 0;
    padding: 10px 7px;
    border-right: 1px solid var(--sports-line);
    color: var(--sports-text-soft);
    font-size: 11px;
    font-weight: 600;
    text-align: center;
    transition: background .22s ease, color .22s ease, transform .22s ease, box-shadow .22s ease;
}

.sports-page .sports-category-link:last-child {
    border-right: 0;
}

.sports-page .sports-category-link:hover, .sports-page .sports-category-link:focus-visible {
    color: var(--sports-text);
    background: rgba(var(--sports-accent-rgb), .08);
    outline: none;
}

.sports-page .sports-category-link:active {
    transform: translateY(1px) scale(.985);
}

.sports-page .sports-category-link.is-active {
    color: var(--sports-text);
    background: linear-gradient(180deg, rgba(var(--sports-accent-rgb), .17), rgba(var(--sports-accent-rgb), .05));
    box-shadow: inset 0 0 0 1px rgba(var(--sports-accent-rgb), .38), 0 0 22px rgba(var(--sports-accent-rgb), .08);
}

.sports-page .sports-category-link.is-active::after {
    content: '';
    position: absolute;
    right: 10px;
    bottom: 0;
    left: 10px;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--sports-accent), transparent);
    box-shadow: 0 0 10px rgba(var(--sports-accent-rgb), .75);
}

.sports-page .sports-category-icon {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 50%;
    background: var(--sports-surface-4);
    color: var(--sports-accent-light);
    font-family: var(--font-sub);
    font-size: 19px;
    line-height: 1;
}

.sports-page .sports-category-link.is-active .sports-category-icon {
    border-color: rgba(var(--sports-accent-rgb), .48);
    background: var(--sports-primary-gradient);
    color: var(--sports-on-accent);
    box-shadow: 0 0 16px rgba(var(--sports-accent-rgb), .24);
}

.sports-page .sports-category-count {
    position: absolute;
    top: 11px;
    right: 10px;
    color: var(--sports-text-dim);
    font-family: var(--font-sub);
    font-size: 9px;
    font-weight: 700;
}

.sports-page .sports-category-link.is-active .sports-category-count {
    color: var(--sports-accent-light);
}

.sports-page .sports-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 42px;
    margin-bottom: 10px;
    padding: 6px 10px;
    border: 1px solid var(--sports-line);
    border-radius: 8px;
    background: rgba(7, 10, 12, .94);
}

.sports-page .sports-toolbar-group, .sports-page .sports-toolbar-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.sports-page .sports-toolbar-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid transparent;
    border-radius: 6px;
    color: var(--sports-text-soft);
    font-size: 11px;
    font-weight: 600;
    transition: all .2s ease;
}

.sports-page .sports-toolbar-link:hover, .sports-page .sports-toolbar-link:focus-visible, .sports-page .sports-toolbar-link.is-active {
    border-color: rgba(var(--sports-accent-rgb), .28);
    background: rgba(var(--sports-accent-rgb), .08);
    color: var(--sports-accent-light);
    outline: none;
}

.sports-page .sports-toolbar-link:active {
    transform: scale(.97);
}

.sports-page .sports-search {
    display: flex;
    align-items: center;
    gap: 8px;
    width: min(260px, 32vw);
    min-height: 28px;
    padding: 0 11px;
    border: 1px solid var(--sports-line);
    border-radius: 16px;
    background: var(--sports-bg);
    color: var(--sports-text-dim);
}

.sports-page .sports-search input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--sports-text);
    font-family: var(--font-kr);
    font-size: 10px;
}

.sports-page .sports-search input::placeholder {
    color: var(--sports-text-dim);
}

.sports-page .sports-content-layout {
    display: grid;
    grid-template-columns: minmax(340px, .92fr) minmax(500px, 1.35fr) minmax(270px, .58fr);
    gap: 10px;
    align-items: start;
}

.sports-page .sports-panel {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--sports-line);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(41, 31, 24, .98), rgba(7, 10, 12, .98));
    box-shadow: 0 18px 46px rgba(0, 0, 0, .20);
}

.sports-page .event-panel, .sports-page .market-panel, .sports-page .bet-panel {
    min-height: 728px;
}

.sports-page .panel-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 52px;
    padding: 10px 14px;
    border-bottom: 1px solid var(--sports-line);
    background: linear-gradient(180deg, rgba(57, 43, 33, .82), rgba(41, 31, 24, .92));
}

.sports-page .panel-heading-title {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--sports-text);
    font-size: 12px;
    font-weight: 700;
}

.sports-page .panel-heading-actions {
    display: flex;
    gap: 6px;
}

.sports-page .panel-icon-link {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border: 1px solid var(--sports-line);
    border-radius: 5px;
    color: var(--sports-text-soft);
    font-size: 12px;
    transition: all .2s ease;
}

.sports-page .panel-icon-link:hover, .sports-page .panel-icon-link:focus-visible, .sports-page .panel-icon-link.is-active {
    border-color: rgba(var(--sports-accent-rgb), .36);
    background: rgba(var(--sports-accent-rgb), .09);
    color: var(--sports-accent-light);
    outline: none;
}

.sports-page .panel-icon-link:active {
    transform: scale(.94);
}

.sports-page .event-group {
    border-bottom: 1px solid var(--sports-line);
}

.sports-page .event-date {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 39px;
    padding: 0 14px;
    background: rgba(255, 255, 255, .035);
    color: var(--sports-accent);
    font-size: 12px;
    font-weight: 700;
}

.sports-page .event-date span:last-child {
    color: var(--sports-text-dim);
    font-size: 13px;
}

.sports-page .match-card {
    position: relative;
    padding: 12px 10px 11px 20px;
    border-top: 1px solid rgba(255, 255, 255, .05);
    background: rgba(255, 255, 255, .008);
    transition: background .2s ease;
}

.sports-page .match-card::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 3px;
    background: transparent;
}

.sports-page .match-card:hover {
    background: rgba(var(--sports-accent-rgb), .025);
}

.sports-page .match-card.is-active::before {
    background: var(--sports-accent);
    box-shadow: 0 0 8px rgba(var(--sports-accent-rgb), .5);
}

.sports-page .match-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 7px;
}

.sports-page .match-time {
    color: var(--sports-accent-light);
    font-family: var(--font-sub);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .4px;
}

.sports-page .match-more {
    color: var(--sports-accent);
    font-family: var(--font-sub);
    font-size: 10px;
    font-weight: 700;
}

.sports-page .match-team-list {
    display: grid;
    gap: 5px;
    margin-bottom: 9px;
}

.sports-page .match-team {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    color: var(--sports-text);
    font-size: 11px;
    font-weight: 600;
}

.sports-page .match-team-badge {
    display: grid;
    place-items: center;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50%;
    background: var(--sports-surface-4);
    color: var(--sports-accent-light);
    font-family: var(--font-sub);
    font-size: 8px;
    font-weight: 800;
}

.sports-page .match-odds {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
}

.sports-page .odd-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 33px;
    padding: 5px 7px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 5px;
    background: var(--sports-surface-2);
    color: var(--sports-text);
    font-family: var(--font-sub);
    font-size: 11px;
    font-weight: 700;
    transition: border-color .18s ease, background .18s ease, color .18s ease, transform .12s ease, box-shadow .18s ease;
}

.sports-page .odd-link:hover, .sports-page .odd-link:focus-visible {
    border-color: rgba(var(--sports-accent-rgb), .48);
    color: var(--sports-accent-light);
    outline: none;
}

.sports-page .odd-link:active {
    transform: scale(.97);
}

.sports-page .odd-link.is-selected {
    border-color: var(--sports-accent);
    background: var(--sports-primary-gradient);
    color: var(--sports-on-accent);
    box-shadow: 0 0 16px rgba(var(--sports-accent-rgb), .22);
}

.sports-page .market-hero {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 74px 1fr;
    align-items: center;
    min-height: 112px;
    padding: 15px 24px;
    overflow: hidden;
    border-bottom: 1px solid var(--sports-line);
    background: radial-gradient(circle at center, rgba(var(--sports-accent-rgb), .18), transparent 18%), linear-gradient(110deg, var(--sports-surface-2) 0%, var(--sports-surface-4) 50%, var(--sports-surface) 100%);
}

.sports-page .market-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: .19;
    background-image: linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .04) 1px, transparent 1px);
    background-size: 22px 22px;
}

.sports-page .market-team {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.sports-page .market-team:last-child {
    justify-content: flex-end;
    text-align: right;
}

.sports-page .market-team-logo {
    display: grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border: 1px solid rgba(var(--sports-accent-rgb), .42);
    border-radius: 50%;
    background: var(--sports-surface);
    color: var(--sports-accent-light);
    font-family: var(--font-heading);
    font-size: 10px;
    font-weight: 700;
    box-shadow: inset 0 0 14px rgba(var(--sports-accent-rgb), .08);
}

.sports-page .market-team-name {
    color: var(--sports-text);
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sports-page .market-center {
    position: relative;
    z-index: 1;
    text-align: center;
}

.sports-page .market-league {
    margin-bottom: 3px;
    color: var(--sports-accent-light);
    font-family: var(--font-sub);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.4px;
}

.sports-page .market-ball {
    margin: 3px 0;
    font-size: 28px;
    filter: grayscale(.25);
}

.sports-page .market-kickoff {
    color: var(--sports-text);
    font-family: var(--font-sub);
    font-size: 9px;
    font-weight: 600;
}

.sports-page .market-tabs {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 8px 10px;
    overflow-x: auto;
    border-bottom: 1px solid var(--sports-line);
    background: var(--sports-surface-2);
    scrollbar-width: none;
}

.sports-page .market-tabs::-webkit-scrollbar {
    display: none;
}

.sports-page .market-tab-link {
    flex: 0 0 auto;
    min-width: 46px;
    padding: 7px 10px;
    border: 1px solid rgba(255, 255, 255, .06);
    border-radius: 4px;
    color: var(--sports-text-dim);
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    transition: all .18s ease;
}

.sports-page .market-tab-link:hover, .sports-page .market-tab-link:focus-visible, .sports-page .market-tab-link.is-active {
    border-color: rgba(var(--sports-accent-rgb), .30);
    background: rgba(var(--sports-accent-rgb), .12);
    color: var(--sports-accent-light);
    outline: none;
}

.sports-page .market-tab-link:active {
    transform: translateY(1px);
}

.sports-page .market-list {
    padding-bottom: 10px;
}

.sports-page .market-group {
    margin: 8px 10px 0;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .065);
    border-radius: 5px;
    background: var(--sports-surface);
}

.sports-page .market-group-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 34px;
    padding: 0 10px;
    background: linear-gradient(180deg, var(--sports-surface-4), var(--sports-surface-4));
}

.sports-page .market-group-title {
    color: var(--sports-text);
    font-size: 10px;
    font-weight: 700;
}

.sports-page .market-group-tools {
    display: flex;
    align-items: center;
    gap: 5px;
}

.sports-page .market-tool-link {
    display: grid;
    place-items: center;
    min-width: 21px;
    height: 21px;
    border-radius: 4px;
    color: var(--sports-text-dim);
    font-family: var(--font-sub);
    font-size: 9px;
    transition: all .18s ease;
}

.sports-page .market-tool-link:hover, .sports-page .market-tool-link:focus-visible {
    background: rgba(var(--sports-accent-rgb), .10);
    color: var(--sports-accent-light);
    outline: none;
}

.sports-page .market-tool-link:active {
    transform: scale(.93);
}

.sports-page .market-group-body {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
    padding: 7px;
}

.sports-page .market-group-body.two-columns {
    grid-template-columns: repeat(2, 1fr);
}

.sports-page .market-group.is-collapsed .market-group-body {
    display: none;
}

.sports-page .market-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 38px;
    padding: 7px 9px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 4px;
    background: var(--sports-surface-2);
    color: var(--sports-text-soft);
    font-size: 10px;
    transition: all .18s ease;
}

.sports-page .market-option strong {
    flex: 0 0 auto;
    color: var(--sports-text);
    font-family: var(--font-sub);
    font-size: 10px;
}

.sports-page .market-option:hover, .sports-page .market-option:focus-visible {
    border-color: rgba(var(--sports-accent-rgb), .45);
    background: rgba(var(--sports-accent-rgb), .07);
    color: var(--sports-text);
    outline: none;
}

.sports-page .market-option:active {
    transform: scale(.985);
}

.sports-page .market-option.is-selected {
    border-color: var(--sports-accent);
    background: var(--sports-primary-gradient);
    color: var(--sports-on-accent);
    box-shadow: 0 0 14px rgba(var(--sports-accent-rgb), .20);
}

.sports-page .market-option.is-selected strong {
    color: var(--sports-on-accent);
}

.sports-page .bet-panel {
    position: sticky;
    top: 16px;
}

.sports-page .bet-live-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 46px;
    padding: 0 12px;
    border-bottom: 1px solid var(--sports-line);
    background: var(--sports-surface);
}

.sports-page .bet-live-label {
    display: flex;
    align-items: center;
    gap: 7px;
    color: var(--sports-text);
    font-size: 10px;
    font-weight: 700;
}

.sports-page .bet-live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sports-positive);
    box-shadow: 0 0 8px rgba(40, 184, 132, .55);
}

.sports-page .switch-link {
    position: relative;
    width: 35px;
    height: 20px;
    border-radius: 12px;
    background: var(--sports-surface-4);
    transition: background .2s ease;
}

.sports-page .switch-link::after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--sports-text);
    transition: transform .2s ease, box-shadow .2s ease;
}

.sports-page .switch-link.is-active {
    background: var(--sports-accent-border);
}

.sports-page .switch-link.is-active::after {
    transform: translateX(15px);
    box-shadow: 0 0 8px rgba(255, 255, 255, .25);
}

.sports-page .bet-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid var(--sports-line);
}

.sports-page .bet-tab-link {
    min-height: 42px;
    padding: 12px 8px;
    color: var(--sports-text-dim);
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    transition: all .18s ease;
}

.sports-page .bet-tab-link:hover, .sports-page .bet-tab-link:focus-visible, .sports-page .bet-tab-link.is-active {
    background: rgba(var(--sports-accent-rgb), .10);
    color: var(--sports-accent-light);
    outline: none;
}

.sports-page .bet-tab-link.is-active {
    box-shadow: inset 0 -2px 0 var(--sports-accent);
}

.sports-page .bet-summary {
    padding: 12px;
    border-bottom: 1px solid var(--sports-line);
}

.sports-page .bet-summary-row, .sports-page .bet-total-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 28px;
    color: var(--sports-text-soft);
    font-size: 10px;
}

.sports-page .bet-summary-row strong, .sports-page .bet-total-row strong {
    color: var(--sports-text);
    font-family: var(--font-sub);
    font-size: 11px;
}

.sports-page .bet-summary-row:first-child strong {
    color: var(--sports-accent-light);
}

.sports-page .bet-picks {
    display: grid;
    gap: 7px;
    max-height: 218px;
    padding: 10px 12px 2px;
    overflow-y: auto;
}

.sports-page .bet-empty {
    padding: 30px 16px;
    color: var(--sports-text-dim);
    font-size: 10px;
    line-height: 1.6;
    text-align: center;
}

.sports-page .bet-pick {
    position: relative;
    padding: 9px 28px 9px 9px;
    border: 1px solid rgba(var(--sports-accent-rgb), .16);
    border-radius: 5px;
    background: rgba(var(--sports-accent-rgb), .045);
}

.sports-page .bet-pick-title {
    margin-bottom: 4px;
    color: var(--sports-text);
    font-size: 9px;
    line-height: 1.35;
}

.sports-page .bet-pick-meta {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    color: var(--sports-text-dim);
    font-size: 9px;
}

.sports-page .bet-pick-meta strong {
    color: var(--sports-accent-light);
    font-family: var(--font-sub);
}

.sports-page .bet-remove-link {
    position: absolute;
    top: 7px;
    right: 7px;
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    color: var(--sports-text-dim);
    font-size: 12px;
}

.sports-page .bet-remove-link:hover, .sports-page .bet-remove-link:focus-visible {
    background: rgba(232, 93, 104, .10);
    color: var(--sports-danger);
    outline: none;
}

.sports-page .bet-actions {
    padding: 10px 12px 14px;
}

.sports-page .bet-total-row {
    margin-bottom: 4px;
}

.sports-page .bet-total-row.is-payout strong {
    color: var(--sports-accent-light);
}

.sports-page .bet-amount-field {
    display: flex;
    align-items: center;
    min-height: 38px;
    margin: 8px 0;
    padding: 0 9px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 4px;
    background: var(--sports-bg);
}

.sports-page .bet-amount-field input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--sports-text);
    font-family: var(--font-sub);
    font-size: 11px;
    text-align: right;
}

.sports-page .bet-amount-field span {
    margin-left: 7px;
    color: var(--sports-text-dim);
    font-size: 9px;
}

.sports-page .bet-button-row {
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 7px;
}

.sports-page .bet-action-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 4px;
    background: var(--sports-surface-2);
    color: var(--sports-text-soft);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .4px;
    transition: all .2s ease;
}

.sports-page .bet-action-link:hover, .sports-page .bet-action-link:focus-visible {
    border-color: rgba(var(--sports-accent-rgb), .38);
    color: var(--sports-accent-light);
    outline: none;
}

.sports-page .bet-action-link:active {
    transform: scale(.98);
}

.sports-page .bet-action-link.primary {
    border-color: var(--sports-accent-border);
    background: var(--sports-primary-gradient);
    color: var(--sports-on-accent);
    box-shadow: 0 0 16px rgba(var(--sports-accent-rgb), .14);
}

.sports-page .bet-action-link.primary:hover, .sports-page .bet-action-link.primary:focus-visible {
    color: var(--sports-on-accent);
    box-shadow: 0 0 22px rgba(var(--sports-accent-rgb), .28);
    transform: translateY(-1px);
}

.sports-page .bet-limit {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin-top: 9px;
    color: var(--sports-text-dim);
    font-size: 9px;
}

.sports-page .bet-limit strong {
    color: var(--sports-text-dim);
    font-weight: 600;
}

.sports-page .sports-chat-link {
    position: fixed;
    right: 28px;
    bottom: 28px;
    z-index: 30;
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(var(--sports-accent-rgb), .42);
    border-radius: 50%;
    background: var(--sports-primary-gradient);
    color: var(--sports-on-accent);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .35), 0 0 18px rgba(var(--sports-accent-rgb), .18);
    font-size: 19px;
    transition: transform .2s ease, box-shadow .2s ease;
}

.sports-page .sports-chat-link:hover, .sports-page .sports-chat-link:focus-visible {
    transform: translateY(-3px);
    box-shadow: 0 14px 32px rgba(0, 0, 0, .45), 0 0 24px rgba(var(--sports-accent-rgb), .32);
    outline: none;
}

.sports-page .sports-chat-link:active {
    transform: translateY(0) scale(.96);
}

@media (max-width: 1380px) {
    .sports-page .sports-category-nav {
        grid-template-columns: repeat(5, 1fr);
    }

    .sports-page .sports-category-link:nth-child(5) {
        border-right: 0;
    }

    .sports-page .sports-category-link:nth-child(-n + 5) {
        border-bottom: 1px solid var(--sports-line);
    }

    .sports-page .sports-content-layout {
        grid-template-columns: minmax(320px, .8fr) minmax(470px, 1.25fr);
    }

    .sports-page .bet-panel {
        position: relative;
        top: auto;
        grid-column: 1 / -1;
        min-height: 0;
    }

    .sports-page .bet-panel-inner {
        display: grid;
        grid-template-columns: 1.1fr .9fr;
    }

    .sports-page .bet-panel-main {
        border-right: 1px solid var(--sports-line);
    }
}

@media (max-width: 980px) {
    .sports-page {
        padding: 20px 12px 28px;
    }

    .sports-page .sports-content-layout {
        grid-template-columns: 1fr;
    }

    .sports-page .event-panel, .sports-page .market-panel, .sports-page .bet-panel {
        min-height: 0;
    }

    .sports-page .event-panel {
        max-height: 620px;
        overflow: auto;
    }

    .sports-page .bet-panel {
        grid-column: auto;
    }

    .sports-page .bet-panel-inner {
        grid-template-columns: 1fr;
    }

    .sports-page .bet-panel-main {
        border-right: 0;
    }
}

@media (max-width: 700px) {
    .sports-page {
        padding: 16px 8px 22px;
    }

    .sports-page .sports-category-nav {
        display: flex;
        min-height: 82px;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .sports-page .sports-category-nav::-webkit-scrollbar {
        display: none;
    }

    .sports-page .sports-category-link {
        flex: 0 0 84px;
        border-bottom: 0 !important;
    }

    .sports-page .sports-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .sports-page .sports-toolbar-group, .sports-page .sports-toolbar-actions {
        justify-content: space-between;
    }

    .sports-page .sports-search {
        width: 100%;
    }

    .sports-page .market-hero {
        grid-template-columns: 1fr 54px 1fr;
        padding: 12px 10px;
    }

    .sports-page .market-team {
        gap: 7px;
    }

    .sports-page .market-team-logo {
        flex-basis: 34px;
        width: 34px;
        height: 34px;
        font-size: 8px;
    }

    .sports-page .market-team-name {
        font-size: 9px;
    }

    .sports-page .market-ball {
        font-size: 22px;
    }

    .sports-page .market-group-body, .sports-page .market-group-body.two-columns {
        grid-template-columns: 1fr;
    }

    .sports-page .sports-chat-link {
        right: 16px;
        bottom: 16px;
        width: 44px;
        height: 44px;
    }
}

@media (max-width: 480px) {
    .sports-page {
        padding-right: 6px;
        padding-left: 6px;
    }

    .sports-page .sports-content-layout {
        gap: 7px;
    }

    .sports-page .match-card {
        padding-left: 14px;
    }

    .sports-page .match-odds {
        gap: 4px;
    }

    .sports-page .odd-link {
        min-height: 31px;
        font-size: 10px;
    }

    .sports-page .bet-button-row {
        grid-template-columns: 78px 1fr;
    }
}

/* =========================================================
   GAME INTERFACE — 파워볼 / YAHO 테마
   공통 변수 → 제공사·게임 탭 → 게임 화면·선택 → 베팅카트 → 반응형
   모든 전용 스타일은 .game-interface 안에서만 적용됩니다.
   ========================================================= */
.game-interface, .game-interface * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.game-interface {
    /* YAHO 공통 배경·텍스트·강조색을 그대로 사용합니다. */
    --game-bg: var(--surface);
    --game-surface: #1b1510;
    --game-surface-2: #291f18;
    --game-surface-3: #2c2119;
    --game-surface-4: #392b21;
    --game-line: #49382a;
    --game-line-accent: rgba(227, 180, 103, .34);
    --game-text: var(--text);
    --game-text-soft: var(--muted);
    --game-text-dim: #a68973;
    --game-accent: var(--accent);
    --game-accent-light: #e3b467;
    --game-accent-border: #d8a85c;
    --game-accent-rgb: 227, 180, 103;
    --game-primary-gradient: linear-gradient(180deg, #e8a844, #b8873f);
    --game-on-accent: #1a1512;
    --sports-line: var(--game-line);
    --sports-positive: #28b884;
    --sports-danger: #e85d68;
    --font-sub: PageSans, 'Noto Sans KR', 'Malgun Gothic', sans-serif;
    font-family: inherit;
    position: relative;
    z-index: 1;
    width: 100%;
    min-height: 100vh;
    padding: 28px 18px 38px;
    background: radial-gradient(circle at 45% -12%, rgba(var(--game-accent-rgb), .11), transparent 30%), linear-gradient(180deg, var(--game-bg) 0%, var(--game-bg) 100%);
    color: var(--game-text);
}

.game-interface * {
    box-sizing: border-box;
}

.game-interface a {
    -webkit-tap-highlight-color: transparent;
}

.game-interface .game-interface-shell {
    width: min(1660px, 100%);
    margin: 0 auto;
}

.game-interface .provider-tabs {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    min-height: 50px;
    overflow: hidden;
    border: 1px solid var(--game-line-accent);
    border-bottom: 0;
    border-radius: 8px 8px 0 0;
    background: var(--game-surface);
}

.game-interface .provider-tab {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-width: 0;
    padding: 0 12px;
    border-right: 1px solid rgba(var(--game-accent-rgb), .20);
    color: var(--game-text-soft);
    font-family: var(--font-sub);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .35px;
    transition: background .2s ease, color .2s ease, box-shadow .2s ease, transform .16s ease;
}

.game-interface .provider-tab:last-child {
    border-right: 0;
}

.game-interface .provider-tab:hover, .game-interface .provider-tab:focus-visible {
    background: rgba(var(--game-accent-rgb), .08);
    color: var(--game-accent-light);
    outline: none;
}

.game-interface .provider-tab:active {
    transform: scale(.985);
}

.game-interface .provider-tab.is-selected {
    background: var(--game-primary-gradient);
    color: var(--game-on-accent);
    box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .28);
}

.game-interface .provider-mark {
    position: relative;
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    flex: 0 0 auto;
    border: 1px solid rgba(var(--game-accent-rgb), .38);
    border-radius: 50%;
    background: var(--game-surface-2);
    color: var(--game-accent);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0;
    box-shadow: 0 0 12px rgba(var(--game-accent-rgb), .08);
}

.game-interface .provider-tab.is-selected .provider-mark {
    border-color: rgba(0, 0, 0, .34);
    background: var(--game-surface);
    color: var(--game-accent-light);
}

.game-interface .provider-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.game-interface .game-mode-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 39px;
    margin-bottom: 8px;
    overflow: hidden;
    border: 1px solid var(--game-line-accent);
    background: var(--game-bg);
}

.game-interface .game-mode-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    border-right: 1px solid var(--game-line-accent);
    color: var(--game-text-soft);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .35px;
    transition: background .2s ease, color .2s ease, box-shadow .2s ease;
}

.game-interface .game-mode-tab:last-child {
    border-right: 0;
}

.game-interface .game-mode-tab:hover, .game-interface .game-mode-tab:focus-visible {
    background: rgba(var(--game-accent-rgb), .07);
    color: var(--game-accent-light);
    outline: none;
}

.game-interface .game-mode-tab.is-selected {
    color: var(--game-accent-light);
    background: rgba(var(--game-accent-rgb), .095);
    box-shadow: inset 0 -2px 0 var(--game-accent);
}

.game-interface .game-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(270px, 300px);
    gap: 10px;
    align-items: start;
}

.game-interface .game-content {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(420px, 1.42fr) minmax(390px, .96fr);
    gap: 8px;
    min-height: 610px;
}

.game-interface .game-stage {
    position: relative;
    min-width: 0;
    min-height: 610px;
    overflow: hidden;
    border: 1px solid var(--game-line);
    border-radius: 6px;
    background: radial-gradient(circle at 50% 46%, rgba(var(--game-accent-rgb), .055), transparent 34%), var(--game-surface);
    box-shadow: 0 18px 48px rgba(0, 0, 0, .28);
}

.game-interface .game-frame {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: var(--game-surface);
}

.game-interface .game-frame-placeholder {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: grid;
    place-items: center;
    pointer-events: none;
    color: var(--game-text-dim);
    font-family: var(--font-sub);
    font-size: clamp(34px, 5vw, 58px);
    font-weight: 500;
    letter-spacing: 1px;
}

.game-interface .game-frame-hint {
    position: absolute;
    left: 18px;
    bottom: 16px;
    z-index: 2;
    padding: 7px 10px;
    border: 1px solid rgba(var(--game-accent-rgb), .16);
    border-radius: 999px;
    background: rgba(7, 10, 12, .68);
    color: var(--game-text-dim);
    font-size: 9px;
    backdrop-filter: blur(8px);
}

.game-interface .market-board {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--game-line);
    border-radius: 6px;
    background: linear-gradient(180deg, rgba(41, 31, 24, .98), rgba(27, 21, 16, .99));
    box-shadow: 0 18px 48px rgba(0, 0, 0, .22);
}

.game-interface .market-status {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    min-height: 48px;
    padding: 6px;
    background: var(--game-surface);
    border-bottom: 1px solid var(--game-line);
}

.game-interface .status-item {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    align-items: center;
    min-width: 0;
    border: 1px solid rgba(var(--game-accent-rgb), .18);
    background: var(--game-surface-2);
}

.game-interface .status-label, .game-interface .status-value {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
}

.game-interface .status-label {
    color: var(--game-text-soft);
    font-size: 10px;
    font-weight: 700;
    background: rgba(var(--game-accent-rgb), .055);
}

.game-interface .status-value {
    color: var(--game-text);
    font-family: var(--font-sub);
    font-size: 12px;
    font-weight: 800;
}

.game-interface .status-value.is-highlight {
    color: var(--game-accent-light);
}

.game-interface .market-list {
    display: grid;
    gap: 8px;
    padding: 8px;
}

.game-interface .market-row {
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr);
    min-height: 82px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 5px;
    overflow: hidden;
    background: var(--game-surface-2);
}

.game-interface .market-row.is-combination {
    min-height: 216px;
}

.game-interface .market-label {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    border-right: 1px solid rgba(var(--game-accent-rgb), .16);
    color: var(--game-text-soft);
    font-size: 11px;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(180deg, rgba(var(--game-accent-rgb), .07), rgba(var(--game-accent-rgb), .025));
}

.game-interface .market-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    padding: 6px;
}

.game-interface .market-options.combination-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 1fr;
}

.game-interface .market-option {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 0;
    min-height: 68px;
    padding: 10px 8px;
    border: 1px solid rgba(var(--game-accent-rgb), .22);
    border-radius: 4px;
    background: linear-gradient(180deg, rgba(var(--game-accent-rgb), .075), rgba(var(--game-accent-rgb), .025)), var(--game-surface-2);
    color: var(--game-text);
    transition: border-color .18s ease, background .18s ease, color .18s ease, transform .16s ease, box-shadow .18s ease;
}

.game-interface .market-option:hover, .game-interface .market-option:focus-visible {
    border-color: rgba(var(--game-accent-rgb), .55);
    background: linear-gradient(180deg, rgba(var(--game-accent-rgb), .13), rgba(var(--game-accent-rgb), .04)), var(--game-surface-2);
    color: var(--game-text);
    outline: none;
}

.game-interface .market-option:active {
    transform: scale(.985);
}

.game-interface .market-option.is-selected {
    border-color: var(--game-accent);
    background: var(--game-primary-gradient);
    color: var(--game-on-accent);
    box-shadow: 0 0 18px rgba(var(--game-accent-rgb), .19);
}

.game-interface .market-option.is-selected .option-odds {
    color: var(--game-on-accent);
}

.game-interface .option-symbols {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
    min-height: 28px;
    white-space: nowrap;
}

.game-interface .option-token {
    display: inline-grid;
    place-items: center;
    min-width: 30px;
    height: 30px;
    padding: 0 6px;
    border: 1px solid rgba(var(--game-accent-rgb), .46);
    border-radius: 50%;
    background: var(--game-surface);
    color: var(--game-accent-light);
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .025);
}

.game-interface .option-token.alt {
    background: var(--game-primary-gradient);
    color: var(--game-on-accent);
    border-color: var(--game-accent);
}

.game-interface .option-plus {
    color: var(--game-text-dim);
    font-family: var(--font-sub);
    font-size: 18px;
    font-weight: 700;
}

.game-interface .market-option.is-selected .option-token {
    border-color: rgba(0, 0, 0, .30);
    background: var(--game-surface);
    color: var(--game-accent-light);
}

.game-interface .market-option.is-selected .option-token.alt {
    background: var(--game-surface-4);
    color: var(--game-accent-light);
}

.game-interface .market-option.is-selected .option-plus {
    color: var(--game-on-accent);
}

.game-interface .option-odds {
    color: var(--game-accent-light);
    font-family: var(--font-sub);
    font-size: 11px;
    font-weight: 700;
}

.game-interface .sports-panel {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--game-line);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(41, 31, 24, .98), rgba(7, 10, 12, .98));
    box-shadow: 0 18px 46px rgba(0, 0, 0, .20);
}

.game-interface .bet-panel {
    position: sticky;
    top: 16px;
    min-height: 610px;
}

.game-interface .bet-live-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 46px;
    padding: 0 12px;
    border-bottom: 1px solid var(--game-line);
    background: var(--game-surface);
}

.game-interface .bet-live-label {
    display: flex;
    align-items: center;
    gap: 7px;
    color: var(--game-text);
    font-size: 10px;
    font-weight: 700;
}

.game-interface .bet-live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sports-positive);
    box-shadow: 0 0 8px rgba(40, 184, 132, .55);
}

.game-interface .switch-link {
    position: relative;
    width: 35px;
    height: 20px;
    border-radius: 12px;
    background: var(--game-surface-4);
    transition: background .2s ease;
}

.game-interface .switch-link::after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--game-text);
    transition: transform .2s ease, box-shadow .2s ease;
}

.game-interface .switch-link.is-active {
    background: var(--game-accent-border);
}

.game-interface .switch-link.is-active::after {
    transform: translateX(15px);
    box-shadow: 0 0 8px rgba(255, 255, 255, .25);
}

.game-interface .bet-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid var(--game-line);
}

.game-interface .bet-tab-link {
    min-height: 42px;
    padding: 12px 8px;
    color: var(--game-text-dim);
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    transition: all .18s ease;
}

.game-interface .bet-tab-link:hover, .game-interface .bet-tab-link:focus-visible, .game-interface .bet-tab-link.is-active {
    background: rgba(var(--game-accent-rgb), .10);
    color: var(--game-accent-light);
    outline: none;
}

.game-interface .bet-tab-link.is-active {
    box-shadow: inset 0 -2px 0 var(--game-accent);
}

.game-interface .bet-summary {
    padding: 12px;
    border-bottom: 1px solid var(--game-line);
}

.game-interface .bet-summary-row, .game-interface .bet-total-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 28px;
    color: var(--game-text-soft);
    font-size: 10px;
}

.game-interface .bet-summary-row strong, .game-interface .bet-total-row strong {
    color: var(--game-text);
    font-family: var(--font-sub);
    font-size: 11px;
}

.game-interface .bet-summary-row:first-child strong {
    color: var(--game-accent-light);
}

.game-interface .bet-picks {
    display: grid;
    gap: 7px;
    max-height: 218px;
    min-height: 82px;
    padding: 10px 12px 2px;
    overflow-y: auto;
}

.game-interface .bet-empty {
    padding: 30px 16px;
    color: var(--game-text-dim);
    font-size: 10px;
    line-height: 1.6;
    text-align: center;
}

.game-interface .bet-pick {
    position: relative;
    padding: 9px 28px 9px 9px;
    border: 1px solid rgba(var(--game-accent-rgb), .16);
    border-radius: 5px;
    background: rgba(var(--game-accent-rgb), .045);
}

.game-interface .bet-pick-title {
    margin-bottom: 4px;
    color: var(--game-text);
    font-size: 9px;
    line-height: 1.35;
}

.game-interface .bet-pick-meta {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    color: var(--game-text-dim);
    font-size: 9px;
}

.game-interface .bet-pick-meta strong {
    color: var(--game-accent-light);
    font-family: var(--font-sub);
}

.game-interface .bet-remove-link {
    position: absolute;
    top: 7px;
    right: 7px;
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    color: var(--game-text-dim);
    font-size: 12px;
}

.game-interface .bet-remove-link:hover, .game-interface .bet-remove-link:focus-visible {
    background: rgba(232, 93, 104, .10);
    color: var(--sports-danger);
    outline: none;
}

.game-interface .bet-actions {
    padding: 10px 12px 14px;
}

.game-interface .bet-total-row {
    margin-bottom: 4px;
}

.game-interface .bet-amount-field {
    display: flex;
    align-items: center;
    min-height: 38px;
    margin: 8px 0;
    padding: 0 9px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 4px;
    background: var(--game-bg);
}

.game-interface .bet-amount-field input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--game-text);
    font-family: var(--font-sub);
    font-size: 11px;
    text-align: right;
}

.game-interface .bet-amount-field span {
    margin-left: 7px;
    color: var(--game-text-dim);
    font-size: 9px;
}

.game-interface .bet-button-row {
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 7px;
}

.game-interface .bet-action-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 4px;
    background: var(--game-surface-2);
    color: var(--game-text-soft);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .4px;
    transition: all .2s ease;
}

.game-interface .bet-action-link:hover, .game-interface .bet-action-link:focus-visible {
    border-color: rgba(var(--game-accent-rgb), .38);
    color: var(--game-accent-light);
    outline: none;
}

.game-interface .bet-action-link:active {
    transform: scale(.98);
}

.game-interface .bet-action-link.primary {
    border-color: var(--game-accent-border);
    background: var(--game-primary-gradient);
    color: var(--game-on-accent);
    box-shadow: 0 0 16px rgba(var(--game-accent-rgb), .14);
}

.game-interface .bet-action-link.primary:hover, .game-interface .bet-action-link.primary:focus-visible {
    color: var(--game-on-accent);
    box-shadow: 0 0 22px rgba(var(--game-accent-rgb), .28);
    transform: translateY(-1px);
}

.game-interface .bet-limit {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin-top: 9px;
    color: var(--game-text-dim);
    font-size: 9px;
}

.game-interface .bet-limit strong {
    color: var(--game-text-dim);
    font-weight: 600;
}

@media (max-width: 1420px) {
    .game-interface .game-layout {
        grid-template-columns: minmax(0, 1fr) 286px;
    }

    .game-interface .game-content {
        grid-template-columns: minmax(390px, 1.3fr) minmax(350px, .9fr);
    }
}

@media (max-width: 1180px) {
    .game-interface .game-layout {
        grid-template-columns: 1fr;
    }

    .game-interface .bet-panel {
        position: relative;
        top: auto;
        min-height: 0;
    }

    .game-interface .bet-panel-inner {
        display: grid;
        grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
    }

    .game-interface .bet-panel-main {
        border-right: 1px solid var(--game-line);
    }
}

@media (max-width: 930px) {
    .game-interface {
        padding: 20px 12px 30px;
    }

    .game-interface .provider-tabs {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .game-interface .provider-tab {
        min-height: 48px;
        border-bottom: 1px solid rgba(var(--game-accent-rgb), .18);
    }

    .game-interface .provider-tab:nth-child(3n) {
        border-right: 0;
    }

    .game-interface .provider-tab:nth-child(n + 4) {
        border-bottom: 0;
    }

    .game-interface .game-content {
        grid-template-columns: 1fr;
    }

    .game-interface .game-stage {
        min-height: 470px;
    }

    .game-interface .bet-panel-inner {
        grid-template-columns: 1fr;
    }

    .game-interface .bet-panel-main {
        border-right: 0;
    }
}

@media (max-width: 640px) {
    .game-interface {
        padding-right: 8px;
        padding-left: 8px;
    }

    .game-interface .provider-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .game-interface .provider-tab:nth-child(3n) {
        border-right: 1px solid rgba(var(--game-accent-rgb), .20);
    }

    .game-interface .provider-tab:nth-child(2n) {
        border-right: 0;
    }

    .game-interface .provider-tab:nth-child(n + 4) {
        border-bottom: 1px solid rgba(var(--game-accent-rgb), .18);
    }

    .game-interface .provider-tab:last-child {
        grid-column: 1 / -1;
        border-right: 0;
        border-bottom: 0;
    }

    .game-interface .game-mode-tabs {
        grid-template-columns: 1fr;
    }

    .game-interface .game-mode-tab {
        min-height: 40px;
        border-right: 0;
        border-bottom: 1px solid var(--game-line-accent);
    }

    .game-interface .game-mode-tab:last-child {
        border-bottom: 0;
    }

    .game-interface .game-stage {
        min-height: 380px;
    }

    .game-interface .market-status {
        grid-template-columns: 1fr;
    }

    .game-interface .market-row, .game-interface .market-row.is-combination {
        grid-template-columns: 1fr;
    }

    .game-interface .market-label {
        min-height: 34px;
        border-right: 0;
        border-bottom: 1px solid rgba(var(--game-accent-rgb), .16);
    }

    .game-interface .market-options, .game-interface .market-options.combination-options {
        grid-template-columns: 1fr 1fr;
    }

    .game-interface .bet-button-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 420px) {
    .game-interface .provider-mark {
        display: none;
    }

    .game-interface .market-options, .game-interface .market-options.combination-options {
        grid-template-columns: 1fr;
    }

    .game-interface .option-symbols {
        min-height: 24px;
    }
}

/* =========================================================
   CHARGE PAGE — 충전신청 (추가 전용)
   기존 공통·스포츠·파워볼 스타일은 그대로 유지합니다.
   ========================================================= */
.charge-page {
    --charge-panel: #291f18;
    --charge-panel-deep: #1b1510;
    --charge-border: #49382a;
    --charge-danger: #ff6779;
    --charge-warning: #e3b467;
    padding: 12px 11px 38px;
    background: var(--surface);
    color: var(--text);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.6;
}

.charge-page [hidden] {
    display: none !important;
}

.charge-page__inner {
    max-width: 1660px;
    margin: 0 auto;
}

.charge-page__title {
    margin: 0 0 12px;
    padding: 9px 16px;
    border-bottom: 1px solid #7e6842;
    border-radius: 8px 8px 0 0;
    background: linear-gradient(110deg, #1b1510, #2c2119);
    font-size: 16px;
    line-height: 22px;
    text-align: center;
}

.charge-page__tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    margin: 0 3px 13px;
}

.charge-page__tab {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border: 1px solid var(--charge-border);
    border-radius: 5px;
    background: var(--charge-panel);
    color: var(--muted);
    font-size: 13px;
    transition: background 180ms ease, border-color 180ms ease, color 180ms ease;
}

.charge-page__tab.is-active {
    border-color: #d8a85c;
    background: #ff3d6a12;
    color: var(--accent);
}

.charge-page__notice {
    padding: 12px 11px;
    border: 1px solid var(--charge-border);
    border-radius: 6px;
    background: var(--charge-panel);
    box-shadow: 0 2px 8px #0003;
}

.charge-page__notice h2 {
    margin: 0 0 21px;
    color: var(--accent);
    font-size: 14px;
}

.charge-page__notice-list {
    display: grid;
    gap: 20px;
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: charge-notice;
    color: var(--muted);
}

.charge-page__notice-list li {
    position: relative;
    padding-left: 18px;
    counter-increment: charge-notice;
}

.charge-page__notice-list li::before {
    position: absolute;
    top: 0;
    left: 0;
    color: var(--accent);
    content: counter(charge-notice);
}

.charge-page__notice-list .charge-page__danger {
    color: var(--charge-danger);
}

.charge-page__notice-list .charge-page__warning {
    color: var(--charge-warning);
}

.charge-page__footnote {
    position: relative;
    margin: 20px 0 0;
    padding-left: 18px;
    color: var(--charge-warning);
}

.charge-page__footnote::before {
    position: absolute;
    left: 0;
    content: '*';
    color: var(--accent);
}

.charge-page__form {
    margin: 0;
}

.charge-page__categories {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
    min-height: 60px;
    margin: 15px 0 20px;
    padding: 14px;
    border: 1px dashed #66482e;
    background: #ff3d6a14;
}

.charge-page__categories label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    cursor: pointer;
    font-size: 13px;
}

.charge-page__categories input {
    width: 15px;
    height: 15px;
    margin: 0;
    accent-color: var(--accent);
}

.charge-page__fields {
    border: 1px solid var(--charge-border);
}

.charge-page__row {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    min-height: 51px;
    background: var(--charge-panel-deep);
}

.charge-page__row + .charge-page__row {
    border-top: 1px solid var(--charge-border);
}

.charge-page__row:first-child {
    min-height: 69px;
}

.charge-page__row:nth-child(2) {
    min-height: 60px;
}

.charge-page__row-title {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    border-right: 1px solid var(--charge-border);
    background: var(--charge-panel);
    color: var(--accent);
    font-size: 13px;
}

.charge-page__row-content {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
    padding: 6px 10px;
    font-size: 13px;
}

.charge-page__row-content > label {
    margin-right: 17px;
}

.charge-page__input {
    max-width: 100%;
    min-height: 32px;
    border: 1px solid #503d2e;
    border-radius: 0;
    padding: 4px 8px;
    background: #2c2119;
    color: var(--text);
    font: inherit;
    outline-offset: 3px;
}

.charge-page__input--password {
    width: 80px;
}

.charge-page__input--amount {
    width: 142px;
    margin-right: 16px;
    text-align: right;
}

.charge-page__input:focus-visible {
    outline: 2px solid var(--accent);
}

.charge-page__amounts {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
}

.charge-page__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 7px 10px;
    border: 1px solid #d8a85c;
    border-radius: 5px;
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
    font-size: 13px;
    line-height: 22px;
    cursor: pointer;
    transition: transform 160ms ease, filter 160ms ease, box-shadow 160ms ease;
}

.charge-page__button--edit {
    border-color: #7e6d52;
    background: #433a2c;
    color: #ffd4db;
}

.charge-page__depositor {
    margin: 0;
}

.charge-page__depositor span {
    color: var(--charge-warning);
    font-size: 11px;
    font-weight: 400;
}

.charge-page__button--inquiry {
    margin-left: 7px;
    border-color: #66482e;
    border-radius: 999px;
    background: #ff3d6a18;
    color: var(--accent);
}

.charge-page__actions {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 20px;
}

.charge-page__button--submit, .charge-page__button--cancel {
    min-width: 112px;
    border-radius: 999px;
}

.charge-page__button--cancel {
    border-color: #514135;
    background: linear-gradient(140deg, #291f18, #392b21);
    color: var(--text);
}

.charge-page__status {
    margin: 14px 0 0;
    padding: 10px 14px;
    border: 1px solid var(--charge-border);
    border-radius: 6px;
    background: var(--charge-panel);
    color: var(--accent);
    font-size: 13px;
}

.charge-page__history {
    min-height: 280px;
    padding: 28px 20px;
    border: 1px solid var(--charge-border);
    border-radius: 6px;
    background: var(--charge-panel);
    text-align: center;
}

.charge-page__history h2 {
    margin: 0 0 16px;
    color: var(--accent);
    font-size: 18px;
}

.charge-page__history p {
    margin: 0;
    color: var(--muted);
}

.charge-page__sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

.charge-page a:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
}

@media (hover: hover) {
    .charge-page__button:hover {
        filter: brightness(1.08);
        box-shadow: 0 3px 12px #ff3d6a20;
    }

    .charge-page__tab:hover {
        color: var(--accent);
        border-color: #66482e;
    }
}

@media (prefers-reduced-motion: no-preference) {
    .charge-page__button:active {
        transform: scale(.97);
    }
}

@media (max-width: 700px) {
    .charge-page {
        padding: 12px 12px 28px;
        font-size: 13px;
    }

    .charge-page__notice-list {
        gap: 16px;
    }

    .charge-page__categories {
        gap: 12px 16px;
    }

    .charge-page__row {
        grid-template-columns: 90px minmax(0, 1fr);
    }

    .charge-page__row-title {
        padding: 10px 6px;
        font-size: 12px;
    }

    .charge-page__row-content {
        gap: 8px;
        padding: 10px;
    }

    .charge-page__row-content > label {
        flex-basis: 100%;
        margin: 0;
    }

    .charge-page__input--password {
        flex: 1;
        min-width: 50px;
    }

    .charge-page__input--amount {
        width: 100%;
        margin: 0;
    }

    .charge-page__amounts {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .charge-page__amounts .charge-page__button {
        padding-inline: 4px; font-size: 12px;
    }

    .charge-page__depositor span {
        display: block;
        margin-top: 3px;
    }

    .charge-page__button--inquiry {
        margin-left: 0;
    }
}

/* LEAGUE SEARCH LAYER: YAHO - appended styles only */
.sports-page .league-layer-anchor {
    position: relative;
    flex: 0 0 auto;
}

.sports-page .league-search-layer {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    z-index: 420;
    width: 320px;
    max-width: calc(100vw - 28px);
    max-height: min(720px, calc(100vh - 150px));
    overflow: hidden;
    border: 1px solid rgba(227, 180, 103, .28);
    border-radius: 9px;
    background: linear-gradient(180deg, rgba(41, 31, 24, .99), rgba(7, 10, 12, .995));
    box-shadow: 0 22px 55px rgba(0, 0, 0, .72), 0 0 0 1px rgba(255, 255, 255, .025) inset, 0 0 24px rgba(227, 180, 103, .08);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px) scale(.985);
    transform-origin: top right;
    transition: opacity .2s ease, visibility .2s ease, transform .22s cubic-bezier(.22, .8, .24, 1);
}

.sports-page .league-search-layer.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}

.sports-page .league-layer-inner {
    display: flex;
    flex-direction: column;
    min-height: 0;
    max-height: inherit;
    padding: 7px;
}

.sports-page .league-favorite-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 34px;
    padding: 0 11px;
    border: 1px solid rgba(227, 180, 103, .45);
    border-radius: 6px;
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
    font-size: 11px;
    font-weight: 800;
    box-shadow: 0 4px 14px rgba(227, 180, 103, .18);
    transition: filter .2s ease, transform .2s ease, box-shadow .2s ease;
}

.sports-page .league-favorite-toggle:hover, .sports-page .league-favorite-toggle:focus-visible {
    filter: brightness(1.08);
    box-shadow: 0 6px 18px rgba(227, 180, 103, .30);
    outline: none;
}

.sports-page .league-favorite-toggle:active {
    transform: scale(.985);
}

.sports-page .league-favorite-main {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    gap: 7px;
}

.sports-page .league-favorite-icon {
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: rgba(27, 21, 16, .92);
    color: var(--sports-accent-light);
    font-size: 10px;
}

.sports-page .league-favorite-arrow {
    font-size: 13px;
    transition: transform .2s ease;
}

.sports-page .league-favorite-toggle.is-active .league-favorite-arrow {
    transform: rotate(180deg);
}

.sports-page .league-layer-search {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    margin-top: 7px;
    padding: 0 11px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 5px;
    background: #1b1510;
    color: var(--sports-text-dim);
}

.sports-page .league-layer-search:focus-within {
    border-color: rgba(227, 180, 103, .42);
    box-shadow: 0 0 0 2px rgba(227, 180, 103, .07);
}

.sports-page .league-layer-search input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #fff;
    font-family: var(--font-kr);
    font-size: 11px;
}

.sports-page .league-layer-search input::placeholder {
    color: #a68973;
}

.sports-page .league-layer-search-icon {
    color: var(--accent);
    font-size: 17px;
    line-height: 1;
}

.sports-page .league-layer-content {
    min-height: 0;
    margin-top: 7px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: #66482e #1b1510;
}

.sports-page .league-layer-content::-webkit-scrollbar {
    width: 5px;
}

.sports-page .league-layer-content::-webkit-scrollbar-track {
    background: #1b1510;
}

.sports-page .league-layer-content::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: #66482e;
}

.sports-page .league-layer-section-title {
    min-height: 42px;
    display: flex;
    align-items: center;
    padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, .08);
    background: linear-gradient(180deg, #392b21 0%, #291f18 100%);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.sports-page .league-sport-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 39px;
    margin-top: 1px;
    padding: 0 10px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 4px;
    background: linear-gradient(180deg, #2c2119, #291f18);
    color: #f9ebd1;
    font-size: 11px;
    font-weight: 700;
    transition: border-color .2s ease, background .2s ease, color .2s ease;
}

.sports-page .league-sport-toggle:hover, .sports-page .league-sport-toggle:focus-visible {
    border-color: rgba(227, 180, 103, .34);
    background: linear-gradient(180deg, #392b21, #2c2119);
    color: var(--sports-accent-light);
    outline: none;
}

.sports-page .league-sport-name {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.sports-page .league-sport-arrow {
    font-size: 14px;
    transition: transform .2s ease;
}

.sports-page .league-sport-toggle[aria-expanded="false"] .league-sport-arrow {
    transform: rotate(180deg);
}

.sports-page .league-list {
    display: grid;
    gap: 4px;
    padding-top: 4px;
}

.sports-page .league-list.is-collapsed {
    display: none;
}

.sports-page .league-layer-item {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) 24px;
    align-items: center;
    gap: 6px;
    min-height: 31px;
    padding: 0 8px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 4px;
    background: linear-gradient(180deg, #2c2119, #1b1510);
    color: #f9ebd1;
    font-size: 10px;
    font-weight: 600;
    transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}

.sports-page .league-layer-item:hover, .sports-page .league-layer-item:focus-visible {
    border-color: rgba(227, 180, 103, .38);
    background: linear-gradient(180deg, #392b21, #291f18);
    color: #fff;
    outline: none;
}

.sports-page .league-layer-item:active {
    transform: scale(.992);
}

.sports-page .league-layer-item.is-selected {
    border-color: rgba(227, 180, 103, .66);
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
    box-shadow: 0 0 12px rgba(227, 180, 103, .14);
}

.sports-page .league-item-favorite {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    color: #caad8d;
    font-size: 11px;
    line-height: 1;
    border-radius: 4px;
    transition: color .18s ease, background .18s ease, transform .18s ease;
}

.sports-page .league-item-favorite:hover {
    background: rgba(227, 180, 103, .13);
    color: var(--sports-accent-light);
    transform: scale(1.08);
}

.sports-page .league-layer-item.is-favorite .league-item-favorite {
    color: var(--accent);
    text-shadow: 0 0 8px rgba(227, 180, 103, .55);
}

.sports-page .league-layer-item.is-selected .league-item-favorite {
    color: #fff;
    text-shadow: none;
}

.sports-page .league-item-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-page .league-item-flag {
    justify-self: end;
    font-size: 13px;
    line-height: 1;
}

.sports-page .league-layer-empty {
    display: none;
    padding: 20px 12px;
    color: var(--sports-text-dim);
    font-size: 11px;
    text-align: center;
}

.sports-page .league-layer-empty.is-visible {
    display: block;
}

@media (max-width: 700px) {
    .sports-page .league-layer-anchor {
        position: static;
    }

    .sports-page .sports-toolbar {
        position: relative;
    }

    .sports-page .league-search-layer {
        top: calc(100% + 8px);
        right: 0;
        left: 0;
        width: 100%;
        max-width: none;
        max-height: min(70vh, 620px);
        transform-origin: top center;
    }
}

@media (max-width: 480px) {
    .sports-page .league-search-layer {
        position: absolute;
        top: calc(100% + 8px);
        right: 0;
        bottom: auto;
        left: 0;
        width: 100%;
        max-height: min(60vh, 520px);
        border-radius: 12px;
        transform: translateY(14px) scale(.99);
        transform-origin: top center;
    }

    .sports-page .league-search-layer.is-open {
        transform: translateY(0) scale(1);
    }

    .sports-page .league-layer-inner {
        padding: 8px;
    }
}

.sports-page .league-search-layer [hidden] {
    display: none !important;
}

.sports-page .league-item-favorite:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 1px;
}

/* =========================================================
   SIGNUP MODAL — 회원가입 팝업 (원본 CSS 유지 / 추가 전용)
   ========================================================= */
.signup-modal {
    position: fixed;
    inset: 0;
    display: none;
    width: min(850px, calc(100% - 32px));
    max-width: none;
    max-height: calc(100vh - 32px);
    max-height: calc(100dvh - 32px);
    margin: auto;
    padding: 20px 18px 18px;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid #66482e;
    border-radius: 18px;
    background: linear-gradient(150deg, #2a2018, #18120e 70%);
    color: var(--text);
    box-shadow: 0 24px 80px #0009, inset 0 1px 0 #fff1;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
}

.signup-modal[open] {
    display: block;
}

.signup-modal [hidden] {
    display: none !important;
}

.signup-modal::backdrop {
    background: #050709cc;
    backdrop-filter: blur(5px);
}

.signup-modal__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
}

.signup-modal__header h2 {
    margin: 0;
    color: var(--accent);
    font-size: 23px;
}

.signup-modal__close {
    display: grid;
    place-items: center;
    flex: none;
    width: 36px;
    height: 36px;
    border: 1px solid #473629;
    border-radius: 50%;
    color: var(--muted);
    font: 26px/1 Arial, sans-serif;
}

.signup-form {
    margin: 0;
}

.signup-form__fields {
    overflow: hidden;
    border: 1px solid #503d2e;
    border-radius: 6px;
}

.signup-form__row {
    display: grid;
    grid-template-columns: 104px minmax(0, 1fr);
    min-height: 46px;
    background: #1b1510;
}

.signup-form__row + .signup-form__row {
    border-top: 1px solid #503d2e;
}

.signup-form__label {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 6px;
    border-right: 1px solid #503d2e;
    background: #291f18;
    color: var(--accent);
    text-align: center;
    font-size: 12px;
}

.signup-form__cell {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    min-width: 0;
    padding: 6px 10px;
}

.signup-form__cell--stack {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    padding-block: 9px; }

.signup-form__line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    min-width: 0;
}

.signup-form__input, .signup-form select {
    min-width: 0;
    min-height: 32px;
    max-width: 100%;
    padding: 5px 8px;
    border: 1px solid #503d2e;
    border-radius: 3px;
    background: #2c2119;
    color: var(--text);
    font: inherit;
    font-weight: 400;
}

.signup-form__input {
    width: 220px;
}

.signup-form__input--phone {
    width: 180px;
}

.signup-form__input--code {
    width: 92px;
}

.signup-form__input--account {
    flex: 1 1 170px;
    width: 220px;
}

.signup-form__input--holder {
    width: 100px;
}

.signup-form__input::placeholder {
    color: #a68973;
}

.signup-form__input:focus-visible, .signup-form select:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 2px;
}

.signup-form__help {
    margin: 0;
    color: var(--muted);
    font-size: 12px;
    overflow-wrap: anywhere;
}

.signup-form__birth {
    gap: 5px;
}

.signup-form__birth label {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.signup-form__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 6px 12px;
    border: 1px solid #d8a85c;
    border-radius: 5px;
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
    white-space: nowrap;
    font-size: 12px;
    cursor: pointer;
    transition: filter 180ms ease, box-shadow 180ms ease;
}

.signup-form__actions {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.signup-form__button--primary, .signup-form__button--cancel {
    min-width: 100px;
    min-height: 40px;
    border-radius: 999px;
}

.signup-form__button--cancel {
    border-color: #514135;
    background: linear-gradient(140deg, #291f18, #392b21);
    color: var(--text);
}

.signup-form__status {
    margin: 12px 0 0;
    padding: 10px 12px;
    border: 1px solid #503d2e;
    border-radius: 5px;
    background: #291f18;
    color: var(--accent);
    font-size: 13px;
}

.signup-modal a:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 3px;
}

@media (hover: hover) {
    .signup-form__button:hover {
        filter: brightness(1.1);
        box-shadow: 0 3px 14px #ff3d6a22;
    }

    .signup-modal__close:hover {
        color: var(--accent);
        border-color: #66482e;
    }
}

@media (max-width: 600px) {
    .signup-modal {
        width: calc(100% - 20px);
        max-height: calc(100dvh - 20px);
        padding: 14px 10px;
        border-radius: 12px;
    }

    .signup-modal__header {
        margin-bottom: 12px;
    }

    .signup-modal__header h2 {
        font-size: 21px;
    }

    .signup-form__row {
        grid-template-columns: 80px minmax(0, 1fr);
    }

    .signup-form__label {
        font-size: 11px;
        padding-inline: 4px; }

    .signup-form__cell {
        padding: 8px;
        gap: 8px;
    }

    .signup-form__input {
        width: 100%;
        font-size: 16px;
    }

    .signup-form select {
        font-size: 16px;
    }

    .signup-form__birth {
        flex-wrap: wrap;
    }

    .signup-form__input--code {
        width: 96px;
    }

    .signup-form__input--holder {
        width: 100%;
    }

    .signup-form__help {
        font-size: 11px;
    }
}

@media (prefers-reduced-motion: no-preference) {
    .signup-modal[open] {
        animation: signup-modal-enter 220ms cubic-bezier(.2, .7, .2, 1);
    }

    .signup-modal[open]::backdrop {
        animation: signup-backdrop-enter 220ms ease;
    }

    .signup-modal[open].is-closing {
        animation: signup-modal-leave 160ms ease both;
    }

    .signup-modal[open].is-closing::backdrop {
        animation: signup-backdrop-leave 160ms ease both;
    }

    @keyframes signup-modal-enter {
        from {
            opacity: 0;
            transform: translateY(16px) scale(.98);
        }

        to {
            opacity: 1;
            transform: none;
        }
    }

    @keyframes signup-modal-leave {
        from {
            opacity: 1;
            transform: none;
        }

        to {
            opacity: 0;
            transform: translateY(8px) scale(.99);
        }
    }

    @keyframes signup-backdrop-enter {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes signup-backdrop-leave {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
        }
    }
}

/* =========================================================
   YAHO COMMON CONTENT LAYOUT — 모든 비메인 페이지의 고정 제작 규칙
   기존 HTML/CSS/JS 보존. 색상은 최초 YAHO 메인 다크 네이비/옐로.
   .main-content / .main-content__section / .main-content__inner 유지.
   .main-content__inner.content-layout
     > .content-layout__main (페이지별 모든 콘텐츠)
     > aside.sports-panel.bet-panel (공통 베팅카트)
   숨기기: aside에 hidden 또는 is-hidden, 부모에 is-bet-hidden.
   제거/display:none 역시 Flex 특성상 빈 열 없이 콘텐츠가 자동 확장.
   ========================================================= */
.main-content .content-layout {
    --content-layout-gap: 16px;
    --bet-panel-width: 300px;
    display: flex;
    align-items: flex-start;
    gap: var(--content-layout-gap);
    width: 100%;
    max-width: var(--main-content-max-width, 1660px);
    margin-inline: auto; }

.main-content .content-layout > .content-layout__main {
    flex: 1 1 0%;
    min-width: 0;
}

.main-content .content-layout > .bet-panel {
    --sports-bg: var(--surface);
    --sports-surface: #1b1510;
    --sports-surface-2: #291f18;
    --sports-surface-3: #2c2119;
    --sports-surface-4: #392b21;
    --sports-line: #49382a;
    --sports-accent: var(--accent);
    --sports-accent-light: #e3b467;
    --sports-accent-rgb: 227, 180, 103;
    --sports-primary-gradient: linear-gradient(180deg, #e8a844, #b8873f);
    min-height: 100vh;
    padding: 14px 18px 34px;
    background: var(--surface);
}

.sports-page.virtual-sports-page .sports-shell {
    width: min(1660px, 100%);
}

.virtual-provider-nav {
    display: flex;
    align-items: stretch;
    gap: 34px;
    min-height: 38px;
    overflow-x: auto;
    border-bottom: 1px solid #49382a;
    scrollbar-width: none;
}

.virtual-provider-nav::-webkit-scrollbar {
    display: none;
}

.virtual-provider-link {
    position: relative;
    display: inline-flex;
    align-items: flex-start;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 50px;
    padding: 4px 2px 13px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 800;
    transition: color .18s ease;
}

.virtual-provider-link::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 2px;
    background: transparent;
    box-shadow: none;
    content: '';
}

.virtual-provider-link.is-active {
    color: #e3b467;
}

.virtual-provider-link.is-active::after {
    background: var(--accent);
    box-shadow: 0 0 9px #ef215188;
}

.virtual-game-nav {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
}

.virtual-game-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 70px;
    padding: 10px;
    border: 1px solid #49382a;
    border-radius: 12px;
    background: #1b1510;
    color: var(--text);
    font-size: 13px;
    font-weight: 800;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.virtual-game-link > span:last-child {
    display: grid;
    gap: 5px;
}

.virtual-game-link strong {
    font-size: 14px;
}

.virtual-game-link small {
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.virtual-game-link.is-active {
    border-color: #d8a85c;
    background: #ff3d6a12;
    box-shadow: 0 0 14px #ff3c692e, inset 0 0 0 1px #ff3d6a33;
}

.virtual-game-icon {
    display: grid;
    place-items: center;
    width: 14px;
    height: 18px;
    border-radius: 1px;
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
    font: 700 6px/1 Arial, sans-serif;
}

.virtual-league-nav {
    display: flex;
    justify-content: center;
    gap: 22px;
    margin: 25px 0 15px;
}

.virtual-league-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 78px;
    min-height: 40px;
    padding: 7px 18px;
    border-radius: 4px;
    background: #2c2119;
    color: var(--text);
    font-size: 12px;
    font-weight: 800;
    transition: filter .18s ease, transform .12s ease;
}

.virtual-league-link.is-active {
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
}

.virtual-video {
    position: relative;
    display: grid;
    place-items: center;
    width: 100%;
    aspect-ratio: 4.68 / 1;
    min-height: 230px;
    overflow: hidden;
    background: #000;
}

.virtual-video__play {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 76px;
    height: 76px;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.virtual-video__play span {
    width: 0;
    height: 0;
    margin-left: 8px;
    border-top: 35px solid transparent;
    border-bottom: 35px solid transparent;
    border-left: 59px solid #c8c8c8;
    filter: drop-shadow(0 2px 2px #0008);
}

.virtual-video.is-playing .virtual-video__play span {
    width: 39px;
    height: 55px;
    margin-left: 0;
    border: 0;
    border-right: 12px solid #c8c8c8;
    border-left: 12px solid #c8c8c8;
}

.virtual-video__status {
    position: absolute;
    right: 16px;
    bottom: 12px;
    color: #888;
    font-size: 11px;
}

.virtual-content-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 20px;
    margin-top: 25px;
    align-items: start;
}

.sports-page.virtual-sports-page .virtual-event-panel, .sports-page.virtual-sports-page .virtual-history-panel {
    min-height: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.sports-page.virtual-sports-page .event-group {
    margin-bottom: 12px;
    border: 0;
}

.sports-page.virtual-sports-page .event-date {
    min-height: 36px;
    padding: 0 12px;
    background: linear-gradient(110deg, #1b1510, #2c2119);
    color: var(--accent);
    font-size: 12px;
}

.sports-page.virtual-sports-page .event-date > span:last-child {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--text);
    font-size: 12px;
}

.virtual-collapse-link {
    display: inline-grid;
    place-items: center;
    width: 19px;
    height: 19px;
    border: 1px solid #66482e;
    border-radius: 4px;
    color: var(--accent);
    font: 800 13px/1 Arial, sans-serif;
}

.sports-page.virtual-sports-page .match-card {
    max-height: 112px;
    padding: 5px 3px 0;
    overflow: hidden;
    border-top: 0;
    background: transparent;
    transition: max-height .22s ease, padding .22s ease, opacity .16s ease;
}

.sports-page.virtual-sports-page .match-card::before {
    content: none;
}

.sports-page.virtual-sports-page .event-group.is-collapsed .match-card {
    max-height: 0;
    padding-block: 0; opacity: 0;
}

.sports-page.virtual-sports-page .virtual-match-odds {
    grid-template-columns: minmax(0, 1.36fr) 74px minmax(0, 1.36fr);
    gap: 6px;
}

.sports-page.virtual-sports-page .odd-link {
    min-height: 36px;
    border-color: #503d2e;
    border-radius: 7px;
    background: #291f18;
    color: var(--text);
    font-family: inherit;
    font-size: 12px;
}

.sports-page.virtual-sports-page .virtual-team-odd {
    justify-content: flex-end;
    gap: 10px;
    padding-inline: 13px; }

.sports-page.virtual-sports-page .virtual-team-odd:nth-child(3n) {
    justify-content: flex-start;
}

.sports-page.virtual-sports-page .virtual-team-odd strong {
    font-size: 12px;
}

.virtual-trend {
    margin-inline: 1px -6px; font: 900 17px/1 Arial, sans-serif;
}

.virtual-trend--up {
    color: var(--accent);
}

.virtual-trend--down {
    color: #a68973;
}

.virtual-history-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 40px;
}

.virtual-history-tabs {
    display: flex;
}

.virtual-history-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 122px;
    min-height: 40px;
    padding: 8px 15px;
    border-radius: 5px 5px 0 0;
    background: #2c2119;
    color: var(--text);
    font-size: 12px;
    font-weight: 800;
}

.virtual-history-tab.is-active {
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
}

.virtual-refresh-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 110px;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 5px;
    background: linear-gradient(180deg, #e8a844, #b8873f);
    color: #1a1512;
    font-size: 12px;
    font-weight: 800;
}

.virtual-refresh-link span {
    display: inline-block;
}

.virtual-refresh-link.is-refreshing span {
    animation: virtual-refresh .55s linear;
}

@keyframes virtual-refresh {
    to {
        transform: rotate(360deg);
    }
}

.virtual-history-table-wrap {
    overflow-x: auto;
}

.virtual-history-table {
    width: 100%;
    min-width: 620px;
    border-collapse: collapse;
    table-layout: fixed;
    color: var(--text);
    font-size: 12px;
    font-weight: 700;
}

.virtual-history-table th {
    height: 36px;
    padding: 7px 9px;
    background: #291f18;
    text-align: center;
}

.virtual-history-table th:first-child {
    width: 102px;
}

.virtual-history-table th:last-child {
    width: 154px;
}

.virtual-history-table td {
    height: 35px;
    padding: 7px 9px;
    overflow: hidden;
    border-bottom: 1px solid #49382a;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.virtual-history-table td:first-child {
    text-align: center;
}

.virtual-history-table td:last-child {
    text-align: center;
}

@media (hover: hover) {
    .virtual-provider-link:hover {
        color: #e3b467;
    }

    .virtual-game-link:hover {
        border-color: #66482e;
        background: #ff3d6a0d;
    }

    .virtual-league-link:hover, .virtual-history-tab:hover, .virtual-refresh-link:hover {
        filter: brightness(1.1);
    }
}

@media (max-width: 1080px) {
    .virtual-content-layout {
        grid-template-columns: 1fr;
    }

    .virtual-video {
        aspect-ratio: 16 / 5;
    }

    .virtual-game-nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .sports-page.virtual-sports-page {
        padding: 12px 8px 24px;
    }

    .virtual-provider-nav {
        gap: 25px;
    }

    .virtual-game-nav {
        grid-template-columns: 1fr 1fr;
    }

    .virtual-game-link {
        min-height: 60px;
    }

    .virtual-league-nav {
        justify-content: flex-start;
        gap: 8px;
        overflow-x: auto;
    }

    .virtual-league-link {
        flex: 0 0 auto;
        min-width: 74px;
        padding-inline: 13px; }

    .virtual-video {
        min-height: 190px;
        aspect-ratio: 16 / 8;
    }

    .virtual-content-layout {
        gap: 16px;
        margin-top: 16px;
    }

    .sports-page.virtual-sports-page .virtual-match-odds {
        grid-template-columns: minmax(0, 1fr) 56px minmax(0, 1fr);
        gap: 4px;
    }

    .sports-page.virtual-sports-page .virtual-team-odd {
        gap: 5px;
        padding-inline: 7px; }

    .sports-page.virtual-sports-page .odd-link {
        min-height: 34px;
        font-size: 10px;
    }

    .virtual-history-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .virtual-history-tabs {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .virtual-history-tab {
        min-width: 0;
        border-radius: 5px 5px 0 0;
    }

    .virtual-refresh-link {
        align-self: flex-end;
    }
}

@media (max-width: 430px) {
    .virtual-game-nav {
        grid-template-columns: 1fr;
    }

    .virtual-video {
        min-height: 170px;
    }

    .sports-page.virtual-sports-page .event-date {
        padding-inline: 8px; font-size: 10px;
    }

    .sports-page.virtual-sports-page .event-date > span:last-child {
        font-size: 10px;
    }

    .sports-page.virtual-sports-page .virtual-match-odds {
        grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr);
    }

    .sports-page.virtual-sports-page .virtual-team-odd {
        padding-inline: 5px; }
}

/* VIRTUAL SPORTS PAGE END */
@media (prefers-reduced-motion:reduce) {
    .card:not([aria-disabled="true"]):hover {
        transform: none
    }
}

/* bg_main.png is a full-page 2048 x 1376 background; keep its aspect ratio.
   All image references below are filenames only. */
.page {
    --scene-offset: 0px;
    background-color: #070a0c;
    background-image: none;
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center var(--scene-offset)
}

/* Supplied PNG assets are referenced by filename, preserving their original alpha.
   The supplied bg_main.png is used unchanged as the page background.
   Coordinate system and animation behaviors remain the same. */
.hero__wordmark, .hero__slogan {
    position: absolute;
    display: block;
    object-fit: contain;
    pointer-events: none;
    user-select: none;
    height: auto
}

.hero__wordmark {
    left: 581.00724px;
    top: 25.98354px;
    width: 769.13298px;
    aspect-ratio: 1199 / 752
}

.hero__slogan {
    left: 106.01514px;
    top: 137.19618px;
    width: 426.14154px;
    aspect-ratio: 618 / 285
}

.hero .hero__description {
    background: none
}

.hero .hero__description::before {
    display: none
}

.card .card__media {
    width: 100%;
    object-fit: contain;
    mix-blend-mode: normal;
    mask-image: none
}

.promotion .promotion__media {
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
    mask-image: none
}

.promotion--contact .promotion__media {
    object-position: left center
}

.site-brand img, .site-footer__brand {
    object-fit: contain
}

@media(max-width: 700px) {
    .hero {
        padding-top: 698.456682px;
        background-size: 100% auto
    }
}

/* Images use only filenames. Add your directory or URL in src and url(). */
a[data-click-effect] {
    position: relative
}

.click-feedback {
    position: absolute;
    inset: 0;
    overflow: hidden;
    border-radius: inherit;
    pointer-events: none;
    z-index: 4
}

.click-feedback__ripple {
    position: absolute;
    display: block;
    border-radius: 50%;
    background: radial-gradient(circle, #e3b467 0%, #ff3d6a99 48%, transparent 72%);
    pointer-events: none;
    opacity: 0
}

@media(prefers-reduced-motion:reduce) {
    .click-feedback {
        display: none
    }
}

/* Keep the scenery aligned below the taller tablet/mobile header. */
@media(min-width: 701px) and (max-width:1000px) {
    .page {
        --scene-offset: calc(60px - 87.30711px)
    }
}

@media(max-width: 700px) {
    .page {
        --scene-offset: calc(112px - 87.30711px)
    }
}

/* Login dialog */
a[role="button"]:not([aria-disabled="true"]) {
    cursor: pointer;
}

.modal {
    position: fixed;
    inset: 0;
    display: none;
    width: min(440px, calc(100% - 32px));
    max-width: none;
    max-height: calc(100% - 32px);
    max-height: calc(100dvh - 32px);
    margin: auto;
    padding: 28px 32px 24px;
    overflow-y: auto;
    overscroll-behavior: contain;
    color: #f9ebd1;
    background: linear-gradient(150deg, #2a2018, #18120e 70%);
    border: 1px solid #66482e;
    border-radius: 24px;
    box-shadow: 0 24px 80px #0009, inset 0 1px 0 #fff1;
    font-family: inherit;
}

.modal[open] {
    display: block;
}

.modal::backdrop {
    background: #050709bd;
    backdrop-filter: blur(5px);
}

.modal .modal__close {
    position: absolute;
    top: 14px;
    right: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #473629;
    border-radius: 50%;
    background: #ffffff05;
    color: #d4b7a1;
    font: 28px/1 Arial, sans-serif;
}

.modal__header {
    text-align: center;
}

.modal__brand {
    width: 100px;
    height: auto;
    margin: 0 auto 10px;
}

.modal__title {
    margin: 0;
    font-size: 27px;
    line-height: 1.4;
    font-weight: 700;
}

.modal__description {
    margin: 9px 0 26px;
    color: #c9a991;
    font-size: 14px;
    line-height: 1.7;
}

.login-form {
    display: grid;
    gap: 18px;
    margin: 0;
}

.form-field {
    min-width: 0;
}

.form-field__label {
    display: block;
    margin-bottom: 9px;
    color: #edd6c4;
    font-size: 14px;
    font-weight: 700;
}

.form-field__control {
    position: relative;
}

.form-field__input {
    display: block;
    width: 100%;
    min-height: 50px;
    padding: 13px 15px;
    border: 1px solid #503d2e;
    border-radius: 12px;
    outline: none;
    background: #19130e;
    color: #f5f6fa;
    font: inherit;
    font-size: 16px;
    line-height: 1.4;
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.form-field__input::placeholder {
    color: #a48369;
}

.form-field__input:focus {
    border-color: #dfbb7d;
    box-shadow: 0 0 0 3px #f0466e1f;
}

.form-field__input--password {
    padding-right: 70px;
}

.modal .form-field__toggle {
    position: absolute;
    top: 3px;
    right: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    height: calc(100% - 6px);
    border-radius: 9px;
    color: #d8a85c;
    font-size: 13px;
}

.login-form__submit {
    width: 100%;
    min-height: 50px;
    margin-top: 6px;
    border-radius: 12px;
    font-size: 16px;
}

.login-form__status {
    min-height: 20px;
    margin: -6px 0 0;
    color: #d8a85c;
    font-size: 13px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

@media (hover: hover) {
    .modal__close:hover {
        color: #e3b467;
        border-color: #977741;
    }

    .form-field__toggle:hover {
        background: #ff3d6a0d;
    }
}

@media (max-width: 480px) {
    .modal {
        padding: 25px 22px 20px;
        border-radius: 20px;
    }

    .modal__title {
        font-size: 24px;
    }
}

@media (prefers-reduced-motion:no-preference) {
    .modal[open] {
        animation: modal-enter 220ms cubic-bezier(.2, .7, .2, 1);
    }

    .modal[open]::backdrop {
        animation: modal-backdrop-enter 220ms ease;
    }

    .modal[open].is-closing {
        animation: modal-leave 160ms ease both;
    }

    .modal[open].is-closing::backdrop {
        animation: modal-backdrop-leave 160ms ease both;
    }

    @keyframes modal-enter {
        from {
            opacity: 0;
            transform: translateY(16px) scale(.98);
        }

        to {
            opacity: 1;
            transform: none;
        }
    }

    @keyframes modal-leave {
        from {
            opacity: 1;
            transform: none;
        }

        to {
            opacity: 0;
            transform: translateY(8px) scale(.99);
        }
    }

    @keyframes modal-backdrop-enter {
        from {
            opacity: 0;
        }

        to {
            opacity: 1;
        }
    }

    @keyframes modal-backdrop-leave {
        from {
            opacity: 1;
        }

        to {
            opacity: 0;
        }
    }
}

/* =========================================================
   SPORTS PAGE — YAHO 색상
   1. 기본값·색상 변수   2. 종목·검색   3. 경기 목록
   4. 승무패·상세 마켓   5. 베팅카트    6. 반응형
   모든 스포츠 선택자는 .sports-page 안에서만 적용됩니다.
   ========================================================= */
.sports-page, .sports-page * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
}

.sports-page a {
    text-decoration: none;
    color: inherit;
}

.sports-page {
    /* YAHO 공통 색상과 연결: 배경 / 패널 / 텍스트 / 강조색 */
    --sports-bg: var(--surface);
    --sports-surface: #1b1510;
    --sports-surface-2: #291f18;
    --sports-surface-3: #2c2119;
    --sports-surface-4: #392b21;
    --sports-line: #49382a;
    --sports-line-strong: rgba(227, 180, 103, .30);
    --sports-text: var(--text);
    --sports-text-soft: var(--muted);
    --sports-text-dim: #a68973;
    --sports-accent: var(--accent);
    --sports-accent-light: #e3b467;
    --sports-accent-border: #d8a85c;
    --sports-accent-rgb: 227, 180, 103;
    --sports-primary-gradient: linear-gradient(180deg, #e8a844, #b8873f);
    --sports-on-accent: #1a1512;
    /* 경기 상태를 나타내는 의미 색상 */
    --sports-positive: #28b884;
    --sports-danger: #e85d68;
    --font-heading: 'Cinzel', serif;
    --font-sub: 'Montserrat', sans-serif;
    --font-kr: 'Noto Sans KR', 'Malgun Gothic', sans-serif;
    flex: 0 0 var(--bet-panel-width);
    width: var(--bet-panel-width);
    min-height: 0;
    max-width: 100%;
    grid-column: auto;
    font-family: var(--font-kr);
    font-size: 12px;
    line-height: 1.5;
    font-weight: 400;
    color: var(--sports-text);
}

.main-content .content-layout > .bet-panel, .main-content .content-layout > .bet-panel * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.main-content .content-layout > .bet-panel a {
    text-decoration: none;
}

.main-content .content-layout > .bet-panel {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--sports-line);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(41, 31, 24, .98), rgba(7, 10, 12, .98));
    box-shadow: 0 18px 46px rgba(0, 0, 0, .20);
}

.main-content .content-layout > .bet-panel {
    position: sticky;
    top: 16px;
}

.main-content .content-layout > .bet-panel .bet-live-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 46px;
    padding: 0 12px;
    border-bottom: 1px solid var(--sports-line);
    background: var(--sports-surface);
}

.main-content .content-layout > .bet-panel .bet-live-label {
    display: flex;
    align-items: center;
    gap: 7px;
    color: var(--sports-text);
    font-size: 10px;
    font-weight: 700;
}

.main-content .content-layout > .bet-panel .bet-live-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--sports-positive);
    box-shadow: 0 0 8px rgba(40, 184, 132, .55);
}

.main-content .content-layout > .bet-panel .switch-link {
    position: relative;
    width: 35px;
    height: 20px;
    border-radius: 12px;
    background: var(--sports-surface-4);
    transition: background .2s ease;
}

.main-content .content-layout > .bet-panel .switch-link::after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--sports-text);
    transition: transform .2s ease, box-shadow .2s ease;
}

.main-content .content-layout > .bet-panel .switch-link.is-active {
    background: var(--sports-accent-border);
}

.main-content .content-layout > .bet-panel .switch-link.is-active::after {
    transform: translateX(15px);
    box-shadow: 0 0 8px rgba(255, 255, 255, .25);
}

.main-content .content-layout > .bet-panel .bet-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid var(--sports-line);
}

.main-content .content-layout > .bet-panel .bet-tab-link {
    min-height: 42px;
    padding: 12px 8px;
    color: var(--sports-text-dim);
    font-size: 10px;
    font-weight: 700;
    text-align: center;
    transition: all .18s ease;
}

.main-content .content-layout > .bet-panel .bet-tab-link:hover, .main-content .content-layout > .bet-panel .bet-tab-link:focus-visible, .main-content .content-layout > .bet-panel .bet-tab-link.is-active {
    background: rgba(var(--sports-accent-rgb), .10);
    color: var(--sports-accent-light);
    outline: none;
}

.main-content .content-layout > .bet-panel .bet-tab-link.is-active {
    box-shadow: inset 0 -2px 0 var(--sports-accent);
}

.main-content .content-layout > .bet-panel .bet-summary {
    padding: 12px;
    border-bottom: 1px solid var(--sports-line);
}

.main-content .content-layout > .bet-panel .bet-summary-row, .main-content .content-layout > .bet-panel .bet-total-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 28px;
    color: var(--sports-text-soft);
    font-size: 10px;
}

.main-content .content-layout > .bet-panel .bet-summary-row strong, .main-content .content-layout > .bet-panel .bet-total-row strong {
    color: var(--sports-text);
    font-family: var(--font-sub);
    font-size: 11px;
}

.main-content .content-layout > .bet-panel .bet-summary-row:first-child strong {
    color: var(--sports-accent-light);
}

.main-content .content-layout > .bet-panel .bet-picks {
    display: grid;
    gap: 7px;
    max-height: 218px;
    padding: 10px 12px 2px;
    overflow-y: auto;
}

.main-content .content-layout > .bet-panel .bet-empty {
    padding: 30px 16px;
    color: var(--sports-text-dim);
    font-size: 10px;
    line-height: 1.6;
    text-align: center;
}

.main-content .content-layout > .bet-panel .bet-pick {
    position: relative;
    padding: 9px 28px 9px 9px;
    border: 1px solid rgba(var(--sports-accent-rgb), .16);
    border-radius: 5px;
    background: rgba(var(--sports-accent-rgb), .045);
}

.main-content .content-layout > .bet-panel .bet-pick-title {
    margin-bottom: 4px;
    color: var(--sports-text);
    font-size: 9px;
    line-height: 1.35;
}

.main-content .content-layout > .bet-panel .bet-pick-meta {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    color: var(--sports-text-dim);
    font-size: 9px;
}

.main-content .content-layout > .bet-panel .bet-pick-meta strong {
    color: var(--sports-accent-light);
    font-family: var(--font-sub);
}

.main-content .content-layout > .bet-panel .bet-remove-link {
    position: absolute;
    top: 7px;
    right: 7px;
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    color: var(--sports-text-dim);
    font-size: 12px;
}

.main-content .content-layout > .bet-panel .bet-remove-link:hover, .main-content .content-layout > .bet-panel .bet-remove-link:focus-visible {
    background: rgba(232, 93, 104, .10);
    color: var(--sports-danger);
    outline: none;
}

.main-content .content-layout > .bet-panel .bet-actions {
    padding: 10px 12px 14px;
}

.main-content .content-layout > .bet-panel .bet-total-row {
    margin-bottom: 4px;
}

.main-content .content-layout > .bet-panel .bet-total-row.is-payout strong {
    color: var(--sports-accent-light);
}

.main-content .content-layout > .bet-panel .bet-amount-field {
    display: flex;
    align-items: center;
    min-height: 38px;
    margin: 8px 0;
    padding: 0 9px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 4px;
    background: var(--sports-bg);
}

.main-content .content-layout > .bet-panel .bet-amount-field input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--sports-text);
    font-family: var(--font-sub);
    font-size: 11px;
    text-align: right;
}

.main-content .content-layout > .bet-panel .bet-amount-field span {
    margin-left: 7px;
    color: var(--sports-text-dim);
    font-size: 9px;
}

.main-content .content-layout > .bet-panel .bet-button-row {
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 7px;
}

.main-content .content-layout > .bet-panel .bet-action-link {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 4px;
    background: var(--sports-surface-2);
    color: var(--sports-text-soft);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .4px;
    transition: all .2s ease;
}

.main-content .content-layout > .bet-panel .bet-action-link:hover, .main-content .content-layout > .bet-panel .bet-action-link:focus-visible {
    border-color: rgba(var(--sports-accent-rgb), .38);
    color: var(--sports-accent-light);
    outline: none;
}

.main-content .content-layout > .bet-panel .bet-action-link:active {
    transform: scale(.98);
}

.main-content .content-layout > .bet-panel .bet-action-link.primary {
    border-color: var(--sports-accent-border);
    background: var(--sports-primary-gradient);
    color: var(--sports-on-accent);
    box-shadow: 0 0 16px rgba(var(--sports-accent-rgb), .14);
}

.main-content .content-layout > .bet-panel .bet-action-link.primary:hover, .main-content .content-layout > .bet-panel .bet-action-link.primary:focus-visible {
    color: var(--sports-on-accent);
    box-shadow: 0 0 22px rgba(var(--sports-accent-rgb), .28);
    transform: translateY(-1px);
}

.main-content .content-layout > .bet-panel .bet-limit {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin-top: 9px;
    color: var(--sports-text-dim);
    font-size: 9px;
}

.main-content .content-layout > .bet-panel .bet-limit strong {
    color: var(--sports-text-dim);
    font-weight: 600;
}

.main-content .content-layout > .bet-panel .bet-panel-inner {
    display: block;
}

.main-content .content-layout > .bet-panel .bet-panel-main {
    border-right: 0;
}

.main-content .content-layout > .bet-panel[hidden], .main-content .content-layout > .bet-panel.is-hidden, .main-content .content-layout.is-bet-hidden > .bet-panel {
    display: none !important;
}

/* 기존 페이지 내부 그리드에서는 카트 열을 사용하지 않습니다. */
.main-content .content-layout__main .sports-content-layout {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.35fr);
}

.main-content .content-layout__main .game-layout {
    grid-template-columns: minmax(0, 1fr);
}

.main-content .content-layout__main .game-content {
    grid-template-columns: minmax(0, 1.42fr) minmax(0, .96fr);
}

@media (max-width: 1180px) {
    .main-content .content-layout__main .sports-content-layout, .main-content .content-layout__main .game-content, .main-content .content-layout__main .virtual-content-layout {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 1023.98px) {
    .main-content .content-layout {
        flex-direction: column;
    }

    .main-content .content-layout > .content-layout__main, .main-content .content-layout > .bet-panel {
        flex: 0 1 auto;
        width: 100%;
    }

    .main-content .content-layout > .bet-panel {
        position: static;
        top: auto;
    }
}

/* =========================================================
   YAHO COMMON CART — 공통 폭과 모바일 레이어 (추가 전용)
   비메인 페이지: 전체 최대 1660px / 카트 300px / 간격 16px.
   동일 화면 폭에서 콘텐츠 폭도 동일하게 유지합니다.
   모바일 760px 이하: 카트 버튼 → 기존 aside를 레이어로 표시.
   hidden / is-hidden / is-bet-hidden 상태에서는 버튼도 숨깁니다.
   ========================================================= */
.main-content:has(.content-layout) {
    --main-content-max-width: 1660px;
    --main-content-desktop-gutter: 18px;
    --main-content-mobile-gutter: 10px;
    --bet-panel-width: 300px;
    --content-layout-gap: 16px;
}

.main-content > .main-content__section:has(.content-layout), .main-content.charge-page:has(.content-layout) {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin-inline: 0; padding: 20px var(--main-content-desktop-gutter) 34px;
}

.main-content > .sports-page:has(.content-layout) {
    font-family: var(--font-kr);
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
}

.main-content .main-content__inner.content-layout {
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    width: 100%;
    max-width: var(--main-content-max-width);
    gap: var(--content-layout-gap);
    margin-inline: auto; padding: 0;
}

.main-content .content-layout > .content-layout__main {
    flex: 1 1 0%;
    width: auto;
    min-width: 0;
}

.main-content .content-layout > .sports-panel.bet-panel {
    --sports-bg: var(--surface);
    --sports-surface: #1b1510;
    --sports-surface-2: #291f18;
    --sports-surface-3: #2c2119;
    --sports-surface-4: #392b21;
    --sports-line: #49382a;
    --sports-text: var(--text);
    --sports-text-soft: var(--muted);
    --sports-text-dim: #a68973;
    --sports-accent: var(--accent);
    --sports-accent-light: #e3b467;
    --sports-accent-border: #d8a85c;
    --sports-accent-rgb: 227, 180, 103;
    --sports-primary-gradient: linear-gradient(180deg, #e8a844, #b8873f);
    --sports-on-accent: #1a1512;
    --sports-positive: #28b884;
    --sports-danger: #e85d68;
    --font-sub: PageSans, 'Noto Sans KR', 'Malgun Gothic', sans-serif;
    --font-kr: 'Noto Sans KR', 'Malgun Gothic', sans-serif;
    box-sizing: border-box;
    flex: 0 0 var(--bet-panel-width);
    width: var(--bet-panel-width);
    min-width: 0;
    max-width: 100%;
    min-height: 0;
    height: auto;
    margin: 0;
    padding: 0;
    position: sticky;
    top: 16px;
    grid-column: auto;
    font: 400 12px/1.5 var(--font-kr);
    color: var(--text);
}

.main-content .content-layout > .bet-panel .bet-panel-inner {
    display: block;
}

.main-content .content-layout > .bet-panel .bet-panel-main {
    border-right: 0;
}

.main-content .content-layout > .bet-panel .bet-amount-field input {
    min-width: 0;
}

.main-content .content-layout > .bet-panel .bet-empty {
    min-height: 92px;
}

.bet-cart-trigger, .bet-cart-backdrop, .main-content .content-layout > .bet-panel .bet-cart-mobile-heading {
    display: none;
}

.bet-cart-trigger[hidden], .bet-cart-trigger__count[hidden], .bet-cart-backdrop[hidden] {
    display: none !important;
}

@media (max-width: 1023.98px) {
    .main-content > .main-content__section:has(.content-layout), .main-content.charge-page:has(.content-layout) {
        padding: 16px var(--main-content-mobile-gutter) 96px;
    }

    .main-content .main-content__inner.content-layout {
        flex-direction: column;
    }

    .main-content .content-layout > .content-layout__main {
        flex: 0 1 auto;
        width: 100%;
    }

    /* JS가 실행되지 않아도 기존 카트는 문서 안에서 사용할 수 있습니다. */
    .main-content .content-layout > .sports-panel.bet-panel {
        position: static;
        width: 100%;
        flex: 0 1 auto;
    }

    .main-content .content-layout > .sports-panel.bet-panel[data-cart-mobile] {
        display: none;
        position: fixed;
        inset: auto max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) auto;
        width: min(var(--bet-panel-width), calc(100vw - 24px));
        max-width: calc(100vw - 24px);
        max-height: calc(100vh - 24px);
        max-height: calc(100dvh - 24px);
        overflow-y: auto;
        overscroll-behavior: contain;
        margin: 0;
        padding: 0;
        border: 1px solid var(--sports-accent-border);
        border-radius: 12px;
        box-shadow: 0 20px 70px #000b;
        z-index: 10002;
    }

    .main-content .content-layout > .sports-panel.bet-panel[data-cart-mobile][data-cart-open] {
        display: block;
    }

    .main-content .content-layout > .bet-panel::backdrop {
        background: #050709bd;
        backdrop-filter: blur(3px);
    }

    .main-content .content-layout > .bet-panel .bet-cart-mobile-heading {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        min-height: 52px;
        padding: 4px 8px 4px 14px;
        border-bottom: 1px solid var(--sports-line);
        background: var(--sports-surface-2);
        color: var(--accent);
        font-size: 14px;
    }

    .main-content .content-layout > .bet-panel .bet-cart-close {
        display: grid;
        place-items: center;
        width: 44px;
        height: 44px;
        border: 0;
        border-radius: 8px;
        background: transparent;
        color: var(--text);
        font: 28px/1 sans-serif;
        cursor: pointer;
    }

    .main-content .content-layout > .bet-panel .bet-amount-field input {
        font-size: 16px;
    }

    .bet-cart-trigger {
        position: fixed;
        right: max(16px, env(safe-area-inset-right));
        bottom: max(16px, env(safe-area-inset-bottom));
        z-index: 1000;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        width: 68px;
        height: 68px;
        padding: 8px;
        border: 1px solid #d8a85c;
        border-radius: 50%;
        background: linear-gradient(180deg, #e8a844, #b8873f);
        color: #1a1512;
        box-shadow: 0 6px 22px #0008;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }

    .bet-cart-trigger svg {
        width: 27px;
        height: 27px;
    }

    .bet-cart-trigger__label {
        font: 700 10px/1.2 'Malgun Gothic', sans-serif;
        white-space: nowrap;
    }

    .bet-cart-trigger__count {
        position: absolute;
        top: -3px;
        right: -3px;
        display: grid;
        place-items: center;
        min-width: 23px;
        height: 23px;
        padding: 0 5px;
        border: 1px solid var(--accent);
        border-radius: 14px;
        background: var(--surface);
        color: var(--accent);
        font: 700 11px/1 sans-serif;
    }

    .bet-cart-trigger:focus-visible, .main-content .content-layout > .bet-panel .bet-cart-close:focus-visible {
        outline: 2px solid var(--accent);
        outline-offset: 3px;
    }

    .sports-page .sports-chat-link {
        right: max(26px, env(safe-area-inset-right));
        bottom: calc(100px + env(safe-area-inset-bottom));
    }

    /* Native popover가 없는 브라우저의 레이어 대체 처리. */
    .is-bet-cart-open .main-content {
        z-index: 10001;
    }

    .bet-cart-backdrop:not([hidden]) {
        display: block;
        position: fixed;
        inset: 0;
        background: #050709bd;
        z-index: 10001;
    }
}
