/* Shared public-facing theme. Loaded after legacy page styles by the public layouts.
   Keep visibility, panel transforms, payment selection and status colours in the app. */
body.frontend-theme {
    /* Blue surfaces, warm primary actions, and turquoise interaction highlights. */
    --premium-accent: var(--palette-accent-dark, #ffb38a);
    --premium-accent-ink: var(--palette-accent-light, #a33c21);
    --premium-action-start: var(--palette-action-start, #ffb36b);
    --premium-action-end: var(--palette-action-end, #ff825f);
    --premium-action-ink: var(--palette-action-ink, #142141);
    --premium-secondary: var(--palette-focus-dark, #52e0d2);
    --premium-focus: var(--palette-focus-dark, #52e0d2);
    --premium-focus-ring: rgba(var(--palette-focus-dark-rgb, 82, 224, 210), 0.2078431373);
    --theme-color: var(--premium-accent);
    --theme-color2: var(--palette-action-end, #ff825f);
    --primary: var(--premium-accent);
    --premium-bg: var(--palette-page-dark, #101a3b);
    --premium-surface: var(--palette-surface-dark, #17264d);
    --premium-raised: var(--palette-raised-dark, #203561);
    --premium-line: rgba(var(--palette-line-dark-rgb, 91, 155, 255), .28);
    --premium-text: var(--palette-text-dark, #f3f7ff);
    --premium-muted: var(--palette-muted-dark, #b2c4e3);
    background: radial-gradient(ellipse at 12% 0, rgba(var(--palette-glow-dark-rgb, 44, 85, 184), 0.4588235294), transparent 48%), radial-gradient(ellipse at 95% 24%, rgba(var(--palette-secondary-glow-dark-rgb, 22, 185, 189), 0.1411764706), transparent 42%), var(--palette-page-gradient-dark, var(--palette-page-dark, #101a3b)) fixed !important;
    color: var(--premium-text) !important;
    font-family: "Lato", "Segoe UI", Arial, sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color-scheme: dark;
    -webkit-font-smoothing: antialiased;
    accent-color: var(--theme-color);
}
body.frontend-theme :is(h1, h2, h3, h4, h5, h6) {
    color: var(--premium-text);
    letter-spacing: -.02em;
    line-height: 1.3;
}
body.frontend-theme :is(p, label, .secondary_color) { color: var(--premium-muted); }
body.frontend-theme :is(a, button, input, select, textarea) { -webkit-tap-highlight-color: transparent; }
body.frontend-theme a { text-underline-offset: 4px; }
body.frontend-theme :is(a, button, [tabindex], input, select, textarea):focus-visible {
    outline: 2px solid var(--premium-focus) !important;
    outline-offset: 4px;
}
body.frontend-theme ::selection { background: var(--premium-action-start); color: var(--premium-action-ink); }

/* Navigation and the existing language/account menus. */
body.frontend-theme :is(header, .header, .tf-statusbar, .bottom-navigation-bar, .mobile-taskbar) {
    background: var(--palette-header-dark, #111f45) !important;
    color: var(--premium-text) !important;
    border-color: var(--premium-line) !important;
}
body.frontend-theme header { border-bottom: 1px solid var(--premium-line); }
body.frontend-theme .main-menu { min-height: 84px; }
body.frontend-theme .main-menu .brand-logo { padding-top: 16px; padding-bottom: 16px; }
body.frontend-theme .main-menu .brand-logo img { max-height: 52px; width: auto; }
body.frontend-theme.frontend-lobby .main-menu .brand-logo img { width: 200px; height: auto; max-height: none; }
/* Keep populated desktop navigation and account controls beside the larger logo. */
@media (min-width: 1200px) {
    body.frontend-theme.frontend-lobby .main-menu { gap: 20px; }
    body.frontend-theme.frontend-lobby .main-menu .menu-left { flex: 0 0 auto; }
    body.frontend-theme.frontend-lobby .main-menu .menu-right { flex: 1 1 auto; min-width: 0; justify-content: flex-end; gap: 16px; }
    body.frontend-theme.frontend-lobby #main-menu { display: flex; flex-wrap: nowrap; align-items: center; gap: 10px; }
    body.frontend-theme.frontend-lobby #main-menu::after { display: none; }
    body.frontend-theme.frontend-lobby #main-menu > li { flex: 0 0 auto; float: none; }
    body.frontend-theme.frontend-lobby #main-menu > .mobile-menu-game { display: none !important; }
    body.frontend-theme.frontend-lobby #main-menu > li > a { padding: 28px 0; white-space: nowrap; }
    body.frontend-theme.frontend-lobby #main-menu > li > #hyperLanguage { padding-right: 18px; }
    body.frontend-theme.frontend-lobby #hyperLanguage .sub-arrow { right: 0; width: 12px; height: 12px; margin-top: -6px; font-size: 0; overflow: visible; }
    body.frontend-theme.frontend-lobby #hyperLanguage .sub-arrow::before { content: ""; position: static; display: block; width: 6px; height: 6px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: translateY(-2px) rotate(45deg); }
    body.frontend-theme.frontend-lobby #divButtonTopDesktop { flex: 0 0 auto; }
    body.frontend-theme.frontend-lobby #divButtonTopDesktop .icon-nav > ul { display: flex; flex-wrap: nowrap; align-items: center; gap: 12px; }
    body.frontend-theme.frontend-lobby #divButtonTopDesktop .icon-nav > ul > li { flex: 0 0 auto; padding: 0; }
    body.frontend-theme.frontend-lobby #divButtonTopDesktop .icon-nav > ul > li > .btn { margin-bottom: 0 !important; }
    body.frontend-theme.frontend-lobby #account-menu .account-menu-trigger { max-width: 152px; }
    body.frontend-theme.frontend-lobby #lblTopRightCredit { white-space: nowrap; }
}

body.frontend-theme :is(.pixelstrap a, .pixelstrap a:hover, .main-menu .menu-left .navbar i, .icon-nav i, .tf-navigation-bar a) {
    color: var(--premium-text) !important;
}
body.frontend-theme .pixelstrap a { font-size: 14px; font-weight: 600; letter-spacing: .025em; }
/* Match the lobby's later inline navigation rule during the first paint. */
body.frontend-theme.frontend-lobby #main-nav li a { font-size: 16px !important; }
body.frontend-theme.frontend-loading-auth.frontend-guest .btnLoginY,
body.frontend-theme.frontend-loading-auth.frontend-member .btnLoginX { display: none !important; }
body.frontend-theme :is(.pixelstrap a:hover, .tf-navigation-bar li.active a, .tf-navigation-bar a:hover) { color: var(--theme-color) !important; }
body.frontend-theme :is(.pixelstrap ul, .sidenav nav, .show-div.setting, .onhover-show-div) {
    background: var(--premium-surface) !important;
    border: 1px solid var(--premium-line);
    box-shadow: 0 20px 60px #0006;
}
body.frontend-theme :is(.sidebar-back, .mobile-back, .sidebar-title) { background: var(--premium-raised) !important; color: var(--premium-text) !important; }
body.frontend-theme .show-div.setting :is(h6, li, span) { color: var(--premium-text) !important; }

/* Desktop shortcuts: recognizable icons and separate targets, beside language/account controls. */
@media (min-width: 1200px) {
    body.frontend-theme.frontend-lobby #main-menu { gap: 8px; }
    body.frontend-theme.frontend-lobby #main-menu > .desktop-menu-shortcut.is-space-hidden { display: none !important; }
    body.frontend-theme.frontend-lobby #main-menu > .desktop-menu-shortcut > a {
        display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px;
        box-sizing: border-box; width: 84px; min-width: 84px; max-width: 84px; height: 66px; padding: 8px 6px; border: 1px solid var(--premium-line); border-radius: 12px;
        background: var(--premium-raised); color: var(--premium-text); font-size: 13px !important; line-height: 18px; letter-spacing: 0;
        transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
    }
    body.frontend-theme.frontend-lobby #main-menu > .desktop-menu-shortcut > a:is(:hover, :focus-visible) {
        background: var(--premium-surface); border-color: var(--premium-focus); box-shadow: 0 3px 12px var(--premium-focus-ring);
    }
    body.frontend-theme.frontend-lobby #main-menu .desktop-shortcut-icon { display: block; height: 26px; font-size: 24px; font-weight: 400; line-height: 26px; color: var(--theme-color); }
    body.frontend-theme.frontend-lobby #main-menu .desktop-shortcut-label { display: block; font-weight: 600; white-space: nowrap; }
    body.frontend-theme.frontend-lobby #main-menu > .desktop-menu-language { margin-left: 4px; padding-left: 14px; border-left: 1px solid var(--premium-line); }
}
@media (min-width: 1200px) and (max-width: 1399px) {
    body.frontend-theme.frontend-lobby #main-menu { gap: 6px; }
    body.frontend-theme.frontend-lobby #main-menu > .desktop-menu-shortcut > a { font-size: 12px !important; }
    body.frontend-theme.frontend-lobby #main-menu > .desktop-menu-language { margin-left: 0; padding-left: 8px; }
}

/* Confirmed claimable rewards: one shared indicator on desktop and mobile. */
body.frontend-theme [data-reward-attention] { position: relative; }
body.frontend-theme .reward-attention-badge {
    position: absolute; z-index: 1; top: 3px; right: 4px; display: grid; place-items: center;
    min-width: 18px; height: 18px; padding: 0 4px; box-sizing: border-box; border-radius: 20px;
    background: #d42d43; color: #fff !important; border: 2px solid var(--premium-surface);
    font: 700 10px/1 "Segoe UI", Arial, sans-serif; letter-spacing: 0; pointer-events: none;
}
body.frontend-theme .reward-attention-badge[hidden] { display: none !important; }
body.frontend-theme .bottom-nav [data-reward-attention] .reward-attention-badge { top: 3px; right: auto; left: calc(50% + 5px); }
body.frontend-theme [data-reward-attention].has-unclaimed-rewards :is(.desktop-shortcut-icon, .icon > i) { color: #ae5c00 !important; animation: reward-gift-nudge 1.8s ease-in-out 3; }
body.frontend-theme.dark [data-reward-attention].has-unclaimed-rewards :is(.desktop-shortcut-icon, .icon > i) { color: #ffd36d !important; }
@media (min-width: 1200px) {
    body.frontend-theme.frontend-lobby #main-menu > .desktop-menu-shortcut > [data-reward-attention].has-unclaimed-rewards { border-color: #d89530; box-shadow: 0 0 0 2px #efb65226; }
}
@keyframes reward-gift-nudge { 0%, 60%, 100% { transform: rotate(0) scale(1); } 10%, 30% { transform: rotate(-9deg) scale(1.1); } 20%, 40% { transform: rotate(9deg) scale(1.1); } }
@media (prefers-reduced-motion: reduce) {
    body.frontend-theme [data-reward-attention].has-unclaimed-rewards :is(.desktop-shortcut-icon, .icon > i) { animation: none; }
}

/* Lobby drawer: keep the existing slide and overlay behaviour. */
body.frontend-theme.frontend-lobby .sidebar-open { padding: 0; border: 0; background: transparent; color: inherit; cursor: pointer; }
body.frontend-theme.frontend-lobby .sidebar-open .bar-style { display: block; }
body.frontend-theme.frontend-lobby #mySidenav { background: transparent; }
body.frontend-theme.frontend-lobby #mySidenav nav {
    background: linear-gradient(180deg, var(--palette-raised-dark, #203765) 0%, var(--palette-header-dark, #111f45) 100%) !important;
    border: 0;
    border-right: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431);
    box-shadow: 20px 0 60px #0006;
    scrollbar-width: thin;
    scrollbar-color: var(--palette-scroll-dark, #4b7fc1) transparent;
}
body.frontend-theme.frontend-lobby #mySidenav .sidebar-overlay { background: var(--palette-overlay, #080f26); }
body.frontend-theme.frontend-lobby #mySidenav .sidebar-back {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 90px;
    padding: 18px 18px 18px 22px;
    background: var(--palette-header-dark, #13234b) !important;
    border-bottom: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941);
    color: var(--premium-text);
    text-transform: none;
    letter-spacing: 0;
}
body.frontend-theme.frontend-lobby #mySidenav .sidebar-brand {
    display: flex;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 5px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922);
    border-radius: 13px;
    background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.05098039216);
}
body.frontend-theme.frontend-lobby #mySidenav .sidebar-brand img { display: block; max-width: 100%; max-height: 100%; object-fit: contain; }
body.frontend-theme.frontend-lobby #mySidenav #lblLeftMenuName {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    color: var(--premium-text) !important;
    font-size: 16px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}
body.frontend-theme.frontend-lobby #mySidenav .sidebar-close {
    display: inline-flex;
    flex: 0 0 36px;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid #ffffff18;
    border-radius: 11px;
    background: #ffffff08;
    color: var(--premium-accent);
    font-size: 21px;
    cursor: pointer;
}
body.frontend-theme.frontend-lobby #mySidenav .sidebar-close:hover { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1254901961); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4392156863); }
body.frontend-theme.frontend-lobby #sub-menu { width: auto; padding: 15px 12px 24px; margin: 0; background: transparent; }
body.frontend-theme.frontend-lobby #sub-menu > li { width: 100%; margin: 0 0 3px; }
body.frontend-theme.frontend-lobby #sub-menu > li > a {
    display: flex;
    align-items: center;
    min-height: 53px;
    padding: 7px 10px;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    color: var(--premium-text) !important;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .01em;
    text-transform: none;
    transition: background .18s ease, border-color .18s ease, color .18s ease;
}
body.frontend-theme.frontend-lobby #sub-menu > li > a > span:first-child { display: flex; align-items: center; gap: 13px; min-width: 0; color: inherit; }
body.frontend-theme.frontend-lobby #sub-menu > li > a i {
    display: inline-flex;
    flex: 0 0 38px;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin: 0;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1490196078);
    border-radius: 11px;
    background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.05098039216);
    color: var(--premium-accent) !important;
    font-size: 17px;
}
body.frontend-theme.frontend-lobby #sub-menu > li > a:hover,
body.frontend-theme.frontend-lobby #sub-menu > li > a:focus-visible { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07450980392); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431); }
body.frontend-theme.frontend-lobby #sub-menu > li > a:hover i { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1254901961); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); }
body.frontend-theme.frontend-lobby #sub-menu > li:last-child { margin-top: 12px; padding-top: 12px; border-top: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1333333333); }
body.frontend-theme.frontend-lobby:not(.dark) #mySidenav nav { background: linear-gradient(180deg, #ffffff, var(--palette-page-light, #e9f3ff)) !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); }
body.frontend-theme.frontend-lobby:not(.dark) #mySidenav .sidebar-back { background: #ffffff !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); }
body.frontend-theme.frontend-lobby:not(.dark) #mySidenav .sidebar-close { color: var(--premium-accent-ink); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.06274509804); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); }
body.frontend-theme.frontend-lobby:not(.dark) #sub-menu > li > a i { color: var(--premium-accent-ink) !important; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.06274509804); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431); }
body.frontend-theme.frontend-lobby:not(.dark) #sub-menu > li > a:hover,
body.frontend-theme.frontend-lobby:not(.dark) #sub-menu > li > a:focus-visible { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.09411764706); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); }

/* Give the original campaign artwork a deliberate, framed presentation. */
body.frontend-theme.frontend-lobby {
    --lobby-content-width: calc(100% - 64px);
    --lobby-content-max-width: 1440px;
}
body.frontend-theme.frontend-lobby #form1 > div > .swiper {
    width: var(--lobby-content-width);
    max-width: var(--lobby-content-max-width);
    margin: 28px auto 0;
    border: 1px solid var(--premium-line);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 24px 64px #0005;
    background: var(--premium-surface);
    --swiper-theme-color: var(--premium-accent);
    --swiper-navigation-size: 18px;
}
body.frontend-theme.frontend-lobby #form1 > div > .swiper .swiper-slide img { display: block; width: 100%; height: auto; }
body.frontend-theme :is(.swiper-button-prev, .swiper-button-next) {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 1px solid #ffffff38;
    background: rgba(var(--palette-page-dark-rgb, 16, 26, 59), 0.7019607843);
    color: var(--premium-accent);
}
body.frontend-theme .swiper-pagination-bullet { background: #fff; opacity: .45; }
body.frontend-theme .swiper-pagination-bullet-active { background: var(--premium-accent); opacity: 1; }
/* Use the banner's content width for the balance, search, and both game grids. */
body.frontend-theme.frontend-lobby :is(.balance-section > .container, #SectionGames > .container) {
    width: var(--lobby-content-width);
    max-width: var(--lobby-content-max-width);
    padding-left: 0;
    padding-right: 0;
}

/* Lobby filters, search and games. No display rules on filterable cards. */
body.frontend-theme #SectionGames { margin-top: 36px !important; padding-bottom: 40px; }
body.frontend-theme .game-type-menu-wrapper { margin: 0 auto 28px; padding: 0; background: transparent; border-radius: 20px; max-width: 100%; }
body.frontend-theme .game-type-menu {
    display: inline-flex;
    align-items: stretch;
    max-width: 100%;
    gap: 4px;
    padding: 8px;
    background: linear-gradient(145deg, var(--palette-raised-dark, #254478), var(--palette-header-dark, #13234b)) !important;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922);
    border-radius: 20px;
    box-shadow: 0 14px 34px #0004, inset 0 1px #ffffff0d;
}
body.frontend-theme .game-type-menu-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-width: 112px;
    min-height: 56px;
    padding: 8px 16px;
    border-radius: 13px;
    color: var(--palette-muted-dark, #c1c8d4) !important;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .01em;
    cursor: pointer;
    border: 0;
    background: transparent;
    font-family: inherit;
    white-space: nowrap;
    transition: background .18s ease, color .18s ease, transform .18s ease;
}
body.frontend-theme .game-type-menu-item .game-type-menu-item-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941);
    border-radius: 10px;
    color: var(--premium-secondary);
    background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.05490196078);
}
body.frontend-theme .game-type-menu-item .game-type-menu-item-icon svg {
    display: block;
    width: 19px;
    height: 19px;
}
body.frontend-theme .game-type-menu-item.active {
    background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important;
    color: var(--palette-action-ink, #142141) !important;
    box-shadow: 0 5px 16px #0005, inset 0 1px #fff9;
}
body.frontend-theme .game-type-menu-item.active .game-type-menu-item-icon { color: var(--palette-action-ink, #142141); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1490196078); background: #ffffff45; }
body.frontend-theme .game-type-menu-item:hover:not(.active) { background: #ffffff10; color: #fff !important; }
body.frontend-theme .game-type-menu-item:hover:not(.active) .game-type-menu-item-icon { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4392156863); }
body.frontend-theme .game-type-menu-item:active { transform: translateY(1px); }
body.frontend-theme #SectionGames .form-header { margin-bottom: 16px; }
body.frontend-theme #SectionGames .game-search { position: relative; width: 100%; }
body.frontend-theme #SectionGames .game-search-icon {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 18px;
    transform: translateY(-50%);
    color: var(--premium-muted);
    font-size: 19px;
    line-height: 1;
    pointer-events: none;
}
body.frontend-theme #SectionGames .game-search:focus-within .game-search-icon { color: var(--premium-accent); }
body.frontend-theme #txtSearchGame { width: 100%; min-height: 52px; padding: 0 20px 0 50px; border-radius: 12px; }
body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .game-grid { gap: 20px; padding: 0; }
body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .game-card {
    padding: 1px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2588235294);
    border-radius: 16px;
    background: var(--palette-raised-dark, #213c70);
    box-shadow: 0 8px 22px #0004;
    cursor: pointer;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .game-card:hover {
    transform: translateY(-5px);
    border-color: var(--premium-accent);
    box-shadow: 0 16px 32px #0006;
}
body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .game-frame { border-radius: 14px; }
body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .game-frame img { width: 100%; height: auto; display: block; }
body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .text-panel {
    height: 38%;
    min-height: 66px;
    padding: 20px 8px 10px;
    background: linear-gradient(180deg, transparent, rgba(var(--palette-input-dark-rgb, 16, 32, 68), 0.9098039216) 45%, var(--palette-input-dark, #102044)) !important;
}
body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .title {
    margin: 0;
    color: #fff;
    font-size: clamp(12px, 1.1vw, 17px);
    line-height: 1.25;
    font-weight: 700;
    max-width: 100%;
    overflow-wrap: anywhere;
}
body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .subtitle {
    margin-top: 6px;
    color: var(--premium-accent);
    font-size: 10px;
    line-height: 1.2;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: 600;
}
body.frontend-theme :is(.img-wrapper, .product-box .img-wrapper) { border: 1px solid var(--premium-line); border-radius: 16px; overflow: hidden; }
body.frontend-theme .product-box-custom h4 { -webkit-text-fill-color: var(--premium-accent); text-shadow: none; }
body.frontend-theme .product-box-custom h6 { color: var(--premium-muted) !important; opacity: 1; }
body.frontend-theme .rowNoGames p { color: var(--premium-muted) !important; padding: 28px 12px; }

/* Authentication, wallet, profile, deposit, withdrawal and bank forms. */
body.frontend-theme :is(.tf-panel .panel-box, .modal-content, .offcanvas, .sweet-modal-box, .sweet-modal-overlay.open .sweet-modal-box) {
    background: var(--premium-surface) !important;
    color: var(--premium-text) !important;
    border-color: var(--premium-line) !important;
    box-shadow: 0 24px 80px #0006;
}
body.frontend-theme :is(.modal-content, .sweet-modal-box) { border-radius: 18px; }
body.frontend-theme :is(.tf-panel .header, .tf-panel .tf-statusbar, .sweet-modal-title-wrap, .sweet-modal-buttons) { background: var(--premium-surface) !important; border-color: var(--premium-line) !important; }
/* The outer panel wrappers only contain fixed-position overlays; their borders
   otherwise stack as a visible strip beneath the page footer. */
body.frontend-theme.frontend-lobby .tf-panel { border: 0; background: transparent; }
body.frontend-theme .tf-panel .panel-box { border-left: 1px solid var(--premium-line); }
body.frontend-theme :is(.tf-panel .tf-container, .modal-body) { padding-left: 24px; padding-right: 24px; }
body.frontend-theme .tf-panel :is(h1, h2, h3, h4, h5, h6) { color: var(--premium-text) !important; }
body.frontend-theme .tf-form h1 { font-size: 30px; margin-bottom: 28px; font-weight: 700; text-transform: none; }
body.frontend-theme .group-input { margin-bottom: 20px; }
/* Keep the country code and local phone number together in account panels. */
body.frontend-theme :is(#RegisterModal, #ForgetPwdModal) .group-input:has(> .content > select[name="country_code"]) {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 10px;
    align-items: stretch;
}
body.frontend-theme :is(#RegisterModal, #ForgetPwdModal) .group-input:has(> .content > select[name="country_code"]) > .content {
    min-width: 0;
}
body.frontend-theme :is(#RegisterModal, #ForgetPwdModal) .group-input:has(> .content > select[name="country_code"]) :is(select, input) {
    width: 100%;
    min-width: 0;
    height: 48px;
    margin: 0;
    box-sizing: border-box;
}
body.frontend-theme :is(.group-input label, .tf-form label) { color: var(--palette-label-dark, #d0d5df) !important; font-size: 13px; font-weight: 600; margin-bottom: 8px; }
/* Floating labels sit above the input's focus ring, with a surface behind the text. */
body.frontend-theme .tf-panel .tf-form .group-input > label {
    background: var(--premium-surface) !important;
    z-index: 2;
}
body.frontend-theme .tf-panel .group-input :is(input, select, textarea):focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 2px var(--premium-focus) !important;
}
body.frontend-theme :is(.form-control, .group-input input, .group-input select, .tf-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]), .tf-form select, .tf-form textarea, .search-field) {
    background: var(--palette-input-dark, #102044) !important;
    color: var(--premium-text) !important;
    border: 1px solid var(--palette-control-dark, #526e9c) !important;
    border-radius: 10px;
    min-height: 48px;
    box-shadow: none;
}
body.frontend-theme :is(input, textarea)::placeholder { color: var(--premium-muted) !important; opacity: 1; }
body.frontend-theme :is(.form-control, .group-input input, .tf-form select):focus { border-color: var(--premium-accent) !important; box-shadow: 0 0 0 3px rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.09411764706); }
body.frontend-theme :is(.btn-solid, .tf-btn.accent, .btnDivProfileMobileLogin, .btn-primary, .header .buttons a) {
    background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important;
    color: var(--palette-action-ink, #142141) !important;
    border: 1px solid var(--palette-action-border, #ff9e77) !important;
    border-radius: 10px;
    font-weight: 700;
    text-shadow: none;
    box-shadow: 0 4px 14px #0003;
}
body.frontend-theme :is(.btn-solid, .tf-btn.accent, .btnDivProfileMobileLogin, .btn-primary):hover { filter: brightness(1.08); }
body.frontend-theme :is(.btn-outline, .btnDivProfileMobileRegister) { background: transparent !important; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4784313725) !important; color: var(--premium-accent) !important; border-radius: 10px; box-shadow: none; }
body.frontend-theme :is(button, .btn, .tf-btn):disabled { opacity: .5; cursor: not-allowed; }
body.frontend-theme :is(.auth-forgot-password, .back-btn, .clear-panel, .tf-panel .text-primary) { color: var(--premium-accent) !important; }
body.frontend-theme :is(.balance-card, .wallet-bg, .tf-balance-box, .box-profile, #ProfileModal a.list-profile, .divPanelProfileName, .box-settings-profile) {
    background: linear-gradient(135deg, var(--palette-text-light, #182b50), var(--palette-surface-dark, #182a56)) !important;
    border: 1px solid var(--premium-line) !important;
    border-radius: 16px;
    color: var(--premium-text) !important;
    box-shadow: 0 8px 24px #0002;
}
body.frontend-theme .balance-card { padding: 24px; }
body.frontend-theme .balance-card .balance-amount { color: var(--premium-accent); font-variant-numeric: tabular-nums; }
body.frontend-theme .balance-card .action .icon { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.0862745098) !important; border: 1px solid var(--premium-line); color: var(--premium-secondary) !important; box-shadow: none; }
body.frontend-theme :is(.list-profile p, .box-profile p, .balance-header .title, .balance-card .action span) { color: var(--palette-label-dark, #cbd2dd) !important; }
body.frontend-theme :is(.sweet-modal-content, .sweet-modal-content ul li, .sweet-modal-content p) { color: var(--premium-text) !important; }

/* Notices and confirmations share the same finish as the lobby and account panels. */
body.frontend-theme #ModalDepositAlert .modal-dialog { max-width: 600px; margin: 24px auto; }
body.frontend-theme #ModalDepositAlert .modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 48px);
    max-height: calc(100dvh - 48px);
    overflow: hidden;
    border: 1px solid var(--premium-line) !important;
    border-radius: 22px;
    box-shadow: 0 32px 90px #0009, 0 0 0 1px #ffffff08;
}
body.frontend-theme #ModalDepositAlert .modal-content::before {
    content: "";
    display: block;
    flex: 0 0 3px;
    background: linear-gradient(90deg, transparent, var(--premium-accent) 28%, var(--premium-accent-ink) 72%, transparent);
}
body.frontend-theme #ModalDepositAlertMessage {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-wrap: anywhere;
    padding: 34px 40px 26px !important;
    background: var(--premium-surface) !important;
    color: var(--premium-text);
    font-family: inherit;
    font-size: 15px;
    line-height: 1.7;
    scrollbar-width: thin;
    scrollbar-color: var(--premium-accent) transparent;
}
body.frontend-theme #ModalDepositAlertMessage :is(h1, h2, h3, h4, h5, h6) {
    color: var(--premium-text);
    font-family: inherit;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.3;
    margin: 0 0 14px;
}
body.frontend-theme #ModalDepositAlertMessage :is(h1, h2, h3) { font-size: 21px; }
body.frontend-theme #ModalDepositAlertMessage :is(p, li) { line-height: 1.7; }
body.frontend-theme #ModalDepositAlertMessage p { color: var(--premium-muted); }
body.frontend-theme #ModalDepositAlertMessage :is(ul, ol) { padding-left: 1.4em; margin: 12px 0 18px; }
body.frontend-theme #ModalDepositAlertMessage li { color: var(--premium-muted); }
body.frontend-theme #ModalDepositAlertMessage :is(ul, ol) > li { display: list-item; }
body.frontend-theme #ModalDepositAlertMessage ul > li { list-style-type: disc; }
body.frontend-theme #ModalDepositAlertMessage ol > li { list-style-type: decimal; }
body.frontend-theme #ModalDepositAlertMessage li + li { margin-top: 6px; }
body.frontend-theme #ModalDepositAlertMessage li::marker { color: var(--premium-accent); }
body.frontend-theme #ModalDepositAlertMessage :is(img, video, iframe) { max-width: 100%; }
body.frontend-theme #ModalDepositAlertMessage + div {
    flex: 0 0 auto;
    padding: 18px 28px 22px !important;
    border-top: 1px solid var(--premium-line);
    background: var(--premium-surface) !important;
    text-align: center;
}
body.frontend-theme #ModalDepositAlertMessage + div > br { display: none; }
body.frontend-theme #ModalDepositAlertMessage + div .btn {
    min-width: 132px;
    min-height: 46px;
    margin: 0 !important;
    padding: 10px 28px !important;
    border-radius: 11px;
    font-size: 14px;
    font-weight: 700;
}
body.frontend-theme .modal-backdrop.show { opacity: .72; }

body.frontend-theme .sweet-modal-overlay { background: rgba(var(--palette-overlay-rgb, 4, 9, 17), .78) !important; }
body.frontend-theme .sweet-modal-overlay.open .sweet-modal-box {
    border: 1px solid var(--premium-line) !important;
    border-radius: 20px;
    font-family: inherit;
    box-shadow: 0 32px 90px #0009, 0 0 0 1px #ffffff08;
}
body.frontend-theme .sweet-modal-title-wrap { padding: 24px 64px 20px 28px; }
body.frontend-theme .sweet-modal-title { text-shadow: none; }
body.frontend-theme .sweet-modal-title h2 { color: var(--premium-text) !important; font: 700 20px/1.3 "Lato", "Segoe UI", Arial, sans-serif; letter-spacing: -.02em; text-transform: none; }
body.frontend-theme .sweet-modal-content { padding: 26px 28px; font-family: inherit; font-size: 15px; line-height: 1.7; overflow-wrap: anywhere; }
body.frontend-theme .sweet-modal-content :is(p, li) { line-height: 1.7; }
body.frontend-theme .sweet-modal-content :is(ul, ol) > li { display: list-item; }
body.frontend-theme .sweet-modal-content li::marker { color: var(--premium-accent); }
body.frontend-theme .sweet-modal-buttons { margin-top: 0; padding: 16px 24px; }
body.frontend-theme .sweet-modal-buttons :is(a.button, button) {
    min-height: 42px;
    min-width: 100px;
    padding: 9px 18px;
    border-radius: 10px !important;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
}
body.frontend-theme .sweet-modal-buttons :is(a.yellowB.button, button.yellowB) {
    color: var(--palette-action-ink, #142141) !important;
    background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important;
    border: 1px solid var(--palette-action-border, #ff9e77) !important;
}
body.frontend-theme .sweet-modal-buttons :is(a.redB.button, button.redB) {
    color: #f3c4c1 !important;
    background: #873c3c35 !important;
    border: 1px solid #db77775e !important;
}
body.frontend-theme .sweet-modal-buttons :is(a.button, button):hover { filter: brightness(1.12); }
/* Explicit icon colours avoid the legacy close SVG losing contrast in either theme. */
body.frontend-theme {
    --modal-close-bg: var(--palette-text-light, #182b50);
    --modal-close-hover: var(--palette-close-hover, #385f95);
    --modal-close-active: var(--palette-close-active, #4e75a8);
    --modal-close-border: var(--palette-control-dark, #668ab7);
    --modal-close-focus: var(--premium-focus);
    --modal-close-icon: var(--palette-close-icon-dark, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 7 10 10M17 7 7 17' fill='none' stroke='%2352e0d2' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"));
}
body.frontend-theme.frontend-lobby:not(.dark) {
    --modal-close-bg: var(--palette-page-light, #eff6ff);
    --modal-close-hover: var(--palette-raised-light, #dceaff);
    --modal-close-active: var(--palette-raised-light, #c0dcff);
    --modal-close-border: var(--premium-accent-ink);
    --modal-close-focus: var(--premium-focus);
    --modal-close-icon: var(--palette-close-icon-light, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m7 7 10 10M17 7 7 17' fill='none' stroke='%2300756e' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"));
}
body.frontend-theme .sweet-modal-close a.sweet-modal-close-link {
    box-sizing: border-box;
    border: 1px solid var(--modal-close-border) !important;
    background: var(--modal-close-bg) var(--modal-close-icon) center / 22px 22px no-repeat !important;
    opacity: 1;
    transition: background-color .18s ease, box-shadow .18s ease;
}
body.frontend-theme .sweet-modal-close a.sweet-modal-close-link:hover {
    background-color: var(--modal-close-hover) !important;
}
body.frontend-theme .sweet-modal-close a.sweet-modal-close-link:active {
    background-color: var(--modal-close-active) !important;
}
body.frontend-theme .sweet-modal-close a.sweet-modal-close-link:focus-visible {
    outline: 2px solid var(--modal-close-focus) !important;
    outline-offset: 3px;
}
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-buttons :is(a.redB.button, button.redB) { color: #963b3b !important; background: #f9e9e7 !important; }
body.frontend-theme :is(#history_table, #credit_div2) :is(th, td) { border-color: #ffffff12 !important; }
body.frontend-theme :is(#history_table, #credit_div2) th { background: var(--palette-raised-dark, #213c70) !important; color: var(--premium-accent) !important; padding: 14px 12px; }
body.frontend-theme :is(#history_table, #credit_div2) td { background: var(--palette-surface-dark, #17264d); color: var(--palette-label-dark, #d0d5df); padding: 14px 12px; }

/* Promotions, help and the previous public layout versions. */
body.frontend-theme.frontend-content .header.is-fixed { border-bottom: 1px solid var(--premium-line); }
body.frontend-theme.frontend-content #myTitle { color: var(--premium-accent); font-size: 18px; font-weight: 700; }
body.frontend-theme.frontend-content #form1 > div { max-width: 1120px; margin: auto; }
body.frontend-theme.frontend-content .tf-container { max-width: 1120px; }
body.frontend-theme #DivPromos { gap: 24px; padding-bottom: 40px; }
body.frontend-theme #DivPromos img { border-radius: 16px; border: 1px solid var(--premium-line); }
body.frontend-theme :is(#DivPromoDetail, .divContentImage) { color: var(--palette-label-dark, #d0d5df); line-height: 1.8; }
body.frontend-theme :is(#DivPromoDetail, .divContentImage) img { max-width: 100%; height: auto; border-radius: 12px; }
body.frontend-theme :is(.divContentVideo video, .divContentImage video) { max-width: 100%; border-radius: 14px; }
body.frontend-theme .divSelect { background: var(--premium-surface) !important; border: 1px solid var(--premium-line); border-radius: 10px; }
body.frontend-theme .divSelect.selected { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.09803921569) !important; border-color: var(--premium-accent); }
body.frontend-theme .divSelect.selected h5 { color: var(--premium-accent) !important; }
body.frontend-theme :is(.darken-layout, .footer, .sub-footer.dark-subfooter) { background: var(--palette-page-dark, #101a3b) !important; border-top: 1px solid var(--premium-line); }
body.frontend-theme .footer-theme :is(p, li a span), body.frontend-theme .sub-footer p { color: var(--premium-muted) !important; }
body.frontend-theme .footer-theme h4 { color: var(--premium-accent); }
body.frontend-theme.frontend-lobby #SectionGames + div[style="height: 150px;"] { height: 32px !important; }
body.frontend-theme.frontend-lobby .footer-links-heading,
body.frontend-theme.frontend-lobby .footer-link-icon { display: none; }
body.frontend-theme.frontend-lobby .footer-language { margin-top: 16px; }
body.frontend-theme.frontend-lobby .footer-language-title { margin-bottom: 9px; color: var(--premium-muted); font-size: 12px; font-weight: 700; letter-spacing: .04em; }
body.frontend-theme.frontend-lobby .footer-language-options { display: flex; flex-wrap: wrap; gap: 7px; }
body.frontend-theme.frontend-lobby .footer-language-option {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 36px;
    padding: 7px 10px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431);
    border-radius: 10px;
    background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.0431372549);
    color: var(--premium-text);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease;
}
body.frontend-theme.frontend-lobby .footer-language-option img { width: 16px; height: 16px; border-radius: 50%; object-fit: cover; }
body.frontend-theme.frontend-lobby .footer-language-option[aria-pressed="true"] { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1411764706); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.6274509804); color: var(--premium-accent); }
body.frontend-theme.frontend-lobby .footer-language-option:hover { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1098039216); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.5019607843); }
body.frontend-theme.frontend-lobby:not(.dark) .footer-language-option[aria-pressed="true"] { background: var(--premium-action-start); border-color: var(--palette-action-border, #ff9e77); color: var(--premium-action-ink); }
body.frontend-theme.frontend-status #form1 {
    max-width: 600px;
    margin: 12vh auto;
    padding: 40px;
    background: var(--premium-surface);
    border: 1px solid var(--premium-line);
    border-radius: 20px;
    box-shadow: 0 24px 64px #0005;
    text-align: center;
}

/* Honour the lobby's existing saved light-mode preference and theme switch. */
body.frontend-theme.frontend-lobby:not(.dark) {
    --premium-accent: var(--palette-accent-light, #a33c21);
    --premium-secondary: var(--palette-focus-light, #00756e);
    --premium-focus: var(--palette-focus-light, #00756e);
    --premium-focus-ring: rgba(var(--palette-focus-light-rgb, 0, 117, 110), 0.1568627451);
    --theme-color2: var(--palette-accent-light, #c7502f);
    --premium-bg: var(--palette-page-light, #eff6ff);
    --premium-surface: #ffffff;
    --premium-raised: var(--palette-raised-light, #e3efff);
    --premium-line: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431);
    --premium-text: var(--palette-text-light, #182b50);
    --premium-muted: var(--palette-muted-light, #506585);
    background: radial-gradient(ellipse at 10% 0, var(--palette-glow-light, #dbeaff), transparent 55%), radial-gradient(ellipse at 95% 15%, var(--palette-secondary-glow-light, #d4f5ef), transparent 40%), var(--palette-page-gradient-light, var(--palette-page-light, #eff6ff)) fixed !important;
    color-scheme: light;
}
body.frontend-theme.frontend-lobby:not(.dark) :is(header, .header, .tf-statusbar, .bottom-navigation-bar) { background: #ffffff !important; }
body.frontend-theme.frontend-lobby:not(.dark) .game-type-menu { background: linear-gradient(145deg, #ffffff, var(--palette-raised-light, #deecff)) !important; box-shadow: 0 12px 30px rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.09803921569), inset 0 1px #fff; }
body.frontend-theme.frontend-lobby:not(.dark) .game-type-menu-item { color: var(--palette-muted-light, #405779) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .game-type-menu-item .game-type-menu-item-icon { color: var(--premium-secondary); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07058823529); }
body.frontend-theme.frontend-lobby:not(.dark) .game-type-menu-item.active { color: var(--palette-action-ink, #142141) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .game-type-menu-item.active .game-type-menu-item-icon { color: var(--palette-action-ink, #142141); background: #ffffff45; }
body.frontend-theme.frontend-lobby:not(.dark) .game-type-menu-item:hover:not(.active) { color: var(--palette-text-light, #182b50) !important; background: #ffffff99; }
body.frontend-theme.frontend-lobby:not(.dark) :is(.form-control, .group-input input, .group-input select, .tf-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]), .tf-form select, .tf-form textarea, .search-field) { background: #fff !important; border-color: var(--palette-control-light, #7890b5) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(.group-input label, .tf-form label, .list-profile p, .box-profile p, .balance-header .title, .balance-card .action span) { color: var(--palette-muted-light, #405779) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(.balance-card, .wallet-bg, .tf-balance-box, .box-profile, #ProfileModal a.list-profile, .divPanelProfileName, .box-settings-profile) { background: linear-gradient(135deg, #ffffff, var(--palette-raised-light, #e3efff)) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(.auth-forgot-password, .back-btn, .clear-panel, .tf-panel .text-primary, .balance-card .balance-amount) { color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(.btn-outline, .btnDivProfileMobileRegister) { color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(.darken-layout, .sub-footer.dark-subfooter) { background: var(--palette-raised-light, #dfeeff) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .footer-theme h4 { color: var(--premium-accent-ink); }
body.frontend-theme.frontend-lobby:not(.dark) :is(#history_table, #credit_div2) th { background: var(--palette-raised-light, #e3efff) !important; color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#history_table, #credit_div2) td { background: #fff; color: var(--palette-muted-light, #405779); }
body.frontend-theme.frontend-lobby:not(.dark) #form1 > div > .swiper { box-shadow: 0 24px 64px rgba(var(--palette-shadow-rgb, 33, 75, 141), 0.1019607843); }
body.frontend-theme.frontend-lobby:not(.dark) .balance-card { box-shadow: 0 16px 40px rgba(var(--palette-shadow-rgb, 33, 75, 141), 0.1019607843), inset 0 1px #ffffff80; }
body.frontend-theme.frontend-lobby:not(.dark) .game-type-menu-item.active { box-shadow: 0 5px 16px rgba(var(--palette-shadow-rgb, 33, 75, 141), 0.1490196078), inset 0 1px #ffffff99; }
body.frontend-theme.frontend-lobby:not(.dark) :is(.btn-solid, .tf-btn.accent, .btnDivProfileMobileLogin, .btn-primary, .header .buttons a) { box-shadow: 0 4px 14px rgba(var(--palette-shadow-rgb, 33, 75, 141), 0.1019607843); }

/* Profile drawer: account identity, balance, and account actions. */
body.frontend-theme.frontend-lobby #ProfileModal .profile-panel {
    background: var(--palette-page-dark, #101a3b) !important;
    border-left: 1px solid var(--premium-line);
    scrollbar-width: thin;
    scrollbar-color: var(--palette-scroll-dark, #4b7fc1) transparent;
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-panel-header {
    position: sticky;
    z-index: 2;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 74px;
    padding: 16px 24px;
    border-bottom: 1px solid var(--premium-line);
    background: var(--palette-page-dark, #101a3b);
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-panel-header h3 { margin: 0; color: var(--premium-text) !important; font-size: 20px; font-weight: 700; text-transform: none; }
body.frontend-theme.frontend-lobby #ProfileModal .profile-close {
    display: inline-flex;
    flex: 0 0 38px;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941);
    border-radius: 12px;
    background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.04705882353);
    color: var(--premium-accent);
    font-size: 22px;
    cursor: pointer;
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-close:hover { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1254901961); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4392156863); }
body.frontend-theme.frontend-lobby #ProfileModal .profile-panel-content { padding: 24px 24px calc(32px + env(safe-area-inset-bottom, 0px)); }
body.frontend-theme.frontend-lobby #ProfileModal :is(.profile-identity, .profile-balance, .profile-action) {
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 0;
    text-align: left;
    text-decoration: none;
    font: inherit;
    cursor: pointer;
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-identity {
    gap: 16px;
    min-height: 104px;
    padding: 18px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431) !important;
    border-radius: 18px;
    background: linear-gradient(125deg, var(--palette-raised-dark, #2a4c83), var(--palette-surface-dark, #17264d)) !important;
    box-shadow: 0 12px 30px #0003;
    color: var(--premium-text);
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-avatar {
    display: flex;
    flex: 0 0 56px;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    padding: 6px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3215686275);
    border-radius: 17px;
    background: var(--palette-input-dark, #102044);
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-avatar img { max-width: 100%; max-height: 100%; object-fit: contain; }
body.frontend-theme.frontend-lobby #ProfileModal :is(.profile-identity-copy, .profile-balance-copy, .profile-action-copy) { display: flex; flex: 1 1 auto; flex-direction: column; align-items: flex-start; min-width: 0; gap: 4px; }
body.frontend-theme.frontend-lobby #ProfileModal :is(.profile-eyebrow, .profile-balance-label, .profile-action-detail) { color: var(--palette-muted-dark, #b2c4e3); font-size: 12px; font-weight: 600; line-height: 1.3; }
body.frontend-theme.frontend-lobby #ProfileModal #KeyUsername { max-width: 100%; color: var(--premium-text) !important; font-size: 21px; font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }
body.frontend-theme.frontend-lobby #ProfileModal .profile-chevron { flex: 0 0 auto; color: var(--premium-accent); font-size: 21px; line-height: 1; }
body.frontend-theme.frontend-lobby #ProfileModal .profile-balance {
    gap: 14px;
    min-height: 86px;
    margin-top: 14px;
    padding: 15px 18px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431);
    border-radius: 16px;
    background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.05098039216);
    color: var(--premium-text);
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-icon {
    display: inline-flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941);
    border-radius: 13px;
    background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.06274509804);
    color: var(--premium-accent);
    font-size: 17px;
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-balance-value { color: var(--premium-accent); font-size: 23px; font-weight: 700; line-height: 1.2; font-variant-numeric: tabular-nums; }
body.frontend-theme.frontend-lobby #ProfileModal .profile-section-title { margin: 27px 2px 11px; color: var(--palette-muted-dark, #b2c4e3); font-size: 12px; font-weight: 700; letter-spacing: .05em; }
body.frontend-theme.frontend-lobby #ProfileModal .profile-actions { display: grid; gap: 8px; }
body.frontend-theme.frontend-lobby #ProfileModal .profile-action {
    gap: 13px;
    min-height: 66px;
    padding: 11px 14px;
    border: 1px solid #ffffff10;
    border-radius: 14px;
    background: var(--palette-raised-dark, #203561);
    color: var(--premium-text);
}
body.frontend-theme.frontend-lobby #ProfileModal .profile-action-label { color: inherit; font-size: 14px; font-weight: 700; line-height: 1.3; overflow-wrap: anywhere; }
body.frontend-theme.frontend-lobby #ProfileModal .profile-action-detail:empty { display: none; }
body.frontend-theme.frontend-lobby #ProfileModal :is(.profile-identity, .profile-balance, .profile-action):hover { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.5019607843) !important; filter: brightness(1.08); }
body.frontend-theme.frontend-lobby #ProfileModal .profile-signout { margin-top: 7px; border-color: #d4787830; background: #b75a5a0d; color: #f0c5c0; }
body.frontend-theme.frontend-lobby #ProfileModal .profile-signout .profile-icon { border-color: #d4787838; background: #d4787812; color: #e4a49d; }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-panel,
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-panel-header { background: var(--palette-page-light, #eff6ff) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-identity { background: linear-gradient(125deg, #ffffff, var(--palette-raised-light, #deecff)) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-avatar { background: #ffffff; }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal :is(.profile-eyebrow, .profile-balance-label, .profile-action-detail, .profile-section-title) { color: var(--palette-muted-light, #506585); }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-balance { background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.2823529412); }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-balance-value,
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-icon,
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-chevron,
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-close { color: var(--premium-accent-ink); }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-action { background: #fff; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-signout { color: #923f3f; background: #f9ece9; border-color: #d4787840; }
body.frontend-theme.frontend-lobby:not(.dark) #ProfileModal .profile-signout .profile-icon { color: #a75151; }

/* Mobile-only account controls use the same wallet values and account panels. */
body.frontend-theme.frontend-lobby .balance-mobile { display: none; }
body.frontend-theme.frontend-lobby .balance-card .action.balance-mobile { display: none; }
body.frontend-theme.frontend-lobby .mobile-games-heading { display: none; }

/* The signed-in balance and its four desktop account shortcuts. */
body.frontend-theme.frontend-lobby .balance-section { padding: 0; margin: 24px 0 8px; }
body.frontend-theme.frontend-lobby .balance-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(230px, .9fr) minmax(0, 2fr);
    align-items: center;
    gap: 28px;
    overflow: hidden;
    margin: 0;
    padding: 24px 28px;
    border-radius: 20px;
    background: linear-gradient(115deg, var(--palette-raised-dark, #294b89), var(--palette-surface-dark, #17264d) 66%, var(--palette-raised-dark, #233b6b)) !important;
    box-shadow: 0 16px 40px #0003, inset 0 1px #ffffff0c;
}
body.frontend-theme.frontend-lobby .balance-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(180deg, var(--premium-accent), var(--premium-accent-ink));
}
body.frontend-theme.frontend-lobby .balance-summary { display: flex; align-items: center; gap: 17px; min-width: 0; }
body.frontend-theme.frontend-lobby .balance-wallet-icon {
    display: flex;
    flex: 0 0 54px;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2823529412);
    border-radius: 17px;
    background: linear-gradient(145deg, rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1411764706), rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.03137254902));
    color: var(--premium-secondary);
    font-size: 21px;
}
body.frontend-theme.frontend-lobby .balance-details { min-width: 0; }
body.frontend-theme.frontend-lobby .balance-header { text-align: left; }
body.frontend-theme.frontend-lobby .balance-header .title { color: var(--palette-muted-dark, #b2c4e3) !important; font-size: 13px; font-weight: 600; letter-spacing: .02em; }
body.frontend-theme.frontend-lobby .balance-amount { margin: 4px 0 0; color: var(--premium-accent); font-size: clamp(25px, 2.2vw, 32px); font-weight: 700; line-height: 1.15; text-align: left; letter-spacing: -.02em; }
body.frontend-theme.frontend-lobby .balance-currency { font-size: .65em; color: var(--premium-accent); vertical-align: .12em; }
body.frontend-theme.frontend-lobby .balance-card .actions { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0; }
body.frontend-theme.frontend-lobby .balance-card .action {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 10px;
    min-width: 0;
    min-height: 66px;
    padding: 10px;
    border: 1px solid #ffffff10;
    border-radius: 13px;
    background: #ffffff08;
    color: var(--palette-text-dark, #e5eaf1);
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
body.frontend-theme.frontend-lobby .balance-card .action .icon {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    margin: 0;
    border-radius: 11px;
    font-size: 16px;
}
body.frontend-theme.frontend-lobby .balance-card .action span:last-child { color: inherit !important; overflow-wrap: anywhere; line-height: 1.25; }
body.frontend-theme.frontend-lobby .balance-card .action-deposit { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.09411764706); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3019607843); color: var(--premium-accent); }
body.frontend-theme.frontend-lobby .balance-card .action:hover { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1254901961); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4392156863); transform: translateY(-2px); }
body.frontend-theme.frontend-lobby:not(.dark) .balance-card { background: linear-gradient(115deg, #ffffff, var(--palette-raised-light, #e5f1ff)) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .balance-header .title { color: var(--palette-muted-light, #506585) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .balance-wallet-icon { color: var(--premium-accent-ink); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); }
body.frontend-theme.frontend-lobby:not(.dark) .balance-card .action { color: var(--palette-muted-light, #344d74); background: #ffffff9e; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); }
body.frontend-theme.frontend-lobby:not(.dark) .balance-card .action-deposit { color: var(--premium-accent-ink); background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.3882352941); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4392156863); }
body.frontend-theme.frontend-lobby:not(.dark) .balance-card .action .icon { color: var(--premium-accent-ink) !important; }

/* Empty recent history lives in the same result area as the other categories. */
body.frontend-theme.frontend-lobby .recent-empty {
    margin: 12px 0 0;
    padding: 38px 20px;
    border: 1px dashed var(--premium-line);
    border-radius: 16px;
    background: #ffffff05;
    text-align: center;
}
body.frontend-theme.frontend-lobby .recent-empty-icon { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431); border-radius: 15px; color: var(--premium-accent); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.06274509804); font-size: 19px; }
body.frontend-theme.frontend-lobby .recent-empty p { margin: 12px 0 0; color: var(--premium-muted); }

@media (max-width: 991px) {
    body.frontend-theme .game-type-menu-wrapper { width: 100%; max-width: 720px; }
    body.frontend-theme .game-type-menu { display: flex; width: 100%; gap: 2px; padding: 5px; }
    body.frontend-theme .game-type-menu-item { flex: 1 1 0; min-width: 0; flex-direction: column; gap: 4px; padding: 7px 2px; font-size: 11px; }
    body.frontend-theme .game-type-menu-item .game-type-menu-item-icon { flex: 0 0 22px; width: 22px; height: 22px; border: 0; background: transparent; }
}
@media (min-width: 992px) {
    body.frontend-theme .tf-panel .panel-sidebar { max-width: 560px; }
    body.frontend-theme .tf-panel .panel-sidebar .header.is-fixed { width: 100%; max-width: 560px; }
    body.frontend-theme .tf-panel .panel-sidebar .tf-container { max-width: 100%; }
}
@media (min-width: 421px) {
    body.frontend-theme .sweet-modal-overlay.open .sweet-modal-box { overflow: hidden; }
}
@media (max-width: 767px) {
    body.frontend-theme { font-size: 14px; }
    body.frontend-theme .main-menu { min-height: 66px; }
    body.frontend-theme .main-menu .brand-logo { padding-top: 10px; padding-bottom: 10px; }
    body.frontend-theme.frontend-lobby .main-menu .brand-logo img { width: 148px; }
    body.frontend-theme.frontend-lobby { --lobby-content-width: calc(100% - 24px); }
    body.frontend-theme.frontend-lobby #form1 > div > .swiper { margin-top: 12px; border-radius: 12px; }
    body.frontend-theme :is(.swiper-button-prev, .swiper-button-next) { width: 30px; height: 30px; --swiper-navigation-size: 13px; }
    body.frontend-theme #SectionGames { margin-top: 22px !important; }
    body.frontend-theme .game-type-menu-wrapper { width: 100%; max-width: 520px; margin-bottom: 16px; }
    body.frontend-theme .game-type-menu { display: flex; width: 100%; gap: 2px; padding: 5px; border-radius: 16px; }
    body.frontend-theme .game-type-menu-item { flex: 1 1 0; min-width: 0; min-height: 62px; flex-direction: column; gap: 4px; padding: 7px 2px; border-radius: 11px; font-size: 11px; }
    body.frontend-theme .game-type-menu-item .game-type-menu-item-icon { flex: 0 0 22px; width: 22px; height: 22px; border: 0; background: transparent; }
    body.frontend-theme .game-type-menu-item .game-type-menu-item-icon svg { width: 19px; height: 19px; }
    body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .game-grid { gap: 10px; }
    body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .game-card { border-radius: 12px; }
    body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .game-frame { border-radius: 10px; }
    body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .text-panel { min-height: 54px; padding: 14px 4px 8px; }
    body.frontend-theme :is(#divGameListGamesHot, #divGameListGamesPlayed) .games-all .subtitle { font-size: 9px; margin-top: 4px; }
    body.frontend-theme :is(.tf-panel .tf-container, .modal-body) { padding-left: 18px; padding-right: 18px; }
    body.frontend-theme.frontend-lobby .balance-section { margin: 16px 0 4px; }
    body.frontend-theme.frontend-lobby .balance-card { grid-template-columns: 1fr; gap: 20px; padding: 20px; }
    body.frontend-theme.frontend-lobby .balance-card .actions { gap: 7px; }
    body.frontend-theme.frontend-lobby .balance-card .action { flex-direction: column; gap: 6px; min-height: 80px; padding: 9px 3px; font-size: 11px; }
    body.frontend-theme.frontend-lobby .balance-card .action .icon { flex-basis: 32px; width: 32px; height: 32px; font-size: 15px; }
    body.frontend-theme .tf-form h1 { font-size: 26px; }
    body.frontend-theme .bottom-navigation-bar { padding-bottom: env(safe-area-inset-bottom, 0px); border-top: 1px solid var(--premium-line); }
    body.frontend-theme.frontend-status #form1 { margin: 8vh 16px; padding: 28px 20px; }

}
@media (max-width: 1199px) {
    body.frontend-theme.frontend-lobby #main-menu > .desktop-menu-shortcut { display: none !important; }
    body.frontend-theme.frontend-lobby .footer-style-1 { position: relative; z-index: 100; }
    body.frontend-theme.frontend-lobby .footer-style-1 .darken-layout { padding: 30px 0 26px; }
    body.frontend-theme.frontend-lobby .footer-style-1 .container { width: var(--lobby-content-width); max-width: var(--lobby-content-max-width); padding: 0; }
    body.frontend-theme.frontend-lobby .footer-style-1 .footer-theme { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin: 0; }
    body.frontend-theme.frontend-lobby .footer-theme > .footer-brand-column { grid-column: 1 / -1; width: auto; padding: 0 0 20px; margin: 0 0 8px; border-bottom: 1px solid var(--premium-line); }
    body.frontend-theme.frontend-lobby .footer-brand-column > div { display: flex; align-items: center; gap: 18px; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-logo { flex: 0 0 72px; margin: 0; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-logo img { width: 72px; height: auto; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-language { flex: 1 1 auto; min-width: 0; margin: 0; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-language-options { gap: 5px; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-language-option { min-height: 34px; padding: 6px 8px; font-size: 11px; }
    body.frontend-theme.frontend-lobby .footer-links-heading { display: block; grid-column: 1 / -1; margin: 0; padding: 0 1px 4px; color: var(--premium-muted); font-size: 12px; font-weight: 700; letter-spacing: .04em; }
    body.frontend-theme.frontend-lobby .footer-theme > div:not(.footer-brand-column):not(.footer-links-heading),
    body.frontend-theme.frontend-lobby .footer-theme > div:not(.footer-brand-column) .sub-title,
    body.frontend-theme.frontend-lobby .footer-theme .footer-content,
    body.frontend-theme.frontend-lobby .footer-theme .footer-content ul { display: contents !important; }
    body.frontend-theme.frontend-lobby .footer-theme .footer-content li { min-width: 0; margin: 0; padding: 0; }
    body.frontend-theme.frontend-lobby .footer-theme .footer-content li a {
        display: flex;
        align-items: center;
        gap: 10px;
        min-height: 50px;
        padding: 8px 10px;
        border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1254901961);
        border-radius: 12px;
        background: #ffffff08;
        font-size: 12px;
        font-weight: 600;
        line-height: 1.3;
        text-transform: none;
    }
    body.frontend-theme.frontend-lobby .footer-theme .footer-content li a span { color: var(--premium-text) !important; overflow-wrap: anywhere; }
    body.frontend-theme.frontend-lobby .footer-theme .footer-content li a .sub-arrow { display: none; }
    body.frontend-theme.frontend-lobby .footer-theme .footer-link-icon { display: inline-flex; flex: 0 0 30px; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 9px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07450980392); color: var(--premium-accent); font-size: 14px; }
    body.frontend-theme.frontend-lobby .footer-theme .footer-content li a:hover { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.09019607843); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); }
    body.frontend-theme.frontend-lobby .footer-style-1 .sub-footer { padding: 18px 0 22px; }
    body.frontend-theme.frontend-lobby .footer-style-1 .sub-footer .row { margin: 0; }
    body.frontend-theme.frontend-lobby .footer-style-1 .footer-end p { margin: 0 !important; font-size: 12px; line-height: 1.6; }
    body.frontend-theme.frontend-lobby:not(.dark) .footer-theme .footer-content li a { background: #ffffff80; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); }
    body.frontend-theme.frontend-lobby:not(.dark) .footer-theme .footer-link-icon { background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1098039216); color: var(--premium-accent-ink); }
}
@media (min-width: 768px) and (max-width: 1199px) {
    body.frontend-theme.frontend-lobby .footer-style-1 .darken-layout { padding: 38px 0 34px; }
    body.frontend-theme.frontend-lobby .footer-style-1 .footer-theme { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
    body.frontend-theme.frontend-lobby .footer-theme > .footer-brand-column { padding-bottom: 24px; margin-bottom: 12px; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-logo { flex-basis: 88px; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-logo img { width: 88px; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-language-option { min-height: 40px; padding: 8px 12px; font-size: 12px; }
    body.frontend-theme.frontend-lobby .footer-theme .footer-content li a { min-height: 56px; padding: 10px 13px; font-size: 13px; }
    body.frontend-theme.frontend-lobby .footer-theme .footer-link-icon { flex-basis: 34px; width: 34px; height: 34px; font-size: 15px; }
}
@media (min-width: 768px) and (max-width: 991px) {
    body.frontend-theme.frontend-lobby .balance-card { grid-template-columns: 1fr; gap: 18px; }
}
@media (max-width: 639px) {
    body.frontend-theme #ModalDepositAlert .modal-dialog { width: calc(100% - 24px); margin: 12px auto; }
    body.frontend-theme #ModalDepositAlert .modal-content { max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); border-radius: 18px; }
    body.frontend-theme #ModalDepositAlertMessage { padding: 26px 24px 20px !important; font-size: 14px; }
    body.frontend-theme #ModalDepositAlertMessage :is(h1, h2, h3) { font-size: 19px; }
    body.frontend-theme #ModalDepositAlertMessage + div { padding: 14px 20px 18px !important; }
}
@media (max-width: 600px) {
    /* Reserve the full height of the fixed footer, including the device safe area. */
    body.frontend-theme.frontend-lobby #form1 { padding-bottom: calc(80px + env(safe-area-inset-bottom, 0px)); }
    body.frontend-theme.frontend-lobby .bottom-nav {
        --footer-text: #9aabba;
        --footer-active: #587ff5;
        position: fixed;
        z-index: 900;
        inset: auto 0 0;
        width: 100%;
        max-width: none;
        height: calc(80px + env(safe-area-inset-bottom, 0px));
        box-sizing: border-box;
        margin: 0;
        padding: 6px 12px calc(14px + env(safe-area-inset-bottom, 0px));
        align-items: stretch;
        justify-content: space-between;
        border: 0;
        border-top: 1px solid #ffffff05;
        border-radius: 0;
        background: linear-gradient(180deg, #202638, #1c1e30) !important;
        box-shadow: 0 -3px 14px #00000014;
        backdrop-filter: none;
    }
    body.frontend-theme.frontend-lobby .bottom-nav .nav-item {
        display: flex;
        flex: 1 1 0;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-width: 0;
        min-height: 58px;
        margin: 0;
        padding: 4px 1px;
        border: 0;
        border-radius: 0;
        background: transparent;
        color: var(--footer-text);
        font: inherit;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }
    body.frontend-theme.frontend-lobby .bottom-nav .nav-item .icon {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 28px;
        margin: 0;
        color: inherit;
        font-size: 25px;
        line-height: 1;
    }
    body.frontend-theme.frontend-lobby .bottom-nav .nav-item .icon:hover { transform: none; }
    body.frontend-theme.frontend-lobby .bottom-nav .nav-item .label { max-width: 100%; font-size: clamp(10px, 3.05vw, 12px); font-weight: 400; line-height: 1.2; text-align: center; overflow-wrap: anywhere; }
    body.frontend-theme.frontend-lobby .bottom-nav .nav-item.active { color: var(--footer-active); }
    body.frontend-theme.frontend-lobby .bottom-nav .nav-item.active .icon { filter: drop-shadow(0 0 12px #497cff99); }
    body.frontend-theme.frontend-lobby .bottom-nav .nav-item:hover { color: var(--footer-active); }
    body.frontend-theme.frontend-lobby .bottom-nav .nav-item:focus-visible { outline: 2px solid var(--footer-active); outline-offset: -2px; border-radius: 6px; }
    body.frontend-theme.frontend-lobby .bottom-nav .account-dot { position: absolute; top: -3px; right: -1px; width: 5px; height: 5px; border-radius: 50%; background: #ff3b30; }
    body.frontend-theme.frontend-lobby:not(.dark) .bottom-nav { --footer-text: #64748b; --footer-active: #4169df; background: #ffffff !important; border-top-color: #e2e8f0; }
}
@media (max-width: 420px) {
    body.frontend-theme .sweet-modal-overlay.open .sweet-modal-box { border-radius: 0; }
    body.frontend-theme .sweet-modal-title-wrap { padding-left: 22px; }
    body.frontend-theme .sweet-modal-content { max-height: calc(100vh - 200px); max-height: calc(100dvh - 200px); overflow-y: auto; padding-left: 22px; padding-right: 22px; }
}
@media (max-width: 359px) {
    body.frontend-theme .game-type-menu-item { font-size: 10px; }
    body.frontend-theme.frontend-lobby .balance-card .actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    body.frontend-theme.frontend-lobby .balance-card .action { flex-direction: row; min-height: 54px; gap: 8px; font-size: 12px; }
    body.frontend-theme.frontend-lobby .footer-brand-column > div { gap: 12px; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-logo { flex-basis: 56px; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-logo img { width: 56px; }
    body.frontend-theme.frontend-lobby .footer-brand-column .footer-language-option { gap: 5px; padding: 6px; }
}
@media (prefers-reduced-motion: reduce) {
    body.frontend-theme *, body.frontend-theme *::before, body.frontend-theme *::after { scroll-behavior: auto !important; transition: none !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Account panels share the profile drawer's surfaces and controls. */
body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal) .account-panel { background: var(--palette-page-dark, #101a3b) !important; border-left: 1px solid var(--premium-line); scrollbar-width: thin; scrollbar-color: var(--palette-scroll-dark, #4b7fc1) transparent; }
body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal, #QrModal) .account-panel-header { position: sticky; top: 0; z-index: 3; display: flex; align-items: center; gap: 14px; min-height: 74px; padding: 16px 24px; border-bottom: 1px solid var(--premium-line); background: var(--palette-page-dark, #101a3b); }
body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal, #QrModal) .account-panel-header h3 { flex: 1; min-width: 0; margin: 0; color: var(--premium-text) !important; font-size: 20px; font-weight: 700; text-transform: none; }
body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal, #QrModal) .account-panel-nav { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 38px; width: 38px; height: 38px; padding: 0; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 12px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.04705882353); color: var(--premium-accent) !important; font-size: 22px; line-height: 1; text-decoration: none; cursor: pointer; }
body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal, #QrModal) .account-panel-nav:hover { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.5019607843); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1254901961); }
body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal) .account-panel-content { padding: 24px 24px calc(32px + env(safe-area-inset-bottom, 0px)); }
body.frontend-theme.frontend-lobby :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) .account-form-card, body.frontend-theme.frontend-lobby #BankModal #DivBankList > div { padding: 22px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 18px; background: var(--palette-surface-dark, #1b2e59); box-shadow: 0 12px 30px #0002; }
body.frontend-theme.frontend-lobby :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) .group-input { position: relative; margin: 0 0 20px; }
body.frontend-theme.frontend-lobby :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) .group-input > label { position: static !important; display: block; padding: 0; margin: 0 0 8px; background: transparent !important; color: var(--palette-muted-dark, #b2c4e3) !important; font-size: 13px; line-height: 1.4; }
body.frontend-theme.frontend-lobby :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) .group-input :is(input, select) { width: 100%; min-height: 50px; padding: 12px 14px; }
body.frontend-theme.frontend-lobby :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) input[readonly] { color: var(--palette-text-dark, #e8edf4) !important; }
body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal) .account-form-submit { margin-top: 24px; }
body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal) .account-form-submit .tf-btn { width: 100%; min-height: 50px; display: flex; justify-content: center; align-items: center; text-align: center; }
body.frontend-theme.frontend-lobby #BankModal .account-bank-toolbar { display: flex; justify-content: flex-end; margin-bottom: 16px; }
body.frontend-theme.frontend-lobby #BankModal .account-bank-toolbar:has(a[style*="display: none"]) { margin-bottom: 0; }
body.frontend-theme.frontend-lobby #BankModal #add_bank_btn { padding: 10px 14px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); border-radius: 10px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.08235294118); color: var(--premium-accent) !important; }
body.frontend-theme.frontend-lobby #BankModal .account-bank-new { margin-bottom: 16px; }
body.frontend-theme.frontend-lobby #BankModal .account-bank-new h4 { margin: 0 0 20px; font-size: 16px; }
body.frontend-theme.frontend-lobby #BankModal #DivBankList > div { margin-bottom: 14px !important; }
body.frontend-theme.frontend-lobby #BankModal #DivBankList > div > label { position: static !important; display: block; margin: 0 0 16px; color: var(--premium-accent) !important; font-weight: 700; }
body.frontend-theme.frontend-lobby #BankModal #DivBankList > div > div { padding: 0 !important; }
body.frontend-theme.frontend-lobby #CreditModal .tf-balance-box { padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
body.frontend-theme.frontend-lobby #CreditModal .account-credit-summary { display: flex; align-items: center; gap: 15px; padding: 20px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); border-radius: 18px; background: linear-gradient(125deg, var(--palette-raised-dark, #2a4c83), var(--palette-surface-dark, #17264d)); }
body.frontend-theme.frontend-lobby #CreditModal .account-credit-icon { display: grid; place-items: center; flex: 0 0 48px; height: 48px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); border-radius: 14px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07058823529); color: var(--premium-accent); font-size: 19px; }
body.frontend-theme.frontend-lobby #CreditModal .account-credit-summary p { margin: 0 0 5px; color: var(--palette-muted-dark, #b2c4e3); font-size: 13px; }
body.frontend-theme.frontend-lobby #CreditModal :is(.account-credit-summary h2, .account-credit-total h2) { margin: 0; color: var(--premium-accent) !important; font-size: 24px; font-weight: 700; font-variant-numeric: tabular-nums; }
body.frontend-theme.frontend-lobby #CreditModal .account-credit-table { margin-top: 20px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 14px; overflow: auto; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 { width: 100%; border-collapse: collapse; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 :is(th, td) { padding: 12px 14px; border: 0; border-bottom: 1px solid #ffffff12; background: var(--palette-surface-dark, #1b2e59) !important; color: var(--palette-text-dark, #e7edf5) !important; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 th { background: var(--palette-raised-dark, #264477) !important; color: var(--premium-accent) !important; }
body.frontend-theme.frontend-lobby #CreditModal .account-credit-total { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 14px; padding: 17px 20px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 14px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.05098039216); color: var(--palette-muted-dark, #bdc7d4); }
body.frontend-theme.frontend-lobby #CreditModal .account-credit-total h2 { font-size: 20px; }
body.frontend-theme.frontend-lobby #ProfileDetailsModal .account-details-identity { display: flex; align-items: center; gap: 16px; margin-bottom: 16px; padding: 20px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431); border-radius: 18px; background: linear-gradient(125deg, var(--palette-raised-dark, #2a4c83), var(--palette-surface-dark, #17264d)); }
body.frontend-theme.frontend-lobby #ProfileDetailsModal .account-details-avatar { display: grid; place-items: center; flex: 0 0 56px; width: 56px; height: 56px; padding: 6px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3215686275); border-radius: 17px; background: var(--palette-input-dark, #102044); }
body.frontend-theme.frontend-lobby #ProfileDetailsModal .account-details-avatar img { max-width: 100%; max-height: 100%; object-fit: contain; }
body.frontend-theme.frontend-lobby #ProfileDetailsModal .account-details-identity span { color: var(--palette-muted-dark, #b2c4e3); font-size: 12px; font-weight: 600; }
body.frontend-theme.frontend-lobby #ProfileDetailsModal #KeyUsername2 { margin: 4px 0 0; font-size: 21px; overflow-wrap: anywhere; }
body.frontend-theme.frontend-lobby #ProfileDetailsModal .account-details-note { margin: 2px 0 0; color: var(--palette-muted-dark, #b2c4e3); font-size: 13px; line-height: 1.6; }
body.frontend-theme.frontend-lobby #QrModal .account-qr-panel { max-height: 90vh; overflow-y: auto; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431); border-radius: 20px 20px 0 0; background: var(--palette-page-dark, #101a3b) !important; }
body.frontend-theme.frontend-lobby #QrModal .account-qr-actions { display: flex; align-items: center; gap: 8px; }
body.frontend-theme.frontend-lobby #QrModal .account-qr-content { display: flex; flex-direction: column; align-items: center; gap: 20px; padding: 24px 24px calc(28px + env(safe-area-inset-bottom, 0px)); background: var(--palette-page-dark, #101a3b) !important; }
body.frontend-theme.frontend-lobby #QrModal .account-qr-image { display: grid; place-items: center; width: min(100%, 270px); aspect-ratio: 1; padding: 12px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3137254902); border-radius: 18px; background: #fff; }
body.frontend-theme.frontend-lobby #QrModal #imgQR { display: block; width: 100%; height: 100%; object-fit: contain; }
body.frontend-theme.frontend-lobby #QrModal .qrinputdiv { width: min(100%, 440px); }
body.frontend-theme.frontend-lobby #QrModal #invitelink { width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid var(--palette-control-dark, #526e9c); border-radius: 10px; background: var(--palette-input-dark, #102044); color: var(--palette-text-dark, #e7edf5); }
body.frontend-theme.frontend-lobby:not(.dark) :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal) .account-panel, body.frontend-theme.frontend-lobby:not(.dark) :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal, #QrModal) .account-panel-header, body.frontend-theme.frontend-lobby:not(.dark) #QrModal :is(.account-qr-panel, .account-qr-content) { background: var(--palette-page-light, #eff6ff) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) .account-form-card, body.frontend-theme.frontend-lobby:not(.dark) #BankModal #DivBankList > div { background: #fff; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); }
body.frontend-theme.frontend-lobby:not(.dark) :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) .group-input > label { color: var(--palette-muted-light, #405779) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) input[readonly] { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal, #QrModal) .account-panel-nav { color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#CreditModal .account-credit-summary, #ProfileDetailsModal .account-details-identity) { background: linear-gradient(125deg, #ffffff, var(--palette-raised-light, #deecff)); }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal :is(.account-credit-summary p, .account-credit-total), body.frontend-theme.frontend-lobby:not(.dark) #ProfileDetailsModal :is(.account-details-identity span, .account-details-note) { color: var(--palette-muted-light, #506585); }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal :is(.account-credit-summary h2, .account-credit-total h2, .account-credit-icon) { color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal #credit_div2 :is(th, td) { background: #fff !important; border-color: var(--palette-raised-light, #dceaff); color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal #credit_div2 th { background: var(--palette-raised-light, #e5f1ff) !important; color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #BankModal #add_bank_btn, body.frontend-theme.frontend-lobby:not(.dark) #BankModal #DivBankList > div > label { color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #QrModal #invitelink { background: #fff; border-color: var(--palette-control-light, #7890b5); color: var(--palette-text-light, #182b50); }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal, #QrModal) .account-panel-header { padding: 14px 18px; }
    body.frontend-theme.frontend-lobby :is(#CreditModal, #ChangePwdModal, #BankModal, #ProfileDetailsModal) .account-panel-content { padding-left: 18px; padding-right: 18px; }
    body.frontend-theme.frontend-lobby :is(#ChangePwdModal, #BankModal, #ProfileDetailsModal) .account-form-card, body.frontend-theme.frontend-lobby #BankModal #DivBankList > div { padding: 18px; }
}
body.frontend-theme.frontend-lobby #QrModal .invite-copy-status { display: block; min-height: 1.4em; margin-top: 8px; color: var(--premium-accent); font-size: 12px; line-height: 1.4; }
body.frontend-theme.frontend-lobby:not(.dark) #QrModal .invite-copy-status { color: var(--premium-accent-ink); }

/* Game wallet list: keep the server-rendered table readable at any drawer width. */
body.frontend-theme.frontend-lobby #CreditModal .account-credit-table { overflow: hidden; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1803921569); border-radius: 16px; background: var(--palette-surface-dark, #1b2e59); }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 { table-layout: fixed; border-collapse: separate; border-spacing: 0; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 thead th { height: 44px; padding: 12px 16px; border: 0; background: var(--palette-raised-dark, #264477) !important; color: var(--premium-accent) !important; font-size: 11px; font-weight: 700; letter-spacing: .07em; line-height: 1.2; text-transform: uppercase; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 thead th:first-child { width: 65%; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 thead th:last-child { width: 35%; text-align: right; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 tbody td { height: 76px; padding: 12px 16px; border: 0; border-top: 1px solid #ffffff10 !important; vertical-align: middle; background: var(--palette-surface-dark, #1b2e59) !important; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 tbody tr:hover td { background: var(--palette-raised-dark, #264477) !important; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 .tdGameWallet td:first-child > div { display: flex; align-items: center; gap: 13px; min-width: 0; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 .tdGameWallet td:first-child > div > div { flex: 0 0 48px; width: 48px; height: 48px; overflow: hidden; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431); border-radius: 12px; background: var(--palette-page-dark, #101a3b); }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 .tdGameWallet img { display: block; width: 100% !important; height: 100%; max-width: none !important; object-fit: cover; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 .tdGameWallet td:first-child span { min-width: 0; color: var(--palette-text-dark, #eef1f6) !important; font-size: 14px; font-weight: 700; line-height: 1.35; overflow-wrap: anywhere; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 .tdGameWallet td:last-child { text-align: right; }
body.frontend-theme.frontend-lobby #CreditModal #credit_div2 .tdGameWallet td:last-child span { color: var(--premium-accent) !important; font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal .account-credit-table { background: #fff; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal #credit_div2 thead th { background: var(--palette-raised-light, #e5f1ff) !important; color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal #credit_div2 tbody td { background: #fff !important; border-top-color: var(--palette-raised-light, #dceaff) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal #credit_div2 tbody tr:hover td { background: var(--palette-page-light, #f4f9ff) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal #credit_div2 .tdGameWallet td:first-child span { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #CreditModal #credit_div2 .tdGameWallet td:last-child span { color: var(--premium-accent-ink) !important; }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby #CreditModal #credit_div2 :is(thead th, tbody td) { padding-left: 12px; padding-right: 12px; }
    body.frontend-theme.frontend-lobby #CreditModal #credit_div2 thead th:first-child { width: 60%; }
    body.frontend-theme.frontend-lobby #CreditModal #credit_div2 thead th:last-child { width: 40%; }
    body.frontend-theme.frontend-lobby #CreditModal #credit_div2 .tdGameWallet td:first-child > div { gap: 10px; }
    body.frontend-theme.frontend-lobby #CreditModal #credit_div2 .tdGameWallet td:first-child > div > div { flex-basis: 42px; width: 42px; height: 42px; }
}

/* Deposit and withdrawal panels. */
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .payment-panel { background: var(--palette-page-dark, #101a3b) !important; border-left: 1px solid var(--premium-line); scrollbar-width: thin; scrollbar-color: var(--palette-scroll-dark, #4b7fc1) transparent; }
body.frontend-theme.frontend-lobby #SelectDepositModal .payment-method-panel { background: var(--palette-page-dark, #101a3b) !important; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431); border-radius: 20px 20px 0 0; overflow-y: auto; max-height: 90vh; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #SelectDepositModal, #BankTransferModal, #InstantModal) .payment-panel-header { position: sticky; z-index: 3; top: 0; display: flex; align-items: center; gap: 14px; min-height: 74px; padding: 16px 24px; border-bottom: 1px solid var(--premium-line); background: var(--palette-page-dark, #101a3b); }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #SelectDepositModal, #BankTransferModal, #InstantModal) .payment-panel-header h3 { flex: 1; min-width: 0; margin: 0; color: var(--premium-text) !important; font-size: 20px; font-weight: 700; text-transform: none; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #SelectDepositModal, #BankTransferModal, #InstantModal) .payment-panel-nav { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 38px; width: 38px; height: 38px; padding: 0; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 12px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.04705882353); color: var(--premium-accent) !important; font-size: 22px; line-height: 1; cursor: pointer; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #SelectDepositModal, #BankTransferModal, #InstantModal) .payment-panel-nav:hover { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.5019607843); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1254901961); }
body.frontend-theme.frontend-lobby #SelectDepositModal .wrap-transfer { margin: 0 !important; padding: 24px 0 calc(28px + env(safe-area-inset-bottom, 0px)); background: transparent !important; }
body.frontend-theme.frontend-lobby #SelectDepositModal .wrap-transfer .tf-container { display: grid; gap: 10px; }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer { display: flex; align-items: center; gap: 15px; min-height: 78px; padding: 14px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 15px; background: var(--palette-raised-dark, #203561) !important; color: var(--palette-text-dark, #edf1f6) !important; cursor: pointer; }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer:hover { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.5019607843); background: var(--palette-raised-dark, #243f70) !important; }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer .icon { display: grid; place-items: center; flex: 0 0 46px; width: 46px; height: 46px; margin: 0; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431); border-radius: 14px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07058823529); color: var(--premium-accent); font-size: 19px; }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer .content { flex: 1; min-width: 0; }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer h4 { margin: 0; color: var(--palette-text-dark, #edf1f6) !important; font-size: 15px; }
body.frontend-theme.frontend-lobby #SelectDepositModal .payment-method-chevron { color: var(--premium-accent); font-size: 21px; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) :is(#withdrawform, #depositform, #paymentgateway_form) { padding: 24px 0 calc(32px + env(safe-area-inset-bottom, 0px)); }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-container { padding-left: 24px; padding-right: 24px; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-balance-box { padding: 20px !important; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2196078431) !important; border-radius: 18px; background: linear-gradient(125deg, var(--palette-raised-dark, #2a4c83), var(--palette-surface-dark, #17264d)) !important; box-shadow: 0 12px 30px #0002; }
body.frontend-theme.frontend-lobby #WithdrawModal .tf-balance-box > .px-3 { padding: 0 !important; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-balance-box p { margin: 0; color: var(--palette-muted-dark, #b2c4e3) !important; font-size: 13px; font-weight: 600; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-balance-box h3 { margin: 0; color: var(--premium-accent) !important; font-size: 22px; font-weight: 700; font-variant-numeric: tabular-nums; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-balance-box h3 i { margin-right: 3px; font-size: .8em; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .group-input { position: relative; margin-bottom: 20px !important; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .group-input > label { position: static !important; display: block; padding: 0; margin: 0 0 8px; background: transparent !important; color: var(--palette-muted-dark, #b2c4e3) !important; font-size: 13px; font-weight: 600; line-height: 1.4; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .group-input :is(input:not([type=file]):not([type=hidden]), select) { width: 100%; min-height: 50px; padding: 12px 14px; border-radius: 10px; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .group-input input:disabled { opacity: 1; color: var(--palette-muted-dark, #b2c4e3) !important; background: var(--palette-header-dark, #14254e) !important; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .list-money { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .list-money li { min-width: 0; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .list-money .tag-money { display: flex; justify-content: center; align-items: center; min-height: 42px; padding: 8px 4px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); border-radius: 10px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.05490196078); color: var(--premium-accent) !important; font-size: 13px; font-weight: 700; text-decoration: none; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .list-money .tag-money:hover { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.6274509804); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1450980392); }
body.frontend-theme.frontend-lobby :is(#BankTransferModal, #InstantModal) .transfer-card { margin-top: 24px !important; }
body.frontend-theme.frontend-lobby :is(#BankTransferModal, #InstantModal) .transfer-card h3 { margin-bottom: 12px !important; color: var(--palette-text-dark, #e7edf5) !important; font-size: 15px; font-weight: 700; }
body.frontend-theme.frontend-lobby :is(#BankTransferModal, #InstantModal) .tf-card-block { min-height: 70px; margin-bottom: 9px; padding: 14px 16px; border: 1px solid #ffffff18 !important; border-radius: 14px; background: var(--palette-raised-dark, #203561) !important; box-shadow: none; cursor: pointer; }
body.frontend-theme.frontend-lobby :is(#BankTransferModal, #InstantModal) .tf-card-block:is(.active, .select_bank) { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.6274509804) !important; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.0862745098) !important; box-shadow: inset 3px 0 var(--premium-accent); }
body.frontend-theme.frontend-lobby :is(#BankTransferModal, #InstantModal) .tf-card-block :is(h4, p, .bank_acc, .txtAccNumber) { color: var(--palette-text-dark, #e7edf5) !important; }
body.frontend-theme.frontend-lobby #BankTransferModal .tf-card-block .txtAccNumber { min-height: 0; padding: 2px 0; font-size: 13px; }
body.frontend-theme.frontend-lobby #BankTransferModal .tf-card-block i { color: var(--premium-accent); }
body.frontend-theme.frontend-lobby #BankTransferModal .upload-input-form .content-input { min-height: 110px; padding: 18px; border: 1px dashed rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4392156863) !important; border-radius: 14px; background: var(--palette-raised-dark, #203561) !important; color: var(--premium-accent) !important; }
body.frontend-theme.frontend-lobby #BankTransferModal .upload-input-form #image-data:not([src]), body.frontend-theme.frontend-lobby #BankTransferModal .upload-input-form #image-data[src=""] { display: none; }
body.frontend-theme.frontend-lobby #InstantModal :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank) { width: calc(33.333% - 8px) !important; max-width: 120px; margin: 4px; overflow: hidden; border: 1px solid #ffffff22; border-radius: 11px; background: #fff; cursor: pointer; vertical-align: middle; }
body.frontend-theme.frontend-lobby #InstantModal :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank)[isselected="Y"] { border-color: var(--premium-focus); box-shadow: 0 0 0 2px var(--premium-focus); }
body.frontend-theme.frontend-lobby #InstantModal :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank) > div { display: flex; align-items: center; justify-content: center; height: 62px; padding: 8px !important; }
body.frontend-theme.frontend-lobby #InstantModal :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank) img { max-width: 100%; max-height: 100%; object-fit: contain; }
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) :is(#withdrawbtn, #manualbtn, #pay_btn) { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 50px; margin-top: 24px; text-align: center; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #BankTransferModal, #InstantModal) .payment-panel, body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .payment-method-panel, body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #SelectDepositModal, #BankTransferModal, #InstantModal) .payment-panel-header { background: var(--palette-page-light, #eff6ff) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #SelectDepositModal, #BankTransferModal, #InstantModal) .payment-panel-nav { color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .action-sheet-transfer, body.frontend-theme.frontend-lobby:not(.dark) :is(#BankTransferModal, #InstantModal) .tf-card-block { background: #fff !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .action-sheet-transfer h4, body.frontend-theme.frontend-lobby:not(.dark) :is(#BankTransferModal, #InstantModal) .tf-card-block :is(h4, p, .bank_acc, .txtAccNumber), body.frontend-theme.frontend-lobby:not(.dark) :is(#BankTransferModal, #InstantModal) .transfer-card h3 { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .action-sheet-transfer .icon, body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .payment-method-chevron { color: var(--premium-accent-ink); }
body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-balance-box { background: linear-gradient(125deg, #ffffff, var(--palette-raised-light, #deecff)) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-balance-box p, body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #BankTransferModal, #InstantModal) .group-input > label { color: var(--palette-muted-light, #405779) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-balance-box h3, body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #BankTransferModal, #InstantModal) .list-money .tag-money { color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#WithdrawModal, #BankTransferModal, #InstantModal) .group-input input:disabled { background: var(--palette-page-light, #eaf3ff) !important; color: var(--palette-muted-light, #506585) !important; }
body.frontend-theme.frontend-lobby:not(.dark) :is(#BankTransferModal, #InstantModal) .tf-card-block:is(.active, .select_bank) { border-color: var(--premium-accent) !important; background: var(--palette-secondary-glow-light, #e0f5f1) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #BankTransferModal .upload-input-form .content-input { background: #fff !important; color: var(--premium-accent-ink) !important; }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby :is(#WithdrawModal, #SelectDepositModal, #BankTransferModal, #InstantModal) .payment-panel-header { padding: 14px 18px; }
    body.frontend-theme.frontend-lobby :is(#WithdrawModal, #SelectDepositModal, #BankTransferModal, #InstantModal) .tf-container { padding-left: 18px; padding-right: 18px; }
    body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .tf-balance-box { padding: 18px !important; }
}
body.frontend-theme.frontend-lobby :is(#WithdrawModal, #BankTransferModal, #InstantModal) .card-secton { margin-top: 0; }
body.frontend-theme.frontend-lobby :is(#BankTransferModal #depositform, #InstantModal #paymentgateway_form) { background: transparent !important; }
body.frontend-theme.frontend-lobby #SelectDepositModal .payment-method-panel { border-radius: 0 0 20px 20px; }
/* Make the entire bankslip upload area activate the native file input. */
body.frontend-theme.frontend-lobby #BankTransferModal .upload-input-form .content-input { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
body.frontend-theme.frontend-lobby #BankTransferModal .upload-input-form #receiptupload { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
body.frontend-theme.frontend-lobby #BankTransferModal .upload-input-form .content-input:focus-within { outline: 2px solid var(--premium-accent); outline-offset: 3px; }
body.frontend-theme.frontend-lobby #BankTransferModal .upload-input-form #image-data { max-width: 100% !important; }

/* Notifications stay above open panels, without blocking the page around them. */
body.frontend-theme.frontend-lobby .premium-toast-stack { position: fixed; z-index: 11000; top: max(18px, env(safe-area-inset-top, 0px)); left: 50%; display: flex; flex-direction: column; gap: 10px; width: min(520px, calc(100% - 32px)); max-height: calc(100vh - 36px); overflow-y: auto; transform: translateX(-50%); pointer-events: none; }
body.frontend-theme.frontend-lobby .premium-toast-stack .premium-toast { --notice-accent: var(--premium-accent); --notice-tint: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.1019607843); position: relative; flex: 0 0 auto; width: 100%; max-width: none !important; margin: 0 !important; overflow: hidden; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2705882353); border-radius: 16px; background: var(--palette-surface-dark, #17264d); box-shadow: 0 16px 42px #03070dc0, 0 2px 8px #0005; color: var(--palette-text-dark, #f0f3f7); pointer-events: auto; }
body.frontend-theme.frontend-lobby .premium-toast-stack .premium-toast:not(.show):not(.showing) { display: none; }
body.frontend-theme.frontend-lobby .premium-toast-stack .premium-toast::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 3px; background: var(--notice-accent); }
body.frontend-theme.frontend-lobby .premium-toast-stack .premium-toast--success { --notice-accent: #79d5ac; --notice-tint: #79d5ac1c; }
body.frontend-theme.frontend-lobby .premium-toast-stack .premium-toast--info { --notice-accent: #8abcf3; --notice-tint: #8abcf31c; }
body.frontend-theme.frontend-lobby .premium-toast-stack .premium-toast--warning { --notice-accent: #e4c17b; --notice-tint: #e4c17b20; }
body.frontend-theme.frontend-lobby .premium-toast-stack .premium-toast--error { --notice-accent: #ed9694; --notice-tint: #ed96941c; }
body.frontend-theme.frontend-lobby .premium-toast-stack .premium-toast--logout { --notice-accent: #c5b7e8; --notice-tint: #c5b7e81c; }
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body { display: flex; align-items: flex-start; gap: 13px; padding: 15px 15px 15px 18px; border-radius: 16px; background: var(--palette-surface-dark, #17264d); }
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body .icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 38px; width: 38px; height: 38px; border: 1px solid var(--notice-tint); border-radius: 12px; background: var(--notice-tint); color: var(--notice-accent); font-size: 20px; line-height: 1; }
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body .icon i { color: var(--notice-accent) !important; }
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body .content { display: flex; flex: 1 1 auto; align-items: center; min-width: 0; min-height: 38px; }
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body .display__text { width: 100%; padding: 0; color: var(--palette-text-dark, #f0f3f7) !important; font-size: 14px; font-weight: 500; line-height: 1.5; overflow-wrap: anywhere; }
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body .display__text :is(p, div, ul, li) { color: inherit !important; font: inherit; line-height: inherit; }
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body .display__text :is(p, ul) { margin: 0 !important; padding: 0; list-style: none; }
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body .display__text li + li { margin-top: 5px; }
body.frontend-theme.frontend-lobby .premium-toast-stack .btn-close { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 30px; width: 30px; height: 30px; margin: 4px 0 0; padding: 0; border: 0; border-radius: 9px; background: transparent !important; color: var(--palette-muted-dark, #b2c4e3); opacity: 1; font-size: 19px; cursor: pointer; }
body.frontend-theme.frontend-lobby .premium-toast-stack .btn-close:hover { background: #ffffff12 !important; color: #fff; }
body.frontend-theme.frontend-lobby .premium-toast-stack .btn-close:focus-visible { outline: 2px solid var(--notice-accent); outline-offset: 2px; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .premium-toast { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3960784314); background: #ffffff; box-shadow: 0 16px 42px #18233335, 0 2px 8px #18233318; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .toast-body { background: #ffffff; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .toast-body .display__text { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .btn-close { color: var(--palette-muted-light, #506585); }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .btn-close:hover { color: var(--palette-text-light, #182b50); background: rgba(var(--palette-text-light-rgb, 24, 43, 80), 0.05098039216) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .premium-toast--success { --notice-accent: #267b58; --notice-tint: #267b581a; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .premium-toast--info { --notice-accent: #376fa7; --notice-tint: #376fa71a; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .premium-toast--warning { --notice-accent: #946c25; --notice-tint: #946c251a; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .premium-toast--error { --notice-accent: #ad4b4b; --notice-tint: #ad4b4b1a; }
body.frontend-theme.frontend-lobby:not(.dark) .premium-toast-stack .premium-toast--logout { --notice-accent: #7157a1; --notice-tint: #7157a11a; }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby .premium-toast-stack { top: max(12px, env(safe-area-inset-top, 0px)); width: calc(100% - 24px); }
    body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body { gap: 10px; padding: 13px 12px 13px 15px; }
}
body.frontend-theme.frontend-lobby .premium-toast-stack .toast-body .display__text li { display: block; }
/* Deposit method labels and icons use the same bright accents as the account panels. */
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer .icon { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); background: linear-gradient(145deg, rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1490196078), rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.06274509804)); box-shadow: inset 0 1px #ffffff0b; }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer .icon i { color: var(--premium-accent) !important; }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer h4 { color: var(--palette-raised-light, #deecff) !important; font-weight: 700; }
body.frontend-theme.frontend-lobby #SelectDepositModal .payment-method-chevron { color: var(--premium-accent) !important; }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer:hover .icon { border-color: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.5647058824); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); }
body.frontend-theme.frontend-lobby #SelectDepositModal .action-sheet-transfer:hover :is(.icon i, .payment-method-chevron) { color: var(--premium-accent) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .action-sheet-transfer .icon { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3137254902); background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.3607843137); }
body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .action-sheet-transfer .icon i, body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .payment-method-chevron { color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .action-sheet-transfer h4 { color: var(--palette-muted-light, #344d74) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #SelectDepositModal .action-sheet-transfer:hover :is(.icon i, .payment-method-chevron) { color: var(--premium-accent-ink) !important; }
/* Center each gateway's bank choices and fit at least three across on phones. */
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid { text-align: center; font-size: 0; }
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank) { width: min(120px, calc((100% - 24px) / 3)) !important; margin: 4px; vertical-align: middle; }
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank):hover { border-color: var(--premium-focus); box-shadow: 0 0 0 2px rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.5019607843); }
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank)[isselected="Y"] { box-shadow: 0 0 0 2px var(--premium-focus); }
/* Three full-width bank columns, aligned to the start of each row. */
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid { text-align: left; }
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank) { width: calc((100% - 16px) / 3) !important; max-width: none; margin: 0 8px 8px 0; }
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank):nth-child(3n) { margin-right: 0; }
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank) > div { padding: 4px !important; }
body.frontend-theme.frontend-lobby #InstantModal .payment-bank-grid :is(.divOnlineTransferBank, .divLuxePayOnlineTransferBank, .div7ePayOnlineTransferBank, .divInPayOnlineTransferBank) img { width: 100% !important; max-height: 100%; object-fit: contain; }

/* Transfer all confirmation, shown above account drawers. */
body.frontend-theme.frontend-lobby #TransferAllConfirmModal { z-index: 10050; padding: 16px !important; }
body.frontend-theme.frontend-lobby:has(#TransferAllConfirmModal.show) > .modal-backdrop { z-index: 10040; background: var(--palette-overlay, #080f26); }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .modal-dialog { width: min(100%, 440px); max-width: 440px; margin: 0 auto; min-height: calc(100% - 0px); }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-card { align-items: center; padding: 32px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); border-radius: 20px; background: linear-gradient(145deg, var(--palette-raised-dark, #243e6d), var(--palette-header-dark, #152750)) !important; box-shadow: 0 26px 70px #0009; text-align: center; }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-icon { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 20px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); border-radius: 18px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.09411764706); color: var(--premium-accent); font-size: 23px; }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal h2 { margin: 0; color: var(--palette-text-dark, #f3f7ff); font-size: 22px; font-weight: 700; line-height: 1.25; }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal p { margin: 12px 0 0; color: var(--palette-muted-dark, #bec9d8); font-size: 15px; line-height: 1.6; }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-actions { display: flex; gap: 10px; width: 100%; margin-top: 26px; }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-actions button { flex: 1 1 0; min-width: 0; min-height: 48px; padding: 11px 14px; border-radius: 11px; font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-cancel { border: 1px solid #77859a55; background: #ffffff0a; color: var(--palette-label-dark, #dce3ec); }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-submit { border: 1px solid var(--palette-action-border, #ff9e77); background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)); color: var(--palette-action-ink, #142141); }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-actions button:hover { filter: brightness(1.1); }
body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-actions button:focus-visible { outline: 2px solid var(--premium-focus); outline-offset: 3px; }
body.frontend-theme.frontend-lobby:not(.dark) #TransferAllConfirmModal .transfer-confirm-card { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3764705882); background: linear-gradient(145deg, #ffffff, var(--palette-raised-light, #e3efff)) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #TransferAllConfirmModal h2 { color: var(--palette-text-light, #182b50); }
body.frontend-theme.frontend-lobby:not(.dark) #TransferAllConfirmModal p { color: var(--palette-muted-light, #506585); }
body.frontend-theme.frontend-lobby:not(.dark) #TransferAllConfirmModal .transfer-confirm-icon { color: var(--premium-accent-ink); }
body.frontend-theme.frontend-lobby:not(.dark) #TransferAllConfirmModal .transfer-confirm-cancel { color: var(--palette-muted-light, #344d74); background: #fff; border-color: #b6bdc7; }
@media (max-width: 480px) { body.frontend-theme.frontend-lobby #TransferAllConfirmModal .transfer-confirm-card { padding: 26px 22px; } }

/* Registration verification drawer. */
body.frontend-theme.frontend-lobby #VerificationModal .verification-panel { background: var(--palette-page-dark, #101a3b) !important; border-left: 1px solid var(--premium-line); scrollbar-width: thin; scrollbar-color: var(--palette-scroll-dark, #4b7fc1) transparent; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-panel-header { position: sticky; z-index: 2; top: 0; display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 74px; padding: 16px 24px; border-bottom: 1px solid var(--premium-line); background: var(--palette-page-dark, #101a3b); }
body.frontend-theme.frontend-lobby #VerificationModal .verification-panel-header h2 { margin: 0; color: var(--premium-text) !important; font-size: 20px; font-weight: 700; line-height: 1.3; text-transform: none; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-panel-close { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 38px; width: 38px; height: 38px; padding: 0; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 12px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.04705882353); color: var(--premium-accent); font-size: 22px; cursor: pointer; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-panel-close:hover { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.5019607843); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1254901961); }
body.frontend-theme.frontend-lobby #VerificationModal .verification-panel-content { padding: 28px 24px calc(32px + env(safe-area-inset-bottom, 0px)); }
body.frontend-theme.frontend-lobby #VerificationModal .verification-intro { margin-bottom: 26px; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-icon { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 20px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); border-radius: 17px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.0862745098); color: var(--premium-accent); font-size: 25px; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-intro h1 { margin: 0; color: var(--premium-text) !important; font-size: 27px; font-weight: 700; line-height: 1.25; text-transform: none; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-intro p { max-width: 390px; margin: 10px 0 0; color: var(--palette-muted-dark, #b2c4e3); font-size: 14px; line-height: 1.6; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-card { padding: 22px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 18px; background: var(--palette-surface-dark, #1b2e59); box-shadow: 0 12px 30px #0002; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-card .group-input { margin: 0; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-card .group-input > label { position: static !important; display: block; margin: 0 0 8px; padding: 0; background: transparent !important; color: var(--palette-muted-dark, #b2c4e3) !important; font-size: 13px; line-height: 1.4; }
body.frontend-theme.frontend-lobby #VerificationModal #txtverificationcode { width: 100%; min-height: 52px; padding: 12px 14px; }
body.frontend-theme.frontend-lobby #VerificationModal .verification-hint { margin: 9px 0 0; color: #98a6b9; font-size: 12px; line-height: 1.5; }
body.frontend-theme.frontend-lobby #VerificationModal #verificationformSubmit { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 50px; margin-top: 24px; text-align: center; }
body.frontend-theme.frontend-lobby:not(.dark) #VerificationModal :is(.verification-panel, .verification-panel-header) { background: var(--palette-page-light, #eff6ff) !important; }
body.frontend-theme.frontend-lobby:not(.dark) #VerificationModal .verification-panel-close, body.frontend-theme.frontend-lobby:not(.dark) #VerificationModal .verification-icon { color: var(--premium-accent-ink); }
body.frontend-theme.frontend-lobby:not(.dark) #VerificationModal .verification-card { background: #fff; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); }
body.frontend-theme.frontend-lobby:not(.dark) #VerificationModal .verification-intro p, body.frontend-theme.frontend-lobby:not(.dark) #VerificationModal .verification-hint { color: var(--palette-muted-light, #506585); }
body.frontend-theme.frontend-lobby:not(.dark) #VerificationModal .verification-card .group-input > label { color: var(--palette-muted-light, #405779) !important; }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby #VerificationModal .verification-panel-header { padding: 14px 18px; }
    body.frontend-theme.frontend-lobby #VerificationModal .verification-panel-content { padding-left: 18px; padding-right: 18px; }
    body.frontend-theme.frontend-lobby #VerificationModal .verification-card { padding: 18px; }
}

/* Game wallet transfer modal. */
body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box.game-transfer-modal { width: min(520px, calc(100% - 32px)) !important; max-width: 520px; height: auto !important; max-height: calc(100dvh - 32px); left: 0 !important; right: 0; margin: max(24px, 8vh) auto !important; overflow-y: auto; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2705882353) !important; border-radius: 20px !important; background: var(--palette-header-dark, #13234b) !important; box-shadow: 0 28px 80px #000b; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-title-wrap { min-height: 72px; padding: 22px 70px 19px 24px; border-bottom: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); background: var(--palette-surface-dark, #172b58) !important; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-title h2 { margin: 0; color: var(--palette-text-dark, #f3f7ff) !important; font-size: 20px; font-weight: 700; text-transform: none; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-close { top: 18px; right: 20px; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-close a.sweet-modal-close-link { width: 36px; height: 36px; border-radius: 11px; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-content { max-height: none; padding: 24px; overflow: visible; }
body.frontend-theme.frontend-lobby .game-transfer-body { padding: 20px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); border-radius: 16px; background: linear-gradient(145deg, var(--palette-raised-dark, #203561), var(--palette-surface-dark, #1b2e59)); text-align: left; }
body.frontend-theme.frontend-lobby .game-transfer-label { display: block; margin: 0 0 10px; color: var(--palette-muted-dark, #b9c5d4); font-size: 13px; font-weight: 700; line-height: 1.4; }
body.frontend-theme.frontend-lobby .game-transfer-amount { display: flex; align-items: stretch; gap: 10px; }
body.frontend-theme.frontend-lobby .game-transfer-amount .game-transfer-step { display: grid; place-items: center; flex: 0 0 50px; width: 50px; min-height: 52px; padding: 0; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); border-radius: 11px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07058823529); color: var(--premium-accent); font: inherit; font-size: 23px; font-weight: 500; line-height: 1; cursor: pointer; }
body.frontend-theme.frontend-lobby .game-transfer-amount .game-transfer-step:hover { border-color: var(--premium-accent); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1490196078); }
body.frontend-theme.frontend-lobby .game-transfer-amount #trans { flex: 1 1 auto; width: 100%; min-width: 0; min-height: 52px; margin: 0; padding: 10px 12px; border: 1px solid var(--palette-control-dark, #526e9c) !important; border-radius: 11px; background: var(--palette-input-dark, #102044) !important; color: var(--premium-accent) !important; box-shadow: none; font-size: 20px; font-weight: 700; text-align: center; font-variant-numeric: tabular-nums; }
body.frontend-theme.frontend-lobby .game-transfer-amount #trans:focus { border-color: var(--premium-accent) !important; outline: none; box-shadow: 0 0 0 2px rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333) !important; }
body.frontend-theme.frontend-lobby .game-transfer-shortcuts { display: flex; gap: 10px; margin-top: 12px; }
body.frontend-theme.frontend-lobby .game-transfer-shortcuts .game-transfer-shortcut { flex: 1 1 0; min-width: 0; min-height: 42px; padding: 8px 12px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); border-radius: 10px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07058823529); color: var(--premium-accent); font: inherit; font-size: 13px; font-weight: 700; line-height: 1.2; cursor: pointer; }
body.frontend-theme.frontend-lobby .game-transfer-shortcuts .game-transfer-shortcut:hover { border-color: var(--premium-accent); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1450980392); }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-buttons { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; padding: 0 24px 24px; border: 0; background: transparent !important; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-buttons a.button { display: inline-flex; align-items: center; justify-content: center; float: none !important; min-width: 0; min-height: 46px; margin: 0 !important; padding: 10px 15px; border-radius: 11px !important; font-size: 13px; font-weight: 700; text-align: center; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-buttons a.money { margin-right: auto !important; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333) !important; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07058823529) !important; color: var(--premium-accent) !important; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-buttons a.redB { border: 1px solid #d58a824d !important; background: #a54f4b18 !important; color: #edb8b0 !important; }
body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-buttons a.greenB { border: 1px solid var(--palette-action-border, #ff9e77) !important; background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important; color: var(--palette-action-ink, #142141) !important; }
body.frontend-theme.frontend-lobby .game-transfer-modal :is(button, input[type=button], a.button):focus-visible { outline: 2px solid var(--premium-focus); outline-offset: 3px; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-overlay.open .sweet-modal-box.game-transfer-modal { background: var(--palette-page-light, #eff6ff) !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-modal .sweet-modal-title-wrap { background: #ffffff !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2078431373); }
body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-modal .sweet-modal-title h2 { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-body { background: #fff; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2509803922); }
body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-label { color: var(--palette-muted-light, #506585); }
body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-amount .game-transfer-step, body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-shortcuts .game-transfer-shortcut { color: var(--premium-accent-ink); background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.231372549); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333); }
body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-amount #trans { background: var(--palette-page-light, #f5faff) !important; border-color: var(--palette-control-light, #7890b5) !important; color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-modal .sweet-modal-buttons a.money { background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.3019607843) !important; color: var(--premium-accent-ink) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .game-transfer-modal .sweet-modal-buttons a.redB { background: #f9e9e7 !important; color: #963b3b !important; }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box.game-transfer-modal { width: calc(100% - 24px) !important; max-height: calc(100dvh - 24px); margin: 12px auto !important; }
    body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-title-wrap { padding-left: 18px; }
    body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-content { padding: 18px; }
    body.frontend-theme.frontend-lobby .game-transfer-body { padding: 16px; }
    body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-buttons { padding: 0 18px 18px; }
    body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-buttons a.button { flex: 1 1 0; padding-left: 8px; padding-right: 8px; }
    body.frontend-theme.frontend-lobby .game-transfer-modal .sweet-modal-buttons a.money { margin-right: 0 !important; }
}
body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box.game-transfer-modal { top: 50% !important; margin: 0 auto !important; transform: translateY(-50%) !important; }

/* Game success dialogs, including transfer results and launch actions. */
body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box:has(.sweet-modal-success) { width: min(500px, calc(100% - 32px)) !important; max-width: 500px; height: auto !important; max-height: calc(100dvh - 32px); top: 50% !important; left: 0 !important; right: 0; margin: 0 auto !important; overflow-y: auto; transform: translateY(-50%) !important; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2705882353) !important; border-radius: 20px !important; background: var(--palette-header-dark, #13234b) !important; box-shadow: 0 28px 80px #000b; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-title-wrap { min-height: 72px; padding: 22px 70px 19px 24px; border-bottom: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); background: var(--palette-surface-dark, #172b58) !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-title h2 { margin: 0; color: var(--palette-text-dark, #f3f7ff) !important; font-size: 20px; font-weight: 700; text-transform: none; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-close { top: 18px; right: 20px; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-close a.sweet-modal-close-link { width: 36px; height: 36px; border-radius: 11px; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-content { max-height: none; padding: 28px 24px 24px; overflow: visible; color: var(--palette-label-dark, #d8e0e9) !important; text-align: center; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-success { margin: 0 auto 18px; border-color: #7ed3a9; background: #79d5ac12; box-shadow: 0 0 0 9px #79d5ac0c; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-success .sweet-modal-placeholder { border-color: #79d5ac38; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-success .sweet-modal-line { background-color: #7ed3a9; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-success + br { display: none; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-content p { margin: 0 auto; color: var(--palette-text-dark, #e8edf4) !important; font-size: 15px; font-weight: 600; line-height: 1.6; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-buttons { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0; padding: 0 24px 24px; border: 0; background: transparent !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-buttons a.button { display: inline-flex; align-items: center; justify-content: center; float: none !important; min-width: 130px; min-height: 46px; margin: 0 !important; padding: 10px 20px; border-radius: 11px !important; font-size: 14px; font-weight: 700; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-buttons a.blueB { border: 1px solid var(--palette-action-border, #ff9e77) !important; background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important; color: var(--palette-action-ink, #142141) !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) :is(a.button, a.sweet-modal-close-link):focus-visible { outline: 2px solid var(--premium-focus); outline-offset: 3px; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-overlay.open .sweet-modal-box:has(.sweet-modal-success) { background: var(--palette-page-light, #eff6ff) !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-title-wrap { background: #ffffff !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2078431373); }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-title h2 { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-content { color: var(--palette-muted-light, #405779) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-content p { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-success { border-color: #3e9b72; background: #3e9b7212; box-shadow: 0 0 0 9px #3e9b720c; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-success .sweet-modal-line { background-color: #3e9b72; }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box:has(.sweet-modal-success) { width: calc(100% - 24px) !important; max-height: calc(100dvh - 24px); }
    body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-title-wrap { padding-left: 18px; }
    body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-content { padding: 24px 18px 20px; }
    body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-buttons { padding: 0 18px 18px; }
    body.frontend-theme.frontend-lobby .sweet-modal-box:has(.sweet-modal-success) .sweet-modal-buttons a.button { flex: 1 1 auto; }
}

/* Download and app-launch dialogs, scoped to their download or copy controls. */
body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) { width: min(620px, calc(100% - 32px)) !important; max-width: 620px; height: auto !important; max-height: calc(100dvh - 32px); top: 50% !important; left: 0 !important; right: 0; margin: 0 auto !important; overflow-y: auto; transform: translateY(-50%) !important; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2705882353) !important; border-radius: 20px !important; background: var(--palette-header-dark, #13234b) !important; box-shadow: 0 28px 80px #000b; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-title-wrap { min-height: 72px; padding: 22px 70px 19px 24px; border-bottom: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); background: var(--palette-surface-dark, #172b58) !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-title h2 { margin: 0; color: var(--palette-text-dark, #f3f7ff) !important; font-size: 20px; font-weight: 700; text-transform: none; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-close { top: 18px; right: 20px; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-close a.sweet-modal-close-link { width: 36px; height: 36px; border-radius: 11px; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-content { max-height: none; margin: 0 !important; padding: 26px 24px 22px; overflow: visible; color: var(--palette-label-dark, #c9d3df) !important; font-size: 14px; line-height: 1.6; text-align: center; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)):not(:has(.sweet-modal-success)) .sweet-modal-content::before { content: '\2193'; display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto 16px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3137254902); border-radius: 16px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.0862745098); color: var(--premium-accent); font-size: 25px; font-weight: 600; line-height: 1; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-content p { color: var(--palette-text-dark, #e8edf4) !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .download_btn { display: inline-flex; align-items: center; justify-content: center; min-height: 42px; min-width: 140px; padding: 9px 18px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4392156863); border-radius: 10px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.09803921569); color: var(--premium-accent) !important; font-size: 14px; font-weight: 700; text-decoration: none; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .download_btn:hover { border-color: var(--premium-accent); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons { position: static !important; width: auto !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0 24px 24px; border: 0; background: transparent !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons a.button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; float: none !important; width: 100%; min-width: 0; min-height: 45px; margin: 0 !important; padding: 10px 9px; border: 1px solid #77859a55 !important; border-radius: 10px !important; background: var(--palette-raised-dark, #203561) !important; color: var(--palette-text-dark, #e6ecf5) !important; font-size: 13px; font-weight: 700; line-height: 1.35; text-align: center; white-space: normal; overflow-wrap: anywhere; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons a.button:hover { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.5843137255) !important; filter: brightness(1.1); }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons a.yellowB { border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333) !important; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.07058823529) !important; color: var(--premium-accent) !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons a.yellowB::after { content: '\29c9'; flex: 0 0 auto; color: var(--premium-accent); font-size: 14px; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons a.blueB:last-child { border-color: var(--palette-action-border, #ff9e77) !important; background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important; color: var(--palette-action-ink, #142141) !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) :is(a.button, a.download_btn, a.sweet-modal-close-link):focus-visible { outline: 2px solid var(--premium-focus); outline-offset: 3px; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-overlay.open .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) { background: var(--palette-page-light, #eff6ff) !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-title-wrap { background: #ffffff !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2078431373); }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-title h2 { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-content { color: var(--palette-muted-light, #506585) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-content p { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)):not(:has(.sweet-modal-success)) .sweet-modal-content::before { color: var(--premium-accent-ink); background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.3137254902); }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .download_btn { color: var(--premium-accent-ink) !important; background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.3019607843); border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.4392156863); }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons a.button { color: var(--palette-muted-light, #344d74) !important; background: #fff !important; border-color: var(--palette-control-light, #7890b5) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons a.yellowB { color: var(--premium-accent-ink) !important; background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.3019607843) !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons a.blueB:last-child { color: var(--palette-action-ink, #142141) !important; background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important; border-color: var(--palette-action-border, #ff9e77) !important; }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) { width: calc(100% - 24px) !important; max-height: calc(100dvh - 24px); }
    body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-title-wrap { padding-left: 18px; }
    body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-content { padding: 22px 18px 18px; }
    body.frontend-theme.frontend-lobby .sweet-modal-box:is(:has(.download_btn), :has(.username_copy)) .sweet-modal-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; padding: 0 18px 18px; }
}


/* Simple game lobby confirmation. */
body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box:has(.game-lobby-confirm) { width: min(500px, calc(100% - 32px)) !important; max-width: 500px; height: auto !important; max-height: calc(100dvh - 32px); top: 50% !important; left: 0 !important; right: 0; margin: 0 auto !important; overflow-y: auto; transform: translateY(-50%) !important; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2705882353) !important; border-radius: 20px !important; background: var(--palette-header-dark, #13234b) !important; box-shadow: 0 28px 80px #000b; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-title-wrap { min-height: 70px; padding: 22px 70px 18px 24px; border-bottom: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.1882352941); background: var(--palette-surface-dark, #172b58) !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-title h2 { margin: 0; color: var(--palette-text-dark, #f3f7ff) !important; font-size: 20px; font-weight: 700; text-transform: none; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-close { top: 17px; right: 20px; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-close a.sweet-modal-close-link { width: 36px; height: 36px; border-radius: 11px; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-content { max-height: none; margin: 0 !important; padding: 30px 28px 24px; overflow: visible; color: var(--palette-label-dark, #c9d3df) !important; font-size: 15px; line-height: 1.6; text-align: center; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .game-lobby-confirm::before { content: '\25b6'; display: grid; place-items: center; width: 58px; height: 58px; margin: 0 auto 20px; padding-left: 3px; border: 1px solid rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3137254902); border-radius: 18px; background: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.0862745098); color: var(--premium-accent); font-size: 20px; line-height: 1; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-buttons { position: static !important; display: flex; justify-content: center; width: auto !important; margin: 0; padding: 0 28px 28px; border: 0; background: transparent !important; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-buttons a.button { display: inline-flex; align-items: center; justify-content: center; float: none !important; width: 100%; min-height: 48px; margin: 0 !important; padding: 10px 20px; border: 1px solid var(--palette-action-border, #ff9e77) !important; border-radius: 10px !important; background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important; color: var(--palette-action-ink, #142141) !important; font-size: 14px; font-weight: 700; text-align: center; }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-buttons a.button:hover { filter: brightness(1.08); }
body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) :is(a.button, a.sweet-modal-close-link):focus-visible { outline: 2px solid var(--premium-focus); outline-offset: 3px; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-overlay.open .sweet-modal-box:has(.game-lobby-confirm) { background: var(--palette-page-light, #eff6ff) !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.3333333333) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-title-wrap { background: #ffffff !important; border-color: rgba(var(--palette-line-light-rgb, 53, 101, 186), 0.2078431373); }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-title h2 { color: var(--palette-text-light, #182b50) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-content { color: var(--palette-muted-light, #506585) !important; }
body.frontend-theme.frontend-lobby:not(.dark) .sweet-modal-box:has(.game-lobby-confirm) .game-lobby-confirm::before { color: var(--premium-accent-ink); background: rgba(var(--palette-line-dark-rgb, 91, 155, 255), 0.3137254902); }
@media (max-width: 480px) {
    body.frontend-theme.frontend-lobby .sweet-modal-overlay.open .sweet-modal-box:has(.game-lobby-confirm) { width: calc(100% - 24px) !important; max-height: calc(100dvh - 24px); }
    body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-content { padding: 26px 20px 22px; }
    body.frontend-theme.frontend-lobby .sweet-modal-box:has(.game-lobby-confirm) .sweet-modal-buttons { padding: 0 20px 22px; }
}

/* Keep the primary credit action below Wallet Balance and before provider rows. */
body.frontend-theme.frontend-lobby #CreditModal .account-credit-primary { margin: 20px 0 0; }

@media (max-width: 767px) {
    /* Allow the last drawer action to scroll above the floating mobile navigation. */
    body.frontend-theme.frontend-lobby #mySidenav,
    body.frontend-theme.frontend-lobby #mySidenav > nav { height: 100vh; height: 100dvh; }
    body.frontend-theme.frontend-lobby #mySidenav > nav { overflow-y: auto; overscroll-behavior: contain; }
    body.frontend-theme.frontend-lobby #mySidenav #sub-menu { padding-bottom: calc(110px + env(safe-area-inset-bottom, 0px)); }

    /* Give each mobile wallet shortcut a full, readable label and a generous tap target. */
    body.frontend-theme.frontend-lobby .balance-card { gap: 18px; padding: 18px; }
    body.frontend-theme.frontend-lobby .balance-card .actions { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    body.frontend-theme.frontend-lobby .balance-card .action { flex-direction: column; justify-content: center; align-items: center; min-height: 86px; gap: 8px; padding: 12px 6px; border-radius: 14px; font-size: 12px; }
    body.frontend-theme.frontend-lobby .balance-card .action .icon { flex: 0 0 36px; width: 36px; height: 36px; border-radius: 11px; font-size: 18px; color: var(--premium-accent); background: rgba(var(--palette-line-light-rgb, 53, 101, 186), .1); border: 1px solid var(--premium-line); }
    body.frontend-theme.frontend-lobby .balance-card .action > span:last-child { white-space: nowrap; overflow-wrap: normal; }
    body.frontend-theme.frontend-lobby .balance-card .action-deposit { background: linear-gradient(135deg, var(--premium-action-start), var(--premium-action-end)) !important; color: var(--premium-action-ink) !important; border-color: transparent; }
    body.frontend-theme.frontend-lobby .balance-card .action-deposit .icon { background: #ffffff30; color: inherit; border-color: #ffffff40; }
    body.frontend-theme.frontend-lobby .balance-card .actions .action-deposit > span,
    body.frontend-theme.frontend-lobby .balance-card .actions .action-deposit .icon i { color: var(--premium-action-ink) !important; }
}
