/* /css/shell/styles.css */
:root {
    color-scheme: dark;
    --bg: #101c29;
    --panel: #172635;
    --muted: #90a4b8;
    --accent: #39e5bb;
    --line: #263746
}

* {
    box-sizing: border-box
}

body {
    margin: 0;
    background: var(--bg);
    color: #f4f7fa;
    font: 14px 'DM Sans', sans-serif
}

button, input {
    font: inherit
}

button {
    cursor: pointer;
    color: inherit;
    border: 0
}

button:disabled {
    opacity: .45;
    cursor: not-allowed
}

button:focus-visible, input:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 4px
}

button:hover {
    filter: brightness(1.12)
}

.brand {
    font: 800 28px 'Outfit', sans-serif;
    letter-spacing: -1px
}

.brand span {
    color: var(--accent)
}

.brand small {
    display: block;
    font: 600 9px 'DM Sans';
    letter-spacing: 5px;
    color: var(--muted);
    margin: 1px 0 0 30px
}

.sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: 228px;
    background: #0c1722;
    padding: 30px 18px;
    z-index: 5;
    border-right: 1px solid #1b2b38
}

.sidebar .brand {
    margin: 0 15px 35px
}

.nav-label {
    font-size: 10px;
    letter-spacing: 1.7px;
    font-weight: 700;
    color: #60788e;
    margin: 26px 15px 12px
}

.nav {
    display: flex;
    align-items: center;
    gap: 13px;
    background: transparent;
    width: 100%;
    padding: 13px 15px;
    margin: 4px 0;
    color: #9caebe;
    text-align: left;
    border-radius: 7px;
    font-weight: 600
}

.nav.active {
    background: #193b3d;
    color: var(--accent)
}

.nav .icon {
    font-size: 19px;
    width: 22px;
    text-align: center
}

.nav .tag {
    font-size: 9px;
    background: var(--accent);
    color: #07382c;
    padding: 3px 5px;
    border-radius: 4px;
    margin-left: auto
}

.side-bottom {
    position: absolute;
    bottom: 24px;
    left: 25px;
    right: 25px;
    color: #617c91;
    font-size: 11px
}

.side-bottom b {
    color: #b6c8d7
}

.online-dot {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--accent);
    margin-right: 6px
}

.topbar {
    height: 84px;
    margin-left: 228px;
    padding: 0 42px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--line);
    background: #111f2d
}

.top-label {
    font-weight: 700;
    font-size: 13px
}

.top-label span {
    color: var(--muted);
    margin-left: 24px;
    font-weight: 400
}

.account {
    display: flex;
    align-items: center;
    gap: 12px
}

.balance {
    background: #0c1722;
    padding: 11px 15px;
    border-radius: 7px;
    font-weight: 700
}

.coin {
    color: #f2c76b;
    margin-right: 8px
}

.primary {
    background: var(--accent);
    color: #08392f;
    padding: 12px 22px;
    border-radius: 7px;
    font-weight: 800
}

.avatar {
    background: #293b4b;
    border: 1px solid #3a4d5c;
    border-radius: 50%;
    height: 36px;
    width: 36px;
    font-weight: 700
}

.mobile-menu {
    display: none;
    background: transparent;
    font-size: 24px
}

main {
    margin-left: 228px;
    padding: 32px 42px;
    width: calc(100% - 228px);
    max-width: none;
}

main > * {
    max-width: 1640px;
    margin-left: auto;
    margin-right: auto;
}

.eyebrow {
    font-size: 10px;
    color: var(--accent);
    letter-spacing: 2px;
    font-weight: 800
}

.hero {
    min-height: 300px;
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    background: radial-gradient(ellipse at 78% 45%, #1c6862 0, transparent 47%), linear-gradient(110deg, #20394b, #152f3a);
    border: 1px solid #2a454e;
    display: flex;
    align-items: center;
    padding: 36px 40px
}

.hero-copy {
    z-index: 2;
    width: 57%
}

h1, .presentation-heading {
    font: 700 clamp(30px, 3.5vw, 50px)/1.1 'Outfit', sans-serif;
    letter-spacing: -1.5px;
    margin: 15px 0
}

h1 em, .presentation-heading em {
    font-style: normal;
    color: var(--accent)
}

.hero p {
    color: #b2c5d0;
    font-size: 13px;
    line-height: 1.8;
    max-width: 360px;
    margin: 15px 0 24px
}

.hero .primary {
    padding: 13px 24px
}

.hero-art {
    position: absolute;
    right: 4%;
    top: 30px;
    width: 34%;
    height: 240px;
    transform: rotate(-9deg)
}

.playing-card {
    position: absolute;
    background: linear-gradient(140deg, #fff, #cbd9dc);
    color: #15363c;
    width: 120px;
    height: 174px;
    border-radius: 12px;
    box-shadow: 0 20px 35px #001c2580;
    font: 700 29px 'Outfit';
    padding: 13px;
    left: 20%;
    top: 32px;
    transform: rotate(-12deg);
    border: 4px solid #edf4ed
}

.playing-card.front {
    left: 47%;
    top: 28px;
    transform: rotate(15deg);
    color: #176956
}

.suit {
    display: block;
    text-align: center;
    font-size: 64px;
    line-height: 1.5
}

.chip {
    position: absolute;
    width: 86px;
    height: 86px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #25b99b;
    border: 9px dashed #9df8dd;
    box-shadow: 0 8px 0 #117968, 0 20px 28px #082e3e80;
    left: 4%;
    bottom: 0;
    font: bold 22px 'Outfit';
    color: #064d42;
    transform: rotate(20deg)
}

.chip.gold {
    width: 69px;
    height: 69px;
    left: 76%;
    bottom: 5px;
    background: #ecc373;
    border-color: #ffecb8;
    color: #805418;
    box-shadow: 0 7px 0 #a77b35, 0 20px 28px #082e3e80
}

.spark {
    position: absolute;
    right: 3%;
    top: 15px;
    color: #72edca;
    font-size: 32px
}

.promo-row {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 16px;
    margin: 18px 0 32px
}

.promo {
    padding: 19px 22px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: var(--panel);
    display: flex;
    align-items: center;
    gap: 17px;
    text-align: left
}

.promo-icon {
    font-size: 26px;
    background: #254139;
    border-radius: 10px;
    width: 49px;
    height: 49px;
    display: grid;
    place-items: center
}

.promo:nth-child(2) .promo-icon {
    background: #383445
}

.promo strong {
    display: block;
    font-size: 14px;
    margin-bottom: 5px
}

.promo small {
    color: var(--muted);
    font-size: 11px
}

.arrow {
    margin-left: auto;
    color: var(--accent);
    font-size: 22px
}

.section-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 18px
}

h2 {
    font: 600 23px 'Outfit';
    margin: 0;
    letter-spacing: -.4px
}

.section-head p {
    color: var(--muted);
    margin: 6px 0 0;
    font-size: 12px
}

.pill {
    background: #1b2d3c;
    border: 1px solid #2e4353;
    border-radius: 5px;
    padding: 7px 12px;
    font-size: 10px;
    color: #aec1cf
}

.filters {
    display: flex;
    gap: 7px;
    margin-bottom: 20px
}

.filter {
    padding: 9px 17px;
    border-radius: 6px;
    background: var(--panel);
    color: #9dafbd;
    font-size: 12px
}

.filter.selected {
    background: #2b4a49;
    color: #75f0cf
}

.games {
    display: grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 18px
}

.game {
    text-align: left;
    padding: 0;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 11px;
    overflow: hidden;
    transition: transform .2s
}

.game:hover {
    transform: translateY(-5px)
}

.cover {
    height: 206px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

.cover:before {
    content: '';
    position: absolute;
    width: 210px;
    height: 210px;
    border: 1px solid #ffffff12;
    border-radius: 50%;
    box-shadow: 0 0 0 24px #ffffff04, 0 0 0 50px #ffffff03
}

.cover.slots {
    background: radial-gradient(at 50% 20%, #ad5178, #512f59 80%)
}

.cover.blackjack {
    background: radial-gradient(at 50% 20%, #338a73, #174e49 80%)
}

.cover.coinflip {
    background: radial-gradient(at 50% 20%, #b07b36, #694928 80%)
}

.cover.keno {
    background: radial-gradient(at 50% 20%, #726cc3, #393666 80%)
}

.mini-label {
    position: absolute;
    top: 13px;
    left: 13px;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 1.3px;
    background: #ffffff18;
    padding: 5px 7px;
    border-radius: 4px
}

.game-art {
    font: 800 62px 'Outfit';
    filter: drop-shadow(0 10px 8px #0005);
    z-index: 1;
    letter-spacing: -4px
}

.slots .game-art {
    background: #f9e8cc;
    color: #bb3261;
    border: 7px solid #dbaf69;
    border-radius: 14px;
    font-size: 45px;
    letter-spacing: 4px;
    padding: 3px 8px;
    transform: rotate(-7deg)
}

.blackjack .game-art {
    font-size: 69px;
    color: #fff1da;
    transform: rotate(-13deg)
}

.coinflip .game-art {
    border: 7px double #ffdc81;
    border-radius: 50%;
    width: 85px;
    height: 85px;
    text-align: center;
    font-size: 55px;
    color: #ffdf8d;
    background: #bc862f;
    box-shadow: 5px 6px 0 #795322;
    transform: rotate(-14deg)
}

.keno .game-art {
    color: #fff;
    background: #9588eb;
    border: 6px solid #bcafff;
    border-radius: 50%;
    font-size: 44px;
    width: 81px;
    height: 81px;
    text-align: center;
    line-height: 68px;
    box-shadow: 26px 13px 0 -10px #6654b0, -28px 18px 0 -12px #bd96dd;
    transform: rotate(12deg)
}

.cover-title {
    position: relative;
    font: 800 24px 'Outfit';
    letter-spacing: 1px;
    margin-top: 16px;
    text-shadow: 0 3px 4px #0003
}

.game-info {
    padding: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

.game-info b {
    font-size: 13px
}

.game-info small {
    display: block;
    color: var(--muted);
    font-size: 10px;
    margin-top: 5px
}

.play-icon {
    border-radius: 50%;
    background: #243b49;
    color: var(--accent);
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    font-size: 9px
}

.bottom-banner {
    margin-top: 29px;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    gap: 15px;
    background: linear-gradient(110deg, #1a2c3b, #142432)
}

.bottom-banner strong {
    font-size: 13px
}

.bottom-banner p {
    color: var(--muted);
    font-size: 11px;
    margin: 5px 0 0
}

.bottom-banner .pill {
    margin-left: auto
}

footer {
    display: flex;
    justify-content: space-between;
    color: #617a8c;
    font-size: 10px;
    margin-top: 27px;
    padding-bottom: 10px
}

dialog {
    background: #172635;
    color: #eff5fa;
    border: 1px solid #3a5162;
    border-radius: 15px;
    width: min(520px, calc(100% - 30px));
    padding: 28px;
    box-shadow: 0 25px 90px #0008
}

dialog::backdrop {
    background: #050d16bf;
    backdrop-filter: blur(5px)
}

.dialog-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px
}

.close {
    background: #243746;
    border-radius: 6px;
    font-size: 20px;
    padding: 3px 10px
}

.muted {
    color: var(--muted);
    line-height: 1.7
}

.amount {
    font: 700 42px 'Outfit';
    margin: 20px 0
}

.field {
    display: block;
    margin: 16px 0;
    color: #a8becd
}

.field input {
    display: block;
    width: 100%;
    padding: 12px;
    background: #0e1b28;
    color: white;
    border: 1px solid #354e60;
    border-radius: 7px;
    margin-top: 8px
}

.game-stage {
    padding: 24px 10px;
    text-align: center;
    background: #10202d;
    border-radius: 10px;
    margin: 15px 0;
    font-size: 42px;
    letter-spacing: 8px
}

.actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

.secondary {
    background: #2b4152;
    padding: 12px 20px;
    border-radius: 7px
}

.notice {
    min-height: 22px;
    color: var(--accent);
    font-size: 13px;
    line-height: 1.6;
    margin-top: 15px
}

.numbers {
    display: grid;
    grid-template-columns:repeat(8, 1fr);
    gap: 6px;
    margin: 18px 0
}

.number {
    background: #2a4052;
    border-radius: 5px;
    padding: 10px 0
}

.number.picked {
    background: var(--accent);
    color: #073b32
}

.number.drawn {
    outline: 2px solid #f1c66f
}

.setting {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid var(--line)
}

.setting input {
    accent-color: var(--accent);
    width: 20px;
    height: 20px
}

body.compact .cover {
    height: 160px
}

@media (min-width: 1500px) {
    .cover {
        height: 250px
    }
}

@media (max-width: 1100px) {
    .sidebar {
        width: 195px
    }

    .topbar, main {
        margin-left: 195px
    }

    .topbar {
        padding: 0 25px
    }

    main {
        padding: 25px
    }

    .games {
        gap: 12px
    }

    .cover {
        height: 180px
    }

    .hero {
        padding: 30px
    }

    .hero-art {
        right: 0;
        width: 40%
    }

    .top-label span {
        display: none
    }
}

@media (max-width: 760px) {
    .sidebar {
        display: none;
        box-shadow: 0 0 0 100vw #0008
    }

    .sidebar.open {
        display: block
    }

    .topbar, main {
        margin-left: 0
    }

    .topbar {
        height: 70px;
        padding: 0 18px
    }

    .mobile-menu {
        display: block
    }

    .top-label {
        display: none
    }

    .account {
        gap: 8px
    }

    .account .primary {
        padding: 10px 14px
    }

    main {
        padding: 20px 16px
    }

    .hero {
        padding: 25px;
        min-height: 305px
    }

    .hero-copy {
        width: 75%
    }

    .hero-art {
        opacity: .45;
        right: -50px;
        width: 55%;
        top: 70px
    }

    .hero p {
        max-width: 240px
    }

    .promo-row {
        gap: 10px
    }

    .promo {
        padding: 14px 12px;
        gap: 10px
    }

    .promo-icon {
        display: none
    }

    .promo small {
        font-size: 10px
    }

    .games {
        grid-template-columns:repeat(2, 1fr)
    }

    .cover {
        height: 200px
    }

    .section-head .pill {
        display: none
    }

    .bottom-banner {
        padding: 18px
    }

    .bottom-banner .pill {
        display: none
    }

    footer {
        gap: 15px;
        font-size: 9px
    }

    .hero h1 {
        font-size: 37px
    }

    .filters {
        gap: 5px
    }

    .filter {
        padding: 9px 12px
    }
}

/* Account and full-game experience */
[hidden] {
    display: none !important
}

body {
    font-family: Inter, 'Segoe UI', sans-serif
}

h1, h2, .brand, .cover-title, .game-art, .amount {
    font-family: 'Segoe UI', sans-serif
}

a {
    color: var(--accent)
}

input, select {
    font: inherit
}

select {
    width: 100%;
    background: #10212f;
    color: #e8f0f6;
    padding: 12px;
    border: 1px solid #344b5d;
    border-radius: 6px
}

label {
    font-size: 12px;
    font-weight: 600
}

.sidebar .side-bottom {
    position: static;
    margin-top: 35px
}

.sidebar {
    overflow: auto
}

.banner-icon {
    font-size: 28px;
    color: var(--accent)
}

.back {
    background: transparent;
    color: #9bb1c5;
    padding: 8px 0;
    font-size: 12px
}

.back:hover {
    color: var(--accent)
}

.game-layout {
    display: grid;
    grid-template-columns:265px minmax(0, 1fr);
    border: 1px solid #2a3d4e;
    border-radius: 12px;
    overflow: hidden;
    min-height: 540px
}

.bet-panel {
    background: #1b2d3d;
    padding: 22px
}

.bet-panel label {
    display: flex;
    justify-content: space-between;
    color: #b8c8d5;
    margin: 19px 0 8px
}

.bet-panel label small {
    color: #dfbf77
}

.mode-switch {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border-bottom: 1px solid #354959;
    padding-bottom: 18px;
    font-size: 12px
}

.demo-badge {
    font-size: 9px;
    letter-spacing: 1px;
    color: var(--accent)
}

.bet-input {
    display: flex;
    background: #10212f;
    border: 1px solid #344b5d;
    border-radius: 6px;
    overflow: hidden
}

.bet-input input {
    min-width: 0;
    width: 100%;
    padding: 13px 10px;
    color: white;
    background: transparent;
    border: 0;
    font-weight: 700
}

.bet-input button {
    background: #2a4153;
    padding: 9px;
    border-left: 1px solid #3a5163
}

.input-hint {
    color: #8099ac;
    font-size: 10px;
    margin-top: 8px;
    line-height: 1.6
}

.random-controls {
    display: flex;
    gap: 6px
}

.random-controls select {
    width: 65px
}

.random-controls button {
    padding: 10px;
    flex: 1;
    font-size: 11px
}

.play-button {
    width: 100%;
    padding: 17px;
    margin-top: 20px
}

.bet-note {
    font-size: 11px;
    color: #8faabc;
    line-height: 1.7;
    margin-top: 17px
}

.session-note {
    font-size: 10px;
    color: #729087;
    padding-top: 25px
}

.play-surface {
    background: #10202e;
    min-width: 0;
    display: flex;
    flex-direction: column;
    position: relative
}

.keno-stage {
    padding: 28px
}

.board-top {
    display: flex;
    justify-content: space-between;
    font-size: 10px;
    letter-spacing: 1.2px;
    color: #8ea7bd;
    margin: 0 0 24px
}

.keno-board {
    display: grid;
    grid-template-columns:repeat(8, minmax(0, 1fr));
    gap: 10px
}

.keno-tile {
    position: relative;
    background: #2b4357;
    border-radius: 7px;
    box-shadow: 0 4px 0 #1b3142;
    aspect-ratio: 1.16;
    min-height: 42px;
    font-size: clamp(13px, 1.5vw, 22px);
    font-weight: 800;
    transition: transform .15s, background .2s
}

.keno-tile:hover {
    background: #3f5b71;
    transform: translateY(-2px)
}

.keno-tile.picked {
    background: #8154e6;
    box-shadow: 0 4px 0 #4e2b9b
}

.keno-tile.drawn {
    background: #3e5261;
    outline: 2px solid #dcbf79;
    outline-offset: -3px
}

.keno-tile.hit {
    background: #37e4af;
    color: #074334;
    box-shadow: 0 4px 0 #139d79;
    outline: none
}

.keno-tile.hit:after {
    content: '◆';
    position: absolute;
    right: 4px;
    top: 2px;
    font-size: 10px
}

.board-legend {
    display: flex;
    justify-content: center;
    gap: 24px;
    font-size: 10px;
    color: #8b9bae;
    margin: 25px 0
}

.board-legend span:first-child {
    color: #aa83ff
}

.board-legend span:nth-child(2) {
    color: #4ce6b4
}

.paytable {
    display: flex;
    gap: 5px;
    overflow-x: auto;
    padding: 6px 1px 12px
}

.pay-cell {
    min-width: 50px;
    flex: 1;
    text-align: center;
    border: 1px solid #304858;
    border-radius: 6px;
    background: #1b2e3e;
    padding: 9px 3px;
    font-size: 11px
}

.pay-cell b {
    display: block;
    color: #d1dce5;
    white-space: nowrap;
    font-size: 11px
}

.pay-cell small {
    display: block;
    font-size: 9px;
    color: #839caf;
    margin-top: 6px
}

.pay-cell.won {
    border-color: var(--accent);
    background: #204d43
}

.result-strip {
    margin-top: auto;
    padding: 18px;
    text-align: center;
    font-size: 13px;
    background: #0d1b27;
    border-top: 1px solid #233745;
    min-height: 55px;
    color: #b9cbd8
}

.result-strip.win {
    color: var(--accent);
    background: #102e2b
}

.round-meta {
    font-family: monospace;
    font-size: 10px;
    color: #627f91;
    padding: 14px 0;
    overflow-wrap: anywhere
}

.side-buttons {
    display: flex;
    gap: 7px
}

.side-buttons button {
    flex: 1;
    padding: 11px
}

.side-buttons .selected {
    background: #2c6057;
    color: #69f4cc;
    outline: 1px solid #3baf96
}

.hand-actions {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 8px;
    margin-top: 12px
}

.hand-actions button {
    padding: 12px 5px
}

.blackjack-stage {
    flex: 1;
    min-height: 485px;
    background: radial-gradient(ellipse at center, #16463f, #102d30 68%, #10202e);
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center
}

.table-label {
    font-size: 10px;
    letter-spacing: 2px;
    color: #9dbbb6;
    margin-bottom: 15px
}

.table-label span {
    letter-spacing: 0;
    margin-left: 8px;
    color: #72e3ba;
    border: 1px solid #507b6c;
    border-radius: 15px;
    padding: 3px 9px
}

.cards {
    display: flex;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap
}

.poker-card {
    width: 68px;
    height: 98px;
    flex-shrink: 0;
    background: linear-gradient(130deg, #fffef4, #dce4dc);
    color: #17333c;
    border-radius: 7px;
    box-shadow: 0 6px 0 #051e2560, 0 8px 15px #061c2738;
    position: relative;
    text-align: left;
    padding: 6px;
    font-size: 19px;
    font-weight: 800;
    animation: deal .25s ease-out
}

.poker-card.red {
    color: #cf4460
}

.poker-card .card-center {
    font-size: 38px;
    position: absolute;
    left: 0;
    right: 0;
    top: 26px;
    text-align: center
}

.poker-card .card-bottom {
    position: absolute;
    bottom: 5px;
    right: 5px;
    transform: rotate(180deg);
    font-size: 15px
}

.poker-card.card-back {
    background: repeating-linear-gradient(45deg, #346072 0, #346072 4px, #2d5264 4px, #2d5264 8px);
    border: 4px solid #d5e3dc;
    display: grid;
    place-items: center;
    color: #99d8c7;
    font-size: 29px
}

.felt-brand {
    font-size: 21px;
    letter-spacing: 6px;
    font-weight: 800;
    color: #76b7a536;
    margin: 25px
}

.felt-brand small {
    display: block;
    font-size: 9px;
    letter-spacing: 3px;
    margin-top: 9px;
    color: #91bbaa66
}

.player-hands {
    display: flex;
    justify-content: center;
    gap: 20px
}

.player-hand {
    padding: 12px;
    border: 1px solid transparent;
    border-radius: 10px;
    min-width: 0
}

.player-hand.current {
    border-color: #53c6a2;
    background: #5cdfac08
}

.hand-caption {
    font-size: 11px;
    color: #9abeb3;
    margin-top: 15px
}

.hand-outcome {
    color: var(--accent);
    font-size: 12px;
    margin-top: 8px
}

.slots-stage {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 35px 20px;
    background: radial-gradient(ellipse, #482546, #14222f 75%)
}

.slots-stage h2 {
    font-size: 32px;
    letter-spacing: 3px;
    margin: 17px
}

.reel-frame {
    display: flex;
    gap: 8px;
    padding: 15px;
    border: 5px solid #ab8655;
    border-radius: 17px;
    background: #291c30;
    box-shadow: 0 0 0 3px #463756, 0 14px 35px #0005;
    margin: 20px 0
}

.reel-frame span {
    display: grid;
    place-items: center;
    width: clamp(60px, 6vw, 110px);
    height: 125px;
    background: linear-gradient(#dfd4bc, #fffae8, #ddd0b1);
    border-radius: 6px;
    font-size: 50px;
    color: #d24469;
    font-weight: 900
}

.slots-table {
    font-size: 11px;
    color: #b9aabc;
    text-align: center;
    line-height: 2.2
}

.coinflip-stage {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    min-height: 430px;
    background: radial-gradient(ellipse, #4c3d27, #132432 68%);
    padding: 30px
}

.big-coin {
    width: 150px;
    height: 150px;
    border: 12px double #f3d48e;
    box-shadow: 6px 8px 0 #7c5b25, 0 20px 35px #0004;
    border-radius: 50%;
    background: linear-gradient(140deg, #c9953e, #edc978, #b37b29);
    color: #82591d;
    display: grid;
    place-items: center;
    font-size: 77px;
    font-weight: 900;
    margin: 30px;
    transform: rotate(-12deg)
}

.resume, .recovery {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    background: #21413d;
    border: 1px solid #3b6c5d;
    border-radius: 8px;
    padding: 15px 20px;
    margin-bottom: 20px;
    font-size: 12px
}

.recovery {
    background: #403429;
    border-color: #9c7b4c
}

.history-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px
}

.history-table th {
    text-align: left;
    color: #8fa6b8;
    font-size: 10px;
    letter-spacing: 1px;
    padding: 15px 12px;
    background: #152635
}

.history-table td {
    padding: 14px 12px;
    border-bottom: 1px solid #253a4b
}

.table-wrap {
    overflow: auto;
    border: 1px solid #2a4052;
    border-radius: 9px;
    margin: 20px 0 35px
}

.positive {
    color: var(--accent)
}

.negative {
    color: #de94a0
}

.history-empty {
    padding: 35px;
    color: var(--muted)
}

.toast {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    background: #254638;
    color: #d9ffed;
    padding: 15px 23px;
    border: 1px solid #46856d;
    border-radius: 8px;
    z-index: 50;
    max-width: 90%;
    box-shadow: 0 8px 30px #0006
}

.wallet-options {
    display: flex;
    gap: 10px;
    margin: 16px 0
}

.wallet-options span {
    background: #2b4354;
    padding: 9px 13px;
    border-radius: 5px;
    font-size: 12px
}

.wallet-options .active {
    background: #235446;
    color: var(--accent)
}

.wallet-address {
    overflow-wrap: anywhere;
    font-family: monospace;
    font-size: 11px;
    line-height: 1.7;
    color: var(--accent)
}

.rules-copy {
    font-size: 13px;
    line-height: 1.9;
    color: #adbfce
}

.rules-copy li {
    margin: 8px 0
}

.password-section {
    border-top: 1px solid #354d5e;
    margin-top: 22px;
    padding-top: 16px
}

.password-section summary {
    cursor: pointer;
    color: #acbfce;
    font-size: 13px
}

.modal-note {
    font-size: 12px;
    line-height: 1.7;
    color: #90a7ba
}

.reduce-motion *, .reduce-motion *:before, .reduce-motion *:after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important
}

@keyframes deal {
    from {
        transform: translateY(-15px) rotate(-5deg);
        opacity: 0
    }
    to {
        transform: none;
        opacity: 1
    }
}

@keyframes flip {
    to {
        transform: rotateY(360deg)
    }
}

@keyframes reel {
    to {
        filter: blur(5px);
        transform: translateY(3px)
    }
}

@media (prefers-reduced-motion: reduce) {
    *, *:before, *:after {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important
    }
}

@media (max-width: 1100px) {
    .game-layout {
        grid-template-columns:230px minmax(0, 1fr)
    }

    .keno-stage {
        padding: 20px 14px
    }

    .keno-board {
        gap: 7px
    }

    .bet-panel {
        padding: 18px
    }

    .poker-card {
        width: 57px;
        height: 85px
    }

    .poker-card .card-center {
        font-size: 30px;
        top: 23px
    }

    .player-hands {
        gap: 0
    }

    .player-hand {
        padding: 8px
    }

    .cards {
        gap: 5px
    }
}

@media (max-width: 900px) {
    .game-layout {
        grid-template-columns:1fr
    }

    .bet-panel {
        order: 2;
        display: grid;
        grid-template-columns:1fr 1fr;
        gap: 10px 20px
    }

    .mode-switch, .play-button, .hand-actions, .bet-note, .session-note, .bet-panel > label, .bet-input, .input-hint {
        grid-column: 1/-1
    }

    .bet-panel > label {
        margin-bottom: 0
    }

    .bet-panel .play-button {
        margin-top: 5px
    }

    .bet-note {
        margin: 0
    }

    .session-note {
        padding: 0
    }

    .play-surface {
        min-height: 400px
    }

    .keno-stage {
        padding: 22px
    }

    .keno-tile {
        max-height: 70px
    }

    .side-bottom {
        display: none
    }
}

@media (max-width: 600px) {

    .keno-stage {
        padding: 17px 10px
    }

    .keno-board {
        gap: 6px
    }

    .keno-tile {
        min-height: 33px;
        border-radius: 5px;
        font-size: 15px
    }

    .board-top {
        font-size: 8px;
        letter-spacing: .7px
    }

    .board-legend {
        gap: 14px
    }

    .game-layout {
        border-radius: 8px
    }

    .bet-panel {
        padding: 18px
    }

    .blackjack-stage {
        padding: 25px 8px;
        min-height: 420px
    }

    .player-hands {
        flex-wrap: wrap
    }

    .poker-card {
        width: 54px;
        height: 79px
    }

    .poker-card .card-center {
        font-size: 29px;
        top: 22px
    }

    .felt-brand {
        font-size: 17px;
        margin: 20px 0
    }

    .resume, .recovery {
        padding: 12px;
        gap: 8px;
        font-size: 11px
    }

    .resume button {
        padding: 10px;
        white-space: nowrap;
        font-size: 11px
    }

    .game-page .section-head {
        gap: 12px
    }

    .hero-copy {
        width: 90%
    }

    .hero-art {
        opacity: .25
    }

    .hero h1 {
        font-size: 32px
    }

    .reel-frame span {
        height: 95px;
        font-size: 38px
    }

    .bet-panel #side-field {
        grid-column: 1/-1
    }

    .history-table td {
        white-space: nowrap
    }
}

/* Keep game geometry fixed while only the result pieces animate. */
.game-layout {
    overflow-anchor: none;
}

.working .play-button:disabled {
    opacity: 1;
}

.working .keno-tile:disabled {
    opacity: 1;
    filter: none;
}

.keno-tile:disabled {
    cursor: default;
}

.keno-tile:disabled:hover {
    transform: none;
}

.result-strip {
    height: 76px;
    min-height: 76px;
    padding: 12px 18px;
    display: grid;
    place-content: center;
    line-height: 1.5;
    overflow: hidden;
}

.round-meta {
    height: 54px;
    min-height: 54px;
    line-height: 14px;
    overflow: hidden;
}

.keno-stage .paytable {
    min-height: 77px;
}

#keno-math {
    min-height: 32px;
}

.recovery {
    position: fixed;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
    width: min(640px, calc(100% - 32px));
    z-index: 15;
    margin: 0;
    box-shadow: 0 10px 35px #0006;
}

.reel-frame > .slot-reel {
    position: relative;
    overflow: hidden;
}

.reel-frame .reel-track {
    display: block;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: none;
    border-radius: 0;
    will-change: transform;
}

.reel-frame .reel-symbol {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    background: none;
    border-radius: 0;
}

.coinflip-stage {
    perspective: 900px;
}

.big-coin.coin-3d {
    position: relative;
    display: block;
    background: none;
    border: 0;
    box-shadow: none;
    transform-style: preserve-3d;
    transform: rotate(-12deg) rotateY(0deg);
}

.big-coin.coin-3d.is-tails {
    transform: rotate(-12deg) rotateY(180deg);
}

.coin-face {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    border: 12px double #f3d48e;
    border-radius: 50%;
    background: linear-gradient(140deg, #c9953e, #edc978, #b37b29);
    box-shadow: 0 6px 0 #7c5b25, 0 14px 25px #0003;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.coin-back {
    transform: rotateY(180deg);
    background: linear-gradient(140deg, #e6b55b, #bd8534, #f2d18b);
}

.keno-drop {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    border-radius: inherit;
    pointer-events: none;
    z-index: 2;
    font: inherit;
    will-change: transform, opacity;
}

.keno-drop.matched {
    background: #37e4af;
    color: #074334;
    box-shadow: 0 4px 0 #139d79;
}

.keno-drop.matched:after {
    content: '◆';
    position: absolute;
    right: 4px;
    top: 2px;
    font-size: 10px;
}

.keno-drop.missed {
    background: #3e5261;
    outline: 2px solid #dcbf79;
    outline-offset: -3px;
}

@media (hover: none) {
    .keno-tile:hover {
        transform: none;
    }
}

@media (max-width: 600px) {
    .recovery {
        flex-direction: column;
        gap: 10px;
    }

    .reel-frame .reel-symbol {
        height: 100%;
    }
}

#game-page[data-game="blackjack"] .hand-actions {
    min-height: 100px;
    align-content: start;
}

.blackjack-stage .player-hands {
    min-height: 176px;
    align-items: end;
}

#keno-math {
    min-height: 64px;
}

/* Nexttal branding, currency selector and package catalog */
.brand {
    display: flex;
    align-items: center;
    gap: 9px
}

.brand img {
    flex: 0 0 40px;
    border-radius: 50%;
    object-fit: contain
}

.brand small {
    margin-left: 2px
}

.brand-banner {
    overflow: hidden;
    border: 1px solid #35334f;
    border-radius: 14px;
    background: #030408
}

.brand-banner > img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 2164/727;
    object-fit: contain
}

.banner-caption {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 16px 24px;
    background: linear-gradient(110deg, #0d2531, #22122f)
}

.banner-caption > span {
    color: #a7c7db;
    font-size: 11px;
    letter-spacing: 1.5px
}

.currency-balance {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 7px 10px;
    min-height: 42px
}

.currency-icon {
    display: flex;
    color: #f2c76b
}

.currency-icon img, .token-icon {
    border-radius: 50%;
    object-fit: contain
}

.currency-balance select {
    width: auto;
    max-width: 85px;
    margin: 0;
    padding: 6px 2px;
    background: transparent;
    border: 0;
    color: #e7f1fb;
    font: inherit;
    font-size: 12px
}

.currency-balance select option {
    background: #152635
}

.currency-balance select:focus-visible {
    outline: 2px solid var(--accent)
}

.wallet-grid, .package-grid {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap: 12px
}

.wallet-card, .package-card, .wager-progress {
    padding: 18px;
    background: #10202d;
    border: 1px solid #2b4050;
    border-radius: 12px;
    min-width: 0
}

.wallet-card h3, .package-card h3 {
    margin: 10px 0
}

.wallet-card strong, .package-card > strong {
    font-size: 24px;
    overflow-wrap: anywhere
}

.wallet-card p, .wager-progress p {
    color: var(--muted);
    font-size: 12px;
    line-height: 1.6
}

.token-icon {
    width: 30px;
    height: 30px
}

.exact-balances {
    margin: 18px 0;
    color: var(--muted)
}

.exact-balances summary {
    cursor: pointer
}

.wager-progress {
    margin: 16px 0
}

.wager-progress h3 {
    margin-top: 0
}

.wager-progress strong {
    font-size: 25px;
    color: var(--accent)
}

.package-card button {
    width: 100%;
    font-size: 12px;
    padding: 10px 5px
}

.package-card p {
    font-size: 12px;
    color: #afc8da
}

.package-card > img {
    border-radius: 50%
}

@media (max-width: 600px) {
    .banner-caption {
        padding: 12px;
        flex-wrap: wrap
    }

    .banner-caption > span {
        font-size: 9px
    }

    .banner-caption .primary {
        padding: 10px 14px;
        font-size: 12px
    }

    .account {
        gap: 6px
    }

    .currency-balance {
        padding: 5px 6px;
        gap: 4px
    }

    .currency-balance select {
        font-size: 11px;
        max-width: 70px
    }

    .account > .primary {
        padding: 10px
    }

    .wallet-card, .package-card {
        padding: 13px
    }

    .wallet-card strong {
        font-size: 20px
    }

    .amount {
        font-size: 30px
    }
}

/* Casino wordmark and non-crypto coin treatments. */
.brand {
    display: block
}

.brand small {
    margin-left: 30px
}

.sc-icon, .package-symbol {
    display: inline-block;
    color: var(--accent);
    font-size: 30px;
    line-height: 36px
}

.currency-icon {
    min-width: 18px;
    justify-content: center
}

/* Account, support and originals: independent components. */
.sidebar {
    overflow-y: auto
}

.side-bottom {
    position: static;
    margin-top: 24px
}

.games {
    grid-template-columns:repeat(3, minmax(0, 1fr))
}

.cover.dice {
    background: radial-gradient(circle at 75% 20%, #3e8d95, #143449 70%)
}

.cover.wheel {
    background: radial-gradient(circle at 70% 20%, #986acd, #35234f 70%)
}

.cover.dice .game-art {
    color: #a9fff0;
    font-size: 110px;
    transform: rotate(-14deg)
}

.cover.wheel .game-art {
    color: #ffd79e;
    font-size: 130px
}

.game {
    transition: transform .2s, border-color .2s
}

.game:hover {
    transform: translateY(-4px)
}

.signup-profile {
    border: 0;
    padding: 0;
    margin: 0;
    min-width: 0
}

.profile-grid {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 0 14px
}

.profile-grid input, .profile-grid select {
    min-width: 0;
    width: 100%
}

.terms-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 14px 0 22px;
    font-size: 12px;
    line-height: 1.6;
    color: #b4c6d5
}

.terms-check input {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    margin-top: 2px
}

.terms-check a, footer a {
    color: #72e0c1
}

.field select {
    width: 100%;
    padding: 12px;
    border-radius: 8px;
    background: #132333;
    color: #fff;
    border: 1px solid #35495a
}

.account-id {
    background: #132333;
    border: 1px solid #31495c;
    border-radius: 12px;
    padding: 16px;
    margin: 12px 0 22px;
    overflow-wrap: anywhere
}

.account-id small {
    display: block;
    color: #91a5b8;
    font-size: 10px;
    letter-spacing: .1em;
    margin-bottom: 10px
}

.account-id code {
    display: block;
    user-select: all;
    font-size: 13px
}

.support-agent {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 14px 0
}

.support-agent small {
    display: block;
    color: #97aabd;
    margin-top: 4px
}

.agent-avatar {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: #204c47;
    color: #72e0c1;
    font-weight: bold
}

.support-bubble {
    background: #192c3d;
    border-radius: 0 16px 16px;
    padding: 20px;
    line-height: 1.8;
    margin: 20px 0
}

.discord-link {
    display: inline-block;
    text-decoration: none
}

.bonus-emblem {
    text-align: center;
    font-size: 64px;
    color: #70e5bd
}

.owner-codes {
    display: grid;
    gap: 10px
}

.owner-code {
    display: grid;
    gap: 6px;
    border: 1px solid #31495c;
    border-radius: 10px;
    padding: 14px
}

.owner-code span, .owner-code small, .owner-audit {
    color: #a3b6c8;
    font-size: 12px
}

.owner-audit {
    max-height: 240px;
    overflow: auto;
    overflow-wrap: anywhere
}

#modal-body details {
    margin: 16px 0
}

#modal-body summary {
    cursor: pointer;
    padding: 10px 0;
    font-weight: 600
}

.original-stage {
    min-height: 450px;
    padding: 28px 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
    overflow: hidden;
    background: radial-gradient(ellipse at center, #20374a, #12212f 75%)
}

.original-stage[hidden] {
    display: none
}

.dice-value {
    width: 200px;
    height: 150px;
    display: grid;
    place-items: center;
    font-size: 48px;
    font-weight: 800;
    border-radius: 25px;
    background: linear-gradient(145deg, #ecfff9, #86dcc5);
    color: #153b36;
    box-shadow: 0 15px 0 #427f71, 0 25px 40px #0005;
    margin: 25px;
    font-variant-numeric: tabular-nums
}

.wheel-wrap {
    position: relative;
    width: 260px;
    height: 260px;
    margin: 10px
}

.wheel-disc {
    height: 100%;
    width: 100%;
    border: 8px solid #546576;
    border-radius: 50%;
    background: repeating-conic-gradient(from 0deg, #172938 0deg 30deg, #284757 30deg 60deg, #60478c 60deg 90deg, #dbad68 90deg 120deg);
    box-shadow: 0 15px 45px #0007
}

.wheel-wrap strong {
    position: absolute;
    inset: 85px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #102333;
    color: #8cf1d1;
    border: 5px solid #637b8f;
    font-size: 26px
}

.wheel-pointer {
    position: absolute;
    z-index: 2;
    top: -13px;
    left: calc(50% - 13px);
    font-size: 28px;
    color: #fff
}

.wheel-table {
    display: grid;
    grid-template-columns:repeat(6, 1fr);
    gap: 6px;
    max-width: 420px;
    width: 100%
}

.wheel-table span {
    padding: 9px 2px;
    text-align: center;
    border-radius: 6px;
    background: #253b4d;
    font-size: 12px;
    border: 1px solid transparent
}

.wheel-table .selected {
    border-color: #7cf2c8;
    background: #23564b;
    color: #c7fff0
}

@media (max-width: 900px) {
    .games {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }
}

@media (max-width: 600px) {

    .profile-grid {
        grid-template-columns:1fr
    }

    .original-stage {
        min-height: 390px
    }

    .wheel-wrap {
        width: 220px;
        height: 220px
    }

    .wheel-wrap strong {
        inset: 70px
    }

    .wheel-table span {
        font-size: 11px
    }

    .game:hover {
        transform: none
    }
}

@media (prefers-reduced-motion: reduce) {
    .game {
        transition: none
    }
}

.reduce-motion .game {
    transition: none
}

.terms-page .terms-document {
    max-width: 860px;
    margin: 0 auto;
    padding: 48px 24px;
    line-height: 1.8
}

.terms-document h1 {
    font-size: 36px
}

.terms-document h2 {
    margin-top: 32px;
    font-size: 21px
}

.terms-document a {
    color: #8af1cd
}

.terms-document p {
    color: #becedc
}

.terms-document .notice {
    padding: 18px;
    border: 1px solid #465f72;
    border-radius: 12px
}

.wheel-disc {
    position: relative;
    background: conic-gradient(#213847 0deg 150deg, #317561 150deg 210deg, #487e91 210deg 270deg, #75609e 270deg 300deg, #9d739e 300deg 330deg, #c79d50 330deg 360deg)
}

.wheel-number {
    position: absolute;
    inset: 0;
    text-align: center;
    padding-top: 9px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    text-shadow: 0 1px 3px #000
}

.wheel-number b {
    display: inline-block
}

.wheel-number:nth-child(1) {
    transform: rotate(15deg)
}

.wheel-number:nth-child(2) {
    transform: rotate(45deg)
}

.wheel-number:nth-child(3) {
    transform: rotate(75deg)
}

.wheel-number:nth-child(4) {
    transform: rotate(105deg)
}

.wheel-number:nth-child(5) {
    transform: rotate(135deg)
}

.wheel-number:nth-child(6) {
    transform: rotate(165deg)
}

.wheel-number:nth-child(7) {
    transform: rotate(195deg)
}

.wheel-number:nth-child(8) {
    transform: rotate(225deg)
}

.wheel-number:nth-child(9) {
    transform: rotate(255deg)
}

.wheel-number:nth-child(10) {
    transform: rotate(285deg)
}

.wheel-number:nth-child(11) {
    transform: rotate(315deg)
}

.wheel-number:nth-child(12) {
    transform: rotate(345deg)
}

@media (min-width: 901px) {
}

/* Game presentation polish. Reel geometry stays unchanged for the spin calculations. */
.slots-stage {
    position: relative;
    isolation: isolate;
    background: radial-gradient(ellipse at 50% 20%, #573153 0%, #25223c 46%, #111e2c 85%);
    border-radius: 14px 14px 0 0;
    overflow: hidden;
    padding-top: 42px;
    padding-bottom: 36px
}

.slots-stage:before {
    content: '';
    position: absolute;
    inset: 14px;
    border: 1px solid #e5bb7540;
    border-radius: 18px;
    pointer-events: none;
    z-index: -1;
    background: radial-gradient(circle at 15% 15%, #eac58825 0, transparent 24%), radial-gradient(circle at 85% 85%, #ab7fed20 0, transparent 28%)
}

.slots-stage .eyebrow {
    color: #ecc991;
    letter-spacing: .24em;
    font-size: 10px
}

.slots-stage h2 {
    color: #fff0cc;
    letter-spacing: .14em;
    text-shadow: 0 2px 0 #6d4052, 0 5px 28px #eab56530;
    font-size: clamp(23px, 3vw, 36px)
}

.reel-frame {
    position: relative;
    gap: 10px;
    padding: 18px;
    border: 5px solid #c69b5e;
    border-radius: 20px;
    background: linear-gradient(145deg, #563448, #201b2d);
    box-shadow: 0 0 0 2px #fae0a5, 0 0 0 7px #241f33, 0 16px 35px #0007, inset 0 2px 8px #080812
}

.reel-frame > span {
    box-shadow: inset 0 12px 16px #5b3d2633, inset 0 -12px 16px #5b3d2633, 0 2px 0 #eddaa9;
    border: 1px solid #fff3c3;
    border-radius: 9px;
    background: linear-gradient(#cdbb95 0%, #fff8df 32%, #fffbea 60%, #ceba95 100%);
    text-shadow: 0 4px 2px #4c1c2220
}

.reel-frame:after {
    content: '';
    position: absolute;
    left: 5px;
    right: 5px;
    top: 50%;
    border-top: 1px solid #eac17a50;
    pointer-events: none
}

.slots-table {
    max-width: 490px;
    padding: 12px 16px;
    border: 1px solid #e6bc7830;
    border-radius: 12px;
    background: #111b2c70;
    color: #d0c1d9;
    line-height: 2
}

.slots-table > div:first-child {
    color: #f1d6a2;
    font-weight: 700;
    font-size: 13px
}

.blackjack-stage {
    background: radial-gradient(ellipse at 50% 45%, #1d5446, #10362f 62%, #102531);
    box-shadow: inset 0 0 70px #06171d80;
    position: relative;
    border-top: 1px solid #75998435
}

.felt-brand {
    color: #a2d9b540
}

.felt-brand small {
    color: #b8d7b779
}

.player-hand.current {
    border-color: #8fe5b4;
    box-shadow: 0 0 0 3px #6edcac09, inset 0 0 30px #65dca70b;
    background: #6ad3a70a
}

.poker-card {
    animation: none;
    border: 1px solid #fff9e3;
    box-shadow: 0 2px 0 #a9b6a7, 0 9px 18px #041a2255;
    background: linear-gradient(135deg, #fffef8, #e8ede4);
    will-change: auto
}

.poker-card.card-back {
    background: repeating-linear-gradient(45deg, #244e5f 0, #244e5f 3px, #1b3d4d 3px, #1b3d4d 7px);
    box-shadow: inset 0 0 0 2px #81b5bd, 0 8px 16px #05192055
}

.table-label {
    letter-spacing: .15em
}

.hand-outcome {
    font-weight: 700;
    color: #a6dfbf
}

.keno-stage {
    background: radial-gradient(ellipse at 50% 0, #263d51, #152636 75%)
}

.keno-tile {
    border: 1px solid #ffffff0b
}

.keno-tile.picked {
    background: linear-gradient(145deg, #9769ed, #7044c7)
}

.keno-tile.hit {
    background: linear-gradient(135deg, #7ff5c8, #35dba5);
    box-shadow: 0 4px 0 #139d79, 0 0 18px #47dfae30
}

.pay-cell.won {
    box-shadow: 0 0 14px #47dfae20
}

.result-strip {
    border-top: 1px solid #8db4bc18;
    letter-spacing: .015em
}

.result-strip.win {
    background: linear-gradient(90deg, #163f36, #16332f);
    color: #a0f5cf
}

@media (max-width: 600px) {
    .slots-stage {
        padding: 28px 12px
    }

    .slots-stage:before {
        inset: 8px
    }

    .reel-frame {
        padding: 12px;
        gap: 7px
    }

    .slots-table {
        font-size: 10px;
        padding: 10px
    }

    .slots-stage h2 {
        letter-spacing: .08em
    }
}

/* Slots: a new arcade cabinet with illustrated symbols and a single payline. */
#slots-stage {
    padding: 30px 24px;
    gap: 24px;
    background: radial-gradient(ellipse at 50% 0, #284454, #132330 65%);
    border-radius: 0
}

#slots-stage:before {
    display: none
}

.slot-machine {
    width: min(100%, 580px);
    padding: 24px;
    border: 1px solid #5b818570;
    border-radius: 26px;
    background: linear-gradient(145deg, #28404b, #14232e 60%);
    box-shadow: 0 22px 42px #06111c80, inset 0 1px 0 #adcdd92b
}

.slot-brandbar, .slot-machine-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    font-size: 9px;
    letter-spacing: .13em;
    color: #8ba4b3
}

.slot-live-dot {
    color: #8cdfc0;
    font-size: 9px;
    white-space: nowrap
}

#slots-stage .eyebrow {
    color: #a9bdc7;
    letter-spacing: .14em;
    font-size: 9px
}

#slots-stage h2 {
    display: flex;
    align-items: baseline;
    gap: 9px;
    margin: 17px 0 22px;
    color: #f4faf8;
    font-size: clamp(21px, 3vw, 33px);
    letter-spacing: .07em;
    font-weight: 400;
    text-shadow: none
}

#slots-stage h2 strong {
    font-weight: 900
}

#slots-stage h2 > span {
    margin-left: auto;
    font-size: 22px;
    letter-spacing: -.08em;
    color: #86e8c5;
    font-style: italic
}

.slot-window {
    position: relative;
    padding: 7px;
    background: #081722;
    border-radius: 16px;
    border: 1px solid #79c5bb50;
    box-shadow: 0 0 24px #69c5b20c, inset 0 3px 12px #000a
}

.payline-pointer {
    position: absolute;
    top: calc(50% - 15px);
    z-index: 2;
    color: #aafcda;
    font-size: 28px;
    filter: drop-shadow(0 0 4px #4ac9a1);
    pointer-events: none
}

.payline-pointer.left {
    left: -11px
}

.payline-pointer.right {
    right: -11px
}

#slots-stage .reel-frame {
    display: flex;
    gap: 5px;
    padding: 0;
    border: 0;
    border-radius: 10px;
    background: #0a1520;
    box-shadow: none;
    margin: 0;
    width: 100%;
    overflow: hidden
}

#slots-stage .reel-frame:after {
    display: none
}

#slots-stage .reel-frame > span {
    width: calc((100% - 10px) / 3);
    height: clamp(122px, 14vw, 176px);
    border: 0;
    border-radius: 6px;
    background: linear-gradient(#aac2c5 0%, #eff8f3 30%, #f5fbf7 60%, #b1c8c8 100%);
    box-shadow: inset 0 15px 18px #38566525, inset 0 -15px 18px #38566525;
    overflow: hidden
}

#slots-stage .slot-art {
    width: 78%;
    height: 78%;
    display: block;
    filter: drop-shadow(0 5px 1px #21374120)
}

#slots-stage .reel-track {
    height: 100%;
    width: 100%;
    background: none
}

#slots-stage .reel-symbol {
    width: 100%;
    height: 100%;
    background: none
}

.slot-machine-footer {
    margin-top: 20px;
    font-size: 8px
}

#slots-stage .slots-table {
    width: min(100%, 580px);
    max-width: none;
    background: #10202c;
    border: 1px solid #385664;
    border-radius: 12px;
    padding: 14px;
    color: #95abba;
    line-height: 2.2
}

#slots-stage .slots-table > div:first-child {
    color: #bcdfd5
}

.cover.slots {
    background: radial-gradient(ellipse at 50% 0, #376463, #162733 80%)
}

.cover.slots .game-art {
    color: #9df1cd;
    text-shadow: 0 4px 0 #336d61, 0 10px 30px #0008
}

/* Non-blocking results disappear automatically and never cover clickable controls. */
.play-surface {
    position: relative
}

.win-overlay {
    position: absolute;
    inset: 0;
    z-index: 8;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    padding: 20px;
    background: radial-gradient(ellipse at center, #102d2740, transparent 65%)
}

.win-overlay[hidden] {
    display: none
}

.win-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    min-width: 230px;
    max-width: 100%;
    padding: 26px 38px;
    border-radius: 22px;
    background: linear-gradient(145deg, #244c42f5, #102d29f5);
    border: 1px solid #9af2c7;
    box-shadow: 0 20px 60px #0007, 0 0 50px #67e9ad20;
    color: #e4fff0;
    animation: win-appear .3s ease-out
}

.win-spark {
    color: #b1f5cb;
    font-size: 23px
}

.win-caption {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .24em
}

.win-card > strong {
    font-size: 48px;
    line-height: 1.1;
    color: #adf5c9;
    letter-spacing: -.04em
}

.win-card > b {
    font-size: 23px
}

.win-card > small {
    color: #a6c6ba
}

.win-overlay.leaving {
    opacity: 0;
    transition: opacity .22s
}

@keyframes win-appear {
    from {
        opacity: 0;
        transform: translateY(12px) scale(.92)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.reduce-motion .win-card {
    animation: none
}

/* Wallet and daily rewards. */
dialog:has(.balance-cards), dialog:has(.daily-hero) {
    width: min(580px, calc(100vw - 28px))
}

.wallet-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px 0 16px;
    font-size: 10px;
    letter-spacing: .12em;
    color: #99afbd
}

.subtle-pill {
    display: inline-block;
    background: #294338;
    color: #b2debd;
    border: 1px solid #69a98440;
    border-radius: 20px;
    padding: 5px 9px;
    font-size: 10px;
    text-transform: capitalize;
    letter-spacing: 0
}

.balance-cards {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.balance-tile {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 23px 20px;
    border-radius: 16px;
    border: 1px solid #8eafac36;
    overflow: hidden
}

.balance-tile.gc {
    background: radial-gradient(ellipse at 100% 0, #735e2f70, #293138 80%)
}

.balance-tile.sc {
    background: radial-gradient(ellipse at 100% 0, #33775d70, #1a3238 80%)
}

.balance-tile > small {
    color: #d2ddd8;
    font-size: 12px
}

.balance-tile > strong {
    font-size: clamp(24px, 4vw, 34px);
    letter-spacing: -.04em
}

.balance-tile > span:last-child {
    color: #a1b4b8;
    font-size: 10px
}

.balance-emblem {
    display: grid;
    place-items: center;
    border-radius: 50%;
    width: 29px;
    height: 29px;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 9px;
    background: #d8b764;
    color: #493b20
}

.sc .balance-emblem {
    background: #8bdeb3;
    color: #184937
}

.wallet-actions {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px;
    margin: 18px 0
}

.wallet-actions button {
    padding: 14px 12px
}

.wallet-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    border-top: 1px solid #3b536040;
    border-bottom: 1px solid #3b536040;
    padding: 20px 0
}

.wallet-line strong {
    font-size: 12px
}

.wallet-line small {
    display: block;
    font-size: 10px;
    color: #99adbd;
    line-height: 1.6;
    max-width: 270px;
    margin-top: 5px
}

.wallet-line > b {
    white-space: nowrap;
    font-size: 17px;
    color: #bce7cb
}

.wallet-details {
    font-size: 12px;
    color: #a7bac8
}

.cashout-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border: 1px solid #385462;
    border-radius: 12px;
    padding: 15px
}

.cashout-card h3 {
    font-size: 14px;
    margin: 0 0 7px
}

.cashout-card p {
    margin: 0;
    color: #9db2c0;
    font-size: 10px
}

.fine-note {
    color: #8fa5b5;
    font-size: 11px;
    line-height: 1.7;
    text-align: center;
    margin: 16px 0 5px
}

.daily-hero {
    text-align: center;
    padding: 16px 10px 24px;
    background: radial-gradient(ellipse at center, #24534660, transparent 70%)
}

.daily-orbit {
    display: grid;
    place-items: center;
    width: 72px;
    height: 72px;
    margin: 0 auto 24px;
    border-radius: 24px;
    transform: rotate(-8deg);
    font-size: 36px;
    color: #b1f5c9;
    background: linear-gradient(145deg, #467c62, #193d37);
    border: 1px solid #79ba9050;
    box-shadow: 0 12px 30px #07192160
}

.daily-hero .eyebrow {
    font-size: 9px
}

.daily-hero h3 {
    font-size: 25px;
    margin: 15px 0 8px;
    letter-spacing: -.02em
}

.daily-hero p {
    font-size: 12px;
    color: #a6b9c5;
    margin: 0
}

.daily-rewards {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    border: 1px solid #46625c60;
    border-radius: 14px;
    padding: 23px 14px;
    background: #152a31;
    margin: 0 0 20px
}

.daily-rewards > div {
    display: flex;
    align-items: center;
    gap: 10px
}

.reward-dot {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 800
}

.reward-dot.gc {
    background: #d6b96e;
    color: #59451f
}

.reward-dot.sc {
    background: #86d4ad;
    color: #1a4d38
}

.daily-rewards strong {
    font-size: 24px
}

.daily-rewards small {
    display: block;
    font-size: 10px;
    color: #97adba;
    font-weight: 400;
    margin-top: 6px
}

.reward-plus {
    color: #68877b
}

.daily-claim {
    width: 100%;
    padding: 16px
}

.daily-time {
    text-align: center;
    font-size: 12px;
    color: #b6c9c8;
    line-height: 1.6
}

.support-email {
    display: block;
    margin: 12px 0;
    text-decoration: none;
    text-align: center
}

.profile-summary {
    display: flex;
    gap: 14px;
    align-items: center;
    padding: 10px 0 24px
}

.profile-monogram {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    background: #2d5c4a;
    border-radius: 16px;
    font-size: 24px;
    color: #b0eac7
}

.profile-summary small {
    display: block;
    margin: 6px 0 9px;
    color: #9fb5c4;
    overflow-wrap: anywhere
}

.danger-settings {
    border-top: 1px solid #79505660;
    padding-top: 10px;
    color: #e9adb1
}

.danger-button {
    padding: 13px 18px;
    border-radius: 9px;
    border: 1px solid #b75e69;
    background: #542e38;
    color: #ffd8db;
    font-weight: bold
}

.security-settings input, .danger-settings input:not([type=checkbox]) {
    width: 100%
}

#sound-level {
    padding: 0;
    accent-color: #65dcae
}

/* Owner directory. */
dialog:has(.player-directory) {
    width: min(880px, calc(100vw - 28px))
}

.directory-launch {
    width: 100%;
    margin: 10px 0
}

.directory-top, .directory-pages {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: #a5b8c7;
    font-size: 12px
}

.directory-search {
    display: flex;
    gap: 10px;
    margin: 18px 0
}

.directory-search input {
    flex: 1;
    min-width: 0;
    padding: 12px;
    background: #11222e;
    border: 1px solid #385463;
    color: #edf5f5;
    border-radius: 9px
}

.player-directory {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 12px
}

.directory-player {
    display: flex;
    flex-direction: column;
    gap: 9px;
    padding: 18px;
    border: 1px solid #3b566660;
    background: #152632;
    border-radius: 12px;
    overflow-wrap: anywhere
}

.directory-player header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px
}

.directory-player p {
    font-size: 12px;
    color: #b4c6d1;
    margin: 0
}

.directory-player code {
    font-size: 10px;
    color: #8fa9b7;
    user-select: all
}

.directory-player small {
    font-size: 10px;
    color: #90a9ba
}

.directory-balances {
    display: flex;
    gap: 20px;
    margin: 5px 0;
    color: #d2e9dd
}

.directory-pages {
    margin: 20px 0 0
}

@media (max-width: 600px) {
    #slots-stage {
        padding: 16px 10px;
        gap: 14px
    }

    .slot-machine {
        padding: 16px 12px;
        border-radius: 19px
    }

    #slots-stage h2 {
        font-size: 21px;
        margin: 15px 0
    }

    .slot-brandbar .eyebrow, .slot-live-dot {
        font-size: 7px
    }

    #slots-stage .reel-frame > span {
        height: 122px
    }

    .slot-machine-footer {
        font-size: 6px;
        letter-spacing: .05em
    }

    .balance-tile {
        padding: 18px 14px
    }

    .wallet-actions {
        grid-template-columns:1fr
    }

    .wallet-line {
        align-items: flex-start
    }

    .daily-rewards {
        gap: 14px
    }

    .daily-rewards strong {
        font-size: 22px
    }

    .cashout-card {
        align-items: flex-start;
        flex-direction: column
    }

    .player-directory {
        grid-template-columns:1fr
    }

    .win-card {
        padding: 22px 30px;
        min-width: 210px
    }

    .win-card > strong {
        font-size: 40px
    }
}

@media (prefers-reduced-motion: reduce) {
    .win-card {
        animation: none
    }

    .win-overlay.leaving {
        transition: none
    }
}

.cover.plinko {
    background: radial-gradient(ellipse at top, #336f75, #172a42);
}

#plinko-stage {
    background: radial-gradient(ellipse at top, #244956, #112332 70%);
    padding: 25px 14px;
    gap: 14px;
}

.plinko-board {
    position: relative;
    width: min(92%, 720px);
    height: 520px;
    margin: 0 auto;
}

#plinko-pegs {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
}

#plinko-pegs i {
    position: absolute;
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #b9fff0;
    border: 1px solid #eafffa;
    box-shadow:
            0 0 5px #8fffe8,
            0 0 13px #5de7ce99;
    transform: translate(-50%, -50%);
}

:is(#plinko-ball,.plinko-ball) {
    position: absolute;
    display: block;
    width: 17px;
    height: 17px;
    border-radius: 50%;
    background: #ffd27b;
    box-shadow:
            0 0 10px #ffbf68aa,
            0 0 20px #ffbf6855,
            inset -3px -3px 0 #d98a37;
    transform: translate(-50%, -50%);
    z-index: 3;
}

#plinko-buckets {
    display: grid;
    grid-template-columns: repeat(9, minmax(0, 1fr));
    width: min(92%, 650px);
    margin: 0 auto;
    gap: 5px;
}

#plinko-buckets span {
    padding: 13px 2px;
    text-align: center;
    border-radius: 6px;

    background: #237d76;
    color: #f5fffc;

    font-size: clamp(9px, 1vw, 13px);
    font-weight: 800;
    text-shadow: 0 1px 3px #000a;

    border: 1px solid #ffffff18;

    box-shadow:
            0 4px 0 #061723,
            inset 0 1px 0 #ffffff18;

    transition:
            transform .15s,
            filter .15s,
            box-shadow .15s;
}

#plinko-buckets .heat-0 { background: #237d76; }
#plinko-buckets .heat-1 { background: #397a70; }
#plinko-buckets .heat-2 { background: #687f64; }
#plinko-buckets .heat-3 { background: #a88958; }
#plinko-buckets .heat-4 { background: #d99b4e; }

#plinko-buckets .landed {
    transform: translateY(4px);
    filter: brightness(1.45);
    box-shadow:
            0 0 22px #f8d57799,
            inset 0 1px 0 #fff6;
}

@media (max-width: 600px) {
    .plinko-board {
        width: 100%;
        height: 390px;
    }

    #plinko-pegs i {
        width: 9px;
        height: 9px;
    }

    #plinko-buckets {
        width: 100%;
        gap: 2px;
    }

    #plinko-buckets span {
        padding: 10px 1px;
        font-size: 8px;
    }
}
/* Plinko: violet arena, coral edge prizes, aligned nine-pocket landing rail. */
.cover.plinko{isolation:isolate;background:radial-gradient(ellipse at 75% 15%,#9d5cb0 0,transparent 58%),linear-gradient(140deg,#382550,#6b3d87 52%,#382648);overflow:hidden}.cover.plinko:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(125deg,transparent 0 49px,#dcb3ff0a 50px 51px);z-index:-1}.plinko-cover-art{position:absolute;inset:12% -2% auto;width:104%;height:76%;object-fit:contain;filter:drop-shadow(0 12px 9px #160d3640);transition:transform .25s}.game:hover .plinko-cover-art{transform:translateY(-4px) rotate(2deg)}.cover.plinko .cover-title{color:#fff2ff;text-shadow:0 3px 0 #4a285e}.plinko-cover-caption{position:absolute;bottom:13px;left:0;width:100%;text-align:center;color:#dfc6ed;font-size:8px;letter-spacing:.19em}
#plinko-stage{padding:24px 22px 20px;gap:15px;background:radial-gradient(ellipse at 50% 20%,#392c50 0,transparent 65%),linear-gradient(155deg,#201e34,#121d2c);overflow:hidden}.plinko-heading{width:100%;max-width:650px;display:flex;align-items:center;justify-content:space-between;text-align:left}.plinko-heading .eyebrow{color:#bb9fcf;font-size:9px;letter-spacing:.18em}.plinko-heading h2{margin:6px 0 0;font-size:28px;letter-spacing:-.04em;color:#fff2ff}.plinko-heading h2 span{color:#ffb678;font-size:15px;vertical-align:middle;margin-left:10px}.plinko-badge{font-size:9px;letter-spacing:.1em;padding:8px 10px;border:1px solid #88729540;border-radius:20px;color:#c9b4d7;background:#382a493b}.plinko-arena{width:min(100%,650px);padding:14px 0 19px;border:1px solid #8c70a530;border-radius:18px;background:radial-gradient(ellipse at 50% 0,#69508016,transparent 70%),#17192870;box-shadow:inset 0 1px #c5a1eb0c,0 15px 32px #070b1720}.plinko-board{width:100%;height:auto;aspect-ratio:1.55;margin:0;min-height:220px}#plinko-pegs i{width:8px;height:8px;border:0;background:#dfd8ee;box-shadow:0 2px 0 #80758e,0 0 9px #c7aae81a}:is(#plinko-ball,.plinko-ball){width:15px;height:15px;background:radial-gradient(circle at 32% 25%,#fff3c1,#ffc16d 45%,#fa8661);box-shadow:0 0 15px #ffb07170;z-index:3}#plinko-buckets{width:90%;margin:0 auto;gap:4px;grid-template-columns:repeat(9,minmax(0,1fr))}#plinko-buckets span{padding:12px 0;border:1px solid #ffffff1c;border-radius:5px 5px 8px 8px;color:#301b32;font-size:clamp(8px,1vw,12px);text-shadow:none;box-shadow:0 4px 0 #100d1e,inset 0 1px #ffffff35}#plinko-buckets .heat-0{background:#e5cba8}#plinko-buckets .heat-1{background:#ffc071}#plinko-buckets .heat-2{background:#ffa361}#plinko-buckets .heat-3{background:#ff826b}#plinko-buckets .heat-4{background:#f56389}#plinko-buckets .landed{transform:translateY(3px);filter:brightness(1.2);outline:2px solid #ffe5be;outline-offset:2px;box-shadow:0 0 22px #ffb57d50}#plinko-stage>.input-hint{font-size:10px;color:#9e93b1}
/* Cleaner slots and readable symbol-specific awards. */
#slots-stage{background:radial-gradient(ellipse at top,#223d49,#12212e 70%);gap:18px}.slot-machine{border-radius:16px;padding:20px;background:linear-gradient(150deg,#253e49,#172935);border-color:#5b81854d;box-shadow:0 12px 24px #06111c40}.slot-window{border-radius:12px;padding:6px}.slot-machine-footer{margin-top:15px}#slots-stage .slots-table{line-height:1.5;padding:16px;border-radius:12px;background:#10202bd9}.slot-table-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;font-size:10px;letter-spacing:.06em}.slot-table-heading>span{color:#a6c9c0;font-weight:400;letter-spacing:0}.slot-payout-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.slot-payout{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:10px 8px;background:#1c3341;border:1px solid #87aca518;border-radius:7px}.slot-payout>span{font-size:13px;letter-spacing:-2px;white-space:nowrap}.slot-payout>strong{color:#c1f4df;font-size:12px}.slot-pair-note{font-size:11px;color:#a5c0c7;padding-top:12px}.slot-table-foot{font-size:9px;color:#7c98a9;margin-top:7px;max-width:440px}
@media(max-width:600px){#plinko-stage{padding:18px 10px;gap:12px}.plinko-heading h2{font-size:24px}.plinko-badge{font-size:8px;padding:7px}.plinko-arena{padding-top:12px}#plinko-pegs i{width:6px;height:6px}#plinko-buckets{gap:2px;width:90%}#plinko-buckets span{font-size:8px;padding:10px 0}.plinko-board{min-height:200px}#slots-stage .slot-payout-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.slot-payout>span{font-size:14px}.slot-table-heading{font-size:9px}}

/* Bitcoin wallet and owner workspace */
#modal.payment-wide{width:min(980px,calc(100vw - 28px));max-width:980px}.payment-hero{display:flex;align-items:center;gap:20px;padding:22px 0}.payment-hero h3{font-size:26px;letter-spacing:-.04em;margin:8px 0}.payment-hero p{color:#a9c0cd;line-height:1.7;margin:0}.payment-coin{display:grid;place-items:center;flex:none;width:68px;height:68px;border-radius:20px;background:linear-gradient(145deg,#f7c471,#cd862d);box-shadow:0 8px 28px #f8b34519;color:#3b290c;font-size:40px}.payment-coin.sc{background:linear-gradient(145deg,#83ebba,#31bba4);color:#08382f}.payment-preview{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:12px;padding:18px;border:1px solid #314b5c;background:#122330;border-radius:12px}.payment-preview .field{margin:0}.payment-preview small{grid-column:1/-1;color:#809baa}.payment-preview>strong{color:#a8f3d4;text-align:center}.deposit-address{margin:20px 0;background:#0f1e2a;border:1px solid #49615d;border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:15px;align-items:flex-start}.deposit-address code{font-size:16px;overflow-wrap:anywhere;color:#e7fff4;user-select:all}.deposit-address small{color:#97afbd}.payment-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;font-size:12px;color:#b7cdd7}.payment-steps span{display:flex;align-items:center;gap:9px}.payment-steps b{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:50%;background:#2ce1b322;color:#6ce6c4}.payment-row{display:grid;grid-template-columns:1fr 1fr 2fr;gap:14px;padding:18px 0;border-bottom:1px solid #2d4352}.payment-row small,.payment-row code{display:block;font-size:11px;color:#8eabbc;overflow-wrap:anywhere;margin-top:5px}.payment-row strong{font-size:13px}.payment-status{display:inline-flex;width:fit-content;border-radius:20px;padding:5px 10px;background:#52697935;color:#aec2d0;font-size:11px;text-transform:capitalize}.payment-status.pending,.payment-status.confirming{color:#ffda8d;background:#b87b2d22}.payment-status.credited,.payment-status.paid,.payment-status.active,.payment-status.enabled{color:#9febce;background:#40bb8b22}.payment-status.review,.payment-status.conflicted,.payment-status.rejected{color:#ffb4bc;background:#e8546b20}.payment-status.approved{color:#ccbdff;background:#976be326}.payment-empty{text-align:center;padding:30px 18px;color:#8da7b6;border:1px dashed #3d5362;border-radius:10px;font-size:13px}.owner-tabs{display:flex;gap:5px;overflow:auto;padding:0 0 16px;margin-bottom:18px;border-bottom:1px solid #304654}.owner-tabs button{white-space:nowrap;border:0;border-radius:7px;padding:10px 14px;background:transparent;color:#99afbe;font-weight:700}.owner-tabs button.active{color:#8af0cb;background:#2ce1b31a}.owner-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.owner-overview article{border:1px solid #355160;background:linear-gradient(145deg,#203946,#152632);border-radius:12px;padding:19px;display:flex;flex-direction:column;gap:10px}.owner-overview strong{font-size:34px;color:#e3fff3}.owner-overview small,.owner-overview span{font-size:11px;color:#93aeba}.owner-health{margin:22px 0;padding:20px;background:#12212d;border-radius:12px;line-height:1.7;color:#a4bccb;font-size:13px}.owner-health h3{color:#e4f2fa;margin:0 0 12px}.owner-callout{padding:18px 20px;background:#53cbaa0b;border-left:3px solid #42d8af;color:#9dbcb8;font-size:13px;line-height:1.7}.owner-callout p{margin:6px 0 0}.owner-search{display:grid;grid-template-columns:minmax(0,1fr) 140px auto;gap:10px}.owner-payment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.owner-payment-record{padding:19px;border:1px solid #304b5b;border-radius:12px;background:#142632;display:flex;flex-direction:column;gap:10px}.owner-payment-record header{display:flex;justify-content:space-between;gap:10px}.owner-payment-record header small,.owner-payment-record>small{font-size:10px;color:#91a9b9;display:block;overflow-wrap:anywhere;margin-top:5px}.owner-payment-record code{color:#bbd5e0;overflow-wrap:anywhere;font-size:11px}.owner-payment-record p{font-size:12px;color:#afc5d2;margin:0}.owner-payment-amount{font-size:23px;font-weight:800;color:#d4f8e9}.owner-payment-amount small{font-size:10px;font-weight:400;color:#8da7b6;display:block;margin-top:5px}.review-heading{display:flex;justify-content:space-between;align-items:center;padding:10px 0 22px}.review-heading>strong{font-size:32px}.review-facts{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;font-size:13px}.review-facts dt{color:#89a7b8}.review-facts dd{margin:0;overflow-wrap:anywhere;color:#c8dee8}#review-redemption{margin-top:22px}#bitcoin-redeem>.primary,#review-redemption>.primary{width:100%;margin-top:12px}
@media(max-width:650px){.payment-hero{gap:12px}.payment-hero h3{font-size:21px}.payment-hero .eyebrow{font-size:8px}.payment-coin{width:48px;height:48px;font-size:29px;border-radius:14px}.payment-hero p{font-size:12px}.payment-preview{grid-template-columns:1fr}.payment-steps{grid-template-columns:1fr;gap:9px}.payment-row{grid-template-columns:1fr 1fr}.payment-row>div:last-child{grid-column:1/-1}.owner-overview{grid-template-columns:repeat(2,1fr)}.owner-overview article{padding:14px}.owner-search{grid-template-columns:1fr 110px}.owner-search button{grid-column:1/-1}.owner-payment-list{grid-template-columns:1fr}.review-facts{grid-template-columns:1fr;gap:5px}.review-facts dd{margin-bottom:12px}.owner-tabs button{padding:9px 10px;font-size:11px}.deposit-address{padding:17px}.deposit-address code{font-size:13px}}

@media (max-width: 1100px) {
    main {
        margin-left: 195px;
        width: calc(100% - 195px);
    }
}

@media (max-width: 760px) {
    main {
        margin-left: 0;
        width: 100%;
    }
}
@media (min-width: 1400px) {
}
/* ---------- Visual polish ---------- */

body {
    background:
        radial-gradient(circle at 70% -10%, #173847 0, transparent 38%),
        var(--bg);
}

/* Give primary surfaces actual depth */
.hero,
.game,
.promo,
.bottom-banner,
.game-layout,
dialog {
    box-shadow:
        0 1px 0 #ffffff08 inset,
        0 14px 35px #020b1240;
}

/* Hero gets slightly more presence */
.hero {
    box-shadow:
        0 1px 0 #ffffff12 inset,
        0 22px 55px #020a1260;
}

/* Cleaner cards */
.game,
.promo,
.bottom-banner {
    border-color: #31495a;
}

/* Main CTA feels less flat */
.primary {
    background: linear-gradient(135deg, #46edc4, #2dd5ad);
    box-shadow:
        0 1px 0 #ffffff40 inset,
        0 7px 18px #18b99126;
    transition: transform .16s ease, box-shadow .16s ease, filter .16s ease;
}

/* Secondary controls also get subtle depth */
.secondary,
.filter,
.balance {
    box-shadow: 0 1px 0 #ffffff0a inset;
}

/* Topbar separation */
.topbar {
    box-shadow: 0 8px 30px #02091024;
}

/* Slightly richer sidebar */
.sidebar {
    background:
        linear-gradient(180deg, #0d1925, #09131d);
    box-shadow: 8px 0 30px #02091026;
}

/* Desktop hover polish without screwing with touch devices */
@media (hover: hover) {
    .primary:hover {
        transform: translateY(-1px);
        box-shadow:
            0 1px 0 #ffffff50 inset,
            0 10px 24px #18b99138;
    }

    .game:hover {
        transform: translateY(-6px);
        border-color: #477083;
        box-shadow:
            0 1px 0 #ffffff10 inset,
            0 20px 45px #020a1266;
    }

    .promo:hover {
        transform: translateY(-2px);
        border-color: #405f70;
        box-shadow:
            0 1px 0 #ffffff10 inset,
            0 16px 36px #020a1250;
    }
}
.recommended-games {
    margin-top: 32px;
    padding-top: 26px;
    border-top: 1px solid var(--line);
}

.recommended-games .section-head {
    margin-bottom: 14px;
}

.recommended-games .section-head h2 {
    font-size: 18px;
}

.recommended-games .section-head p {
    font-size: 11px;
}

.recommended-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 14px;
}

.recommended-grid .cover {
    height: 145px;
}

@media (max-width: 1100px) {
    .recommended-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .recommended-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 480px) {
    .recommended-grid {
        grid-template-columns: 1fr;
    }
}
/* Responsive Plinko arena. Pegs and pocket centers share the same geometry. */
#plinko-stage { padding:28px clamp(12px,3vw,32px) 20px; gap:18px; background:radial-gradient(ellipse at 50% 30%,#52366a55,transparent 65%),linear-gradient(150deg,#241b35,#111624); }
.plinko-heading { max-width:760px; }
.plinko-heading h2 { font-size:34px; letter-spacing:-1.5px; }
.plinko-badge { color:#dfc8f5; background:#a978e010; border-color:#a978e035; }
.plinko-arena { width:min(100%,760px); padding:16px 0 22px; background:radial-gradient(ellipse at 50% 10%,#56407730,transparent 70%),#11121e99; border-color:#b390e02b; box-shadow:inset 0 1px #dcbaff12,0 18px 40px #08061050; }
.plinko-drop-label { color:#a998ba; font-size:8px; font-weight:700; letter-spacing:2px; text-align:center; }
.plinko-drop-label span { display:block; color:#ffd198; font-size:20px; line-height:20px; }
.plinko-board { aspect-ratio:1.6; min-height:230px; }
#plinko-pegs i { width:var(--plinko-peg,8px); height:var(--plinko-peg,8px); background:radial-gradient(circle at 30% 25%,#fff,#cec0e4 65%); box-shadow:0 2px 1px #6c567e,0 0 12px #cab0ec25; }
:is(#plinko-ball,.plinko-ball) { width:12px; height:12px; box-shadow:0 0 16px #ffb071b0; }
#plinko-buckets { width:90%; gap:0; }
#plinko-buckets span { min-width:0; margin:0 1px; padding:0; height:34px; display:flex; align-items:center; justify-content:center; font-size:clamp(7px,1vw,11px); letter-spacing:-.35px; font-variant-numeric:tabular-nums; }
#plinko-buckets span::after { content:'×'; }
.plinko-board-footer { width:min(100%,760px); display:flex; align-items:center; justify-content:space-between; gap:12px; }
.plinko-board-footer>span { color:#9b8aa9; font-size:8px; letter-spacing:1.3px; }
.plinko-board-footer strong { color:#ffdaae; font-size:12px; font-weight:600; letter-spacing:normal; }
#plinko-stage>.input-hint { margin:0; font-size:9px; }
#plinko-options label { display:flex; justify-content:space-between; align-items:center; }
#plinko-options label small { color:#ba9cda; font-size:10px; }
#game-page[data-game="plinko"] #play { background:linear-gradient(110deg,#e2bcff,#b897ef); color:#241633; box-shadow:0 4px 18px #b897ef20; }
@media(max-width:600px) {
    #plinko-stage { padding:18px 8px; gap:14px; }
    .plinko-heading { padding:0 6px; }
    .plinko-heading h2 { font-size:27px; }
    .plinko-badge { font-size:7px; letter-spacing:.04em; padding:7px; }
    .plinko-board { min-height:225px; }
    #plinko-pegs i { width:5px; height:5px; }
    :is(#plinko-ball,.plinko-ball) { width:9px; height:9px; }
    #plinko-buckets span { font-size:7px; margin:0 .5px; letter-spacing:-.5px; }
    #plinko-stage:is([data-rows="13"],[data-rows="14"],[data-rows="15"],[data-rows="16"]) #plinko-buckets span::after { content:none; }
    .plinko-board-footer { padding:0 5px; }
    .plinko-board-footer>span { font-size:7px; letter-spacing:.6px; }
}
.low-sc-modal {
    text-align: center;
    padding: 12px 4px 6px;
}

.low-sc-icon {
    width: 72px;
    height: 72px;
    margin: 0 auto 18px;

    display: grid;
    place-items: center;

    border-radius: 50%;
    font-size: 34px;

    background:
        radial-gradient(circle at 35% 30%,
            rgba(255,255,255,.28),
            transparent 38%),
        linear-gradient(145deg, #f5c451, #b87914);

    box-shadow:
        0 14px 35px rgba(0,0,0,.25),
        inset 0 1px rgba(255,255,255,.35);
}

.low-sc-modal .eyebrow {
    display: block;
    margin-bottom: 8px;
    font-size: 11px;
    letter-spacing: .16em;
    font-weight: 800;
    opacity: .65;
}

.low-sc-modal h3 {
    margin: 0;
    font-size: clamp(26px, 5vw, 34px);
    line-height: 1.1;
}

.low-sc-copy {
    margin: 12px auto 20px;
    max-width: 360px;
    line-height: 1.5;
    opacity: .76;
}

.low-sc-balance {
    display: flex;
    justify-content: space-between;
    align-items: center;

    margin: 0 auto 22px;
    padding: 15px 17px;

    max-width: 360px;

    border: 1px solid rgba(255,255,255,.1);
    border-radius: 14px;

    background: rgba(255,255,255,.045);
}

.low-sc-balance span {
    font-size: 13px;
    opacity: .65;
}

.low-sc-balance strong {
    font-size: 17px;
}

.low-sc-primary {
    width: 100%;
    max-width: 360px;

    display: flex;
    justify-content: center;
    gap: 10px;

    margin: 0 auto;
}

.low-sc-modal .back {
    margin-top: 10px;
}
/* Owner bonus release history: readable and selectable on narrow screens. */
.owner-claim-code { font-size: 15px; overflow-wrap: anywhere; user-select: all; }
.owner-code-actions { display: flex; flex-wrap: wrap; gap: 8px; }

.owner-account-tags { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
.owner-account-tags span { border:1px solid var(--border,#544369); border-radius:999px; padding:5px 10px; font-size:12px; background:var(--surface,#211a2c); }
.owner-note-tags { display:flex; flex-wrap:wrap; gap:12px 20px; padding:16px; margin:0 0 16px; border:1px solid var(--border,#544369); border-radius:12px; }
.owner-note-tags label { display:flex; align-items:center; gap:8px; }

/* /css/owner/owner-portal.css */

/* Owner workspace: grouped navigation, focused filters and readable operational reports. */
dialog#modal.payment-wide:has(.owner-navigation){width:min(1320px,96vw);max-width:96vw;max-height:94dvh;padding:24px;background:#17151f;border-color:#41394d}
#modal-body:has(>.owner-navigation){display:grid;grid-template-columns:185px minmax(0,1fr);gap:28px;align-items:start}
.owner-menu-toggle{display:none}.owner-navigation{position:sticky;top:0;min-width:0;padding-right:16px;border-right:1px solid #36303f}
.owner-brand{display:grid;gap:7px;padding:5px 0 22px}.owner-brand>span{font-size:10px;font-weight:800;letter-spacing:.15em;color:#d6f56a}.owner-brand>b{font-size:20px}.owner-brand>small{font-size:10px;color:#a899b6}
.owner-navigation nav section{margin:20px 0}.owner-navigation nav h3{font-weight:700;line-height:1.4;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#a295b0;margin:0 0 7px}
.owner-navigation nav button{display:block;width:100%;text-align:left;font-size:12px;font-weight:500;border-radius:7px;background:transparent;color:#cec1db;padding:9px 11px;margin:3px 0;min-height:35px}
.owner-navigation nav button:hover{background:#2b2436;color:#fff}.owner-navigation nav button.active{background:#d6f56a;color:#202314;font-weight:800}
#owner-quick-search label{display:block;font-size:10px;color:#b9a9c7;margin-bottom:7px}#owner-quick-search>div{display:flex;border:1px solid #4b3e58;border-radius:8px;overflow:hidden}#owner-quick-query{width:100%;min-width:0;border:0;border-radius:0;padding:10px;font-size:11px;background:#201a29;color:#fff}#owner-quick-search button{padding:8px 10px;border-radius:0;background:#30273c;color:#d6f56a}
.owner-page-body,.owner-content{min-width:0}.owner-page-body>h3{margin-top:20px}.owner-heading{margin:4px 0 24px}.owner-heading h3{font-size:clamp(24px,3vw,34px);line-height:1.15;letter-spacing:-.7px;margin:8px 0 10px}.owner-heading p{font-size:13px;color:#b6a9c5;line-height:1.7;max-width:850px}.owner-heading>.eyebrow{overflow-wrap:anywhere;font-size:10px;color:#bdb086}
.owner-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:18px 0 22px}.owner-kpis article{padding:18px;border:1px solid #42364f;border-radius:12px;background:#221c2b;display:flex;flex-direction:column;gap:10px}.owner-kpis article>span{font-size:11px;color:#c2b2cf}.owner-kpis strong{font-size:27px;color:#f6f0ff;line-height:1.1}.owner-kpis small{color:#a395b4;font-size:10px}
.owner-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;padding:18px;margin:16px 0 22px;border:1px solid #443750;border-radius:12px;background:#201a29}.owner-filters .field{margin:0;min-width:0;font-size:11px}.owner-filters input,.owner-filters select{width:100%;min-width:0;font-size:12px;padding:10px}.owner-filter-search{grid-column:span 2}.owner-filter-actions{display:flex;gap:8px;align-items:end;grid-column:span 2}.owner-filter-actions button{min-height:39px;padding:10px 16px;font-size:11px}
.owner-table-scroll{overflow:auto;max-width:100%;border:1px solid #3d3347;border-radius:11px}.owner-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.owner-table th{font-size:10px;letter-spacing:.04em;color:#b6a4c7;font-weight:600;background:#24202d;padding:13px 14px;white-space:nowrap}.owner-table td{padding:14px;border-top:1px solid #332b3d;vertical-align:top;color:#e0d6eb;line-height:1.5;max-width:290px;overflow-wrap:anywhere}.owner-table tbody tr:hover{background:#231d2c}.owner-table td>small{display:block;color:#a698b5;font-size:10px;margin-top:5px}.owner-table button.secondary{font-size:11px;min-height:32px;padding:7px 10px;white-space:nowrap}.owner-table code{font-size:10px;word-break:break-all}.owner-user-link{font-size:12px;font-weight:700;background:none;padding:0;color:#deecac;text-align:left;text-decoration:underline;text-decoration-color:#687441;text-underline-offset:4px}.owner-user-link:hover{color:#fff}
.owner-badge{display:inline-flex;align-items:center;font-size:10px;padding:4px 8px;border-radius:6px;border:1px solid #584764;background:#342a40;color:#d5c7e1;white-space:nowrap}.owner-badge.allowed,.owner-badge.active,.owner-badge.clear,.owner-badge.cleared{background:#203b30;border-color:#346f53;color:#bce9c9}.owner-badge.blocked,.owner-badge.banned,.owner-badge.high{background:#46252b;border-color:#7d414c;color:#ffc0be}.owner-badge.unknown,.owner-badge.restricted,.owner-badge.medium{background:#443820;border-color:#806d3c;color:#ffe2a7}
.owner-note{font-size:12px;line-height:1.75;color:#b5a7c3;padding:15px 17px;background:#211c29;border:1px solid #40344b;border-radius:9px;margin:17px 0}.owner-empty{padding:32px 20px;border:1px dashed #4c3d5d;border-radius:10px;color:#bca9cc;font-size:13px;text-align:center}
.owner-section{min-width:0;margin:24px 0}.owner-section>header h3{font-size:19px;margin:0 0 8px}.owner-section>header p{font-size:12px;color:#b2a0c2;line-height:1.65;margin:0 0 15px}.owner-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.owner-facts{display:grid;grid-template-columns:130px minmax(0,1fr);gap:14px;font-size:12px;line-height:1.65;padding:19px;border:1px solid #43344f;border-radius:11px;background:#211b29}.owner-facts dt{color:#aa9bbb}.owner-facts dd{margin:0;overflow-wrap:anywhere}.owner-address{white-space:pre-line}.owner-inline-actions{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0 25px}.owner-inline-actions button{font-size:12px}.owner-period{max-width:210px}
.owner-subtabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #403348;padding-bottom:14px;margin-bottom:22px}.owner-subtabs button{background:transparent;border:1px solid #4d3e59;padding:10px 13px;border-radius:8px;font-size:11px;color:#baabca}.owner-subtabs button.active{color:#f9f0ff;border-color:#ba96df;background:#39274b}
.owner-duplicate-list{display:grid;gap:16px}.owner-duplicate-card{border:1px solid #46374f;border-radius:12px;background:#211a29;padding:20px}.owner-duplicate-card>header{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.owner-duplicate-card>header p{font-size:11px;color:#b5a2c3}.owner-duplicate-card .owner-user-link{font-size:16px}.owner-duplicate-card details{border-top:1px solid #3b2d47;padding:12px 0;font-size:12px;line-height:1.65}.owner-duplicate-card summary{cursor:pointer;color:#d9c7e7}.owner-duplicate-card footer{display:flex;justify-content:flex-start;gap:14px;margin-top:15px;padding:0;border:0}.owner-duplicate-card footer button{font-size:11px}.owner-new-evidence{color:#ffe1a0;background:#4b3622;padding:12px;border-radius:7px;font-size:12px}.owner-decision-form{max-width:620px}.owner-decision-form textarea{width:100%;background:#201829;border:1px solid #594267;border-radius:8px;color:#fff;padding:12px;resize:vertical}
@media(max-width:1100px){.owner-report-grid{grid-template-columns:1fr}.owner-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){dialog#modal.payment-wide:has(.owner-navigation){width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;padding:20px 15px;border-radius:0}#modal-body:has(>.owner-navigation){display:block}.owner-navigation{position:static;border-right:0;border-bottom:1px solid #403346;padding:0 0 15px;margin-bottom:20px}.owner-brand{padding:0 0 13px;grid-template-columns:1fr auto}.owner-brand>b{font-size:17px}.owner-brand>small{grid-column:1/-1}.owner-menu-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:13px;padding:12px;background:#30273c;color:#deecac;font-size:12px}.owner-navigation nav{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 13px}.owner-navigation.menu-open nav{display:grid}.owner-navigation nav section{margin:14px 0 0}.owner-navigation nav button{padding:8px;font-size:11px;min-height:34px}.owner-heading h3{font-size:25px}.owner-filters{padding:14px;gap:12px}.owner-filter-search,.owner-filter-actions{grid-column:1/-1}.owner-filter-actions button{flex:1}.owner-table{min-width:580px}.owner-table th,.owner-table td{padding:12px}.owner-kpis article{padding:15px}.owner-kpis strong{font-size:23px}.owner-facts{grid-template-columns:100px minmax(0,1fr);padding:15px}.owner-subtabs button{flex:1;font-size:10px}.owner-report-grid{gap:0}}

.owner-section:has(.owner-game-statistics){grid-column:1/-1}.owner-game-statistics td:nth-child(n+2){font-variant-numeric:tabular-nums;white-space:nowrap}.owner-sort{font:inherit;margin:0;padding:0;border:0;background:transparent;color:var(--accent);cursor:pointer;white-space:nowrap}.owner-sort:focus-visible{outline:2px solid var(--accent);outline-offset:4px}

/* Consolidated owner workspace: consistent navigation, compact forms and legible reports. */
dialog#modal.payment-wide:has(.owner-navigation){width:min(1540px,96vw);max-width:96vw;padding:26px;background:linear-gradient(135deg,#16131e,#1b1725);border-color:#51445e;box-shadow:0 24px 90px #0009}
#modal-body:has(>.owner-navigation){grid-template-columns:170px minmax(0,1fr);gap:26px}
.owner-navigation{padding-right:18px}.owner-navigation nav{display:grid;gap:5px;margin-top:24px}.owner-navigation nav button{padding:12px 13px;font-size:13px;min-height:42px;color:#d9cee5}.owner-navigation nav button.active{background:#b99aeb;color:#171222;box-shadow:0 5px 20px #a77ad71c}.owner-brand>span{color:#c7adf0}.owner-brand>b{font-size:21px}.owner-brand>small{color:#c1b3cf;font-size:11px}
.owner-context{margin-bottom:22px}.owner-breadcrumb{font-size:11px;color:#c4b3d6;margin:3px 0 13px}.owner-context .owner-subtabs{padding-bottom:14px;margin:0;gap:7px}.owner-subtabs button{font-size:12px;line-height:1.35;min-height:38px;padding:9px 12px}.owner-context .owner-subtabs button.active{background:#3d2f53;color:#f5eeff;border-color:#ad8bda}.owner-user-tabs{margin-top:20px}
.owner-page-body{font-size:14px;line-height:1.55;color:#f1ebf8}.owner-page-body h3{line-height:1.25}.owner-page-body p,.owner-page-body .modal-note{line-height:1.65}.owner-heading{margin-bottom:20px}.owner-heading h3{font-size:29px}.owner-heading p{font-size:14px;color:#c4b7d2}.owner-section>header p,.owner-note,.owner-page-body .fine-note{font-size:12px;color:#bfb1cd;line-height:1.6}
.owner-kpis article{background:linear-gradient(145deg,#292133,#211a2a);border-color:#4d3f5d;padding:17px}.owner-kpis article>span{font-size:12px;color:#d0c2de}.owner-kpis strong{font-size:26px}.owner-kpis small{font-size:11px;color:#c2b3d0}
.owner-table{font-size:13px}.owner-table th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#d7c6eb;background:#2a2135}.owner-table th,.owner-table td{padding:12px 13px}.owner-table tbody tr:nth-child(even){background:#ffffff03}.owner-table tbody tr:hover{background:#b99aeb0a}.owner-table td small{font-size:11px;color:#b9acc7;line-height:1.5}.owner-table td code{font-size:10px;overflow-wrap:anywhere;white-space:normal}.owner-table .secondary{font-size:11px;padding:8px 11px;min-height:34px}.owner-user-link{font-size:13px;color:#d8b7ff}.owner-positive{color:#92e8b0}.owner-negative{color:#ffacae}
.owner-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 18px}.owner-page-body .field{font-size:12px;color:#d9cde7;line-height:1.5}.owner-page-body input,.owner-page-body select,.owner-page-body textarea{font-size:14px;color:#f3ecfc;background:#14111c;border-color:#52425f}.owner-page-body input:focus,.owner-page-body select:focus,.owner-page-body textarea:focus{outline:2px solid #b99aeb;outline-offset:1px}.owner-page-body input[type=checkbox]{accent-color:#b99aeb;width:18px;height:18px}.owner-page-body .primary{background:#b99aeb;color:#171222}.owner-filters{background:#211a2b;border-color:#45374f;gap:14px;padding:18px}.owner-daily-editor{min-width:440px}.owner-daily-editor input{width:100%;min-width:80px;max-width:180px;padding:10px}
.owner-player-picker{padding:13px;margin:7px 0 13px;background:#241d2e;border:1px solid #51415f;border-radius:10px}.owner-player-picker>.field{margin:0 0 10px}.owner-picker-results{display:grid;gap:5px;margin-top:10px;font-size:12px;max-height:235px;overflow:auto}.owner-picker-results button{text-align:left;display:grid;gap:3px;background:#32263f;padding:10px;color:#f1e8fc;border:1px solid #57426c;border-radius:7px}.owner-picker-results button:hover{background:#48335e}.owner-picker-results small{color:#c8b8d8;overflow-wrap:anywhere}.owner-player-picker .secondary{min-height:32px;padding:7px 11px;font-size:12px}.owner-facts{font-size:13px;gap:13px;background:#211a2a;border-color:#4d3e5a}.owner-facts dt{color:#bbabca}.owner-facts dd{color:#eee6f8}
@media(max-width:1000px){.owner-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-table{font-size:12px}}
@media(max-width:760px){dialog#modal.payment-wide:has(.owner-navigation){width:100%;max-width:100%;padding:20px 15px}#modal-body:has(>.owner-navigation){display:block}.owner-navigation{padding-right:0}.owner-navigation nav{display:none;margin-top:13px;grid-template-columns:repeat(2,minmax(0,1fr))}.owner-navigation.menu-open nav{display:grid}.owner-context{margin-top:16px}.owner-context .owner-subtabs{flex-wrap:nowrap;overflow:auto}.owner-context .owner-subtabs button{flex:0 0 auto}.owner-heading h3{font-size:25px}.owner-form-grid{grid-template-columns:1fr}.owner-table th,.owner-table td{padding:11px}.owner-inline-actions button{flex:1 1 140px}}

/* Statistics stays within the portal; tables scroll, not the entire phone page. */
.owner-statistics,.owner-statistics #stats-report{min-width:0;max-width:100%}
.owner-statistics .owner-table-scroll{contain:inline-size;overscroll-behavior-x:contain}
.owner-statistics-filters{border:1px solid #4d3e59;border-radius:10px;padding:0 14px}
.owner-statistics-filters>summary{font-size:14px;color:#dfc6ff;cursor:pointer}
.owner-statistics-filters .owner-filters{margin:0 0 14px}
.owner-statistics-export{display:flex;gap:16px;align-items:center;margin:18px 0}
.owner-statistics-export>button{flex:none;min-height:44px}
.owner-statistics-export .fine-note{margin:0;line-height:1.6}
.owner-statistics .owner-kpis strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
@media(max-width:760px){
 #modal.workspace-dialog.payment-wide:has(.owner-navigation){padding:0;overflow:hidden}
 #modal.workspace-dialog.payment-wide:has(.owner-navigation)>#modal-body{display:block;overflow-x:hidden;overflow-y:auto;min-height:0;flex:1 1 0}
 .owner-statistics .owner-filters{grid-template-columns:minmax(0,1fr);padding:12px;gap:14px}
 .owner-statistics .owner-filters .field,.owner-statistics .owner-filter-actions{grid-column:1/-1}
 #modal .owner-statistics input,#modal .owner-statistics select{font-size:16px;min-height:44px;box-sizing:border-box}
 .owner-statistics-filters{padding:0 10px}
 .owner-statistics-export{flex-direction:column;align-items:stretch;gap:10px}
 .owner-statistics .owner-report-grid{display:block}
 .owner-statistics .owner-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .owner-statistics .owner-kpis article{padding:12px;min-width:0}
 .owner-statistics .owner-kpis strong{font-size:22px}
 .owner-statistics .owner-table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 .owner-statistics .directory-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
 .owner-statistics .directory-pages span{flex-basis:100%;text-align:center;order:3}
}

/* Administration follows the current owner workspace rather than the legacy settings form. */
.owner-team-layout{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(0,2fr);gap:20px;align-items:start}
.owner-team-roster{min-width:0;border:1px solid #42364f;border-radius:14px;background:#211b29;padding:18px}
.owner-team-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.owner-team-section-head h3,.owner-team-section-head h4{margin:0}.owner-team-section-head button{font-size:11px;padding:8px 12px;min-height:34px}
.owner-team-layout .staff-editor{background:#211b29;border:1px solid #42364f;border-radius:14px;padding:20px}
.owner-team-roster .staff-member{background:#272030;border:1px solid #4b3c58;border-radius:10px;gap:9px;padding:14px!important}
.owner-team-roster .staff-member[aria-pressed=true]{border-color:#c4aeef;background:#382a48;box-shadow:0 0 0 1px #c4aeef}
.owner-team-roster .staff-member[hidden]{display:none}.owner-team-roster .staff-member small{line-height:1.6}
.owner-staff-switches{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}
.owner-staff-switches>label{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid #493952;border-radius:10px;background:#271f30;cursor:pointer}
.owner-staff-switches span{display:grid;gap:6px}.owner-staff-switches b{font-size:12px}.owner-staff-switches small{font-size:11px;line-height:1.5;color:#baabc8}
.owner-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.owner-permission-group{min-width:0;padding:14px;border:1px solid #493c55;border-radius:10px;background:#241e2d}
.owner-permission-group header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.owner-permission-group h4{font-size:13px;margin:0}.owner-permission-group header button{padding:4px;font-size:10px;min-height:26px}.owner-permission-group header small{font-size:10px;color:#b8a6c8}
.owner-permission-options{display:grid;gap:5px}.owner-permission-options label{display:flex;align-items:center;gap:9px;min-height:36px;font-size:12px;cursor:pointer}
.owner-team-layout input[type=checkbox]{width:18px;height:18px;flex-shrink:0;accent-color:#b899f1}
.owner-reserved-tools{font-size:10px!important;line-height:1.6;color:#a897ba;margin:10px 0 0}
@media(max-width:1050px){.owner-team-layout{grid-template-columns:1fr}.owner-team-roster .staff-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.owner-permission-grid,.owner-staff-switches,.owner-team-roster .staff-list{grid-template-columns:1fr}.owner-team-layout .staff-editor,.owner-team-roster{padding:14px}.owner-permission-group{padding:12px}}

/* Staff Portal: restrained, legible operational workspace. */
dialog#modal.payment-wide:has(.owner-navigation){background:linear-gradient(145deg,#171521,#111019);border:1px solid #4a3a62;box-shadow:0 28px 90px #0009}
.owner-brand>span{color:#b99af2}.owner-brand>b{font-size:21px;letter-spacing:-.5px}.owner-navigation nav button.active{background:#b598ef;color:#180e29}.owner-navigation nav button:hover{background:#30243f}.owner-subtabs button.active{background:#342343;border-color:#b598ef}.owner-heading>.eyebrow{color:#bea2e7}.owner-kpis article{background:linear-gradient(140deg,#272031,#1c1925);border-color:#493958}.owner-kpis strong{font-variant-numeric:tabular-nums}.owner-table th{background:#2a2235}.owner-table tbody tr:nth-child(even){background:#ffffff02}
.staff-admin-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0 24px}.staff-admin-tabs button{font-size:13px;min-height:42px}.staff-heading h3{max-width:700px}.staff-editor{padding:22px;border:1px solid #4b395c;border-radius:15px;background:#211b2b;min-width:0}.staff-editor>h3{font-size:22px;margin:0 0 20px}.staff-editor fieldset{border:1px solid #493854;border-radius:11px;padding:16px;margin:20px 0}.staff-editor legend{font-weight:700;font-size:12px;padding:0 7px}.staff-editor .field{font-size:12px}.staff-editor textarea{line-height:1.7}.owner-team-roster{padding:18px;border:1px solid #44344f;border-radius:15px;background:#1c1824}.owner-team-roster input{width:100%;margin:8px 0 16px}.staff-member{width:100%;text-align:left;display:grid;gap:8px;padding:15px;margin:8px 0;border:1px solid #4a3959!important;background:#282033!important}.staff-member strong{font-size:14px}.staff-member small{line-height:1.5;white-space:normal;color:#b6a5c6}.staff-member .owner-badge{width:max-content}.staff-member:hover{border-color:#b598ef!important}
.staff-permission-search{position:sticky;top:-1px;z-index:2;background:#211b2b;padding:8px 0 12px;display:grid;gap:8px}.staff-permission-search input{width:100%;font-size:13px}.staff-permission-search small{font-size:11px;color:#b8a8c9;line-height:1.6}.staff-permission-tree{max-height:560px;overflow:auto;overscroll-behavior:contain;padding:0 8px 0 0;scrollbar-color:#715489 #211b2b}.staff-permission-section{border:1px solid #4c3b59;border-radius:10px;margin:0 0 12px;background:#1c1824;padding:12px}.staff-permission-section>summary{font-size:14px;font-weight:700;cursor:pointer;line-height:1.6}.staff-permission-section>summary>span{float:right;font-size:10px;color:#ad9cbd;font-weight:400;margin-left:8px}.staff-permission-section>button{font-size:11px;min-height:32px;margin:7px 8px 5px 0}.staff-permission-option{display:flex;gap:10px;align-items:flex-start;padding:10px 7px;font-size:12px;line-height:1.6;cursor:pointer;border-radius:7px}.staff-permission-option:hover{background:#32273e}.staff-permission-option input{width:17px;height:17px;min-height:0;margin:2px 0 0;flex-shrink:0;accent-color:#b598ef}.staff-permission-option span{overflow-wrap:anywhere}.staff-permission-option small{display:block;color:#bca6ce;font-size:10px}.staff-permission-option:has(:disabled){opacity:.7;cursor:default}.staff-permission-action{border-top:1px solid #382d43;padding:2px 0}.staff-permission-action>summary{display:list-item;cursor:pointer}.staff-permission-action>summary .staff-permission-option{display:inline-flex}.staff-permission-fields{margin-left:24px;border-left:2px solid #624b78;padding-left:8px}.staff-permission-fields .staff-permission-option{font-size:11px;padding:7px}.staff-limit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.staff-limit-grid .field{margin:0}.staff-training-toolbar{display:flex;gap:12px;margin:18px 0 24px}.staff-training-toolbar input{flex:1;min-width:0}.staff-training-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.staff-training-card{padding:22px;background:#231c2d;border:1px solid #4c3b5b;border-radius:14px;min-width:0}.staff-training-card header{display:flex;gap:10px;align-items:center;justify-content:space-between}.staff-training-card h3{font-size:20px;margin:12px 0}.staff-training-card h4{font-size:11px;color:#c3acd8;text-transform:uppercase;letter-spacing:.08em;margin:22px 0 10px}.staff-training-situation{font-size:12px;line-height:1.8;color:#c1afcd}.staff-script-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:13px;background:#17131e;border:1px solid #3c3049;border-radius:9px;padding:16px;margin:12px 0}.staff-training-card details{margin-top:14px;font-size:12px}.staff-training-card button{margin:6px 7px 6px 0;font-size:12px;min-height:38px}#training-editor:not(:empty){margin-top:24px}[hidden]{display:none!important}
@media(max-width:900px){.staff-training-grid{grid-template-columns:1fr}.staff-editor{padding:16px}.staff-permission-tree{max-height:55dvh}.staff-admin-tabs button{flex:1}.owner-team-layout{grid-template-columns:1fr}.owner-team-roster #staff-roster{max-height:240px;overflow:auto}}
@media(max-width:520px){.staff-limit-grid{grid-template-columns:1fr}.staff-training-toolbar{flex-wrap:wrap}.staff-training-toolbar input{flex-basis:100%}.staff-permission-section>summary>span{float:none;display:block;margin:3px 0 0}.staff-permission-fields{margin-left:10px}.staff-permission-option{font-size:12px}.staff-script-text{padding:12px}}

.support-social-reward{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;padding:11px 14px;margin:0 0 14px;border:1px solid #4b3b5b;border-radius:10px;background:#231c2d;font-size:12px;line-height:1.5}.support-social-reward>span:first-child{display:grid;gap:3px}.support-social-reward small{font-size:10px;color:#bbaaC8}.support-social-reward>span:first-child small{font-size:9px;letter-spacing:.08em}.support-social-status{font-weight:700;border-radius:6px;padding:5px 9px}.support-social-status.eligible{color:#bde8ce;background:#213b31}.support-social-status.claimed{color:#e6c4a2;background:#453426}@media(max-width:540px){.support-social-reward{gap:8px}.support-social-reward>small{flex-basis:100%}.support-social-status{font-size:11px}}

.owner-csv-options{margin:14px 0;padding:14px 16px;border:1px solid var(--line,#42374f);border-radius:12px}
.owner-csv-options summary{cursor:pointer;font-weight:600}
.owner-csv-options .fine-note{line-height:1.5}
.owner-csv-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.owner-csv-options fieldset{border:0;padding:0;margin:12px 0 0;min-width:0}
.owner-csv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:10px 18px;margin-top:10px}
.owner-csv-grid label{display:flex;align-items:flex-start;gap:9px;line-height:1.45;font-size:14px;cursor:pointer}
.owner-csv-grid input[type=checkbox]{width:17px;height:17px;min-width:17px;flex:none;margin:2px 0 0;accent-color:#b18aff}

.staff-permission-dialog{max-width:440px;width:calc(100% - 32px);padding:24px}.staff-permission-dialog p{line-height:1.6}.staff-permission-dialog .primary{margin-top:12px}.staff-permission-locked{opacity:.65;cursor:not-allowed}

.staff-training-standard{padding:18px 20px;border:1px solid #ab8b42;border-left:4px solid #efc66e;border-radius:12px;background:#efc66e0b;color:#f6dfaa;line-height:1.7}.staff-training-standard strong{font-size:15px}.staff-training-standard p{margin:7px 0 0;font-size:12px;color:#d6c6a3}.staff-training-toolbar{flex-wrap:wrap}.staff-training-toolbar select{max-width:100%;min-width:180px}.staff-training-card details>summary{cursor:pointer;color:#f2d495;font-weight:600;line-height:1.6}.staff-training-card .staff-script-text{font-size:12px}.staff-training-card h4{line-height:1.6}.staff-training-toolbar+ .fine-note{margin-top:-12px}
@media(max-width:600px){.staff-training-toolbar select{width:100%}.staff-training-standard{padding:14px}.staff-training-card{padding:16px}}

.owner-win-preview{padding:24px;margin:22px 0;border:1px solid #b9955960;border-radius:14px;background:linear-gradient(120deg,#49302e,#25192e)}.owner-win-preview>strong{display:block;color:#ffe0a2;font-size:23px;overflow-wrap:anywhere;margin:14px 0}.owner-win-preview p{color:#d5c3e2;font-size:15px}.owner-win-preview p>b{color:#ffdb91}

/* /css/shell/experience.css */

:root{--bg:#101017;--panel:#1b1b26;--muted:#a4a4bc;--accent:#d5f56a;--line:#30303e;--rail:224px;--purple:#ba9cff}
body{background:radial-gradient(ellipse at 65% 0,#25203755,transparent 50%),var(--bg);color:#f4f3fa;font-family:Inter,Arial,sans-serif;line-height:1.5}button,input,select,textarea{font:inherit}button{transition:background .18s,transform .18s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button:disabled{cursor:not-allowed}a{color:#d6c4ff}input,select,textarea{color:#f4f3fa;background:#12121c;border:1px solid #454456;border-radius:10px;padding:12px;max-width:100%}textarea{width:100%;resize:vertical;min-height:90px}input::placeholder,textarea::placeholder{color:#9896ae}.primary{background:var(--accent);color:#202514;border-radius:10px;box-shadow:none;padding:13px 20px;font-weight:800;min-height:44px}.secondary{background:#30303e;color:#efedf8;border:1px solid #464453;border-radius:10px;min-height:44px}.eyebrow{color:#b5a4d9;letter-spacing:2px;font-size:11px;font-weight:800}.muted,.fine-note,.modal-note{color:#b0adc2}.fine-note{font-size:13px;line-height:1.7}.back{color:#d0c1ef;min-height:40px}.skip-link{position:fixed;top:-80px;left:240px;z-index:100;padding:12px;background:#d5f56a;color:#111}.skip-link:focus{top:8px}.mobile-only,.mobile-nav{display:none}
.sidebar{width:var(--rail);padding:26px 17px;overflow-y:auto;background:#15151e;border-right:1px solid #292833;z-index:30;display:block}.sidebar .brand{font-size:29px;margin:0 10px 32px}.brand span{color:var(--accent)}.brand small{font-size:7px;letter-spacing:2px;margin-left:0;margin-top:5px;color:#aaa5ba}.nav-label{font-size:9px;letter-spacing:2px;color:#89859a;margin:26px 12px 10px}.nav{color:#b1adbf;border-radius:10px;padding:12px;gap:12px;min-height:46px}.nav.active{color:var(--accent);background:#d5f56a0c;box-shadow:inset 3px 0 var(--accent)}.nav:hover{background:#252432}.nav .icon{font-size:20px}.nav .tag{background:#ba9cff1c;color:#d5c0ff;font-size:8px}.nav-collection{border-bottom:1px solid var(--line);padding:10px 0}.nav-collection summary{cursor:pointer;font-size:12px;color:#b3adc6;padding:8px 12px}.nav-collection summary span{float:right;color:#837b97}.nav-collection .nav{padding-left:40px;min-height:34px;font-size:12px}.sidebar-card{margin-top:30px;padding:18px 14px;background:linear-gradient(140deg,#353040,#22202c);border:1px solid #494052;border-radius:14px}.sidebar-card>span{font-size:8px;letter-spacing:1.3px;color:#ccb4f1}.sidebar-card>b{display:block;font-size:16px;margin-top:10px}.sidebar-card p{font-size:11px;color:#bcb4cb;line-height:1.7}.sidebar-card button{width:100%;font-size:11px;background:#ffffff0c}.side-bottom{position:static;margin:28px 10px 0;font-size:10px;color:#9690a6}.side-bottom b{color:#c5bed4}.topbar{height:80px;margin-left:var(--rail);padding:0 38px;background:#101017e8;border-bottom:1px solid #2b2937;position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}.top-label{font-size:11px;letter-spacing:1.5px;display:flex;align-items:center;gap:24px}.top-label span{margin:0;font-size:12px;color:#9790ac;letter-spacing:0}.balance{background:#252431;border:1px solid #3b384b;border-radius:10px;font-size:15px}.balance select{background:transparent;border:0;color:#d7c4ff;padding:0 3px}.currency-icon{color:var(--accent)}.avatar{background:#3d3255;border-color:#594674;color:#e3d3ff}.account{gap:12px}main{margin-left:var(--rail);width:calc(100% - var(--rail));max-width:none;padding:32px clamp(22px,3.2vw,72px)}main>div,main>section,main>footer{max-width:1740px;margin-left:auto;margin-right:auto}.lobby-heading{display:flex;align-items:end;justify-content:space-between;margin:0 0 24px}.lobby-heading h1{font-size:clamp(22px,2.1vw,36px);line-height:1.2;letter-spacing:-1px;margin:9px 0 0;font-weight:700}.collection-label{font-size:10px;color:#898299;letter-spacing:1.6px;padding-bottom:5px}.feature-grid{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(270px,1fr);gap:20px;margin-bottom:30px}.hero{padding:40px;border-radius:20px;min-height:360px;background:radial-gradient(ellipse at 80% 90%,#653ccf 0,transparent 53%),linear-gradient(110deg,#342555,#251b3b);border:1px solid #5b427a;box-shadow:none;isolation:isolate}.hero-copy{width:60%;z-index:2}.hero-badge{font-size:9px;letter-spacing:2px;color:#d1b8fa;font-weight:700}.hero h2{font-size:clamp(38px,4vw,66px);font-weight:850;line-height:.99;letter-spacing:-2.5px;margin:22px 0}.hero h2 em{color:#d8ff88;font-style:normal}.hero p{font-size:13px;color:#cabedb;line-height:1.7;margin:0 0 25px}.hero .primary{min-width:180px;display:inline-flex;justify-content:space-between;gap:20px}.hero-copy>small{display:block;font-size:10px;color:#b3a3c9;margin-top:13px}.hero-art{position:absolute;right:-2%;top:0;width:48%;height:100%;transform:none;pointer-events:none}.hero-ball{position:absolute;border-radius:50%;display:grid;place-items:center;font-weight:900;box-shadow:inset -15px -20px 24px #0005, inset 8px 10px 18px #ffffff75,15px 25px 40px #0b001d70;letter-spacing:-3px}.ball-one{width:160px;height:160px;right:20%;top:24%;background:radial-gradient(circle at 30% 20%,#efffb2,#a7d951 65%,#487d32);color:#304a12;font-size:83px;transform:rotate(-17deg)}.ball-two{width:110px;height:110px;right:-1%;top:10%;background:radial-gradient(circle at 30% 20%,#e7cdff,#aa70ee 65%,#57348a);color:#4d2078;font-size:46px;transform:rotate(18deg)}.ball-three{width:85px;height:85px;right:8%;bottom:10%;background:radial-gradient(circle at 30% 20%,#ffd7ba,#f19382 65%,#a44572);color:#803d5e;font-size:37px;transform:rotate(12deg)}.orbit{position:absolute;width:320px;height:320px;border:1px solid #ccb1ff22;border-radius:50%;right:2%;top:8%;transform:rotate(20deg);box-shadow:0 0 0 35px #c9b5ff05}.orbit-two{width:240px;height:240px;right:16%;top:19%}.hero-star{position:absolute;font-size:50px;color:#e5caff;text-shadow:0 0 18px #ffffff55}.star-one{top:14%;left:0;transform:rotate(16deg)}.star-two{bottom:12%;left:10%;font-size:25px;color:#d7f879}.art-label{position:absolute;bottom:20px;right:30%;font-size:8px;letter-spacing:4px;color:#c1a5ed;transform:rotate(-15deg)}.feature-aside{display:flex;flex-direction:column;gap:15px}.reward-feature{position:relative;overflow:hidden;flex:1;padding:25px;border:1px solid #3e3b47;background:radial-gradient(circle at 100% 0,#58405e55,transparent 65%),#25212b;border-radius:18px}.reward-feature h3{font-size:28px;line-height:1.1;letter-spacing:-1px;margin:18px 0 12px}.reward-feature p{font-size:11px;color:#bfb4c5;line-height:1.8}.reward-feature .secondary{font-size:12px;background:#ffffff0b;border-color:#57505c;margin-top:8px}.reward-art{position:absolute;right:23px;top:33px;font-size:90px;color:#e8c492;transform:rotate(10deg);text-shadow:0 4px 0 #896b44,0 16px 20px #0007}.support-feature{display:flex;align-items:center;gap:13px;text-align:left;background:#1d2024;border:1px solid #343d3d;border-radius:15px;padding:18px;color:#dbdfdc}.support-feature>span:last-child{margin-left:auto}.support-feature b{font-size:12px}.support-feature small{display:block;font-size:10px;color:#94aaa0;margin-top:4px}.support-orb{display:grid;place-items:center;width:37px;height:37px;border-radius:50%;background:#35433c;color:#c5f6cb;font-size:28px}.discovery-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #302b3d;padding:0 0 25px;margin-bottom:26px}.discovery-bar b{font-size:16px}.discovery-bar small{display:block;color:#9790a8;font-size:12px;margin-top:4px}.game-search{display:flex;align-items:center;gap:12px;background:#1c1b25;border:1px solid #3a3548;border-radius:10px;padding:0 15px;width:300px}.game-search span{font-size:24px;color:#b4a6ce}.game-search input{background:transparent;border:0;padding:12px 0;width:100%;outline-offset:0;font-size:12px}.section-head{margin-bottom:17px}.section-head h2{font-size:23px;letter-spacing:-.7px}.section-head p{font-size:12px;color:#a49ab4}.section-count{font-size:11px;border:1px solid #464050;border-radius:6px;padding:4px 7px;vertical-align:middle;color:#b5a9c9;margin-left:10px}.pill{background:#282432;border-color:#413747;color:#bbaaC5;font-size:9px}.filters{gap:8px;margin-bottom:23px;flex-wrap:wrap}.filter{border:1px solid #39323f;background:#1a1823;border-radius:8px;padding:9px 18px;color:#b2a5c1;min-height:40px}.filter.selected{background:#c5a5ff1c;color:#dfccff;border-color:#8563ab}.games{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.game{background:#1d1a28;border:1px solid #42364f;border-radius:15px;box-shadow:none}.game:hover{transform:translateY(-5px);border-color:#ad85dd;box-shadow:0 12px 28px #0004}.cover{height:clamp(185px,15vw,270px)}.cover:before{width:200px;height:200px;background:#ffffff03;border-color:#ffffff1a;box-shadow:0 0 0 26px #ffffff06,0 0 0 52px #ffffff03;transform:translate(25px,-10px)}.cover.slots{background:radial-gradient(ellipse at 50% 20%,#b86086,#6d284e 80%)}.cover.blackjack{background:radial-gradient(ellipse at 50% 20%,#4c9084,#235350 80%)}.cover.coinflip{background:radial-gradient(ellipse at 50% 20%,#a88945,#5f441e 80%)}.cover.keno{background:radial-gradient(ellipse at 50% 20%,#a17dde,#4f3482 80%)}.cover.dice{background:radial-gradient(ellipse at 50% 20%,#77a2be,#365166 80%)}.cover.wheel{background:radial-gradient(ellipse at 50% 20%,#c08f89,#653e62 80%)}.cover.plinko{background:radial-gradient(ellipse at 50% 20%,#8974ce,#40376e 80%)}.cover .mini-label{font-size:7px;letter-spacing:1.5px;background:#09051630;top:12px;left:12px}.cover-title{font-size:24px;letter-spacing:2px;margin-top:21px}.game-art{transform:rotate(-9deg);font-size:78px}.game-info{padding:15px;min-height:78px}.game-info b{font-size:14px}.game-info small{font-size:10px;color:#a89bb6;margin-top:5px}.play-icon{width:31px;height:31px;background:#c0a0ed22;color:#dfc5ff}.lobby-guides{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.lobby-guides button{background:#1a1721;border:1px solid #3a3043;padding:23px;text-align:left;border-radius:14px;display:flex;flex-direction:column;align-items:start}.lobby-guides span{font-size:9px;letter-spacing:1.5px;color:#ae90c8}.lobby-guides b{font-size:18px;margin:15px 0 0}.lobby-guides p{font-size:12px;color:#a997b5;margin:8px 0 20px}.lobby-guides i{font-size:12px;font-style:normal;color:#d3bbef;margin-top:auto}footer{border-top:1px solid #30293b;padding-top:25px;margin-top:35px;gap:20px;color:#a296ae;font-size:11px}.toast{background:#352b42;color:#f5ecff;border:1px solid #6d5585;z-index:90}
/* Full wallet/support workspaces */
dialog{background:#191620;border:1px solid #51435f;border-radius:19px;padding:28px;box-shadow:0 25px 120px #0009;color:#f7f0ff}dialog::backdrop{background:#07060ebd;backdrop-filter:blur(8px)}dialog.workspace-dialog{width:min(1050px,calc(100vw - 60px));max-height:90dvh;padding:30px}.dialog-top{border-bottom:1px solid #3a2d46;padding-bottom:20px;margin-bottom:24px}.dialog-top h2{font-size:25px;letter-spacing:-.7px}.close{background:#342b40;color:#e9d9fa;min-width:40px;min-height:40px}.field{color:#c9bad8;font-size:13px}.field input,.field select,.field textarea{margin-top:8px;width:100%;background:#100e17;border-color:#43364f}.payment-wide .profile-grid{gap:16px}.payment-hero{margin-bottom:23px}.payment-hero h3{font-size:32px}.payment-hero p{color:#c2b1d0}.balance-cards{gap:16px}.balance-tile{background:#252030;border-color:#52415f;box-shadow:none;padding:25px}.balance-tile.gc{background:radial-gradient(at 100% 0,#68513b55,transparent 70%),#272129}.balance-tile.sc{background:radial-gradient(at 100% 0,#48624955,transparent 70%),#202820}.balance-tile small{font-size:12px}.balance-tile>span:last-child{font-size:12px;color:#c1b6c7}.wallet-heading{margin-bottom:17px}.wallet-actions{margin:22px 0;gap:12px}.wallet-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.wallet-facts article{border:1px solid #42364e;background:#211b2b;border-radius:12px;padding:18px}.wallet-facts small{display:block;color:#b3a3c1;font-size:12px}.wallet-facts strong{display:block;font-size:22px;margin:8px 0}.wallet-facts p{color:#a99ab7;font-size:12px;margin:0}.wallet-line,.cashout-card{background:#241e2d;border-color:#4b3c58}.eligibility{padding:22px;border:1px solid #4b3b59;border-radius:14px;margin:20px 0;background:#1f1927}.eligibility h3{margin:0 0 5px;font-size:18px}.eligibility>p{font-size:12px;color:#b8a7c8;margin-top:0}.eligibility ul{padding:0;margin:17px 0 0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px}.eligibility li{display:flex;gap:10px;font-size:13px;color:#d5c6df}.eligibility li>span:first-child{flex:none;width:21px;height:21px;border-radius:50%;text-align:center;background:#705b362f;color:#e2bf76}.eligibility li.complete>span:first-child{background:#80b37325;color:#bfdf9d}.eligibility li small{display:block;color:#aa96b8;font-size:11px;margin-top:3px}.payment-preview,.deposit-address,.owner-health{background:#211b2b;border-color:#4a3959}.deposit-address code{color:#e2d1f1;line-height:1.7}.deposit-address small{font-size:12px;color:#b9a5c9}.payment-steps{margin:22px 0}.payment-steps b{background:#c4a1fa25;color:#d6b9ff}.payment-row{border-color:#493653;gap:18px}.payment-row small,.payment-row code{font-size:12px;color:#b8a4c7}.payment-status{font-size:11px;background:#79648d20;color:#d1bbdf}.payment-status.open{color:#f3cc86;background:#ad7c2725}.payment-status.waiting{color:#d4baff;background:#9570cc25}.payment-status.resolved{color:#c6eaa7;background:#759e5125}.deposit-progress{padding:20px;border:1px solid #493754;border-radius:13px;background:#211a29;margin:12px 0}.deposit-progress header{display:flex;justify-content:space-between;gap:15px;align-items:center}.deposit-progress header small{display:block;color:#b9a6c9;font-size:12px;margin-top:3px}.deposit-progress ol{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;gap:8px;margin:23px 0 15px}.deposit-progress li{border-top:3px solid #4a3955;padding-top:9px;font-size:11px;color:#ac93bd}.deposit-progress li.done{border-color:#c1e68c;color:#d0eaa8}.deposit-progress li.current{border-color:#c1a0f4;color:#e3caff}.deposit-progress p{font-size:13px;margin-bottom:0;color:#c6b3d5}.deposit-progress details{font-size:11px;color:#a98dbc;margin-top:13px}.deposit-progress code{overflow-wrap:anywhere}.service-notice{border:1px solid #605034;border-radius:10px;padding:14px 17px;background:#9e752314;color:#dbc999;font-size:13px;margin:15px 0}.service-notice.ready{border-color:#405635;background:#52713912;color:#bddb9f}.owner-tabs button.active{background:#b390e321;color:#ddc3ff}.owner-overview article,.owner-payment-record{background:#241d2e;border-color:#4c395a}.owner-overview strong{color:#e5d4f3}.owner-tabs{border-color:#493554}.owner-callout{border-color:#bc9dec;background:#b294d810;color:#c7b1d7}.owner-search input,.owner-search select{min-width:0}.owner-payment-list{gap:16px}.review-facts{color:#dec9ec}.review-facts dd{color:#dec9ec}
/* Support center & message threads */
.support-intro{padding:12px 0 25px;max-width:630px}.support-intro h3{font-size:36px;line-height:1.1;letter-spacing:-1.3px;margin:16px 0}.support-intro p{color:#bca9cc;font-size:14px;line-height:1.8}.response-note{padding:12px 15px;background:#bd9cec12;border:1px solid #59416b;border-radius:10px;color:#d2bddf;font-size:12px;line-height:1.7}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#d9b985;margin-right:6px}.support-options{display:grid;grid-template-columns:1fr 1fr;gap:15px}.support-option{display:flex;flex-direction:column;align-items:start;gap:9px;padding:22px;border:1px solid #524061;border-radius:14px;background:linear-gradient(140deg,#382944,#21192a);text-align:left}.support-option>span{color:#d1b0f2;font-size:28px}.support-option b{font-size:17px}.support-option small{font-size:12px;color:#b9a4c9}.help-faq{border:1px solid #483451;border-radius:12px;padding:18px;margin:22px 0 30px;font-size:13px;color:#b9a5c9}.help-faq summary{cursor:pointer;color:#e0cdef;font-weight:700}.help-faq h4{margin:21px 0 6px;color:#e0cdef}.help-faq p{margin:0;line-height:1.8}.ticket-list{display:grid;gap:10px}.ticket-card{display:flex;align-items:center;gap:15px;text-align:left;background:#241c2d;border:1px solid #493253;border-radius:12px;padding:17px;width:100%}.ticket-card b{font-size:14px;overflow-wrap:anywhere}.ticket-card small{display:block;font-size:11px;color:#b49cc6;margin-top:4px}.ticket-symbol{color:#d1afea;font-size:24px}.ticket-right{margin-left:auto;flex-shrink:0}.conversation-toolbar,.conversation-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.conversation-info{font-size:11px;color:#b59bc6;overflow-wrap:anywhere}.conversation-info p{font-size:12px}.support-messages{max-height:42dvh;min-height:170px;overflow:auto;padding:16px 4px;display:flex;flex-direction:column;gap:15px;scrollbar-color:#624b72 transparent}.chat-message{max-width:85%;padding:15px 18px;background:#302239;border:1px solid #503659;border-radius:15px 15px 15px 3px;align-self:flex-start}.chat-message.player{align-self:flex-end;background:#363046;border-color:#5e4b72;border-radius:15px 15px 3px 15px}.chat-message.system{align-self:center;background:transparent;border:0;color:#b59cbe;text-align:center;font-size:12px}.chat-message>div{display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:11px;color:#d3b5e9}.chat-message time{font-size:10px;color:#ac92bf}.chat-message p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.7;margin:7px 0 0}.support-composer{border-top:1px solid #513a5d;padding-top:18px}.support-composer>label{display:block;font-size:12px;color:#c9aeda;margin-bottom:8px}.support-composer textarea{background:#130e1b;border-color:#533c63}.composer-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:12px}.composer-actions .fine-note{font-size:11px}.conversation-actions{border-top:1px solid #47334f;padding-top:18px;margin-top:22px;font-size:12px}.conversation-actions label{color:#c9afdb}.conversation-actions select{margin-left:10px}
/* Game room */
.game-layout{background:#191722;border:1px solid #3c3346;border-radius:18px;box-shadow:none;grid-template-columns:280px minmax(0,1fr);overflow:hidden}.bet-panel{background:#211d2b;border:0;border-right:1px solid #3c3346;padding:23px}.bet-panel label{color:#c6b7d6}.bet-input{background:#13101c;border-color:#493c57;border-radius:10px;min-width:0}.bet-input input{min-width:0;background:transparent}.bet-input button{background:#3b3049;border-radius:6px;min-width:36px;color:#d7baf2}.bet-panel select{background:#16121f;border-color:#4f3e61}.mode-switch{border-color:#513b60}.demo-badge{color:#c7de9f}.play-surface{background:radial-gradient(ellipse at 50% 30%,#302743,#15111e 80%);min-width:0}.game-layout .result-strip{background:#110e19;border-color:#483359;color:#d5bddf}.game-layout .keno-stage{background:transparent}.game-layout .keno-number{background:#3b2d4f}.game-layout .number.picked{background:#d5f56a;color:#263018}.recommended-games{margin-top:28px}.round-meta{color:#aa94bd}.mobile-bet-dock{display:none}.terms-page{background:#110e18}.terms-page main{margin:35px auto;width:calc(100% - 40px);max-width:920px;padding:36px;border:1px solid #48374f;border-radius:18px;background:#1c1625}.terms-document h1{font-size:42px;color:#f3e6ff}.terms-document h2{font-size:21px;margin-top:30px;color:#dac2ee}.terms-document p,.terms-document li{font-size:14px;line-height:1.85;color:#c4b0d0}.terms-summary{padding:20px;background:#b391d512;border:1px solid #624570;border-radius:12px}.terms-toc{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;margin:25px 0}
@media(min-width:1900px){.games{grid-template-columns:repeat(7,minmax(0,1fr))}.cover{height:230px}.cover-title{font-size:20px}.game-info small{font-size:9px}.feature-grid{grid-template-columns:2.3fr 1fr}.hero{min-height:410px}.hero-art{right:7%}.hero h2{font-size:74px}.ball-one{width:200px;height:200px;font-size:105px}.ball-two{width:135px;height:135px;font-size:58px}.ball-three{width:110px;height:110px;font-size:48px}.hero-copy{padding-left:15px}}
@media(max-width:1100px){:root{--rail:190px}.sidebar{padding:24px 12px}.sidebar .brand{font-size:25px}.topbar{padding:0 24px}.top-label span{display:none}main{padding:26px 24px}.feature-grid{grid-template-columns:1.6fr 1fr;gap:14px}.hero{padding:28px;min-height:330px}.hero h2{font-size:46px}.hero-art{right:-12%;width:55%;opacity:.85}.hero-copy{width:74%}.reward-feature{padding:20px}.reward-feature h3{font-size:24px}.reward-art{right:12px;font-size:65px;opacity:.7}.games{gap:12px}.cover{height:180px}.game-info{padding:11px}.game-info small{display:none}.game-layout{grid-template-columns:240px minmax(0,1fr)}.bet-panel{padding:17px}.collection-label{display:none}.lobby-guides{gap:12px}.lobby-guides button{padding:18px}.lobby-guides b{font-size:16px}}
@media(max-width:760px){:root{--rail:0px}.sidebar{display:none;width:260px;padding:25px 18px;max-height:100dvh;box-shadow:0 0 0 100vmax #05030b99}.sidebar.open{display:block}.topbar{margin-left:0;height:66px;padding:0 14px;gap:8px}.top-label{display:none}.mobile-menu{display:block;background:transparent;min-width:40px;min-height:44px;color:#d4bfe8}.account{gap:8px;margin-left:auto}.balance{font-size:13px;padding:9px}.topbar .primary{font-size:12px;min-height:40px;padding:9px 14px}.avatar{width:34px;height:34px;font-size:12px}main{width:100%;margin-left:0;padding:22px 16px 92px}.lobby-heading{margin-bottom:20px}.lobby-heading h1{font-size:25px;line-height:1.22}.lobby-heading .eyebrow{font-size:9px}.feature-grid{grid-template-columns:1fr;gap:14px;margin-bottom:23px}.hero{min-height:305px;border-radius:17px;padding:27px}.hero-copy{width:70%}.hero h2{font-size:46px;letter-spacing:-1.7px;margin:20px 0}.hero-badge{font-size:7px;letter-spacing:1.4px}.hero p{font-size:12px;max-width:210px}.hero-art{right:-8%;width:53%;opacity:.85;top:0}.ball-one{width:132px;height:132px;top:30%;right:17%;font-size:68px}.ball-two{width:82px;height:82px;font-size:33px;right:3%;top:8%}.ball-three{width:65px;height:65px;font-size:28px;bottom:8%;right:12%}.hero-star{font-size:28px}.orbit{width:220px;height:220px;top:20%;right:0}.orbit-two{width:165px;height:165px;top:29%}.art-label{display:none}.hero .primary{padding:11px 16px;min-width:158px;font-size:12px}.feature-aside{display:grid;grid-template-columns:1fr;gap:12px}.reward-feature{padding:20px;min-height:150px}.reward-feature h3{font-size:23px;margin:10px 0}.reward-feature h3 br{display:none}.reward-feature p{margin:6px 0}.reward-feature .secondary{margin:8px 0 0;font-size:11px}.reward-art{right:25px;top:30px;font-size:100px}.support-feature{display:none}.discovery-bar{gap:16px;padding-bottom:20px;margin-bottom:23px}.discovery-bar>span{display:none}.game-search{width:100%}.section-head h2{font-size:21px}.section-head p{font-size:11px}.section-head .pill{display:none}.filters{gap:6px;flex-wrap:nowrap;overflow:auto;padding-bottom:4px}.filter{white-space:nowrap;font-size:11px;padding:8px 13px}.games{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.cover{height:190px}.cover-title{font-size:20px}.game-info{padding:12px;min-height:57px}.game-info b{font-size:13px}.game-art{font-size:68px}.lobby-guides{grid-template-columns:1fr;gap:12px;margin-top:26px}.lobby-guides button{padding:20px}.lobby-guides p{margin-bottom:12px}.lobby-guides b{font-size:20px}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:25;background:#1a1423f5;border-top:1px solid #4a365c;padding:8px 6px calc(8px + env(safe-area-inset-bottom));backdrop-filter:blur(18px)}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:3px;background:none;color:#b7a0c7;font-size:9px;min-height:42px}.mobile-nav button span{font-size:21px}.mobile-nav button.active{color:#d5f56a}body[data-page="game"] .mobile-nav{display:none}footer{font-size:10px;flex-direction:column;gap:7px;margin-top:28px}dialog{width:calc(100% - 24px);padding:20px;max-height:92dvh}dialog.workspace-dialog{width:100%;height:100dvh;max-height:100dvh;max-width:100%;margin:0;border:0;border-radius:0;padding:20px 17px calc(28px + env(safe-area-inset-bottom));overflow-y:auto}.dialog-top{position:sticky;top:-20px;background:#191620;z-index:3;padding:15px 0;margin-top:-10px}.dialog-top h2{font-size:23px}.balance-cards{grid-template-columns:1fr 1fr;gap:10px}.balance-tile{padding:17px;min-height:150px}.balance-tile strong{font-size:27px}.balance-tile>span:last-child{font-size:10px}.wallet-facts{grid-template-columns:1fr;gap:8px}.wallet-facts article{padding:15px}.wallet-facts strong{font-size:20px;margin:3px 0}.wallet-facts p{font-size:11px}.wallet-actions{flex-wrap:wrap}.wallet-actions button{flex:1;font-size:12px;padding:12px}.eligibility{padding:17px}.eligibility ul{grid-template-columns:1fr;gap:12px}.payment-hero h3{font-size:26px}.deposit-progress{padding:16px}.deposit-progress header{align-items:start}.deposit-progress header strong{font-size:13px}.deposit-progress ol{gap:5px}.deposit-progress li{font-size:9px}.deposit-progress header small{font-size:10px}.support-intro h3{font-size:30px}.support-options{grid-template-columns:1fr}.support-option{padding:18px}.ticket-card{gap:10px;padding:14px}.ticket-symbol{display:none}.ticket-card b{font-size:12px}.ticket-right .payment-status{font-size:9px}.ticket-card small{font-size:10px}.support-messages{max-height:45dvh}.chat-message{max-width:92%;padding:12px}.chat-message p{font-size:13px}.chat-message>div{gap:12px}.composer-actions{align-items:end;gap:12px}.composer-actions .primary{font-size:12px;white-space:nowrap}.conversation-actions{align-items:start}.conversation-actions label{display:flex;flex-direction:column;gap:8px}.conversation-actions select{margin:0}.game-layout{display:flex;flex-direction:column;border-radius:14px}.bet-panel{border:0;border-bottom:1px solid #463351;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px;order:0}.bet-panel .mode-switch,.bet-panel .session-note,.bet-panel .bet-note{display:none}.bet-panel>#keno-tools{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:center}.bet-panel>#keno-tools>label{display:none}.bet-panel>#keno-tools .random-controls{margin:0}.bet-panel>#keno-tools #clear-picks{margin:0}.bet-panel label{font-size:11px;margin:0 0 5px}.bet-panel select{padding:9px;font-size:12px}.play-surface{order:1;padding:8px;min-height:0}.keno-stage{padding:10px!important}.keno-board{gap:5px!important}.board-top{font-size:9px}.keno-stage .number{min-height:32px;font-size:12px;padding:8px 0}.original-stage{min-height:290px}.game-layout .blackjack-stage{padding:12px}.game-layout .cards{gap:5px}.game-layout .poker-card{width:55px;height:78px}.game-layout .card-center{font-size:29px}.game-layout .result-strip{font-size:12px;padding:12px}.mobile-bet-dock:not([hidden]){display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:10px;position:fixed;bottom:0;left:0;right:0;z-index:26;background:#201829f5;border-top:1px solid #694f7a;padding:12px 16px calc(12px + env(safe-area-inset-bottom));box-shadow:0 -12px 35px #0005;backdrop-filter:blur(16px)}.dock-amount label{display:block;font-size:10px;color:#c9add9;margin:0 0 5px}.dock-amount .bet-input{display:flex;height:43px;margin:0;padding:4px;border:1px solid #5e4370}.dock-amount input{width:100%;padding:6px;font-size:14px}.dock-amount #limits{display:none}.dock-play{display:flex;align-items:end}.dock-play #play{width:100%;margin:0;min-height:43px;font-size:14px}.dock-actions{grid-column:1/-1}.dock-actions:has(#hand-actions:empty){display:none}.dock-actions #hand-actions{display:flex;gap:7px;margin:0;flex-wrap:wrap}.dock-actions button{flex:1;min-width:64px;min-height:43px;padding:9px;font-size:12px}body[data-page="game"] main{padding-bottom:240px}.game-layout .win-overlay{z-index:10}.recommended-games{margin-top:24px}.toast{bottom:95px;max-width:calc(100% - 30px);font-size:12px}body[data-page="game"] .toast{bottom:185px}.terms-page main{padding:22px;margin:20px auto;width:calc(100% - 24px)}.terms-document h1{font-size:32px}.terms-document p,.terms-document li{font-size:13px}.skip-link{left:10px}.mobile-only{display:block}}
@media(max-width:380px){.topbar .primary{padding:9px}.avatar{display:none}.hero{padding:23px}.hero-art{right:-16%;opacity:.65}.hero-copy{width:85%}.cover{height:165px}.cover-title{font-size:18px}.cover .mini-label{font-size:6px}.hero h2{font-size:42px}.game-info{padding:10px}.play-icon{width:25px;height:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
[hidden]{display:none!important}
/* Keep artwork inside short game tiles, including mobile. */
.cover.wheel .game-art{font-size:88px;line-height:1}.cover.dice .game-art{font-size:92px;line-height:1}
@media(max-width:760px){.hero-copy{width:85%}.hero h2{font-size:40px;max-width:260px}.hero-art{opacity:.55;right:-12%}.hero p{max-width:220px}.hero-copy>small{font-size:9px}.bet-panel:not(:has(> :not([hidden]):not(.mode-switch):not(.session-note):not(.bet-note))){display:none}.toast{width:max-content;max-width:calc(100% - 32px)}.cover.wheel .game-art{font-size:78px}.cover.dice .game-art{font-size:82px}}
@media(max-width:760px){#game-page[data-game="blackjack"] .dock-actions .hand-actions{min-height:0}.game-layout .blackjack-stage{min-height:360px}.game-layout .blackjack-stage .player-hands{min-height:135px}}

/* Keep a dialog or mobile drawer from scrolling the page behind it. */
body:has(dialog[open]) { overflow: hidden; }
@media (max-width: 760px) {
    body:has(.sidebar.open) { overflow: hidden; }
    .sidebar, dialog { overscroll-behavior-y: contain; }
    dialog :is(input, select, textarea) { font-size: 16px; }
    .notification-button, .avatar, #menu { min-width: 44px; min-height: 44px; }
}

/* Public AMOE information shared by the lobby and Terms. */
.amoe-callout { display:flex; align-items:center; gap:24px; padding:24px; margin:28px 0; border:1px solid #51415f; border-radius:14px; background:#211a2c; }
.amoe-callout > div { flex:1; min-width:0; }
.amoe-callout h2 { margin:8px 0; font-size:22px; color:#eee5f8; }
.amoe-callout p { margin:8px 0 12px; font-size:13px; line-height:1.7; color:#c4b0d0; }
.amoe-callout a:not(.primary) { font-size:12px; }
.amoe-link { display:inline-flex; align-items:center; justify-content:center; text-align:center; text-decoration:none; min-height:44px; flex-shrink:0; }
.terms-document { overflow-wrap:anywhere; }
.terms-document h2[id] { scroll-margin-top:24px; }
.terms-document .amoe-callout h2 { margin:8px 0; }
.terms-document .request-statement { display:block; padding:12px 16px; border-left:3px solid #d5f56a; background:#ffffff06; color:#eee5f8; }
@media(max-width:760px) {
    .amoe-callout { align-items:stretch; flex-direction:column; gap:16px; padding:18px; }
    .amoe-link { width:100%; }
    .terms-toc a { display:inline-flex; align-items:center; min-height:44px; }
}

.owner-balance-panel { max-width:820px; margin:0 auto; }
.owner-balance-panel > p { color:#bfb0ce; line-height:1.7; }
.balance-edit-fields { border:0; padding:0; margin:0; min-width:0; }
.balance-edit-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.balance-edit-grid .field { min-width:0; }
.balance-edit-grid .field small { display:block; margin-top:6px; color:#b7a0c7; font-weight:400; }
.owner-balance-panel input { min-width:0; }
@media(max-width:760px) { .balance-edit-grid { grid-template-columns:1fr; gap:8px; } .owner-balance-panel button { min-height:44px; } }

.coin-invite-promos{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0}.coin-invite-promos article,.coin-promo-panel{padding:24px;border:1px solid #75618b66;border-radius:18px;background:radial-gradient(ellipse at top right,#77619f33,transparent 70%),#211c2d}.coin-invite-promos article:first-child{border-color:#c9e97855;background:radial-gradient(ellipse at top right,#a7c65c22,transparent 70%),#211f2b}.coin-invite-promos h3,.coin-promo-panel h3{font-size:23px;margin:10px 0;color:#f3ecff}.coin-invite-promos p,.coin-promo-panel p{color:#beb4cb;font-size:13px;line-height:1.7}.coin-invite-promos button{margin-top:9px}.invite-total{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0;color:#d6f76f}.coin-promo-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.invite-link{width:100%;font-size:13px}.coin-promo-panel .fine-note{font-size:11px}#referral-field small{color:#aaa0b5;line-height:1.5}@media(max-width:760px){.coin-invite-promos{grid-template-columns:1fr;gap:12px}.coin-invite-promos article{padding:20px}.coin-invite-promos h3{font-size:21px}}

/* Saved responses use the existing conversation composer without replacing drafts. */
.support-macro-picker{margin:12px 0 18px;padding:16px;border:1px solid var(--line,#493b60);border-radius:12px;background:var(--surface,#171c31)}
.support-macro-picker header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.support-macro-picker header strong{font-size:14px}.support-macro-picker .fine-note{margin:8px 0 12px}.support-macro-picker input{margin-bottom:10px;width:100%}
.support-macro-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:8px;max-height:210px;overflow:auto}.support-macro-send{text-align:left;display:flex;flex-direction:column;gap:6px;padding:12px;min-width:0}.support-macro-send strong{font-size:12px}.support-macro-send span,.support-macro-catalog span{font-size:11px;font-weight:400;white-space:pre-wrap;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.support-macro-send small{font-size:10px;color:var(--accent,#72eed2)}
.support-macro-manager{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px}.support-macro-manager>section{min-width:0}.support-macro-catalog{display:grid;gap:8px;margin-top:14px;max-height:580px;overflow:auto}.support-macro-catalog button{display:grid;text-align:left;gap:6px;padding:14px;min-width:0}.support-macro-catalog small{font-size:10px;opacity:.75}.support-macro-manager textarea{white-space:pre-wrap}.support-macro-manager .field{margin-bottom:16px}
@media(max-width:760px){.support-macro-manager{grid-template-columns:1fr}.support-macro-catalog{max-height:250px}.support-macro-picker{padding:12px}.support-macro-buttons{max-height:180px}}

/* /css/games/haunthoard.css */
#haunthoard-stage{width:100%;max-width:1280px;margin:auto;background:#100d09}
.haunthoard-canvas-wrap{width:100%;height:clamp(480px,calc(100dvh - 150px),820px);position:relative}
#haunthoard-frame{display:block;position:absolute;inset:0;width:100%;height:100%;border:0;background:#100d09}
#haunthoard-info{max-width:720px;margin:16px auto}
#game-page[data-game="haunthoard"] .bet-panel{display:none}
#game-page[data-game="haunthoard"] .game-layout{grid-template-columns:minmax(0,1fr)}
#game-page[data-game="haunthoard"] .play-surface{padding:0}
#game-page[data-game="haunthoard"] #mobile-bet-dock{display:none}
.haunthoard-cover img{width:100%;height:100%;object-fit:contain;background:#573a17}
.haunthoard-cover strong{position:absolute;inset:auto 0 15px;text-align:center;color:#ffe19a;text-shadow:0 2px 4px #000;font-size:24px}
@media(max-width:760px){#haunthoard-stage{max-width:100%}.haunthoard-canvas-wrap{height:auto;aspect-ratio:390/746}}

#haunthoard-paytable table{width:100%;text-align:center;border-collapse:collapse}#haunthoard-paytable img{width:48px;height:48px;object-fit:contain}#haunthoard-paytable td,#haunthoard-paytable th{padding:6px;border-bottom:1px solid #ffffff20}

body:has(#game-page[data-game="haunthoard"]:not([hidden])) #page-loader{background:linear-gradient(90deg,#10091a33,#10091abb),url(/assets/haunt/gates.cc31020e1ec8.webp) center/cover;backdrop-filter:none}
body:has(#game-page[data-game="haunthoard"]:not([hidden])) #page-loader .page-loader-mark{width:130px;height:130px;background:url(/assets/haunt/symbols.e1ab06be2e8b.webp) 0% 100%/404.516% 366.667%;filter:drop-shadow(0 0 25px #82e8bc77);animation:haunt-loading 2s ease-in-out infinite alternate}
body:has(#game-page[data-game="haunthoard"]:not([hidden])) #page-loader .page-loader-mark picture,body:has(#game-page[data-game="haunthoard"]:not([hidden])) #page-loader .page-loader-mark:before,body:has(#game-page[data-game="haunthoard"]:not([hidden])) #page-loader .page-loader-mark:after{display:none}
body:has(#game-page[data-game="haunthoard"]:not([hidden])) #page-loader p{color:#ffe0a6;font:15px Georgia,serif;letter-spacing:1px;text-shadow:0 2px 5px #000}
@keyframes haunt-loading{to{transform:translateY(-8px);filter:drop-shadow(0 0 35px #82e8bcbb)}}
@media(prefers-reduced-motion:reduce){body:has(#game-page[data-game="haunthoard"]:not([hidden])) #page-loader .page-loader-mark{animation:none}}

#lobby .haunthoard-cover{position:relative;overflow:hidden;background:#180d28}
#lobby .haunthoard-cover img{position:absolute;left:0;top:0;width:100%;height:160%;object-fit:cover;object-position:center top}
#lobby .haunthoard-cover:after{content:'';position:absolute;inset:42% 0 0;background:linear-gradient(transparent,#120823aa 42%,#120823f2);pointer-events:none}
#lobby .haunthoard-cover strong{z-index:1;inset:auto 6px 15px;font:bold clamp(21px,2.1vw,31px)/.95 Georgia,serif;letter-spacing:1px;color:#ffdf8b;text-shadow:0 2px #653b1d,0 4px 8px #000}

/* /css/games/bonanza.css */
/* Nexttal Bonanza: a separate jewel vault, with no shared Lucky Slots cabinet styles. */
.bonanza-cover{background:linear-gradient(0deg,#071a1dd9,transparent 75%),url('/assets/bonanza/vault.14b91d51548b.webp') center/cover!important;isolation:isolate}
.bonanza-cover::before{display:none}.bonanza-cover .bonanza-cover-symbol{position:absolute;width:155px;height:155px;left:50%;top:8%;transform:translateX(-50%) rotate(-8deg);filter:drop-shadow(0 12px 20px #0008)}
.bonanza-cover .cover-title{position:absolute;bottom:33px;left:0;right:0;width:100%;margin:0;transform:none;text-align:center;font-family:Georgia,serif;letter-spacing:1px;color:#ffdf9c;text-shadow:0 3px 4px #000;font-size:clamp(18px,2.3vw,28px)}
.bonanza-cover .bonanza-cover-caption{position:absolute;bottom:14px;width:100%;text-align:center;font-size:8px;letter-spacing:2px;color:#e1d5ac}
#game-page[data-game="bonanza"] .game-layout{grid-template-columns:250px minmax(0,1fr);border-color:#9e814747;background:#0a1517}
#game-page[data-game="bonanza"] .bet-panel{background:linear-gradient(170deg,#1c2525,#151c20);border-color:#9e81472b}
#game-page[data-game="bonanza"] .play-surface{background:#09181c;min-width:0;padding:0}
#game-page[data-game="bonanza"] #play{background:linear-gradient(120deg,#f8e1a7,#d6a95b);color:#392811;box-shadow:0 5px 25px #dba85825;border:1px solid #ffe6b2;font-weight:800}
#bonanza-options{margin-top:19px}.bonanza-turbo-label{display:flex!important;align-items:center;justify-content:space-between;gap:15px;color:#e5d2a6!important}
#bonanza-turbo{appearance:none;width:40px!important;height:23px;border:1px solid #716344;border-radius:20px;background:#0c1519;padding:0!important;cursor:pointer;position:relative;flex:none}
#bonanza-turbo::before{content:'';position:absolute;left:3px;top:3px;width:15px;height:15px;border-radius:50%;background:#9b968b;transition:transform .16s,background .16s}
#bonanza-turbo:checked{background:#a8853e33;border-color:#d8b973}#bonanza-turbo:checked::before{transform:translateX(17px);background:#efd296}
#bonanza-stage{padding:24px clamp(10px,2.6vw,34px) 18px;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#07171955,#07191da8),url('/assets/bonanza/vault.14b91d51548b.webp') center/cover;color:#f2e8d2;text-align:center}
#bonanza-stage[hidden]{display:none}.bonanza-brand{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:2.5px;color:#cfbe94;margin-bottom:6px}
.bonanza-brand b{border:1px solid #d8ba754d;border-radius:20px;padding:6px 10px;letter-spacing:.7px;font-size:9px;color:#f2d99d;background:#162523a8;font-weight:500}
.bonanza-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(29px,4.3vw,57px);font-weight:700;line-height:1.05;letter-spacing:1.5px;margin:13px 0 4px;text-shadow:0 3px 1px #4b3117,0 6px 25px #000;color:#f7d899}
.bonanza-title small{display:block;font-family:inherit;font-size:10px;font-weight:400;letter-spacing:7px;color:#f3e5c4;margin-bottom:5px}
#bonanza-phase{font-size:10px;letter-spacing:.7px;color:#c1d6d0;min-height:15px;margin:10px 0 18px}
.bonanza-frame{position:relative;padding:9px;max-width:820px;margin:auto;border:1px solid #ebcb8b;border-radius:12px;background:linear-gradient(135deg,#bd955d,#ead7a0 12%,#725323 24%,#443c25 50%,#d9b975 78%,#725323);box-shadow:0 10px 35px #0008,0 0 0 3px #70572b6b,inset 0 1px #ffe9b0;overflow:hidden}
.bonanza-frame::after{content:'';position:absolute;inset:4px;border:1px solid #edcf863b;border-radius:8px;pointer-events:none}
#bonanza-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;background:#041416;border:1px solid #090f0f;border-radius:5px;overflow:hidden;padding:3px}
.bonanza-cell{min-width:0;aspect-ratio:1.18;display:grid;place-items:center;position:relative;background:linear-gradient(135deg,#14383c,#0d262a);box-shadow:inset 0 0 20px #01111366;overflow:hidden}
.bonanza-cell:nth-child(12n+7),.bonanza-cell:nth-child(12n+8),.bonanza-cell:nth-child(12n+9),.bonanza-cell:nth-child(12n+10),.bonanza-cell:nth-child(12n+11),.bonanza-cell:nth-child(12n+12){background:linear-gradient(135deg,#0d2a30,#0a2025)}
.bonanza-symbol{display:block;width:100%;height:100%;aspect-ratio:1;background-image:url('/assets/bonanza/symbols.fb8bc76c4812.webp');background-size:300% 300%;background-repeat:no-repeat;filter:drop-shadow(0 4px 3px #0005)}
.bonanza-cell .bonanza-symbol{width:80%;height:auto;max-height:none;aspect-ratio:1;translate:var(--symbol-x,0%) var(--symbol-y,0%)}
/* Optical centers measured from each jewel's opaque artwork, not atlas cell edges. */
.bs-0{--symbol-x:-2.9%;--symbol-y:-3.4%}.bs-1{--symbol-y:-4.1%}.bs-2{--symbol-x:2.2%;--symbol-y:-3.8%}
.bs-3{--symbol-x:-2.2%;--symbol-y:2%}.bs-4{--symbol-y:1.4%}.bs-5{--symbol-x:2.6%;--symbol-y:1.1%}
.bs-6{--symbol-x:-3.7%;--symbol-y:9.3%}.bs-7{--symbol-x:-.1%;--symbol-y:9%}.bs-8{--symbol-x:2.5%;--symbol-y:9.2%}
.bs-0{background-position:0 0}.bs-1{background-position:50% 0}.bs-2{background-position:100% 0}.bs-3{background-position:0 50%}.bs-4{background-position:50% 50%}.bs-5{background-position:100% 50%}.bs-6{background-position:0 100%}.bs-7{background-position:50% 100%}.bs-8{background-position:100% 100%}
.bonanza-cell.is-win{background:radial-gradient(ellipse,#58633b,#1b3f30);box-shadow:inset 0 0 0 1px #f3d184,inset 0 0 20px #e9bb4c33}
.bonanza-cell.is-win .bonanza-symbol{filter:drop-shadow(0 0 9px #fbd26d99)}
.bonanza-cell.is-scatter{background:radial-gradient(ellipse,#65592c,#163b38)}.bonanza-cell.is-wild{background:radial-gradient(ellipse,#275947,#132f34)}
.is-spinning .bonanza-cell .bonanza-symbol{animation:bonanza-spin .35s ease-in-out infinite alternate;opacity:.6}
@keyframes bonanza-spin{from{transform:translateY(-8%);filter:blur(2px)}to{transform:translateY(8%);filter:blur(5px)}}
.bonanza-meters{display:grid;grid-template-columns:1.3fr 1fr 1fr;max-width:820px;margin:14px auto 0;background:#071b20de;border:1px solid #d4b36a33;border-radius:8px;overflow:hidden}
.bonanza-meters>div{padding:11px 6px;border-right:1px solid #d4b36a22}.bonanza-meters>div:last-child{border:0}
.bonanza-meters small{display:block;color:#abbaa9;font-size:8px;letter-spacing:1.2px;margin-bottom:5px}.bonanza-meters strong{color:#f3d18b;font-size:clamp(12px,1.8vw,20px);font-variant-numeric:tabular-nums;font-weight:600}
#bonanza-message{font-size:11px;color:#e0d4b5;min-height:16px;margin:13px 0 0}
.bonanza-feature{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#051418ec;backdrop-filter:blur(8px);border-radius:8px;text-shadow:0 3px 16px #000}
.bonanza-feature[hidden]{display:none}.bonanza-feature .bonanza-symbol{width:120px;height:120px}.bonanza-feature small{font-size:9px;letter-spacing:4px;color:#b8d3c7}.bonanza-feature strong{font-family:Georgia,serif;font-size:clamp(24px,3.5vw,45px);color:#f5d392;margin:14px 0 6px}.bonanza-feature p{color:#d7e1d5;font-size:12px}
.is-bonus .bonanza-frame{box-shadow:0 0 40px #f4c96038,0 0 0 3px #ae883d99}.is-bonus .bonanza-title{color:#ffe6a9}
.is-anticipating .bonanza-frame{box-shadow:0 0 32px #f4c96080,0 0 0 3px #edc97699}
.is-anticipating .bonanza-cell.is-scatter{box-shadow:inset 0 0 0 1px #f4d583,inset 0 0 25px #ffce5155}
.bonanza-help{padding:14px 18px;background:#0d1b20;border-top:1px solid #c5a26030;color:#bbc9c1;font-size:11px}.bonanza-help summary{cursor:pointer;color:#e6d0a5;font-size:11px;display:flex;justify-content:space-between;gap:10px}.bonanza-help summary span{font-size:9px;color:#9db4ab}.bonanza-help p{line-height:1.7;margin:15px 0 0}
#bonanza-paytable{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:13px}#bonanza-paytable>div{display:flex;align-items:center;flex-direction:column;gap:5px;padding:5px;background:#142b2e;border-radius:6px}#bonanza-paytable .bonanza-symbol{width:48px;height:48px}#bonanza-paytable b{font-size:10px;color:#e7d6ae}
#bonanza-info[hidden]{display:none}
#game-page[data-game="bonanza"] .result-strip{background:#0c1b20;border-top:1px solid #a0844933;font-size:12px;color:#ddd1b6;padding:14px}
@media(max-width:1000px){#game-page[data-game="bonanza"] .game-layout{grid-template-columns:210px minmax(0,1fr)}#bonanza-stage{padding:18px 12px}.bonanza-frame{padding:6px}.bonanza-title{font-size:37px}}
@media(max-width:760px){#game-page[data-game="bonanza"] .game-layout{display:flex;flex-direction:column}#game-page[data-game="bonanza"] .bet-panel{width:100%;padding:10px 15px}#game-page[data-game="bonanza"] .play-surface{width:100%}#bonanza-options{margin:0}.bonanza-turbo-label{max-width:180px;margin:0!important}#bonanza-options .input-hint{display:none}#bonanza-stage{padding:15px 9px}.bonanza-title{font-size:36px}.bonanza-brand{font-size:7px}.bonanza-brand b{font-size:8px}.bonanza-frame{padding:5px}#bonanza-grid{gap:1px;padding:1px}.bonanza-cell{aspect-ratio:1}.bonanza-cell .bonanza-symbol{width:90%}.bonanza-meters{margin-top:10px}.bonanza-meters small{font-size:7px}.bonanza-meters strong{font-size:13px}.bonanza-feature .bonanza-symbol{width:90px;height:90px}.bonanza-help{padding:12px 10px}#bonanza-paytable .bonanza-symbol{width:36px;height:36px}#bonanza-paytable b{font-size:8px}}
@media(prefers-reduced-motion:reduce){.is-spinning .bonanza-cell .bonanza-symbol{animation:none;filter:none}.bonanza-turbo-label input::before{transition:none}}
.reduce-motion .is-spinning .bonanza-cell .bonanza-symbol{animation:none;filter:none}
#game-page[data-game="bonanza"] .win-card{background:radial-gradient(ellipse at top,#375346,#091b20 70%);border:1px solid #e7c375;box-shadow:0 0 70px #dfb55644,0 18px 65px #000b;color:#ffe1a0}
#game-page[data-game="bonanza"] .win-card strong{color:#ffe1a0;text-shadow:0 3px 0 #684216}
#game-page[data-game="bonanza"] .win-caption,#game-page[data-game="bonanza"] .win-spark{color:#eacb87}

/* /css/games/jester.css */
/* Original vector art, velvet curtains and a traditional five-reel cabinet. */
.jester-cover{isolation:isolate;background:radial-gradient(ellipse at 50% 30%,#634075,#29132d 53%,#110d18)!important;border-color:#a07e4b!important}
.jester-cover::before{content:''!important;position:absolute;inset:8px;border:1px solid #cfab6055;border-radius:40% 40% 4px 4px;background:none!important;transform:none!important}
.jester-cover>img{position:absolute;width:52%;height:64%;object-fit:contain;left:24%;top:5%;filter:drop-shadow(0 8px 12px #0009)}
.jester-cover .mini-label{color:#f5d895!important;font-size:8px!important;letter-spacing:1px!important;z-index:2}
.jester-cover .cover-title{position:absolute;left:0;right:0;bottom:30px;margin:0;transform:none;color:#f6dfab;font:700 clamp(17px,2vw,25px)/.96 Georgia,serif;letter-spacing:2px;text-align:center;text-shadow:0 2px 4px #000}
.jester-cover-caption{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:7px;letter-spacing:1.6px;color:#d0b99c}
#game-page[data-game="jester"] .game-layout{grid-template-columns:250px minmax(0,1fr);border-color:#a281494f;background:#151019}
#game-page[data-game="jester"] .bet-panel{background:linear-gradient(145deg,#292031,#18131e);border-color:#ae875034}
#game-page[data-game="jester"] .play-surface{padding:0;min-width:0;background:#100c15}
#game-page[data-game="jester"] #play{background:linear-gradient(115deg,#f4dfac,#c39550);color:#2e1b14;border:1px solid #f8df9e;font-weight:800;box-shadow:0 5px 28px #dba85824}
#jester-options{margin-top:18px}.jester-turbo-label{display:flex!important;align-items:center;justify-content:space-between;color:#e5d1ad!important;gap:12px}
#jester-turbo{width:38px!important;height:22px;accent-color:#d5ad67;cursor:pointer}
#jester-stage{position:relative;isolation:isolate;overflow:hidden;text-align:center;color:#efe2c8;padding:24px clamp(10px,3vw,38px) 16px;background:radial-gradient(ellipse at 50% 0,#52305a66,transparent 60%),repeating-linear-gradient(90deg,#1d1027 0,#351733 3%,#170e21 7%,#24122c 11%)}
#jester-stage[hidden]{display:none}#jester-stage::before,#jester-stage::after{content:'';position:absolute;top:0;bottom:0;width:13%;z-index:-1;background:repeating-linear-gradient(90deg,#160b1c,#66304d 35%,#211026 68%);border:1px solid #aa814141;box-shadow:0 0 30px #000a;pointer-events:none}
#jester-stage::before{left:-7%;transform:rotate(8deg)}#jester-stage::after{right:-7%;transform:rotate(-8deg)}
.jester-brand{display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:2px;color:#c6aa83;gap:10px}.jester-brand b{border:1px solid #d8b77a50;border-radius:20px;padding:6px 10px;font-size:9px;letter-spacing:1px}
.jester-title{font:700 clamp(29px,4vw,54px)/1 Georgia,serif;letter-spacing:1px;color:#f2d9a0;text-shadow:0 3px #392136,0 5px 25px #000;margin:20px 0 8px}.jester-title small{display:block;font:9px system-ui,sans-serif;letter-spacing:6px;margin-bottom:9px;color:#bca48b}
#jester-phase{font-size:10px;letter-spacing:1.2px;color:#d0b8ce;margin:10px 0 18px;min-height:15px}
.jester-court-bar{display:flex;justify-content:center;align-items:center;gap:15px;padding:9px;margin:0 auto 12px;max-width:740px;border-top:1px solid #c49f5133;border-bottom:1px solid #c49f5133;color:#c5a87c;font-size:9px;letter-spacing:1.2px}.jester-court-bar>strong{font-family:Georgia,serif;font-size:12px;font-weight:400}#jester-locks{display:flex;gap:9px;font-size:17px;color:#80688e}#jester-locks .locked{color:#ffe3a2;text-shadow:0 0 12px #ffce55}.is-court .jester-court-bar{background:#c3933317;border-color:#f1c66e77;color:#f4d595}
.jester-frame{position:relative;margin:auto;max-width:740px;padding:9px;border-radius:12px;background:linear-gradient(125deg,#876238,#ead197 12%,#71512d 23%,#372332 55%,#c5a067 82%,#6b4728);border:1px solid #e1bc76;box-shadow:0 14px 40px #0009,0 0 0 3px #96704133;overflow:hidden}
#jester-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:4px;background:#09070e;border-radius:5px;overflow:hidden;aspect-ratio:5/3}
.jester-reel{position:relative;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:3px;min-width:0;overflow:hidden;background:#17121f}
.jester-cell{display:grid;place-items:center;position:relative;min-height:0;background:radial-gradient(ellipse at 45% 20%,#33243e,#17121f 85%);border:1px solid #97774727;border-radius:5px;overflow:hidden}
.jester-symbol{width:82%;height:88%;filter:drop-shadow(0 4px 4px #0007)}.jester-card-mark{display:flex;flex-direction:column;align-items:center;font:700 clamp(25px,4vw,56px)/.9 Georgia,serif;color:#d9c7a4;text-shadow:0 2px 2px #000;gap:4px}.jester-card-mark small{font-size:10px;color:#ab8658;line-height:1}.jm-1,.jm-3{color:#bb8498}.jm-2,.jm-4{color:#c9b3de}
.jester-cell.is-win{border-color:#f6d998;box-shadow:inset 0 0 24px #f7c55b35}.jester-cell.is-seal{background:radial-gradient(ellipse,#8c54374a,#17121f);border-color:#cc9a4a77}
.jester-full-wild{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse,#664070,#24122c 80%);border:1px solid #ffe19b;border-radius:5px;box-shadow:inset 0 0 24px #d8a34f48;transform-origin:center center;overflow:hidden}
.jester-full-wild img{width:100%;height:94%;object-fit:contain;filter:drop-shadow(0 3px 8px #0009)}.jester-full-wild b{position:absolute;bottom:4px;border:1px solid #c4a367;background:#231329ed;color:#f6dc9d;padding:3px 12px;border-radius:3px;font:700 clamp(10px,1.4vw,17px) Georgia,serif;letter-spacing:3px}
#jester-lines{position:absolute;inset:13px;width:calc(100% - 26px);height:calc(100% - 26px);pointer-events:none;filter:drop-shadow(0 0 4px #fbbf65)}#jester-lines polyline{fill:none;stroke:#ffe5a9;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:8 4}
.jester-feature{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;background:radial-gradient(ellipse,#482653f5,#0e071bf5);z-index:4;border:7px double #b28a50}.jester-feature[hidden]{display:none}.jester-feature img{height:42%;filter:drop-shadow(0 0 24px #daba6966)}.jester-feature small{font-size:9px;letter-spacing:3px;color:#ceb58d}.jester-feature strong{font:700 clamp(20px,3.6vw,42px) Georgia,serif;color:#f5d991}.jester-feature p{font-size:11px;letter-spacing:1px;color:#cfbadb;margin:0}
.jester-meters{display:grid;grid-template-columns:1.2fr 1fr 1fr;max-width:740px;margin:15px auto 0;background:#0f0b17a8;border:1px solid #b88f4d44;border-radius:8px;padding:11px 3px}.jester-meters>div+div{border-left:1px solid #ae895132}.jester-meters small{display:block;font-size:8px;letter-spacing:1.3px;color:#bda486;margin-bottom:5px}.jester-meters strong{font-size:clamp(12px,1.8vw,21px);color:#f6dca4;font-weight:600}
#jester-message{min-height:18px;margin:12px 0 8px;font-size:11px;color:#d6c4d5}#jester-line-wins{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;max-height:90px;overflow:auto}#jester-line-wins button{font-size:9px;color:#d8c4ac;background:#b4904412;border:1px solid #b7955044;border-radius:4px;padding:4px 7px;cursor:pointer}#jester-line-wins b{color:#f3d697;font-weight:500;margin-left:4px}
.jester-help{padding:17px 22px;color:#c2b3c9;background:#17111f;border-top:1px solid #bd934431;font-size:11px;line-height:1.8}.jester-help summary{cursor:pointer;color:#e7d5b5;display:flex;justify-content:space-between;gap:8px}.jester-help summary span{font-size:9px;color:#bba183}.jester-help h3{font:18px Georgia,serif;color:#ebd6a6}.jester-help p{margin:14px 0}.jester-help b{color:#ecd8b2}
#jester-paytable{border-collapse:collapse;width:100%;margin-top:18px;text-align:right;font-variant-numeric:tabular-nums}#jester-paytable th:first-child{text-align:left}#jester-paytable th,#jester-paytable td{padding:7px;border-bottom:1px solid #b4945023}#jester-paytable tbody th{display:flex;align-items:center;gap:12px;font-weight:400}#jester-paytable .jester-symbol,#jester-paytable .jester-card-mark{width:34px;height:34px;font-size:25px;flex:none}#jester-paytable small{display:none}#jester-paytable td{color:#ead2a4}
#jester-line-map{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}#jester-line-map>div{border:1px solid #b8995133;background:#100b16;padding:5px;border-radius:4px}#jester-line-map b{font-size:9px;color:#b19464}#jester-line-map svg{display:block;width:100%;height:40px}#jester-line-map path{fill:none;stroke:#d9b987;stroke-width:2}
#jester-stage.is-spinning .jester-cell{animation:jester-shuffle .25s linear infinite alternate}#jester-stage.is-anticipating .jester-frame{box-shadow:0 0 28px #e7b65566}.auth-game-jester{background:radial-gradient(ellipse at 50% 20%,#613771,#231329 80%);transform:rotate(-4deg)}.auth-game-jester>img{position:absolute;width:75%;height:70%;object-fit:contain;left:12.5%;top:8%;z-index:-2}.auth-showcase:has(.auth-game-jester){grid-template-columns:repeat(4,minmax(0,1fr))}.auth-game-jester b{font-family:Georgia,serif;font-size:21px}
@keyframes jester-shuffle{to{filter:blur(4px);transform:translateY(7%);opacity:.7}}
@media(max-width:1050px){#game-page[data-game="jester"] .game-layout{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:760px){#game-page[data-game="jester"] .game-layout{grid-template-columns:1fr}#jester-stage{padding:19px 9px 14px}.jester-brand{font-size:7px;letter-spacing:1px}.jester-title{font-size:36px}.jester-frame{padding:6px}#jester-grid{padding:3px;gap:2px}.jester-reel{gap:2px}.jester-card-mark{font-size:clamp(28px,8vw,49px)}#jester-lines{inset:9px;width:calc(100% - 18px);height:calc(100% - 18px)}.jester-court-bar{gap:12px;font-size:8px}.jester-court-bar>strong{font-size:10px}.jester-help{padding:16px 13px}.jester-meters strong{font-size:16px}.jester-meters small{font-size:7px;letter-spacing:.8px}.jester-feature strong{font-size:clamp(21px,5vw,34px)}#jester-paytable th,#jester-paytable td{padding:6px 3px}#jester-paytable tbody th{gap:6px}}
@media(prefers-reduced-motion:reduce){#jester-stage.is-spinning .jester-cell{animation:none}}
body.reduce-motion #jester-stage.is-spinning .jester-cell{animation:none}

@media(max-width:760px){#jester-options{margin:0;grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}#jester-options[hidden]{display:none}#jester-options .input-hint{margin:0}.jester-turbo-label{margin:0!important;gap:14px}}

/* Premium masquerade art direction: original rendered assets with layered symbol motion. */
#jester-stage{background:linear-gradient(180deg,#10091408,#10081730 60%,#100917bd),url('/assets/jester/premium/palace.147ad9625b76.webp') center top/cover;padding-top:18px}
#jester-stage::before,#jester-stage::after{display:none}.jester-brand{position:relative;z-index:2;color:#e3c48e}.jester-brand b{background:#160e1ba6;backdrop-filter:blur(4px)}
.jester-title{position:relative;margin:17px 0 9px;isolation:isolate}.jester-title>span{display:block;font-size:clamp(33px,4.3vw,59px);line-height:.97;font-weight:700;letter-spacing:-1px;color:#f7dfa2;text-shadow:0 1px #fff2c0,0 3px #88531f,0 5px #321216,0 8px 18px #000}
.jester-title em{font-style:normal;color:#ffe7ae}.jester-title small{letter-spacing:4px;font-size:8px;text-shadow:0 2px 5px #000;color:#d9bb8c}
#jester-phase{margin:12px 0;color:#ddc9e4;text-shadow:0 1px 4px #000;font-size:9px}.jester-court-bar{padding:8px;background:linear-gradient(90deg,transparent,#180e25b5,transparent);border-color:#ddb96344;margin-bottom:12px;backdrop-filter:blur(3px)}
.jester-atmosphere{position:absolute;inset:0;pointer-events:none;z-index:-1;overflow:hidden}.jester-atmosphere::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 10% 72%,#fc952529,transparent 28%),radial-gradient(ellipse at 90% 70%,#fda73526,transparent 27%);animation:jester-candle 4s ease-in-out infinite alternate}
.jester-atmosphere i{position:absolute;bottom:10%;left:12%;width:3px;height:3px;border-radius:50%;background:#ffe1a2;box-shadow:0 0 9px 3px #e0a34466;animation:jester-mote 9s ease-in infinite;opacity:0}.jester-atmosphere i:nth-child(2){left:86%;animation-delay:-3s}.jester-atmosphere i:nth-child(3){left:8%;bottom:42%;animation-delay:-6s}.jester-atmosphere i:nth-child(4){left:76%;animation-delay:-1.5s}.jester-atmosphere i:nth-child(5){left:30%;animation-delay:-5s}.jester-atmosphere i:nth-child(6){left:93%;bottom:30%;animation-delay:-7s}
.jester-frame{padding:10px;border:2px solid #d9b275;background:linear-gradient(135deg,#e7c995,#80501f 9%,#ebc985 14%,#573124 28%,#28151f 48%,#a3763a 75%,#f1d695 90%,#956437);box-shadow:0 18px 35px #000b,0 0 0 2px #1a0f10,0 0 0 4px #95602e88,inset 0 0 0 2px #f4d79855;border-radius:15px;overflow:hidden}
.jester-frame::before{content:'';position:absolute;inset:4px;border:1px solid #fce1a572;border-radius:10px;pointer-events:none;z-index:2}
.jester-frame::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;background:linear-gradient(90deg,transparent,#e9beef40,transparent);z-index:3}
.is-expanding .jester-frame::after{animation:jester-cabinet-flash .65s ease-out}.is-anticipating .jester-frame{animation:jester-anticipation 1s ease-in-out infinite}
#jester-grid{gap:2px;padding:2px;background:#100719;border:1px solid #543326;box-shadow:inset 0 0 30px #000;border-radius:7px}
.jester-reel{gap:0;background:linear-gradient(90deg,#080711,#241428 35%,#211226 70%,#090811);border-left:1px solid #b68b4c35;border-right:1px solid #09060d;overflow:hidden;perspective:700px}
.jester-cell{border:0;border-radius:0;background:radial-gradient(ellipse,#49304c28,transparent 72%);box-shadow:inset 0 -1px #b58a4a18;overflow:visible;min-width:0}
.jester-cell.is-win{background:radial-gradient(ellipse,#c57e3255,#6f363622 60%,transparent);box-shadow:inset 0 0 20px #eabe5d28,inset 0 0 0 1px #f3d59166;z-index:1}
.jester-cell.is-seal{background:radial-gradient(ellipse,#bb753530,transparent 75%);box-shadow:none}
.jester-symbol{display:block;position:relative;width:94%;height:auto;aspect-ratio:1;max-height:100%;filter:drop-shadow(0 5px 4px #0009);transform-origin:50% 60%;isolation:isolate}
.jester-art{position:absolute;inset:0;background-image:url('/assets/jester/premium/symbols.ca63f2f43911.webp');background-repeat:no-repeat;background-size:400% 300%;background-position:var(--sx) var(--sy);will-change:auto}
.jp-0{--sx:0%;--sy:0%}.jp-1{--sx:33.333333%;--sy:0%}.jp-2{--sx:66.666667%;--sy:0%}.jp-3{--sx:100%;--sy:0%}.jp-4{--sx:0%;--sy:50%}.jp-5{--sx:33.333333%;--sy:50%}.jp-6{--sx:66.666667%;--sy:50%}.jp-7{--sx:100%;--sy:50%}.jp-8{--sx:0%;--sy:100%}.jp-9{--sx:33.333333%;--sy:100%}.jp-10{--sx:66.666667%;--sy:100%}.jp-11{--sx:100%;--sy:100%}
.jester-symbol-tag{position:absolute;bottom:2%;left:15%;right:15%;color:#ffedb6;background:linear-gradient(#713345,#27122d);border:1px solid #ddb96c;border-radius:4px;text-shadow:0 2px #32101a;font:700 clamp(9px,1.1vw,15px) Georgia,serif;letter-spacing:2px;text-align:center;line-height:1.25;padding:1px 0;z-index:2;box-shadow:0 3px 6px #0008}.seal-tag{font-size:clamp(7px,.8vw,11px);letter-spacing:1px;left:12%;right:12%}
.jester-glint{position:absolute;width:18%;aspect-ratio:1;top:18%;left:25%;background:radial-gradient(ellipse,#fffde8 0,transparent 62%);clip-path:polygon(50% 0,59% 40%,100% 50%,60% 59%,50% 100%,40% 60%,0 50%,40% 40%);opacity:0;pointer-events:none;filter:drop-shadow(0 0 4px #ffd17c)}
#jester-stage .jester-cell .jp-6 .jester-art{animation:jester-bells 5.5s ease-in-out infinite}#jester-stage .jester-cell .jp-5 .jester-art{animation:jester-mask 7s ease-in-out infinite}#jester-stage .jester-cell .jp-10 .jester-art{animation:jester-mask 6s ease-in-out infinite}#jester-stage .jester-cell .jp-11 .jester-art{animation:jester-seal 6s ease-in-out infinite}
#jester-stage .jester-cell .jp-7 .jester-glint,#jester-stage .jester-cell .jp-8 .jester-glint,#jester-stage .jester-cell .jp-9 .jester-glint,#jester-stage .jester-cell .jp-11 .jester-glint{animation:jester-spark 4.5s ease-in-out infinite}
.jester-reel:nth-child(2) .jester-glint{animation-delay:-1.2s!important}.jester-reel:nth-child(3) .jester-glint{animation-delay:-2.4s!important}.jester-reel:nth-child(4) .jester-glint{animation-delay:-3.1s!important}
#jester-stage .is-win .jester-symbol{animation:jester-win-symbol 1.1s ease-in-out infinite}#jester-stage .is-win .jester-glint{animation:jester-spark 1.1s ease-in-out infinite}
.is-awakening .is-joker .jester-symbol{filter:drop-shadow(0 0 14px #f3cf71);animation:jester-awakening .18s ease-in-out 2 alternate}
#jester-stage.is-spinning .jester-cell{animation:none}#jester-stage.is-spinning .jester-cell>.jester-symbol{animation:jester-pre-spin .18s linear infinite;filter:blur(4px)}
.jester-spin-strip{display:none;position:absolute;inset:0;background:linear-gradient(90deg,#130c1e,#302036,#130c1e);z-index:3;overflow:hidden;pointer-events:none}
.is-rolling .jester-spin-strip{display:block}.jester-motion-strip{height:300%;display:grid;grid-template-rows:repeat(9,minmax(0,1fr))}.jester-motion-strip>div{display:grid;place-items:center;min-height:0}.jester-motion-strip .jester-symbol{width:94%;height:100%;aspect-ratio:auto}.jester-motion-strip .jester-symbol-tag{display:none}
.jester-full-wild{border:1px solid #f5d88b;background:radial-gradient(ellipse at 50% 35%,#89598988,#2f143c 62%,#100d1d);box-shadow:inset 0 0 20px #e4ba5f50,0 0 12px #f2d18a6e;z-index:2}
.jester-full-wild img{width:100%;height:100%;object-fit:cover;object-position:50% center;filter:drop-shadow(0 5px 12px #000b);position:relative;z-index:1;animation:jester-character-breathe 5s ease-in-out infinite;transform-origin:50% 92%}
.jester-full-wild b{bottom:7px;left:6%;right:6%;padding:4px 0;font-size:clamp(12px,1.9vw,24px);background:linear-gradient(#5f2a49,#231329);border:1px solid #e3bc72;color:#ffecb4;box-shadow:0 2px 12px #000b;z-index:2;letter-spacing:3px;text-shadow:0 2px #421623}
.jester-wild-aura{position:absolute;inset:-15%;background:conic-gradient(from 0deg,transparent,#e3b45a38,transparent,#ce8fe83b,transparent);animation:jester-aura 12s linear infinite}
.jester-wild-flare{position:absolute;inset:0;background:linear-gradient(105deg,transparent 38%,#fff0c333 50%,transparent 62%);animation:jester-reel-shine 4.5s ease-in-out infinite;z-index:2;pointer-events:none}
#jester-lines polyline{stroke-width:2.5;stroke:#fff0bf;stroke-dasharray:14 5;animation:jester-line-flow 1s linear infinite}
.jester-feature{display:block;background:radial-gradient(ellipse at 45% 45%,#7a4672e8,#100a1bf5 70%),url('/assets/jester/premium/palace.147ad9625b76.webp') center/cover;overflow:hidden;border:5px double #d4ad67;isolation:isolate}
.jester-feature::before,.jester-feature::after{content:'';position:absolute;top:0;bottom:0;width:52%;background:repeating-linear-gradient(90deg,#190d21,#713046 18%,#2a102a 37%);border-inline:2px solid #c6a05d;z-index:4;animation:jester-curtain-left 1s cubic-bezier(.2,.7,.2,1) both}.jester-feature::before{left:0}.jester-feature::after{right:0;animation-name:jester-curtain-right}
.jester-feature>img{position:absolute;height:123%;width:49%;left:-3%;top:-8%;object-fit:contain;filter:drop-shadow(0 0 28px #e6bb6266);animation:jester-entrance 1s ease-out both;z-index:1}
.jester-feature-copy{position:absolute;left:38%;right:3%;top:10%;bottom:8%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;z-index:2;animation:jester-entrance 1s ease-out both;text-shadow:0 3px 6px #000}
.jester-feature strong{font-size:clamp(23px,3.3vw,43px);line-height:.97;letter-spacing:1px}.jester-feature small{font-size:9px;letter-spacing:4px}.jester-feature p{font-size:clamp(7px,1vw,11px)}.jester-free-count{font:700 clamp(40px,7vw,91px)/1 Georgia,serif;color:#fff1bb;text-shadow:0 3px #85532e,0 5px 20px #eda54b70}
.jester-meters{background:linear-gradient(#201027d9,#100b17eb);box-shadow:0 4px 12px #0005;border-color:#bf974b63}.jester-meters strong{color:#ffe3a2;text-shadow:0 1px 8px #ffbd3d28}
#jester-message{color:#efddbf;text-shadow:0 1px 5px #000}.is-celebrating .jester-meters>div:first-child strong{animation:jester-return-glow 1.5s ease-in-out 2}
.jester-cover{background:linear-gradient(0deg,#160a1de6,transparent 80%),url('/assets/jester/premium/palace.147ad9625b76.webp') center/cover!important}.jester-cover>img{width:70%;height:115%;left:15%;top:0;object-fit:cover;object-position:50% top;filter:drop-shadow(0 5px 12px #000)}.jester-cover::after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#100718e8);z-index:0}.jester-cover .cover-title,.jester-cover-caption{z-index:1}.jester-cover .cover-title{text-shadow:0 2px #734322,0 4px 5px #000;color:#ffe6a6}.auth-game-jester{background:url('/assets/jester/premium/palace.147ad9625b76.webp') center/cover}.auth-game-jester>img{height:115%;width:85%;left:7.5%;top:0;object-fit:cover;object-position:50% top}
#jester-paytable .jester-symbol{width:42px;height:42px;aspect-ratio:1}#jester-paytable .jester-symbol-tag{display:none}
#jester-buy{display:block;width:100%;position:relative;margin:20px 0 0;padding:15px 10px 13px;text-align:center;border:1px solid #c7a365;border-radius:9px;background:radial-gradient(ellipse at 50% 0,#8b506a77,transparent 90%),linear-gradient(#392039,#211324);box-shadow:inset 0 0 0 3px #e8b96410,0 7px 20px #0003;color:#f3d7a3;cursor:pointer;overflow:hidden}#jester-buy::before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent,#ffe7a81c,transparent);transform:translateX(-100%);transition:transform .6s}#jester-buy:hover::before{transform:translateX(100%)}#jester-buy>span{display:block;font-size:7px;letter-spacing:2px;color:#cbb58f}#jester-buy>strong{display:flex;justify-content:center;align-items:center;gap:10px;font:700 19px Georgia,serif;margin:5px 0}#jester-buy b{font:600 11px system-ui,sans-serif;border:1px solid #c8a96477;border-radius:4px;padding:3px 5px}#jester-buy>small{font-size:8px;color:#bea6c4}#jester-buy:disabled{opacity:.45;cursor:not-allowed}
.jester-buy-dialog{display:grid;grid-template-columns:32% 1fr;gap:18px;min-height:370px;position:relative}.jester-buy-portrait{position:relative;overflow:hidden;border-radius:8px;background:radial-gradient(ellipse,#553055,#170e20)}.jester-buy-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.jester-buy-copy h3{font:28px/1.08 Georgia,serif;color:#ffe3a8;margin:10px 0}.jester-buy-copy p{font-size:12px;line-height:1.6;color:#c5b6cd}.jester-buy-price{padding:12px 0;border-top:1px solid #b9965644;border-bottom:1px solid #b9965644}.jester-buy-price>*{display:block}.jester-buy-price small{font-size:8px;letter-spacing:1px;color:#b3a17f}.jester-buy-price strong{font-size:28px;color:#ffe6ae;margin:5px 0}.jester-buy-price span{font-size:11px;color:#c0aec7}.jester-buy-copy .jester-buy-terms{font-size:10px}.jester-buy-copy .primary{width:100%;background:linear-gradient(120deg,#f6e0a7,#cd9952);color:#311b20}.jester-buy-copy .back{display:block;margin:7px auto 0}.jester-buy-copy>p:last-child{font-size:10px;text-align:center;margin-bottom:0}
@keyframes jester-bells{0%,85%,100%{transform:rotate(0)}89%{transform:rotate(-9deg)}94%{transform:rotate(7deg)}97%{transform:rotate(-3deg)}}
@keyframes jester-mask{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-3%) rotate(1.5deg)}}
@keyframes jester-seal{0%,100%{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.17);transform:scale(1.025)}}
@keyframes jester-spark{0%,65%,100%{opacity:0;transform:scale(.1) rotate(0)}75%{opacity:.9;transform:scale(1.1) rotate(70deg)}88%{opacity:0;transform:scale(.2) rotate(130deg)}}
@keyframes jester-win-symbol{0%,100%{transform:scale(1)}35%{transform:scale(1.08) translateY(-2%);filter:drop-shadow(0 0 9px #ffdf8777)}65%{transform:scale(1.02)}}
@keyframes jester-awakening{to{transform:scale(1.15);filter:brightness(1.7) drop-shadow(0 0 15px #e5b765)}}
@keyframes jester-character-breathe{0%,100%{transform:scale(1) rotate(-.4deg)}50%{transform:scale(1.035) rotate(.4deg)}}
@keyframes jester-aura{to{transform:rotate(360deg)}}
@keyframes jester-reel-shine{0%,65%{transform:translateX(-150%)}95%,100%{transform:translateX(150%)}}
@keyframes jester-pre-spin{from{transform:translateY(-15%)}to{transform:translateY(20%)}}
@keyframes jester-candle{to{opacity:.6;filter:brightness(1.25)}}
@keyframes jester-mote{0%{transform:translate(0,0);opacity:0}20%{opacity:.7}85%{opacity:.4}100%{transform:translate(22px,-280px);opacity:0}}
@keyframes jester-cabinet-flash{15%{opacity:.8}100%{opacity:0}}
@keyframes jester-anticipation{50%{box-shadow:0 0 24px #ffc96688,0 0 0 3px #b28943}}
@keyframes jester-line-flow{to{stroke-dashoffset:-38}}
@keyframes jester-curtain-left{0%,18%{transform:translateX(0)}100%{transform:translateX(-105%)}}
@keyframes jester-curtain-right{0%,18%{transform:translateX(0)}100%{transform:translateX(105%)}}
@keyframes jester-entrance{0%{opacity:0;transform:translateY(20px) scale(.94)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes jester-return-glow{50%{color:#fff5d5;text-shadow:0 0 16px #e5b55a}}
@media(max-width:760px){#jester-stage{padding:14px 8px 13px}.jester-title{margin:16px 0 9px}.jester-title>span{font-size:clamp(29px,7.9vw,51px)}.jester-title small{font-size:7px;letter-spacing:2.6px}.jester-brand{font-size:6px}.jester-brand b{font-size:7px;padding:5px 7px}.jester-court-bar{gap:9px;margin-bottom:10px}.jester-court-bar>strong{font-size:9px}.jester-court-bar>span{font-size:7px}.jester-frame{padding:5px;border-radius:11px}.jester-frame::before{inset:2px}.jester-symbol{width:98%}.jester-symbol-tag{font-size:9px;letter-spacing:1px}.seal-tag{font-size:6px}.jester-full-wild b{font-size:13px;padding:2px 0;bottom:4px}.jester-feature-copy{left:40%;gap:3px;top:4%;bottom:4%}.jester-feature strong{font-size:21px}.jester-feature small{font-size:6px;letter-spacing:2px}.jester-free-count{font-size:46px}.jester-feature p{font-size:6px}.jester-feature>img{width:51%;left:-6%}#jester-options{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}#jester-options .jester-turbo-label{grid-column:1;grid-row:1;justify-content:start;font-size:10px}#jester-options .input-hint{grid-column:1;grid-row:2;font-size:8px}#jester-buy{grid-column:2;grid-row:1/3;margin:0;min-width:146px;padding:7px 10px}#jester-buy>span{font-size:6px}#jester-buy>strong{font-size:16px;margin:3px 0;gap:7px}#jester-buy b{font-size:9px;padding:1px 4px}#jester-buy>small{font-size:7px}.jester-buy-dialog{grid-template-columns:1fr}.jester-buy-portrait{display:none}.jester-buy-copy h3{font-size:28px}.jester-buy-copy>p{font-size:11px}.jester-buy-price strong{font-size:27px}}
@media(prefers-reduced-motion:reduce){#jester-stage *,#jester-stage *::before,#jester-stage *::after,.jester-buy-dialog *{animation:none!important;transition:none!important}.jester-feature::before,.jester-feature::after{display:none}}
body.reduce-motion #jester-stage *,body.reduce-motion #jester-stage *::before,body.reduce-motion #jester-stage *::after{animation:none!important;transition:none!important}body.reduce-motion .jester-feature::before,body.reduce-motion .jester-feature::after{display:none}

/* Individual atlas viewports keep neighboring artwork outside each symbol. */
.jp-0 .jester-art{inset:auto;left:3.0000%;top:4.8515%;width:94.0000%;height:90.2970%;background-size:438.78788% 342.58675%;background-position:1.61002% 2.34070%}
.jp-1 .jester-art{inset:auto;left:6.4815%;top:3.0000%;width:87.0370%;height:94.0000%;background-size:482.66667% 335.18519%;background-position:34.93031% 1.70604%}
.jp-2 .jester-art{inset:auto;left:4.1325%;top:3.0000%;width:91.7349%;height:94.0000%;background-size:446.91358% 327.10843%;background-position:66.19217% 1.32626%}
.jp-3 .jester-art{inset:auto;left:3.0000%;top:4.4242%;width:94.0000%;height:91.1515%;background-size:438.78788% 339.37500%;background-position:98.83721% 2.87206%}
.jp-4 .jester-art{inset:auto;left:3.0000%;top:4.4030%;width:94.0000%;height:91.1940%;background-size:432.23881% 334.15385%;background-position:1.16801% 46.51774%}
.jp-5 .jester-art{inset:auto;left:3.0000%;top:10.6345%;width:94.0000%;height:78.7310%;background-size:367.51269% 329.09091%;background-position:33.39658% 46.29630%}
.jp-6 .jester-art{inset:auto;left:3.0000%;top:5.8444%;width:94.0000%;height:88.3112%;background-size:417.29107% 333.12883%;background-position:68.75568% 46.57895%}
.jp-7 .jester-art{inset:auto;left:8.4954%;top:3.0000%;width:83.0092%;height:94.0000%;background-size:504.52962% 334.15385%;background-position:98.88028% 45.99212%}
.jp-8 .jester-art{inset:auto;left:3.0000%;top:3.3863%;width:94.0000%;height:93.2274%;background-size:396.71233% 300.00000%;background-position:0.83102% 93.78453%}
.jp-9 .jester-art{inset:auto;left:9.8901%;top:3.0000%;width:80.2199%;height:94.0000%;background-size:444.17178% 284.29319%;background-position:34.84848% 97.44318%}
.jp-10 .jester-art{inset:auto;left:6.4160%;top:3.0000%;width:87.1679%;height:94.0000%;background-size:391.35135% 272.18045%;background-position:67.90353% 98.39884%}
.jp-11 .jester-art{inset:auto;left:10.1597%;top:3.0000%;width:79.6806%;height:94.0000%;background-size:419.71014% 266.83047%;background-position:99.72801% 99.70545%}

/* Royal win theatre. The shared popup keeps its original appearance for other games. */
#win-overlay.jester-win{background:radial-gradient(ellipse at center,#341446bf,#10071bd9 76%);backdrop-filter:blur(5px);overflow:hidden;pointer-events:auto;padding:90px 28px 40px;isolation:isolate}
.jester-win .win-card{position:relative;isolation:isolate;gap:10px;width:530px;min-width:0;padding:95px 30px 26px;border-radius:100px 100px 24px 24px;border:2px solid #d1a553;background:radial-gradient(ellipse at 50% 0,#77285f 0,#331239 35%,#160d21 80%);box-shadow:0 0 0 5px #160c20,0 0 0 6px #a17137,0 30px 90px #000d,0 0 100px #d2973a45;color:#fff1c9;animation:jester-win-arrive .6s cubic-bezier(.16,1,.3,1)}
.jester-win .win-card:before{content:'';position:absolute;inset:8px;border:1px solid #b67e3c70;border-radius:92px 92px 17px 17px;pointer-events:none}
.jester-win .win-spark{display:none}
.jester-win-decor{position:absolute;inset:0;z-index:-1;pointer-events:none}
.jester-win-decor img{position:absolute;top:-102px;left:50%;width:180px;height:192px;object-fit:cover;object-position:top;transform:translateX(-50%);filter:drop-shadow(0 0 25px #f3b43b70);mask-image:linear-gradient(#000 72%,transparent)}
.jester-win-rays{position:absolute;width:760px;height:760px;top:-220px;left:50%;margin-left:-380px;background:repeating-conic-gradient(from 0deg,#e8b15320 0deg 7deg,transparent 7deg 22deg);mask-image:radial-gradient(#0002,#0009 35%,transparent 65%);animation:jester-win-rays 35s linear infinite;z-index:-1}
.jester-win-seal{position:absolute;top:63px;left:50%;transform:translateX(-50%);color:#ffe5a0;font-size:31px;text-shadow:0 2px 2px #3d1609,0 0 20px #edb03c}
.jester-win .jester-win-kicker{font-size:9px;letter-spacing:.24em;color:#d7b988;margin:1px 0 0;text-align:center}
.jester-win .win-caption{font-family:Georgia,'Times New Roman',serif;font-weight:900;font-size:clamp(28px,3.2vw,45px);line-height:1.1;letter-spacing:.025em;text-align:center;background:linear-gradient(#fff9d9 15%,#ffdc7b 45%,#b87a2a 53%,#ffdf8c 70%,#fff2bc);background-clip:text;color:transparent;filter:drop-shadow(0 3px 0 #59260e);margin:4px 0 8px}
.jester-win .win-card>#win-multiplier{font:700 22px Georgia,serif;letter-spacing:.06em;color:#ffde9b;background:#12091c88;border:1px solid #9b703c;border-radius:30px;padding:7px 25px;order:3;text-shadow:none}
.jester-win .win-card>#win-return{font-variant-numeric:tabular-nums;font-size:clamp(26px,3.5vw,46px);line-height:1.2;letter-spacing:-.045em;color:#fff3ce;text-shadow:0 0 24px #eab86660;order:1;white-space:nowrap}
.jester-win .win-card>#win-profit{color:#e3bc82;font-size:13px;order:2;margin-bottom:9px}
#jester-win-basis{order:4;font-size:9px;letter-spacing:.1em;color:#ae91b6;text-align:center}
#jester-win-continue{order:5;min-height:42px;margin-top:12px;padding:10px 24px;border:1px solid #d4a150;border-radius:7px;background:linear-gradient(#f8dfa6,#d29a4c);box-shadow:0 3px 0 #6e411c;color:#321925;font-size:11px;font-weight:800;letter-spacing:.07em;cursor:pointer}
#jester-win-continue:hover{filter:brightness(1.1)}
#jester-win-continue:focus-visible{outline:3px solid #fff4d5;outline-offset:5px}
.jester-win-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.jester-win-coins{position:absolute;inset:-110px -80px -80px;overflow:hidden;z-index:-1}
.jester-win-coins i{position:absolute;top:-35px;color:#ffe09c;font-size:19px;font-style:normal;text-shadow:0 0 12px #fbb83b;animation:jester-win-gold 3.7s linear infinite}
.jester-win[data-tier=royal] .win-card{border-color:#ffedb8;box-shadow:0 0 0 5px #160c20,0 0 0 6px #d6a54c,0 30px 90px #000d,0 0 130px #e8b65870;background:radial-gradient(ellipse at top,#883841,#391326 45%,#170d1b)}
.jester-win[data-tier=epic] .win-card{background:radial-gradient(ellipse at top,#633e86,#271035 50%,#160d21)}
.jester-audio-credit{font-size:10px!important;opacity:.7}.jester-audio-credit a{color:#e2bd77}
@keyframes jester-win-arrive{from{opacity:0;transform:translateY(28px) scale(.85)}to{opacity:1;transform:none}}
@keyframes jester-win-rays{to{transform:rotate(360deg)}}
@keyframes jester-win-gold{0%{transform:translateY(-30px) rotateY(0) rotate(0);opacity:0}12%,78%{opacity:.8}100%{transform:translateY(690px) rotateY(720deg) rotate(140deg);opacity:0}}
@media(max-width:760px){#win-overlay.jester-win{padding:86px 18px 24px}.jester-win .win-card{padding:92px 14px 20px;border-radius:70px 70px 20px 20px}.jester-win .win-card:before{border-radius:63px 63px 14px 14px}.jester-win .win-caption{font-size:30px}.jester-win .win-card>#win-return{font-size:30px}.jester-win .win-card>#win-multiplier{font-size:20px}.jester-win .jester-win-kicker{font-size:8px;letter-spacing:.12em}.jester-win-decor img{width:157px;height:180px;top:-86px}.jester-win-coins{inset:-80px -15px -20px}}
.reduce-motion #win-overlay.jester-win *{animation:none!important;transition:none!important}.reduce-motion .jester-win-coins{display:none}
@media(prefers-reduced-motion:reduce){#win-overlay.jester-win *{animation:none!important;transition:none!important}.jester-win-coins{display:none}}
.jester-win-coins i:nth-child(1){left:37%;animation-delay:-0.31s;animation-duration:3.55s;font-size:15px}
.jester-win-coins i:nth-child(2){left:74%;animation-delay:-0.62s;animation-duration:4.10s;font-size:20px}
.jester-win-coins i:nth-child(3){left:11%;animation-delay:-0.93s;animation-duration:4.65s;font-size:25px}
.jester-win-coins i:nth-child(4){left:48%;animation-delay:-1.24s;animation-duration:3.00s;font-size:10px}
.jester-win-coins i:nth-child(5){left:85%;animation-delay:-1.55s;animation-duration:3.55s;font-size:15px}
.jester-win-coins i:nth-child(6){left:22%;animation-delay:-1.86s;animation-duration:4.10s;font-size:20px}
.jester-win-coins i:nth-child(7){left:59%;animation-delay:-2.17s;animation-duration:4.65s;font-size:25px}
.jester-win-coins i:nth-child(8){left:96%;animation-delay:-2.48s;animation-duration:3.00s;font-size:10px}
.jester-win-coins i:nth-child(9){left:33%;animation-delay:-2.79s;animation-duration:3.55s;font-size:15px}
.jester-win-coins i:nth-child(10){left:70%;animation-delay:-3.1s;animation-duration:4.10s;font-size:20px}
.jester-win-coins i:nth-child(11){left:7%;animation-delay:-3.41s;animation-duration:4.65s;font-size:25px}
.jester-win-coins i:nth-child(12){left:44%;animation-delay:-3.72s;animation-duration:3.00s;font-size:10px}
.jester-win-coins i:nth-child(13){left:81%;animation-delay:-4.03s;animation-duration:3.55s;font-size:15px}
.jester-win-coins i:nth-child(14){left:18%;animation-delay:-4.34s;animation-duration:4.10s;font-size:20px}
.jester-win-coins i:nth-child(15){left:55%;animation-delay:-4.65s;animation-duration:4.65s;font-size:25px}
.jester-win-coins i:nth-child(16){left:92%;animation-delay:-4.96s;animation-duration:3.00s;font-size:10px}
.jester-win-coins i:nth-child(17){left:29%;animation-delay:-5.27s;animation-duration:3.55s;font-size:15px}
.jester-win-coins i:nth-child(18){left:66%;animation-delay:-5.58s;animation-duration:4.10s;font-size:20px}

/* Keep the entire celebration above the fixed mobile spin dock. */
@media(max-width:760px){#win-overlay.jester-win{position:fixed;inset:66px 0 88px;z-index:27;padding:94px 24px 18px;overflow-y:auto}.jester-win .win-caption{font-size:clamp(22px,6vw,29px)}.jester-win .win-card{flex-shrink:0}.jester-win .win-card>#win-return{font-size:clamp(23px,7.5vw,30px)}}
@media(max-width:760px) and (max-height:700px){#win-overlay.jester-win{padding-top:40px;align-items:flex-start}.jester-win .win-card{padding-top:60px;gap:6px}.jester-win-decor img{height:126px;width:110px;top:-55px}.jester-win-seal{top:33px;font-size:24px}.jester-win .win-card>#win-profit{margin-bottom:0}#jester-win-continue{margin-top:6px}}

/* /css/games/giftfall.css */
/* Giftfall: art remains proportionate; the grid has six equal columns at every size. */
#lobby .giftfall-cover,.giftfall-cover{background:#071b21 url('/assets/giftfall/lobby-card-v2.webp') center/cover!important;position:relative;overflow:hidden}
.giftfall-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#03141ce0,transparent 30%,transparent 75%,#03141c50);pointer-events:none}
.giftfall-card-brand{position:absolute;z-index:2;top:8%;left:5%;right:5%;text-align:center;color:#fff0ba;pointer-events:none;text-shadow:0 3px 18px #000}
.giftfall-card-brand small{display:block;font:8px/1.8 system-ui,sans-serif;letter-spacing:.22em;color:#d7b976}
.giftfall-card-brand strong{display:block;font:600 clamp(28px,3.6vw,49px)/1.2 Georgia,serif;letter-spacing:-.04em}
.giftfall-card-caption{position:absolute;bottom:7%;left:4%;right:4%;z-index:2;text-align:center;color:#f4e1a9;font-size:8px;letter-spacing:.17em;font-weight:650}
#giftfall-stage{position:relative;isolation:isolate;overflow:hidden;border:1px solid #d4ba7660;border-radius:22px;background:#072724 url('/assets/giftfall/workshop-v1.webp') center/cover;padding:25px clamp(12px,3vw,36px) 18px;min-width:0;box-shadow:0 20px 60px #0005;color:#fff0cf}
#giftfall-stage:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#031b1ee8,#03242065 75%,#03242030)}
.giftfall-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 auto 18px;max-width:650px;text-align:left}
.giftfall-heading small{display:block;color:#e4cb93;font-size:9px;letter-spacing:.23em;margin-bottom:5px}
.giftfall-heading h2{font:600 clamp(34px,5vw,54px)/1 Georgia,serif;letter-spacing:-.04em;margin:0;color:#fff1c7;text-shadow:0 2px 18px #000}
.giftfall-heading p{font-size:11px;margin:6px 0 0;color:#d5e9dd}
.giftfall-max{font-size:10px;border:1px solid #d5bb7755;border-radius:30px;padding:9px 13px;background:#082c2bcc;white-space:nowrap}
.giftfall-frame{position:relative;max-width:650px;margin:auto;padding:9px;border:2px solid #c5a869;border-radius:17px;background:linear-gradient(140deg,#87632b,#ebd19b 25%,#705025 48%,#d6b76c);box-shadow:0 8px 30px #0008,inset 0 0 0 2px #fff2}
#giftfall-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;padding:7px;background:#051d1cec;border:1px solid #072520;border-radius:9px;overflow:hidden;contain:layout paint}
.giftfall-cell{position:relative;aspect-ratio:1;display:grid;place-items:center;min-width:0;background:linear-gradient(145deg,#1c4c4548,#071c1b80);border:1px solid #d7d59b0d;border-radius:8px}
.giftfall-icon{display:block;width:91%;aspect-ratio:1;background-image:url('/assets/giftfall/symbols-v1.webp');background-size:300% 300%;background-repeat:no-repeat;filter:drop-shadow(0 2px 3px #0006)}
.gf-0{background-position:0 0}.gf-1{background-position:50% 0}.gf-2{background-position:100% 0}.gf-3{background-position:0 50%}.gf-4{background-position:50% 50%}.gf-5{background-position:100% 50%}.gf-6{background-position:0 100%}.gf-7{background-position:50% 100%}.gf-8{background-image:url('/assets/giftfall/bonus-present-v2.webp');background-size:contain;background-position:center}
.giftfall-cell.is-win{border-color:#f6d279;background:#f1c76a24;box-shadow:inset 0 0 15px #ffd88740,0 0 12px #ebcf6b30}
#giftfall-stage.is-spinning .giftfall-cell{opacity:.65}
.giftfall-meters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:650px;margin:14px auto 0;background:#042925e0;border:1px solid #bda76c40;border-radius:12px;padding:12px 4px}
.giftfall-meters>div+div{border-left:1px solid #d4bf7330}.giftfall-meters small{display:block;font-size:8px;letter-spacing:.12em;color:#bccec1;margin-bottom:5px}.giftfall-meters strong{font-size:clamp(16px,2vw,22px);font-variant-numeric:tabular-nums;color:#fff1c8}
#giftfall-message{font-size:12px;min-height:18px;margin:12px 0 0;color:#d0e2d7}
.giftfall-feature{position:absolute;inset:9px;z-index:2;display:grid;place-content:center;justify-items:center;padding:20px;text-align:center;background:#042320ed;backdrop-filter:blur(6px);border-radius:9px}
.giftfall-feature[hidden]{display:none}.giftfall-feature>.giftfall-icon{width:90px}.giftfall-feature small{letter-spacing:.25em;font-size:10px;color:#e2c57f}.giftfall-feature strong{font:600 clamp(25px,5vw,48px)/1.2 Georgia,serif;margin:8px 0}.giftfall-feature p{max-width:260px;font-size:12px;color:#cce7db}
.giftfall-help{margin-top:14px;text-align:left}.giftfall-help>summary{cursor:pointer;padding:12px;color:#e7ca8c}.giftfall-help p{font-size:12px;line-height:1.65;color:#aec7bd;padding:0 12px}
.giftfall-paytable{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
.giftfall-paytable>div{display:flex;align-items:center;gap:8px;background:#102b29;border:1px solid #bfa76b30;border-radius:9px;padding:8px;font-size:11px}.giftfall-paytable .giftfall-icon{width:42px;flex-shrink:0}.giftfall-paytable b{display:block;color:#f0dcab;margin-bottom:3px}.giftfall-paytable span{font-size:10px;color:#c3d0c5}
#giftfall-stage.is-bonus{border-color:#ffe1a3;box-shadow:0 0 34px #d3af3b20}.giftfall-options{display:flex;align-items:center;gap:10px}
@media(min-width:761px) and (max-height:800px){.giftfall-frame,.giftfall-heading,.giftfall-footer,.giftfall-phase{max-width:430px}#giftfall-stage{padding-top:18px}.giftfall-heading{margin-bottom:12px}.giftfall-heading h2{font-size:38px}.giftfall-meters{padding:10px 4px}}
@media(max-width:760px){#giftfall-stage{padding:20px 7px 12px;border-radius:15px}.giftfall-heading{padding:0 7px;gap:6px;margin-bottom:12px}.giftfall-heading h2{font-size:36px}.giftfall-heading p{font-size:9px}.giftfall-max{font-size:9px;padding:7px 9px}.giftfall-frame{padding:5px;border-radius:12px}#giftfall-grid{padding:3px;gap:2px;border-radius:6px}.giftfall-cell{border-radius:5px}.giftfall-meters{padding:10px 2px;margin-top:10px}.giftfall-meters small{font-size:7px;letter-spacing:.06em}.giftfall-paytable{gap:5px;padding:5px}.giftfall-paytable>div{gap:4px;padding:6px}.giftfall-paytable .giftfall-icon{width:32px}.giftfall-paytable span{font-size:9px}}

.giftfall-phase{max-width:650px;margin:0 auto 9px;text-align:center;font-size:9px;letter-spacing:.23em;color:#e9d498;min-height:12px}
.giftfall-gift-count{display:flex;justify-content:space-between;align-items:center;padding:3px 6px 6px;gap:5px;color:#15352c;font-size:8px;letter-spacing:.12em}.giftfall-gift-count strong{font-size:8px;font-weight:600}
.giftfall-cell.is-waiting{opacity:0}.giftfall-frame{transition:transform .55s,box-shadow .55s;transform-origin:50% 45%}
#giftfall-stage.is-anticipating .giftfall-frame{animation:giftfall-tension .16s linear infinite;box-shadow:0 0 35px #ffd67835,0 8px 30px #0008}
#giftfall-stage.is-anticipating .giftfall-phase{color:#ffe48a;text-shadow:0 0 16px #ffd166}
#giftfall-stage.is-activating .giftfall-frame{box-shadow:0 0 45px #ffd46a66;transform:scale(1.018)}
.giftfall-footer{max-width:650px;margin:12px auto 0;border:1px solid #bda76c40;border-radius:12px;background:#04201ee8;overflow:hidden;text-align:center}
.giftfall-footer .giftfall-meters{max-width:none;margin:0;padding:12px 3px;border:0;border-radius:0;background:none}.giftfall-meters strong{display:block;min-height:23px;white-space:normal;overflow-wrap:anywhere}
#giftfall-message{margin:0;padding:10px 12px;min-height:40px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.5;font-size:11px;letter-spacing:.01em;color:#e4ddc5;border-top:1px solid #c6af7330;background:#061c1b70;overflow-wrap:anywhere}
.giftfall-feature{isolation:isolate;background:radial-gradient(ellipse at 50% 38%,#275c3aee,#031c1ef5 70%);overflow:hidden;gap:10px;animation:giftfall-feature-in .7s ease-out}
.giftfall-feature-rays{position:absolute;inset:-100%;z-index:-1;background:repeating-conic-gradient(from 0deg,transparent 0deg 15deg,#ffdb7b0c 15deg 26deg);animation:giftfall-rays 35s linear infinite;pointer-events:none}
.giftfall-feature-gift{width:clamp(90px,15vw,155px);aspect-ratio:1;background:url('/assets/giftfall/bonus-present-v2.webp') center/contain no-repeat;filter:drop-shadow(0 0 24px #e9b34f60);animation:giftfall-gift-float 3s ease-in-out infinite}
.giftfall-feature small{text-transform:uppercase;line-height:1.5;font-size:10px;max-width:90%}.giftfall-feature strong{font:600 clamp(24px,4vw,44px)/1.1 Georgia,serif;color:#ffecb3;margin:0;text-shadow:0 0 25px #dcaa5060}.giftfall-feature p{font-size:12px;line-height:1.6;margin:0 0 5px;max-width:280px}
#giftfall-enter{background:linear-gradient(135deg,#f3daa2,#caa552);color:#14251e;border:1px solid #ffe6ad;padding:13px 24px;border-radius:30px;font-size:12px;font-weight:750;box-shadow:0 6px 22px #0006;cursor:pointer;min-height:44px;transition:opacity .3s,transform .3s}#giftfall-enter:disabled{opacity:.4;cursor:default}#giftfall-enter:focus-visible{outline:2px solid #fff;outline-offset:4px}
.giftfall-feature.is-summary .giftfall-feature-gift{width:90px}.giftfall-feature.is-summary strong{font-size:clamp(28px,5vw,54px)}
@keyframes giftfall-tension{0%,100%{transform:translateX(0) scale(1.018)}25%{transform:translateX(.8px) scale(1.018)}75%{transform:translateX(-.8px) scale(1.018)}}
@keyframes giftfall-gift-ignite{50%{filter:brightness(1.5);box-shadow:0 0 30px #ffdf8260}}
@keyframes giftfall-rays{to{transform:rotate(360deg)}}
@keyframes giftfall-gift-float{50%{transform:translateY(-7px) rotate(2deg)}}
@keyframes giftfall-feature-in{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
body.reduce-motion #giftfall-stage *,html[data-reduced-motion="true"] #giftfall-stage *{animation:none!important;transition:none!important}

.giftfall-cell.has-gift{border-color:#ddb45d77;background:radial-gradient(ellipse,#c7904033,#0b2925)}
.giftfall-cell.has-gift .giftfall-icon{width:100%;filter:drop-shadow(0 0 7px #ffca6855)}
.giftfall-cell.has-gift.is-landed{box-shadow:inset 0 0 15px #ffdc7820,0 0 9px #ffce6825}
#giftfall-stage.is-activating .giftfall-cell.has-gift.is-landed{animation:giftfall-gift-ignite .8s ease-in-out 2}
@media(min-width:761px) and (max-height:800px){.giftfall-footer,.giftfall-phase{max-width:430px}.giftfall-feature-gift{width:125px}.giftfall-feature{gap:7px}.giftfall-feature p{font-size:11px}.giftfall-feature strong{font-size:32px}}
@media(max-width:760px){.giftfall-phase{font-size:8px;letter-spacing:.15em;margin-bottom:8px}.giftfall-gift-count,.giftfall-gift-count strong{font-size:6px;letter-spacing:.07em}.giftfall-footer{margin-top:10px}.giftfall-footer .giftfall-meters{padding:11px 3px}#giftfall-message{font-size:10px;padding:9px;min-height:42px}.giftfall-feature{padding:12px;gap:9px}.giftfall-feature-gift{width:115px}.giftfall-feature strong{font-size:27px}.giftfall-feature p{font-size:10px;max-width:230px}#giftfall-enter{padding:11px 22px}.giftfall-cover .giftfall-card-brand,.giftfall-cover .giftfall-card-caption{display:none}}
@media(prefers-reduced-motion:reduce){#giftfall-stage .giftfall-frame,.giftfall-feature,.giftfall-feature-rays,.giftfall-feature-gift,.giftfall-cell.has-gift{animation:none!important;transition:none!important;transform:none!important}}

/* /css/games/tumble.css */
/* Nexttal Tumble: a separate jewel vault, with no shared Lucky Slots cabinet styles. */
.tumble-cover{background:linear-gradient(0deg,#071a1dd9,transparent 75%),url('/assets/tumble/banner-v2.4d81da39255a.webp') center/cover!important;isolation:isolate}
.tumble-cover::before{display:none}.tumble-cover .tumble-cover-symbol{position:absolute;width:155px;height:155px;left:50%;top:8%;transform:translateX(-50%) rotate(-8deg);filter:drop-shadow(0 12px 20px #0008)}
.tumble-cover .cover-title{position:absolute;bottom:33px;left:0;right:0;width:100%;margin:0;transform:none;text-align:center;font-family:Georgia,serif;letter-spacing:1px;color:#ffdf9c;text-shadow:0 3px 4px #000;font-size:clamp(18px,2.3vw,28px)}
.tumble-cover .tumble-cover-caption{position:absolute;bottom:14px;width:100%;text-align:center;font-size:8px;letter-spacing:2px;color:#e1d5ac}
#game-page[data-game="tumble"] .game-layout{grid-template-columns:250px minmax(0,1fr);border-color:#9e814747;background:#0a1517}
#game-page[data-game="tumble"] .bet-panel{background:linear-gradient(170deg,#1c2525,#151c20);border-color:#9e81472b}
#game-page[data-game="tumble"] .play-surface{background:#09181c;min-width:0;padding:0}
#game-page[data-game="tumble"] #play{background:linear-gradient(120deg,#f8e1a7,#d6a95b);color:#392811;box-shadow:0 5px 25px #dba85825;border:1px solid #ffe6b2;font-weight:800}
#tumble-options{margin-top:19px}.tumble-turbo-label{display:flex!important;align-items:center;justify-content:space-between;gap:15px;color:#e5d2a6!important}
#tumble-turbo{appearance:none;width:40px!important;height:23px;border:1px solid #716344;border-radius:20px;background:#0c1519;padding:0!important;cursor:pointer;position:relative;flex:none}
#tumble-turbo::before{content:'';position:absolute;left:3px;top:3px;width:15px;height:15px;border-radius:50%;background:#9b968b;transition:transform .16s,background .16s}
#tumble-turbo:checked{background:#a8853e33;border-color:#d8b973}#tumble-turbo:checked::before{transform:translateX(17px);background:#efd296}
#tumble-stage{padding:24px clamp(10px,2.6vw,34px) 18px;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#07171955,#07191da8),url('/assets/tumble/banner-v2.4d81da39255a.webp') center/cover;color:#f2e8d2;text-align:center}
#tumble-stage[hidden]{display:none}.tumble-brand{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:2.5px;color:#cfbe94;margin-bottom:6px}
.tumble-brand b{border:1px solid #d8ba754d;border-radius:20px;padding:6px 10px;letter-spacing:.7px;font-size:9px;color:#f2d99d;background:#162523a8;font-weight:500}
.tumble-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(29px,4.3vw,57px);font-weight:700;line-height:1.05;letter-spacing:1.5px;margin:13px 0 4px;text-shadow:0 3px 1px #4b3117,0 6px 25px #000;color:#f7d899}
.tumble-title small{display:block;font-family:inherit;font-size:10px;font-weight:400;letter-spacing:7px;color:#f3e5c4;margin-bottom:5px}
#tumble-phase{font-size:10px;letter-spacing:.7px;color:#c1d6d0;min-height:15px;margin:10px 0 18px}
.tumble-frame{position:relative;padding:9px;max-width:820px;margin:auto;border:1px solid #ebcb8b;border-radius:12px;background:linear-gradient(135deg,#bd955d,#ead7a0 12%,#725323 24%,#443c25 50%,#d9b975 78%,#725323);box-shadow:0 10px 35px #0008,0 0 0 3px #70572b6b,inset 0 1px #ffe9b0;overflow:hidden}
.tumble-frame::after{content:'';position:absolute;inset:4px;border:1px solid #edcf863b;border-radius:8px;pointer-events:none}
#tumble-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;background:#041416;border:1px solid #090f0f;border-radius:5px;overflow:hidden;padding:3px}
.tumble-cell{min-width:0;aspect-ratio:1.18;display:grid;place-items:center;position:relative;background:linear-gradient(135deg,#14383c,#0d262a);box-shadow:inset 0 0 20px #01111366;overflow:hidden}
.tumble-cell:nth-child(12n+7),.tumble-cell:nth-child(12n+8),.tumble-cell:nth-child(12n+9),.tumble-cell:nth-child(12n+10),.tumble-cell:nth-child(12n+11),.tumble-cell:nth-child(12n+12){background:linear-gradient(135deg,#0d2a30,#0a2025)}
.tumble-symbol{display:block;width:100%;height:100%;aspect-ratio:1;background-image:url('/assets/jester/premium/symbols.ca63f2f43911.webp');background-size:300% 300%;background-repeat:no-repeat;filter:drop-shadow(0 4px 3px #0005)}
.tumble-cell .tumble-symbol{width:80%;height:auto;max-height:none;aspect-ratio:1;translate:var(--symbol-x,0%) var(--symbol-y,0%)}
/* Optical centers measured from each jewel's opaque artwork, not atlas cell edges. */
.bs-0{--symbol-x:-2.9%;--symbol-y:-3.4%}.bs-1{--symbol-y:-4.1%}.bs-2{--symbol-x:2.2%;--symbol-y:-3.8%}
.bs-3{--symbol-x:-2.2%;--symbol-y:2%}.bs-4{--symbol-y:1.4%}.bs-5{--symbol-x:2.6%;--symbol-y:1.1%}
.bs-6{--symbol-x:-3.7%;--symbol-y:9.3%}.bs-7{--symbol-x:-.1%;--symbol-y:9%}.bs-8{--symbol-x:2.5%;--symbol-y:9.2%}
.bs-0{background-position:0 0}.bs-1{background-position:50% 0}.bs-2{background-position:100% 0}.bs-3{background-position:0 50%}.bs-4{background-position:50% 50%}.bs-5{background-position:100% 50%}.bs-6{background-position:0 100%}.bs-7{background-position:50% 100%}.bs-8{background-position:100% 100%}
.tumble-cell.is-win{background:radial-gradient(ellipse,#58633b,#1b3f30);box-shadow:inset 0 0 0 1px #f3d184,inset 0 0 20px #e9bb4c33}
.tumble-cell.is-win .tumble-symbol{filter:drop-shadow(0 0 9px #fbd26d99)}
.tumble-cell.is-scatter{background:radial-gradient(ellipse,#65592c,#163b38)}.tumble-cell.is-wild{background:radial-gradient(ellipse,#275947,#132f34)}
.is-spinning .tumble-cell .tumble-symbol{animation:tumble-spin .35s ease-in-out infinite alternate;opacity:.6}
@keyframes tumble-spin{from{transform:translateY(-8%);filter:blur(2px)}to{transform:translateY(8%);filter:blur(5px)}}
.tumble-meters{display:grid;grid-template-columns:1.3fr 1fr 1fr;max-width:820px;margin:14px auto 0;background:#071b20de;border:1px solid #d4b36a33;border-radius:8px;overflow:hidden}
.tumble-meters>div{padding:11px 6px;border-right:1px solid #d4b36a22}.tumble-meters>div:last-child{border:0}
.tumble-meters small{display:block;color:#abbaa9;font-size:8px;letter-spacing:1.2px;margin-bottom:5px}.tumble-meters strong{color:#f3d18b;font-size:clamp(12px,1.8vw,20px);font-variant-numeric:tabular-nums;font-weight:600}
#tumble-message{font-size:11px;color:#e0d4b5;min-height:16px;margin:13px 0 0}
.tumble-feature{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#051418ec;backdrop-filter:blur(8px);border-radius:8px;text-shadow:0 3px 16px #000}
.tumble-feature[hidden]{display:none}.tumble-feature .tumble-symbol{width:120px;height:120px}.tumble-feature small{font-size:9px;letter-spacing:4px;color:#b8d3c7}.tumble-feature strong{font-family:Georgia,serif;font-size:clamp(24px,3.5vw,45px);color:#f5d392;margin:14px 0 6px}.tumble-feature p{color:#d7e1d5;font-size:12px}
.is-bonus .tumble-frame{box-shadow:0 0 40px #f4c96038,0 0 0 3px #ae883d99}.is-bonus .tumble-title{color:#ffe6a9}
.is-anticipating .tumble-frame{box-shadow:0 0 32px #f4c96080,0 0 0 3px #edc97699}
.is-anticipating .tumble-cell.is-scatter{box-shadow:inset 0 0 0 1px #f4d583,inset 0 0 25px #ffce5155}
.tumble-help{padding:14px 18px;background:#0d1b20;border-top:1px solid #c5a26030;color:#bbc9c1;font-size:11px}.tumble-help summary{cursor:pointer;color:#e6d0a5;font-size:11px;display:flex;justify-content:space-between;gap:10px}.tumble-help summary span{font-size:9px;color:#9db4ab}.tumble-help p{line-height:1.7;margin:15px 0 0}
#tumble-paytable{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:13px}#tumble-paytable>div{display:flex;align-items:center;flex-direction:column;gap:5px;padding:5px;background:#142b2e;border-radius:6px}#tumble-paytable .tumble-symbol{width:48px;height:48px}#tumble-paytable b{font-size:10px;color:#e7d6ae}
#tumble-info[hidden]{display:none}
#game-page[data-game="tumble"] .result-strip{background:#0c1b20;border-top:1px solid #a0844933;font-size:12px;color:#ddd1b6;padding:14px}
@media(max-width:1000px){#game-page[data-game="tumble"] .game-layout{grid-template-columns:210px minmax(0,1fr)}#tumble-stage{padding:18px 12px}.tumble-frame{padding:6px}.tumble-title{font-size:37px}}
@media(max-width:760px){#game-page[data-game="tumble"] .game-layout{display:flex;flex-direction:column}#game-page[data-game="tumble"] .bet-panel{width:100%;padding:10px 15px}#game-page[data-game="tumble"] .play-surface{width:100%}#tumble-options{margin:0}.tumble-turbo-label{max-width:180px;margin:0!important}#tumble-options .input-hint{display:none}#tumble-stage{padding:15px 9px}.tumble-title{font-size:36px}.tumble-brand{font-size:7px}.tumble-brand b{font-size:8px}.tumble-frame{padding:5px}#tumble-grid{gap:1px;padding:1px}.tumble-cell{aspect-ratio:1}.tumble-cell .tumble-symbol{width:90%}.tumble-meters{margin-top:10px}.tumble-meters small{font-size:7px}.tumble-meters strong{font-size:13px}.tumble-feature .tumble-symbol{width:90px;height:90px}.tumble-help{padding:12px 10px}#tumble-paytable .tumble-symbol{width:36px;height:36px}#tumble-paytable b{font-size:8px}}
@media(prefers-reduced-motion:reduce){.is-spinning .tumble-cell .tumble-symbol{animation:none;filter:none}.tumble-turbo-label input::before{transition:none}}
.reduce-motion .is-spinning .tumble-cell .tumble-symbol{animation:none;filter:none}
#game-page[data-game="tumble"] .win-card{background:radial-gradient(ellipse at top,#375346,#091b20 70%);border:1px solid #e7c375;box-shadow:0 0 70px #dfb55644,0 18px 65px #000b;color:#ffe1a0}
#game-page[data-game="tumble"] .win-card strong{color:#ffe1a0;text-shadow:0 3px 0 #684216}
#game-page[data-game="tumble"] .win-caption,#game-page[data-game="tumble"] .win-spark{color:#eacb87}

/* Royal Revel cabinet; share only the existing Jester symbol atlas. */
#game-page[data-game="tumble"] .game-layout{background:#160c24;border-color:#b488d65c}
#game-page[data-game="tumble"] .bet-panel{background:linear-gradient(160deg,#261733,#150e23)}
#game-page[data-game="tumble"] .play-surface{background:#160c24}
#tumble-stage{background:linear-gradient(#1b0a2799,#150b20ed),url('/assets/tumble/banner-v2.4d81da39255a.webp') 70% center/cover}
.tumble-frame{background:linear-gradient(135deg,#d4aa5c,#f2db9a 12%,#6b3b7d 35%,#382047 60%,#d4aa5c);max-width:760px}
#tumble-grid{background:#160d23}
#tumble-grid .tumble-cell{background:radial-gradient(ellipse at top,#392044,#1c102b);aspect-ratio:1.18}
#tumble-grid .tumble-cell.is-win{background:radial-gradient(ellipse,#795038,#43234c);box-shadow:inset 0 0 0 1px #e8c67d,inset 0 0 30px #edb52b33}
#tumble-grid .tumble-cell.is-scatter{background:radial-gradient(ellipse,#69422f,#29152e)}
.tumble-cell .jester-symbol{width:91%;height:auto;max-height:none;aspect-ratio:1}
.tumble-cell.is-win .jester-symbol{filter:drop-shadow(0 0 7px #f5d18e)}
.tumble-title{font-size:clamp(28px,4vw,52px);margin:6px 0}
.tumble-title em{color:#c59aff;font-style:normal}
#tumble-phase{margin:7px 0 10px;color:#e2ccec}
.tumble-meters{max-width:760px;background:#21112de8;border-color:#b185cc55}
.tumble-meters small{color:#cdb9df}.tumble-meters strong{color:#ffe1a4}
#tumble-orb{max-width:760px;margin:0 auto 10px;border:1px solid #a475c255;border-radius:8px;padding:10px 5px;background:#21112de8;color:#baa1cf;font-size:10px;letter-spacing:1px;min-height:35px}
#tumble-orb.is-active{background:linear-gradient(90deg,#57266d,#422143);border-color:#ecc775;color:#ffe09a;box-shadow:0 0 24px #ca77ff38}
.tumble-feature{background:linear-gradient(90deg,#160824bb,#16082499),url('/assets/tumble/banner-v2.4d81da39255a.webp') 72% center/cover;backdrop-filter:none}
.tumble-feature strong,.tumble-feature small,.tumble-feature p{background:#190d29c9;padding:5px 12px;border-radius:5px}
.tumble-feature .jester-symbol{width:95px;height:95px}
.tumble-help{background:#21152c;color:#d5c5e3}.tumble-help summary{color:#f1d18e}
#tumble-paytable>div{background:#302039}#tumble-paytable .jester-symbol{width:48px;height:48px}
#tumble-options{display:flex;gap:8px;flex-direction:column}#tumble-buy{background:linear-gradient(120deg,#8050b4,#b77ce9);color:#fff1ce;border:1px solid #dbbd79;border-radius:8px;padding:12px 8px;font-weight:800}
.tumble-buy-art{height:190px;display:flex;flex-direction:column;justify-content:end;padding:20px;background:linear-gradient(0deg,#160b21dd,transparent),url('/assets/tumble/banner-v2.4d81da39255a.webp') 75% 40%/cover;border-radius:12px;color:#ffe4a6}.tumble-buy-art span{letter-spacing:3px;font-size:10px}.tumble-buy-art strong{font:700 30px Georgia,serif}
#lobby .game-tile [data-route="tumble"] .tumble-cover{background:linear-gradient(0deg,#12091eee,transparent 55%),url('/assets/tumble/card-v2.463d88c9b9d1.webp') center/cover!important;position:relative}
.tumble-cover::before,.tumble-cover::after{display:none!important}.tumble-cover .cover-title{position:absolute;bottom:20px;left:4px;right:4px;text-align:center;color:#ffe3a4;font:700 clamp(18px,2vw,29px)/1 Georgia,serif;text-shadow:0 3px 4px #000}
.recent-win-art[data-game="tumble"]{background:url('/assets/tumble/card-v2.463d88c9b9d1.webp') center/cover!important}
@media(max-width:760px){#tumble-stage{padding:12px 7px}.tumble-title{font-size:30px}#tumble-grid .tumble-cell{aspect-ratio:1.1}#tumble-options{flex-direction:row;align-items:center;justify-content:space-between}#tumble-buy{padding:8px;font-size:11px}#tumble-orb{font-size:8px;padding:8px 3px;letter-spacing:.5px}#tumble-paytable .jester-symbol{width:34px;height:34px}.tumble-feature strong{font-size:25px}}

#lobby [data-route="tumble"] .cover.tumble-cover{background:linear-gradient(0deg,#12091eee,transparent 55%),url("/assets/tumble/card-v2.463d88c9b9d1.webp") center/cover!important}
.chat-win-art[data-win-game="tumble"]{background:url("/assets/tumble/card-v2.463d88c9b9d1.webp") center/cover!important}

#lobby .game-tile .game[data-route="tumble"][data-art-pending] .cover{background-image:none!important}
#game-page[data-game="tumble"] .result-strip{background:#1c1028;color:#e4d5ed;border-color:#9b6fba44}
#tumble-orb.is-active::before{content:'✦';display:inline-grid;place-items:center;border-radius:50%;width:23px;height:23px;margin-right:10px;background:radial-gradient(circle at 30% 25%,#fff6d3,#e8b847 45%,#78470e);color:#5d3713;box-shadow:0 0 18px #f6cc6688;vertical-align:middle}
@media(max-width:760px){#game-page[data-game="tumble"] .bet-panel>#tumble-options{grid-column:1/-1;width:100%;margin:0;display:flex;gap:16px;justify-content:space-between}#tumble-options .tumble-turbo-label{width:auto;gap:12px;flex:none;margin:0!important}#tumble-buy{max-width:230px;white-space:nowrap;flex:1;font-size:11px;padding:10px 8px}#tumble-orb.is-active::before{width:17px;height:17px;margin-right:4px}}

/* Center each atlas symbol inside its cell; reserve room for the seal label. */
#tumble-grid .tumble-cell{display:grid;place-items:center;overflow:hidden;min-height:0}
#tumble-grid .tumble-cell>.jester-symbol{width:82%;height:auto;aspect-ratio:1;max-height:none;transform:none;margin:0;align-self:center;justify-self:center}
#tumble-grid .is-scatter>.jester-symbol{width:72%;translate:0 -2%}
#tumble-grid .seal-tag{font-size:clamp(6px,.7vw,9px);bottom:4%;letter-spacing:.4px}
#tumble-grid .is-wild{background:radial-gradient(ellipse,#864da2,#261236);box-shadow:inset 0 0 0 1px #edcd77,inset 0 0 22px #e0a8ff44}
.tumble-multiplier-symbol{display:grid;place-items:center;width:85%;aspect-ratio:1;background:url('/assets/tumble/royal-multiplier.df25497e578b.webp') center/contain no-repeat;filter:drop-shadow(0 3px 5px #0009)}
.tumble-multiplier-symbol b{color:#fff1b9;font:800 clamp(14px,2vw,29px)/1 Georgia,serif;text-shadow:0 2px 2px #000,0 0 4px #000;translate:0 8%;padding:0}
#tumble-orb{display:flex;align-items:center;justify-content:center;gap:8px;min-height:47px;padding:5px 8px}
#tumble-orb .tumble-multiplier-symbol{width:48px;flex:none}#tumble-orb .tumble-multiplier-symbol b{font-size:18px}#tumble-orb.is-active::before{display:none}
#tumble-stage{background:linear-gradient(#071f27b0,#0d1323ed),url('/assets/tumble/banner-v2.4d81da39255a.webp') 70% center/cover}
@media(max-width:760px){#tumble-grid .tumble-cell>.jester-symbol{width:83%}#tumble-grid .is-scatter>.jester-symbol{width:72%}.tumble-multiplier-symbol b{font-size:16px}#tumble-orb{font-size:8px;gap:4px}#tumble-orb .tumble-multiplier-symbol{width:38px}}

#tumble-grid{position:relative}
.tumble-wild-expansion{position:absolute;z-index:8;width:16.666667%;height:60%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(ellipse,#754489,#251532);border:2px solid #f0cf7a;border-radius:8px;box-shadow:0 0 25px #d696ed88;transform-origin:center;overflow:hidden}
.tumble-wild-expansion>.jester-symbol{width:96%;height:80%;aspect-ratio:auto}.tumble-wild-expansion .jester-art{background-size:391.35135% 272.18045%;height:65%;top:15%}.tumble-wild-expansion .jester-symbol-tag{display:none}
.tumble-wild-expansion>strong{color:#ffe3a4;font:700 clamp(8px,1.2vw,16px) Georgia,serif;position:absolute;bottom:7%;letter-spacing:1px}
.tumble-multiplier-symbol{position:relative}.tumble-multiplier-symbol b{position:absolute;left:50%;top:63%;transform:translate(-50%,-50%);translate:none;white-space:nowrap}

/* Fortune's character and exact expanding-wild treatment, sized to three cells. */
#tumble-grid .tumble-joker-overlay{inset:auto;width:16.666667%;height:60%;z-index:4;pointer-events:none;transform-origin:center}
#tumble-grid .tumble-joker-overlay img{object-fit:cover;object-position:center;height:100%;width:100%}
#tumble-grid .tumble-joker-overlay b{font-size:clamp(10px,1.5vw,20px);letter-spacing:1px}
#tumble-grid .is-awakening .jester-symbol{animation:jester-awakening .18s ease-in-out 2 alternate}
.tumble-multiplier-symbol{container-type:inline-size}
.tumble-multiplier-symbol b,#tumble-orb .tumble-multiplier-symbol b{left:20%;top:44%;width:60%;height:38%;transform:none;translate:none;display:grid;place-items:center;font-size:var(--multi-font,24cqw);line-height:1;letter-spacing:-.04em;color:#ffe7a1;text-shadow:0 1px 1px #000,0 0 3px #000;font-weight:800;text-align:center;padding:0}
#tumble-orb{display:grid;grid-template-columns:76px minmax(0,1fr) minmax(130px,.55fr);gap:14px;min-height:96px;padding:8px 18px;background:radial-gradient(ellipse at 10% 0%,#2e65624d,transparent 55%),linear-gradient(110deg,#152b31,#20132d 70%);border:1px solid #c1a65c88;border-radius:12px;box-shadow:inset 0 0 0 3px #d5b8770a,0 5px 20px #0005;text-align:left}
#tumble-orb .tumble-multi-crest .tumble-multiplier-symbol{width:76px;filter:drop-shadow(0 0 10px #b8ffda25)}
.tumble-multi-copy{display:grid;gap:8px}.tumble-multi-copy small{color:#f6d996;font:700 12px Georgia,serif;letter-spacing:2px}.tumble-multi-copy span{font-size:11px;line-height:1.4;color:#c7bbdb;letter-spacing:0}
.tumble-multi-total{border-left:1px solid #dfc98644;padding-left:18px;text-align:center}.tumble-multi-total small{display:block;color:#cdb99a;font-size:8px;letter-spacing:1.3px}.tumble-multi-total strong{display:block;font:700 clamp(28px,3.8vw,44px)/1.15 Georgia,serif;color:#ffe3a0;text-shadow:0 2px 0 #683f30,0 0 25px #edc77a35;font-variant-numeric:tabular-nums}
#tumble-orb.is-active{background:radial-gradient(ellipse at left,#336c5f55,transparent),linear-gradient(110deg,#183634,#311b3e);box-shadow:inset 0 0 18px #ffd78215,0 0 25px #c899ec22}
.tumble-multi-flying{position:absolute;z-index:20;pointer-events:none;color:#ffe8ad;font:800 clamp(22px,3vw,35px) Georgia,serif;text-shadow:0 0 5px #fff,0 0 20px #d999ff,0 2px 3px #000;white-space:nowrap}
.tumble-magic{position:absolute;inset:0;width:100%;height:100%;z-index:12;pointer-events:none;overflow:visible}.tumble-magic path{fill:none;stroke:#ffe4a4;stroke-width:2;filter:drop-shadow(0 0 4px #b2ffe9) drop-shadow(0 0 8px #a878f3)}
#tumble-grid .is-multiplied{box-shadow:inset 0 0 0 2px #ffe3a2,inset 0 0 30px #b0ffd944;background:radial-gradient(ellipse,#5d7061,#38204b)}
@media(max-width:760px){#tumble-orb{grid-template-columns:55px minmax(0,1fr) 84px;gap:7px;padding:7px 8px;min-height:77px}#tumble-orb .tumble-multi-crest .tumble-multiplier-symbol{width:55px}.tumble-multi-copy{gap:4px}.tumble-multi-copy small{font-size:9px;letter-spacing:.8px}.tumble-multi-copy span{font-size:8px}.tumble-multi-total{padding-left:7px}.tumble-multi-total small{font-size:6px;letter-spacing:.4px}.tumble-multi-total strong{font-size:30px}#tumble-grid .tumble-joker-overlay b{font-size:10px}}

.tumble-multiplier-art{display:block;object-fit:contain;background:none!important;border:0;aspect-ratio:1;max-width:100%;height:auto}
.tumble-multi-flying{width:62px;height:62px}.tumble-multi-flying .tumble-multiplier-symbol{width:100%;height:100%;max-width:none}
.tumble-win-overlay{position:fixed;inset:0;z-index:150;display:grid;place-items:center;padding:30px 18px;background:#041419d9;backdrop-filter:blur(7px)}.tumble-win-overlay[hidden]{display:none}
.tumble-win-card{position:relative;isolation:isolate;overflow:hidden;width:min(560px,100%);padding:60px 24px 28px;text-align:center;border:1px solid #e6c981;border-radius:120px 120px 22px 22px;background:radial-gradient(ellipse at 50% 0,#437d6477,transparent 65%),linear-gradient(140deg,#123a3d,#111427 70%);box-shadow:0 0 0 6px #dcbe6922,0 24px 90px #000b;color:#ffedc5;animation:tumble-win-entry .4s ease-out}
.tumble-win-card::before{content:'';position:absolute;inset:12px;border:1px solid #efd09255;border-radius:108px 108px 15px 15px;pointer-events:none}
.tumble-win-fan{position:absolute;inset:0 0 auto;height:200px;opacity:.35;z-index:-1}.tumble-win-fan i{position:absolute;left:50%;top:-36px;font-size:140px;color:#83d8b3;transform-origin:50% 100%;font-style:normal}.tumble-win-fan i:nth-child(1){transform:translateX(-50%) rotate(-62deg)}.tumble-win-fan i:nth-child(2){transform:translateX(-50%) rotate(-31deg)}.tumble-win-fan i:nth-child(3){transform:translateX(-50%)}.tumble-win-fan i:nth-child(4){transform:translateX(-50%) rotate(31deg)}.tumble-win-fan i:nth-child(5){transform:translateX(-50%) rotate(62deg)}
.tumble-win-kicker{display:block;font-size:9px;letter-spacing:4px;color:#b1dbc4}.tumble-win-card h2{font:700 clamp(37px,6vw,63px)/1 Georgia,serif;margin:16px 0 20px;color:#ffdfa0;text-shadow:0 3px #6a4222,0 0 35px #ffde9a44}.tumble-win-amount{font:700 clamp(27px,4vw,42px)/1.2 Georgia,serif;min-height:52px;font-variant-numeric:tabular-nums;color:#fff6dd;white-space:nowrap}
#tumble-win-basis{display:block;font-size:10px;letter-spacing:1px;color:#b5d7c4;margin-top:10px}#tumble-win-net{font-size:12px;color:#d5c6da;margin:12px 0 24px}.tumble-win-card button{min-width:180px;background:linear-gradient(120deg,#e1c683,#ffe2a6);color:#193c35;border:1px solid #ffeac5;border-radius:30px;min-height:44px}
.tumble-win-overlay[data-tier="mega"] .tumble-win-card{box-shadow:0 0 0 6px #dcbe6922,0 0 70px #8ac8a544}.tumble-win-overlay[data-tier="court"] .tumble-win-card{border-color:#ffe7a0;background:radial-gradient(ellipse at top,#996b3777,transparent 65%),linear-gradient(140deg,#28493a,#21132d);box-shadow:0 0 0 6px #dcbe6933,0 0 90px #dfb95c55}
@keyframes tumble-win-entry{from{opacity:0;transform:translateY(22px) scale(.92)}to{opacity:1;transform:none}}
@media(max-width:760px){.tumble-win-overlay{padding:20px 14px 110px}.tumble-win-card{padding:50px 16px 25px;border-radius:90px 90px 18px 18px}.tumble-win-card::before{border-radius:80px 80px 12px 12px}.tumble-win-card h2{font-size:42px}.tumble-win-amount{font-size:clamp(22px,7vw,34px)}.tumble-multi-flying{width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){.tumble-win-card{animation:none}}.reduce-motion .tumble-win-card{animation:none}

/* The Tumble crown artwork sits behind the celebration, distinct from Fortune's portrait. */
.tumble-win-card,.tumble-win-overlay[data-tier="court"] .tumble-win-card{background:linear-gradient(135deg,#092d2ee6,#19142be8),url('/assets/tumble/banner-v2.4d81da39255a.webp') 75% 40%/cover}
.tumble-win-fan{height:210px;opacity:.3;background:linear-gradient(0deg,#173031,transparent 85%),url('/assets/tumble/banner-v2.4d81da39255a.webp') 75% 28%/cover;mask-image:linear-gradient(#000,transparent)}.tumble-win-fan i{display:none}

/* Uniform cabinet scaling preserves the board, artwork and control proportions. */
#game-page[data-game="tumble"] .game-layout{zoom:.8;width:100%;margin-inline:auto}
/* Avoid offscreen blur passes across the animated board and bonus overlays. */
.tumble-magic path{filter:none;stroke-width:2.5}
.tumble-win-overlay,.tumble-feature{backdrop-filter:none}
#tumble-grid .tumble-cell>.jester-symbol,#tumble-grid .tumble-multiplier-art{filter:none}

/* /css/games/buffalo.css */
#game-page[data-game="buffalo"] .play-surface{padding:0;min-width:0;background:#08172c}#buffalo-stage{width:100%;max-width:1100px;padding:0;margin:auto;min-width:0}#buffalo-frame{display:block;width:100%;aspect-ratio:1000/740;border:0;border-radius:10px;background:#08172c}.buffalo-cover>img{width:100%;height:100%;object-fit:cover}.buffalo-cover{background:#10243b!important;overflow:hidden}@media(max-width:760px){#buffalo-stage{padding:0}#buffalo-frame{aspect-ratio:auto;height:clamp(560px,calc(100svh - 145px),720px)}#game-page[data-game="buffalo"] .bet-panel{display:none}}

/* /css/games/mines.css */
.mines-cover{background:radial-gradient(ellipse at 70% 10%,#7965c4,transparent 65%),linear-gradient(145deg,#2c274b,#443164)!important;overflow:hidden}
.mines-cover:before{display:none}.mines-cover .cover-title{position:absolute;bottom:23px;left:0;width:100%;text-align:center;margin:0;color:#f1e8ff;letter-spacing:3px}
.mines-cover-art{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:112px;position:absolute;left:50%;top:30px;transform:translateX(-50%) rotate(-12deg)}
.mines-cover-art i{display:grid;place-items:center;height:50px;border:1px solid #a697d8;border-radius:8px;background:linear-gradient(135deg,#8a72c3,#4a396f);box-shadow:0 5px 0 #2b2046,0 10px 20px #11091f66;font-style:normal;color:#c6b1ee}
.mines-cover-art .mines-icon{width:35px;height:35px}.mines-cover-art i:nth-child(2){background:#25574c;border-color:#63b89b}
#mines-options{margin-top:20px}#mines-options p{font-size:11px;color:#a9a1bc;line-height:1.6}
#mines-stage{padding:25px clamp(12px,3vw,40px);background:radial-gradient(ellipse at 50% 10%,#39305155,transparent 65%),#1c1926;border:1px solid #514261;border-radius:16px}
#mines-stage[hidden]{display:none}.mines-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:10px}.mines-heading small{display:block;color:#a99ac3;font-size:9px;letter-spacing:2px;margin-bottom:6px}.mines-heading h3{font-size:26px;margin:0;color:#f0e8ff;letter-spacing:-.6px}.mines-heading>span{font-size:10px;border:1px solid #7e659555;border-radius:30px;padding:8px 12px;color:#cab4e0;background:#39304755}
.mines-counters{display:flex;justify-content:space-between;margin:0 auto 13px;max-width:490px;font-size:11px;color:#c4b7d4}.mines-counters span:first-child{color:#95ddbd}
#mines-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;max-width:490px;margin:auto;padding:4px 2px 10px}
.mines-tile{aspect-ratio:1;min-height:0;min-width:0;padding:16%;display:grid;place-items:center;border-radius:12px;border:1px solid #82679e66;background:linear-gradient(145deg,#57406f,#3d3053);box-shadow:0 5px 0 #251d36,inset 0 1px #ac8fbc44;color:#a385bb;transition:background .15s,box-shadow .15s;cursor:pointer}
.mines-tile:not(:disabled):hover{background:linear-gradient(145deg,#756090,#59436f);box-shadow:0 5px 0 #302340,0 0 18px #bd8be52b;color:#e2caf6}.mines-tile:focus-visible{outline:2px solid #d6f76f;outline-offset:3px}
.mines-icon{width:100%;height:100%;overflow:visible;pointer-events:none;filter:drop-shadow(0 3px 2px #0003)}
.mines-tile:disabled{opacity:1;cursor:default}.mines-tile.safe{background:radial-gradient(ellipse,#39604f,#233a35);border-color:#6ddbaf66;box-shadow:0 3px 0 #142922,inset 0 0 18px #79e7b61a}
.mines-tile.mine{background:#332935;box-shadow:0 3px 0 #201923;opacity:.55}.mines-tile.exploded{background:radial-gradient(ellipse,#814753,#482939);border-color:#f08c97;box-shadow:0 3px 0 #361c2a,0 0 22px #e6758733}.mines-tile.unpicked{background:#252630;box-shadow:0 3px 0 #1a1923;border-color:#3f3d4c}.mines-tile.unpicked .mines-icon{opacity:.25}
.mines-stats{display:grid;grid-template-columns:1.4fr 1fr 1fr;max-width:490px;margin:16px auto 0;border:1px solid #574966;border-radius:12px;background:#17151f;overflow:hidden}.mines-stats>div{padding:15px 10px;border-right:1px solid #40354d}.mines-stats>div:last-child{border:0}.mines-stats small{display:block;font-size:8px;letter-spacing:1px;color:#aa9bba;margin-bottom:8px}.mines-stats strong{font-size:clamp(14px,1.6vw,21px);color:#d6f76f;font-variant-numeric:tabular-nums}.mines-stats>div:last-child strong{color:#ccbae7}
#mines-hint{text-align:center;font-size:12px;color:#c3b7ce;min-height:18px;margin:18px 0 10px}#mines-chance{text-align:center;font-size:10px;color:#90839f;margin:0}.mines-collected .mines-stats{border-color:#9aca6577}.mines-lost .mines-stats strong{color:#d8b0c4}
#mines-ladder{display:flex;gap:8px;max-width:490px;margin:18px auto 0}#mines-ladder>div{flex:1;background:#25202f;border:1px solid #493c59;border-radius:8px;text-align:center;padding:10px 4px}#mines-ladder small{display:block;font-size:8px;letter-spacing:1px;color:#9e8fb3;margin-bottom:5px}#mines-ladder b{font-size:12px;color:#c8b4df}#mines-ladder .next{border-color:#91b95066;background:#a5c2580a}#mines-ladder .next b{color:#d6f76f}
@media(max-width:760px){#mines-stage{padding:17px 12px;border-radius:12px}.mines-heading h3{font-size:22px}.mines-heading small{font-size:8px}.mines-heading>span{font-size:8px;padding:7px 9px}.mines-heading{margin-bottom:17px}#mines-grid{gap:8px}.mines-tile{border-radius:9px}.mines-stats>div{padding:12px 7px}.mines-stats small{font-size:7px}.mines-stats strong{font-size:14px}#mines-options{margin:0}#mines-options p{display:none}#mines-ladder{gap:5px}#mines-ladder b{font-size:11px}#mines-ladder small{font-size:7px}.mines-cover-art{width:92px;top:28px}.mines-cover-art i{height:40px}.mines-cover-art .mines-icon{width:28px;height:28px}}
@media(prefers-reduced-motion:reduce){.mines-tile{transition:none}}.reduce-motion .mines-tile{transition:none}

/* /css/games/popworks.css */
.popworks-cover{background:#152b31;position:relative;overflow:hidden}.popworks-cover img{width:100%;height:100%;object-fit:contain!important}.popworks-cover strong{position:absolute;top:6%;left:8%;text-align:left;color:#fff2d6;font:900 clamp(14px,1.4vw,22px)/1.1 Georgia,serif;letter-spacing:.02em;text-shadow:0 2px 3px #102b2f}.popworks-cover small{position:absolute;bottom:4%;left:0;width:100%;text-align:center;font-size:8px;letter-spacing:.16em;color:#fff2d6}
#popworks-stage{--balloon-scale:.47;--stroke-time:.72s;min-width:0;border:1px solid #51716a;border-radius:18px;overflow:hidden;background:#11252b;color:#fff0dc;box-shadow:0 18px 60px #0005;font-family:inherit}
#popworks-stage[hidden]{display:none!important}.pw-heading{position:relative;z-index:3;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:19px 24px;background:linear-gradient(100deg,#15383a,#14292f);border-bottom:1px solid #68847755}.pw-heading small{display:block;letter-spacing:.23em;color:#a5d0ba;font-size:9px;font-weight:800}.pw-heading h2{margin:4px 0 0;font:900 clamp(24px,3vw,36px)/1 Georgia,serif;letter-spacing:.02em;color:#fff1d5}.pw-preferences{display:flex;gap:14px;align-items:center}.pw-preferences label{display:flex!important;gap:6px;align-items:center!important;flex-direction:row!important;margin:0!important;white-space:nowrap;font-size:11px!important;color:#d1e1d5!important;cursor:pointer}.pw-preferences input{width:15px!important;height:15px;accent-color:#f6bd78;margin:0!important}
.pw-arena{position:relative;isolation:isolate;aspect-ratio:16/9;min-height:330px;max-height:560px;overflow:hidden;background:#143039 url('/assets/popworks/workshop.webp') center/100% 100% no-repeat}.pw-arena:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#10272b3d,transparent 60%,#071b2566);pointer-events:none}.pw-live{position:absolute;left:4%;top:6%;z-index:3;display:flex;flex-direction:column;gap:5px}.pw-live small{font-size:9px;color:#accdbd;font-weight:800;letter-spacing:.16em}.pw-live strong{font:800 clamp(30px,5vw,62px)/1.1 Georgia,serif;color:#fff5db;text-shadow:0 3px 15px #0008;font-variant-numeric:tabular-nums}.pw-live span{align-self:flex-start;border:1px solid #71aa9644;background:#102d2bd9;border-radius:30px;padding:5px 10px;color:#b7dbc7;font-size:10px}.pw-next{position:absolute;right:4%;top:7%;text-align:right;z-index:3}.pw-next small{display:block;color:#afc9bb;font-size:8px;font-weight:800;letter-spacing:.1em}.pw-next b{display:block;margin-top:5px;font-size:21px;color:#edc794;font-variant-numeric:tabular-nums}
.pw-balloon-anchor{position:absolute;left:40%;bottom:19%;width:42%;height:87%;transform:translateX(-50%);z-index:2;pointer-events:none}.pw-balloon{height:100%;width:100%;position:absolute;bottom:0;transform-origin:50% 99%;transform:scale(var(--balloon-scale));transition:transform .42s cubic-bezier(.2,.9,.2,1.25),opacity .15s;filter:drop-shadow(0 12px 18px #07161c77)}.pw-balloon img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}.pw-balloon:after{content:'';position:absolute;top:99%;left:50%;width:2px;height:35px;background:#ffe3ac;opacity:.75;transform:rotate(-8deg);transform-origin:top}.pw-hose{position:absolute;left:35%;bottom:9%;width:37%;height:23%;overflow:visible;z-index:1}.pw-hose path{fill:none;stroke:#072426;stroke-width:13;stroke-linecap:round}.pw-hose path+path{stroke:#529a87;stroke-width:5}.pw-pump-unit{position:absolute;bottom:7%;right:15%;height:48%;width:25%;z-index:2}.pw-pump-body{position:absolute;bottom:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;z-index:2}.pw-handle{position:absolute;left:50%;bottom:66%;width:52%;height:52%;transform:translateX(-50%);z-index:1;transform-origin:50% 100%}.pw-handle:before{content:'';position:absolute;bottom:0;left:calc(50% - 4px);height:90%;width:8px;background:linear-gradient(90deg,#6c4e37,#f2d1a0,#9b7354);border-radius:2px;box-shadow:2px 0 2px #0004}.pw-handle:after{content:'';position:absolute;top:0;left:0;width:100%;height:17%;min-height:12px;max-height:22px;border:2px solid #79513b;border-radius:12px;background:linear-gradient(#e9b477,#8d5236);box-shadow:0 3px 3px #0007}.pw-floor-shadow{position:absolute;bottom:12%;left:22%;width:35%;height:5%;border-radius:50%;background:#071b2388;filter:blur(8px)}.pw-pressure{position:absolute;bottom:6%;left:5%;font-size:8px;letter-spacing:.12em;color:#b6c4b5;z-index:2}.pw-pressure i{display:inline-block;margin-right:8px;width:6px;height:6px;background:#8fc5a3;border-radius:50%;box-shadow:0 0 8px #8fc5a3}
.pw-stroke .pw-handle{animation:pw-pump var(--stroke-time) ease-in-out}.pw-stroke .pw-hose path+path{animation:pw-air var(--stroke-time) ease-in-out}.pw-inflating .pw-balloon img{animation:pw-wobble .4s ease-out}.pw-lost .pw-balloon{opacity:0;transform:scale(calc(var(--balloon-scale) * 1.05))}.pw-fragments{position:absolute;left:40%;top:46%;width:0;height:0;z-index:4;pointer-events:none}.pw-fragments i{position:absolute;width:17px;height:11px;border-radius:2px 80% 6px 60%;background:#ff8867;opacity:0}.pw-fragments i:nth-child(3n){background:#ffd1a5}.pw-impact .pw-fragments i{animation:pw-fragment .7s var(--delay) ease-out both}.pw-impact .pw-arena{animation:pw-shake .3s ease-out}.pw-impact .pw-burst-ring{animation:pw-ring .5s ease-out}.pw-burst-ring{position:absolute;left:40%;top:46%;width:100px;height:100px;border:3px solid #ffe2bb;border-radius:50%;opacity:0;transform:translate(-50%,-50%);pointer-events:none;z-index:3}.pw-collected .pw-balloon{transform:translateY(-8%) scale(var(--balloon-scale));filter:drop-shadow(0 0 26px #98e4bf80)}.pw-collected .pw-balloon img{animation:pw-float 2.4s ease-in-out infinite}.pw-result-ribbon{position:absolute;left:50%;bottom:12%;width:74%;transform:translateX(-50%) translateY(18px);opacity:0;text-align:center;padding:14px;background:linear-gradient(90deg,#173f38e6,#1e5646f5,#173f38e6);border:1px solid #a6d8a7;border-radius:10px;z-index:5;pointer-events:none;transition:.35s}.pw-result-ribbon b{font:800 clamp(18px,3vw,32px)/1.15 Georgia,serif;color:#e2ffdb}.pw-collected .pw-result-ribbon{opacity:1;transform:translateX(-50%) translateY(0)}
.pw-dashboard{padding:17px 23px 19px;background:linear-gradient(#163237,#10272d);border-top:1px solid #608b7955}.pw-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.pw-stats>div{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #92b29922;padding-bottom:11px}.pw-stats small{font-size:8px;letter-spacing:.1em;color:#a6c5b5;font-weight:800}.pw-stats strong{font-size:17px;font-variant-numeric:tabular-nums;color:#fff0d1}.pw-footer{display:flex;justify-content:space-between;align-items:center;gap:16px}.pw-status{min-width:0}.pw-status p{margin:0 0 4px;font-weight:800;font-size:13px;color:#fce3bc}.pw-status span{font-size:10px;color:#a8c7bb;display:block}.pw-buttons{display:flex;gap:8px;flex-shrink:0}#popworks-stage .pw-buttons button{border:1px solid #edc188;background:linear-gradient(#ffdda5,#e9ac6b);color:#302b25;min-height:47px;border-radius:10px;font-size:13px;font-weight:900;padding:0 23px;box-shadow:0 3px 0 #805d3f;white-space:nowrap}#popworks-stage .pw-buttons #pw-collect{background:linear-gradient(#a5d7ba,#6ab595);border-color:#9dd0b3;color:#163b32;box-shadow:0 3px 0 #365f51}#popworks-stage .pw-buttons button:disabled{opacity:.5;cursor:not-allowed}#popworks-stage .pw-buttons button:not(:disabled):hover{filter:brightness(1.08)}#popworks-stage .pw-buttons button:not(:disabled):active{transform:translateY(2px);box-shadow:0 1px 0 #805d3f}.pw-footnote{display:flex;justify-content:space-between;gap:10px;padding:9px 23px;background:#102228;font-size:8px;color:#81a796}.pw-footnote a{color:#a4c6af}
@keyframes pw-pump{0%,100%{transform:translateX(-50%) translateY(0)}45%,60%{transform:translateX(-50%) translateY(38%)}}@keyframes pw-air{0%,100%{stroke:#529a87}45%,65%{stroke:#c6f7be;filter:drop-shadow(0 0 3px #8dd9bb)}}@keyframes pw-wobble{0%{transform:scale(.98,1.02) rotate(-1deg)}45%{transform:scale(1.03,.97) rotate(1deg)}100%{transform:none}}@keyframes pw-fragment{0%{opacity:1;transform:translate(0,0) rotate(0)}80%{opacity:.8}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r)) scale(.5)}}@keyframes pw-ring{0%{opacity:.7;transform:translate(-50%,-50%) scale(.6)}100%{opacity:0;transform:translate(-50%,-50%) scale(3)}}@keyframes pw-shake{0%,100%{transform:none}25%{transform:translate(-3px,2px)}50%{transform:translate(3px,-1px)}75%{transform:translate(-2px,1px)}}@keyframes pw-float{50%{transform:translateY(-5px) rotate(1deg)}}
@media(max-width:1100px){.pw-heading{padding:16px 18px}.pw-footer{flex-wrap:wrap}.pw-buttons{margin-left:auto}.pw-dashboard{padding:15px 18px}.pw-arena{min-height:310px}}@media(max-width:600px){.pw-heading{padding:14px}.pw-heading h2{font-size:26px}.pw-heading small{font-size:7px}.pw-preferences{gap:10px}.pw-preferences label{font-size:10px!important}.pw-arena{aspect-ratio:1/1.05;min-height:0;max-height:none;background-size:auto 100%;background-position:center}.pw-live{left:5%;top:5%}.pw-live strong{font-size:39px}.pw-live span{font-size:8px;padding:4px 7px}.pw-live small{font-size:7px}.pw-next{top:6%;right:5%}.pw-next small{font-size:7px;max-width:110px}.pw-next b{font-size:21px}.pw-balloon-anchor{left:37%;width:55%;height:68%;bottom:22%}.pw-pump-unit{height:37%;width:30%;right:9%;bottom:12%}.pw-hose{left:31%;bottom:14%;width:42%;height:21%}.pw-floor-shadow{bottom:16%;left:16%;width:40%}.pw-pressure{bottom:5%;font-size:7px}.pw-fragments,.pw-burst-ring{left:37%;top:48%}.pw-dashboard{padding:13px}.pw-stats{gap:12px;margin-bottom:12px}.pw-stats>div{display:block}.pw-stats small{display:block;font-size:7px;margin-bottom:5px}.pw-stats strong{font-size:17px}.pw-footer{gap:13px}.pw-status{width:100%}.pw-status p{font-size:13px}.pw-status span{font-size:10px}.pw-buttons{width:100%;margin:0}.pw-buttons button{flex:1;min-width:0;padding:0 10px!important;font-size:13px!important}.pw-footnote{padding:8px 13px;font-size:7px}.pw-result-ribbon{bottom:10%;width:84%;padding:12px}.pw-result-ribbon b{font-size:22px}}
@media(prefers-reduced-motion:reduce){#popworks-stage *{animation:none!important;transition:none!important}}

body.reduce-motion #popworks-stage *{animation:none!important;transition:none!important}
@media(max-width:760px){#game-page[data-game="popworks"] .bet-panel{grid-template-columns:1fr}body[data-page="game"]:has(#game-page[data-game="popworks"]) #recovery{bottom:calc(125px + env(safe-area-inset-bottom));z-index:48;max-height:190px;overflow:auto}}

.pw-result-ribbon small{display:block;color:#add8ba;font-size:9px;letter-spacing:.16em;font-weight:800;margin-bottom:6px}.pw-result-ribbon b{display:block}.pw-result-ribbon span{display:block;font-size:13px;font-weight:800;color:#fff0cc;margin-top:5px}.pw-collected .pw-fragments i{background:#c9efb4;animation:pw-fragment 1.1s var(--delay) ease-out both}.pw-stats small{font-size:10px}.pw-live small{font-size:10px}.pw-next small{font-size:9px}.pw-status span{font-size:12px}.pw-preferences label{font-size:12px!important}.pw-footnote{font-size:9px}@media(max-width:600px){.pw-stats small{font-size:9px}.pw-live small{font-size:8px}.pw-next small{font-size:8px}.pw-status span{font-size:11px}.pw-preferences label{font-size:10px!important}.pw-footnote{font-size:8px}}

@media(max-width:600px){.pw-hose{width:46.5%;bottom:10%}}

/* /css/games/chicken.css */
/* All roads share the same proportions; the camera follows the chicken horizontally. */
#chicken-stage{padding:clamp(14px,2vw,26px);border:1px solid #65527d;border-radius:18px;background:radial-gradient(ellipse at 80% 0,#58408166,transparent 60%),linear-gradient(145deg,#21192f,#110f1d);overflow:hidden;min-width:0;width:100%;box-sizing:border-box}
#chicken-stage[hidden]{display:none}
.chicken-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.chicken-heading small{font-size:9px;letter-spacing:2px;color:#b7a3cf}.chicken-heading h2{font:900 clamp(28px,3vw,44px)/1.1 Georgia,serif;color:#ffdf8b;letter-spacing:2px;margin:5px 0 0;text-shadow:0 3px #55301c}.chicken-heading>span{color:#d9c7ef;border:1px solid #7b609d;border-radius:30px;font-size:11px;padding:8px 12px;text-transform:uppercase;letter-spacing:1px}
#chicken-road-viewport{width:100%;overflow-x:auto;overflow-y:hidden;border:1px solid #655d75;border-radius:12px;scrollbar-width:thin;scrollbar-color:#8c6cb4 #171420;background:#252332;overscroll-behavior-x:contain}
#chicken-road{--lane-width:112px;position:relative;display:flex;width:calc(var(--lane-width) * var(--lane-count));height:clamp(228px,29vw,300px);isolation:isolate;background:linear-gradient(#11101bd9,transparent 30%,transparent 70%,#11101bdd),#292634}
.chicken-lane,.chicken-sidewalk{width:var(--lane-width);flex:0 0 var(--lane-width);position:relative;box-sizing:border-box;overflow:hidden}.chicken-lane{border-right:2px dashed #b7a99355;background:linear-gradient(90deg,#ffffff03,transparent 50%,#0002)}.chicken-lane:after{content:'';position:absolute;top:0;bottom:0;left:8px;width:1px;background:#ffffff04}.chicken-lane>small{position:absolute;top:12px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:1px;color:#b8afc6;z-index:2}.chicken-lane-win{position:absolute;left:9px;right:9px;bottom:17px;text-align:center;padding:9px 2px;border:1px solid #827089;border-radius:25px;background:#1a1624f0;color:#e8d9fe;font-size:15px;font-weight:800;z-index:2;box-shadow:0 3px 0 #100d17}.chicken-lane.next .chicken-lane-win{border-color:#ffdc83;color:#ffdc83;box-shadow:0 0 20px #eeb84422}.chicken-lane.passed{background:#30776022}.chicken-lane.passed .chicken-lane-win{background:#173f38;color:#9af3d6;border-color:#67bba2}.chicken-lane.passed .chicken-car{display:none}
.chicken-sidewalk{background:repeating-linear-gradient(0deg,transparent 0 23px,#645b7322 24px 25px),repeating-linear-gradient(90deg,#342c47 0 54px,#534761 55px 56px);border-right:5px solid #867886;box-shadow:6px 0 10px #0005}.chicken-sidewalk>span{position:absolute;top:14px;width:100%;text-align:center;color:#dac4e9;font-size:10px;letter-spacing:2px}.chicken-sidewalk.finish{border-right:0;border-left:5px solid #d2b464;background-color:#43332b}.chicken-sidewalk i{position:absolute;width:60px;height:60px;left:22px;top:calc(50% - 30px);border-radius:50%;border:2px dashed #b4a06a66}
.chicken-car{position:absolute;width:52px;height:auto;max-width:none;left:28px;top:-130px;filter:drop-shadow(5px 9px 3px #0007);animation:chicken-drive var(--drive) linear var(--delay) infinite;opacity:.8}.chicken-lane:nth-child(2n) .chicken-car{rotate:180deg;animation-direction:reverse}.chicken-lane.crash{background:#a6323b33}.chicken-lane.crash .chicken-car{animation:none;top:calc(50% - 52px);opacity:1;z-index:4}.chicken-lane.crash .chicken-lane-win{border-color:#ed8397;background:#4b202c;color:#ffbfca}
#chicken-runner{position:absolute;left:14px;top:calc(50% - 43px);height:86px;width:84px;background:center/contain no-repeat url('/assets/chicken/chicken-1.png');z-index:5;filter:drop-shadow(0 10px 4px #0007);transition:left .42s cubic-bezier(.3,.7,.2,1);pointer-events:none}
#chicken-runner.hopping{animation:chicken-hop .42s ease-out,chicken-flap .42s steps(1)}#chicken-runner.hit{background-image:url('/assets/chicken/chicken-hit.png');filter:drop-shadow(0 6px 5px #f56f8b77);rotate:-12deg}#chicken-runner.collected{filter:drop-shadow(0 0 14px #ffe7a288)}
.chicken-stats{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:10px;margin-top:14px}.chicken-stats>div{background:#100d19aa;border:1px solid #594569;border-radius:10px;padding:12px}.chicken-stats small{display:block;font-size:9px;letter-spacing:1px;color:#b3a4c9;margin-bottom:6px}.chicken-stats strong{font-size:clamp(16px,2vw,23px);color:#ffdf94;font-variant-numeric:tabular-nums}.chicken-stats>div:first-child strong{color:#a9f2d9}
.chicken-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px}.chicken-controls>div{min-width:0}.chicken-controls p{margin:0 0 5px;color:#e1d4f0;font-size:13px}#chicken-progress{color:#a594b8;font-size:11px}#chicken-step{flex-shrink:0;min-height:46px;padding:10px 20px;background:linear-gradient(#ffdf86,#e6ae4e);color:#271c0b;box-shadow:0 3px 0 #83602c;border:0;border-radius:10px;font-weight:800}#chicken-step[hidden]{display:none}#chicken-step:disabled{opacity:.5;cursor:wait}
#chicken-chance{margin:14px 0 0;font-size:10px;color:#b3a1c6;letter-spacing:.3px}.chicken-credit{font-size:9px;color:#9a8aaa;display:inline-block;margin-top:8px}#chicken-options{margin-top:16px}
#lobby .game-tile [data-route="chicken"] .chicken-card{background-image:linear-gradient(0deg,#110b22dd,transparent 32%),url('/assets/chicken/card.9a947a802644.webp');background-size:cover;background-position:center 42%}#lobby .chicken-card .reference-card-title{font-size:clamp(18px,2.2vw,30px);color:#ffdd80;text-shadow:0 3px 3px #16101c;letter-spacing:1px}
[data-win-game="chicken"]{background-image:url('/assets/chicken/card.9a947a802644.webp')!important;background-size:cover!important;background-position:center!important}
@keyframes chicken-drive{to{top:calc(100% + 130px)}}@keyframes chicken-hop{50%{transform:translateY(-22px) rotate(-6deg)}}@keyframes chicken-flap{25%{background-image:url('/assets/chicken/chicken-2.png')}50%{background-image:url('/assets/chicken/chicken-3.png')}75%{background-image:url('/assets/chicken/chicken-4.png')}}
@media(max-width:600px){#chicken-stage{padding:12px}.chicken-heading{margin-bottom:12px}.chicken-heading>span{font-size:9px;padding:7px 9px}#chicken-road{--lane-width:96px;height:230px}.chicken-car{left:22px}.chicken-stats{gap:6px}.chicken-stats>div{padding:10px 7px}.chicken-stats small{font-size:8px;letter-spacing:.3px}.chicken-controls{flex-wrap:wrap}.chicken-controls>div{flex:1 1 150px}#chicken-step{flex:1 1 130px}.chicken-controls p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.chicken-car{animation:none;top:-140px}#chicken-runner{transition:none}#chicken-runner.hopping{animation:none}}

/* The car shares the road stacking context, above the runner only during impact. */
.chicken-lane.crash{z-index:6;overflow:visible}.chicken-lane.crash .chicken-car{z-index:6;rotate:180deg;animation-direction:normal}.chicken-lane.crash.collision-wait .chicken-car{visibility:hidden}.chicken-lane.crash.impact-run .chicken-car{animation:chicken-impact 1s linear forwards;animation-delay:0s;top:-130px}#chicken-runner.hit{transform:scaleY(.45) rotate(-12deg);transform-origin:center 75%;transition:left .42s cubic-bezier(.3,.7,.2,1),transform .12s ease-out}
@keyframes chicken-impact{0%{top:-130px}50%{top:calc(50% - 52px)}100%{top:calc(100% + 130px)}}
@media(prefers-reduced-motion:reduce){.chicken-lane.crash.impact-run .chicken-car{animation:none;top:calc(50% - 52px)}}

/* /css/games/lanes.css */
#lanes-stage{width:100%;min-width:0;border:1px solid #66506f;border-radius:16px;overflow:hidden;background:#101725}
#lanes-stage[hidden]{display:none}
#lanes-frame{display:block;border:0;width:100%;height:min(76vh,760px);min-height:360px;background:#101725}
#game-page[data-game="lanes"] .game-layout{grid-template-columns:minmax(0,1fr);background:transparent;border:0}
#game-page[data-game="lanes"] .bet-panel,#game-page[data-game="lanes"] #mobile-bet-dock{display:none!important}
#game-page[data-game="lanes"] .game-area{padding:0;min-width:0}
#lobby .game[data-route="lanes"] .lanes-cover{position:relative;background-image:linear-gradient(transparent 43%,#111728ee 100%),url('/assets/lanes/lobby-art.54b52fd6210d.webp');background-size:cover;background-position:77% center}
#lobby .game[data-route="lanes"] .lanes-cover .reference-card-title{font-family:Trebuchet MS,Arial,sans-serif;font-weight:1000;color:#fff0c8;font-size:clamp(18px,2vw,30px);text-shadow:0 3px #9d433e,0 4px 8px #071018}
@media(max-width:760px){#lanes-frame{height:65dvh;min-height:390px}#lobby .game[data-route="lanes"] .lanes-cover .reference-card-title{font-size:18px}}

/* One cabinet size for reels, transition, bowling and ball return. */
#lanes-frame{aspect-ratio:1672/941;height:auto;min-height:0}
@media(max-width:760px) and (orientation:portrait){#lanes-frame{aspect-ratio:auto;height:65dvh;min-height:360px}}

/* /css/shell/loading.css */
.page-loader{position:fixed;inset:0;z-index:150;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;background:#11141be8;backdrop-filter:blur(12px);color:#dce7e4}
.page-loader[hidden]{display:none}
.page-loader-mark{width:94px;height:94px;position:relative;display:grid;place-items:center}
.page-loader-mark img{width:52px;height:52px;border-radius:13px;box-shadow:0 0 40px #39e5bb12}
.page-loader-mark::before,.page-loader-mark::after{content:'';position:absolute;inset:0;border:1px solid #39e5bb1c;border-radius:50%}
.page-loader-mark::after{border:2px solid transparent;border-top-color:#70e8cd;border-right-color:#70e8cd55;animation:nexttal-loading 1.1s linear infinite}
.page-loader p{font-size:12px;letter-spacing:.03em;margin:0;color:#b8c9c4}
@keyframes nexttal-loading{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.page-loader-mark::after{animation:none}}
.reduce-motion .page-loader-mark::after{animation:none}

/* /css/payments/deposits.css */
.purchase-intro h3 { font-size:clamp(26px,4vw,36px);letter-spacing:-1px;margin:12px 0; }
.popup-package { display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px;margin:18px 0;border:1px solid #a785df;border-radius:18px;background:linear-gradient(140deg,#32283f,#24271d);text-align:center; }
.popup-package-price { font-size:32px;font-weight:800;color:#fff; }.popup-package>strong { font-size:24px;color:#fff; }.popup-package small { max-width:360px;color:#d0c4dc;font-size:12px;line-height:1.6; }.popup-package .package-sc { font-size:21px; }.popup-package .eyebrow { font-size:10px; }
.purchase-intro p,.purchase-boost p,.purchase-note p,.wallet-purchase p { color:var(--muted,#c8b8d5);line-height:1.65; }
.purchase-steps { display:flex;gap:10px;list-style:none;padding:0;margin:22px 0;flex-wrap:wrap; }
.purchase-steps li { padding:9px 14px;border-radius:30px;background:#251d30;color:#c8b8d5;font-size:12px; }
.purchase-steps .current { color:#e4f6a0;background:#354025; }
.purchase-boost,.purchase-note,.wallet-purchase,.wallet-details { border:1px solid #50405f;border-radius:16px;padding:20px;margin:18px 0;background:#21192c; }
.purchase-boost h3,.wallet-purchase h3 { margin:6px 0; }.purchase-boost select { width:100%; }
.purchase-packages { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px; }
.purchase-package { display:flex;flex-direction:column;gap:10px;align-items:flex-start;text-align:left;min-width:0;background:#211a2b;border:1px solid #544360;border-radius:16px;padding:20px;color:#f8f1ff;transition:border-color .15s,background .15s; }
.purchase-package.selected { border:2px solid #d6f56a;padding:19px;background:linear-gradient(140deg,#343426,#282030); }
.purchase-package:disabled { opacity:.45; }.purchase-package:focus-visible { outline:3px solid #d6f56a;outline-offset:3px; }
.package-price { font-size:25px;font-weight:800; }.purchase-package strong { font-size:20px; }.purchase-package small { color:#c9bbd4;font-size:11px;line-height:1.6; }.package-sc { color:#e1f48c;font-weight:700; }.package-extra { background:#41472c;color:#e1f48c;border-radius:5px;padding:5px 7px;font-size:11px;overflow-wrap:anywhere; }
.purchase-method { margin:26px 0; }.purchase-method-options { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }
.purchase-summary { display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;background:#302537;border-radius:16px; }.purchase-summary strong,.purchase-summary small { display:block;margin:6px 0; }.purchase-summary small { color:#c8b8d5; }.purchase-summary strong { font-size:18px; }.purchase-summary button { flex-shrink:0; }
.wallet-purchase { display:flex;gap:20px;align-items:center;justify-content:space-between; }.wallet-purchase button { flex-shrink:0; }.wallet-purchase small { color:#c8b8d5;line-height:1.6; }.wallet-details summary,.deposit-timing summary { cursor:pointer;font-weight:700; }
.campaign-packages { border:1px solid #50405f;border-radius:12px;margin:20px 0;padding:16px; }.campaign-packages label { display:inline-flex;align-items:center;gap:6px;padding:10px;min-width:85px; }.campaign-packages input { width:auto; }.deposit-campaigns { margin:24px 0; }
@media(max-width:650px) { .purchase-packages { grid-template-columns:repeat(2,minmax(0,1fr));gap:8px; }.purchase-package { padding:14px; }.purchase-package.selected { padding:13px; }.purchase-package strong { font-size:16px; }.purchase-summary,.wallet-purchase { flex-direction:column;align-items:stretch; }.purchase-method-options { grid-template-columns:1fr; }.purchase-method-options .deposit-method { display:flex; }.purchase-summary button { width:100%; } }
.deposit-heading { padding:8px 0 22px; }
.deposit-heading h3 { font-size:clamp(28px,4vw,42px); letter-spacing:-1.2px; line-height:1.12; margin:12px 0; }
.deposit-heading p,.deposit-guide p,.deposit-help p,.coinbase-offer p,.boost-owner-intro p { color:#c8b8d5; line-height:1.75; }
.deposit-methods { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0 0 22px; }
.deposit-method { border:1px solid #51425f; border-radius:14px; background:#221b2e; padding:18px; color:#eee6f6; text-align:left; display:flex; flex-direction:column; gap:9px; min-width:0; }
.deposit-method.selected { background:#343325; border-color:#d6f56a; box-shadow:inset 0 0 0 1px #d6f56a; }
.deposit-method small { color:#baadc7; font-size:12px; }
.method-icon { display:grid; place-items:center; width:36px; height:36px; border-radius:11px; font-size:23px; font-weight:800; background:#473d56; }
.method-icon.cashapp { background:#00c744; color:#06240f; }.method-icon.coinbase { background:#2558e9; color:#fff; }.method-icon.manual { background:#f5aa36; color:#302009; }
.deposit-checkout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr); gap:24px; margin:22px 0; align-items:start; }
.deposit-amount { padding:22px; border:1px solid #4e3d5f; border-radius:16px; background:#231b2f; }
.deposit-presets { display:flex; gap:8px; margin-bottom:18px; }.deposit-presets button { flex:1; min-height:44px; padding:9px; }
#deposit-estimate-result { display:block; font-size:22px; color:#d6f56a; margin-bottom:9px; }
#deposit-time-estimate { display:block; color:#cfbfdc; line-height:1.6; }
.deposit-instructions { list-style:none; counter-reset:deposit-step; padding:0; }
.deposit-instructions li { position:relative; padding:0 0 23px 40px; counter-increment:deposit-step; color:#c8b8d5; line-height:1.8; font-size:14px; }
.deposit-instructions li:before { content:counter(deposit-step); position:absolute; left:0; top:3px; display:grid; place-items:center; width:26px; height:26px; border:1px solid #665279; border-radius:50%; color:#e0c7f5; font-size:12px; font-weight:700; }
.deposit-pay-address { background:#21192c; border:1px solid #5d466e; border-radius:18px; padding:24px; display:flex; flex-direction:column; align-items:stretch; gap:14px; text-align:center; min-width:0; }
.deposit-pay-address code { overflow-wrap:anywhere; font-size:13px; line-height:1.8; padding:12px; border-radius:8px; background:#120e19; user-select:all; }
.deposit-pay-address small { color:#b9a8c7; line-height:1.7; }.deposit-pay-address p { margin:0; }
.deposit-qr { display:block; width:100%; max-width:260px; height:auto; align-self:center; background:#fff; border-radius:8px; image-rendering:pixelated; }
.deposit-qr-placeholder { font-size:80px; color:#b99dd0; }.deposit-network { color:#d6f56a; font-size:12px; font-weight:700; }
.deposit-timing,.deposit-help,.coinbase-offer,.deposit-assigned-boost { padding:24px; border:1px solid #493958; background:#21192b; border-radius:16px; margin:22px 0; }
.deposit-timing h3,.deposit-help h3,.coinbase-offer h3 { margin-top:0; }
.deposit-tiers { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.deposit-tiers article { display:flex; flex-direction:column; gap:10px; padding:14px; border-radius:10px; background:#32263f; font-size:12px; }
.deposit-tiers strong { color:#d6f56a; }.deposit-tiers small { color:#bbabc9; line-height:1.5; }
.deposit-help .secondary { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; min-height:44px; margin:0 8px 8px 0; }
.coinbase-offer { background:linear-gradient(120deg,#25213e,#211929); border-color:#665091; }.coinbase-offer details { margin:16px 0; }
.deposit-assigned-boost b { color:#d6f56a; }.deposit-assigned-boost p { font-size:13px; line-height:1.7; }
.boost-assignment { margin:24px 0; border:1px solid #4b3a5c; border-radius:14px; padding:20px; }.boost-assignment summary { margin-bottom:18px; cursor:pointer; font-weight:700; }
.boost-record { border:1px solid #44334f; border-radius:12px; padding:18px; margin:12px 0; background:#211a2a; overflow-wrap:anywhere; }.boost-record header { display:flex; justify-content:space-between; gap:15px; }.boost-record small { color:#baa7c9; }
@media(max-width:760px) {
 .deposit-methods { grid-template-columns:1fr; gap:9px; }.deposit-method { display:grid; grid-template-columns:36px minmax(0,1fr); padding:14px; column-gap:12px; row-gap:3px; }.method-icon { grid-row:1/3; }.deposit-method b { font-size:14px; }
 .deposit-checkout { grid-template-columns:minmax(0,1fr); gap:18px; }.deposit-pay-address { order:-1; padding:18px; }.deposit-qr { max-width:220px; }.deposit-tiers { grid-template-columns:1fr 1fr; }
 .deposit-timing,.deposit-help,.coinbase-offer,.deposit-assigned-boost,.deposit-amount { padding:18px; }.deposit-instructions li { font-size:13px; }.deposit-pay-address button,.coinbase-offer button { min-height:44px; }
}

.deposit-guide { min-width:0; }

/* MoonPay is an external BTC purchase, followed by our normal confirmed deposit flow. */
.deposit-methods{grid-template-columns:repeat(4,minmax(0,1fr))}
.method-icon.moonpay{background:#b99aff;color:#25133b}
.moonpay-essential{display:flex;align-items:flex-start;gap:17px;padding:24px;border:2px solid #f2bc62;border-radius:16px;background:linear-gradient(125deg,#44321d,#2c202a);box-shadow:0 0 0 4px #f2bc6212;margin:24px 0;color:#fff3da}
.moonpay-alert-icon{flex:0 0 38px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#ffd381;color:#3b220c;font-size:25px;font-weight:900}
.moonpay-essential .eyebrow{color:#ffd381;font-size:10px;letter-spacing:.12em}
.moonpay-essential h3{font-size:clamp(21px,2.6vw,27px);line-height:1.25;margin:9px 0 13px;letter-spacing:-.5px;color:#fff7e7}
.moonpay-essential p{font-size:15px;line-height:1.8;margin:0;color:#f4dfc4}
.moonpay-essential b{color:#fff}
.moonpay-rules{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.moonpay-rules span{padding:7px 10px;border:1px solid #a6793e;background:#261b19;border-radius:6px;font-size:10px;font-weight:800;letter-spacing:.035em;color:#ffe0a4}
.deposit-pay-address:has(.moonpay-handoff){border:2px solid #ac89e0;background:linear-gradient(160deg,#33243e,#1f172a);box-shadow:0 10px 35px #0003;text-align:left}
.deposit-pay-address:has(.moonpay-handoff) h3{margin:0;font-size:22px;line-height:1.25}
.deposit-pay-address:has(.moonpay-handoff)>.eyebrow{font-size:9px;letter-spacing:.12em;color:#dac0ff}
.deposit-pay-address:has(.moonpay-handoff) code{font-size:15px;color:#fff4da;border:1px solid #89704a;background:#151119;padding:15px}
.moonpay-handoff{border-top:1px solid #765892;padding-top:16px;display:flex;flex-direction:column;gap:15px}
.moonpay-handoff .moonpay-ack{font-size:13px;line-height:1.7;align-items:flex-start;text-align:left;margin:0;color:#eee2ff}
.moonpay-ack input{flex:0 0 20px;width:20px;height:20px;margin-top:4px;accent-color:#d6f56a}
.moonpay-open{display:flex;align-items:center;justify-content:center;min-height:48px;text-decoration:none;text-align:center;border-radius:8px}
.moonpay-open[aria-disabled=true]{opacity:.45;cursor:not-allowed}
.moonpay-open:focus-visible{outline:3px solid #fff;outline-offset:4px}
.moonpay-status{font-size:13px;line-height:1.65;color:#ffe0a4}
.moonpay-handoff small{font-size:11px}
.moonpay-steps b{color:#fff2cd}
.moonpay-existing{padding:18px;border:1px solid #665177;border-radius:12px;background:#292032;font-size:13px;line-height:1.7}
.moonpay-existing p{margin:8px 0}.moonpay-existing a{color:#d6f56a}
#wallet-moonpay{border-color:#ad8bdd}
@media(max-width:1000px) and (min-width:761px){.deposit-methods{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.deposit-methods{grid-template-columns:1fr}.moonpay-essential{padding:19px 16px;gap:12px}.moonpay-alert-icon{flex-basis:28px;width:28px;height:28px;font-size:20px}.moonpay-essential h3{font-size:21px}.moonpay-essential p{font-size:14px}.moonpay-rules{flex-direction:column}.moonpay-rules span{line-height:1.5}.deposit-pay-address:has(.moonpay-handoff){padding:19px}.moonpay-handoff .moonpay-ack{font-size:13px}}

@media(max-width:760px){.deposit-methods.moonpay-selected{grid-template-columns:repeat(2,minmax(0,1fr))}.moonpay-selected .deposit-method{display:flex;gap:7px;padding:13px}.moonpay-selected .deposit-method b{font-size:12px}.moonpay-selected .deposit-method small{font-size:10px;line-height:1.5}.moonpay-selected .method-icon{width:29px;height:29px;font-size:18px}}

/* Clear payment hierarchy and a compact assisted-payment option. */
.purchase-method-options .deposit-method{border-radius:14px;text-align:left;transition:border-color .15s,background .15s}
.purchase-method-options .deposit-method.selected{border-color:var(--accent,#b18aff);background:rgba(157,103,244,.13);box-shadow:0 0 0 1px rgba(157,103,244,.25)}
.purchase-method-options [data-purchase-method="moonpay"]{grid-column:1/-1;padding:20px}
.purchase-method-options [data-purchase-method="cashappdirect"]{grid-column:1/-1}
.purchase-assisted{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;margin:20px 0;border:1px solid rgba(177,138,255,.26);border-radius:16px;background:linear-gradient(115deg,rgba(177,138,255,.12),rgba(177,138,255,.03))}
.purchase-assisted h3{margin:6px 0}.purchase-assisted p{margin:0;max-width:580px;line-height:1.6}.purchase-assisted a{flex-shrink:0;text-decoration:none}
@media(max-width:700px){.purchase-assisted{align-items:stretch;flex-direction:column;padding:18px}.purchase-assisted a{text-align:center}}

/* Card-first purchase flow and compact, responsive checkout. */
.purchase-payment-tabs{display:flex;gap:7px;padding:6px;background:#110e19;border:1px solid #44344f;border-radius:15px;margin:22px 0 18px}
.purchase-payment-tabs button{flex:1;min-height:48px;border:0;border-radius:10px;background:transparent;color:#c9bed6;font-weight:700}
.purchase-payment-tabs button.selected{background:linear-gradient(120deg,#b38afa,#9160da);color:#160f23;box-shadow:0 4px 16px #a067e326}
.purchase-payment-tabs small{display:inline-block;margin-left:7px;font-size:10px;opacity:.8}
.purchase-tab-intro h3{margin:7px 0;font-size:25px}.purchase-tab-intro p{color:#c9bed6;line-height:1.6}
.purchase-method-options [data-purchase-method="stripe"]{grid-column:1/-1;padding:23px;background:linear-gradient(120deg,#352345,#201b2e)}
.purchase-method-options [hidden],.purchase-assisted[hidden]{display:none!important}
.stripe-checkout-heading{margin:4px 0 25px}.stripe-checkout-heading h3{font-size:clamp(24px,3vw,34px);letter-spacing:-.7px;margin:10px 0}.stripe-checkout-heading p{color:#c9bed6;line-height:1.6}
.stripe-checkout-grid{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.3fr);gap:24px;align-items:start}
.stripe-order-card{border:1px solid #65437c;border-radius:20px;background:linear-gradient(150deg,#35203e,#1c1726);padding:23px;min-width:0}
.stripe-card-art{position:relative;overflow:hidden;aspect-ratio:1.65;border:1px solid #b590e5;border-radius:16px;background:radial-gradient(ellipse at 100% 0,#b488ee85,transparent 60%),linear-gradient(135deg,#604084,#21132e);padding:20px;margin:0 0 25px;box-shadow:0 12px 28px #0004;display:flex;flex-direction:column;justify-content:space-between}
.stripe-card-art span{font-size:28px;font-weight:900;letter-spacing:-1px;color:#fff}.stripe-card-art b{font-size:9px;letter-spacing:.15em;color:#e2cff8}.stripe-card-art i{font-style:normal;color:#dac1f4;letter-spacing:2px;font-size:15px}
.stripe-order-card>small{font-size:10px;letter-spacing:.12em;color:#c7afd8}.stripe-order-card>strong{display:block;font-size:clamp(26px,3vw,36px);margin:10px 0}.stripe-order-card>strong span{font-size:16px;color:#cdb8df}
.stripe-sc-gift{display:block;color:#ddf590;font-size:20px}.stripe-boost-label{display:inline-block;margin-top:12px;padding:6px 10px;background:#3d4730;border-radius:6px;color:#e0f09a;font-size:11px}
.stripe-order-total{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #65437c;padding-top:20px;margin-top:23px}.stripe-order-total b{font-size:24px}.stripe-order-total small{font-size:11px;color:#c7afd8}
.stripe-order-card p{font-size:11px;line-height:1.7;color:#c9bed6}.stripe-form-panel{padding:24px;border:1px solid #48364f;border-radius:20px;background:#171321;min-width:0}.stripe-secure-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}.stripe-secure-heading>span{font-size:24px;background:#352440;color:#cfabff;padding:10px;border-radius:12px}.stripe-secure-heading small{display:block;color:#bba9c9;font-size:11px;margin-top:5px}.stripe-form-panel .input-hint{font-size:12px;line-height:1.7;color:#beaccd}.stripe-form-panel .service-notice{font-size:13px;line-height:1.65}
.card-payment-intro{text-align:center;padding:15px 8px;display:flex;flex-direction:column;align-items:center;gap:15px}.card-payment-symbol{display:grid;place-items:center;width:76px;height:60px;font-size:36px;background:linear-gradient(140deg,#aa75e8,#442660);border:1px solid #cb9eff;border-radius:16px;color:#fff;box-shadow:0 10px 35px #995be538}.card-payment-intro h3{font-size:29px;margin:0;letter-spacing:-.6px}.card-payment-intro p{line-height:1.65;color:#cbbcd6;margin:0;max-width:390px}.card-intro-package{padding:17px 24px;border:1px solid #65477c;border-radius:14px;background:#2b2037;width:100%}.card-intro-package b,.card-intro-package span{display:block;margin:4px}.card-intro-package span{color:#e0f49b}.card-payment-intro>small{font-size:10px;color:#b5a3c6}
@media(max-width:700px){.stripe-checkout-grid{grid-template-columns:minmax(0,1fr);gap:14px}.stripe-card-art{display:none}.stripe-order-card{padding:18px}.stripe-order-card>strong{font-size:27px}.stripe-order-total{margin-top:14px;padding-top:14px}.stripe-form-panel{padding:17px}.purchase-payment-tabs small{display:none}.purchase-method-options .deposit-method{display:flex}}

/* Player-facing, manually maintained redemption installments. */
.redemption-progress-section{margin:24px 0;min-width:0}.redemption-section-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:14px}.redemption-section-heading h3{margin:6px 0 0;font-size:22px}.redemption-section-heading>small{color:var(--muted,#aab7c7);font-size:11px;text-align:right}.redemption-progress-card{padding:22px;border:1px solid #39e5bb45;border-radius:18px;background:linear-gradient(125deg,#163d3c70,#111f3060 65%),var(--surface,#131b2a);margin:12px 0;overflow:hidden}.redemption-progress-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted,#b1bfcb);font-size:12px}.redemption-progress-status{border-radius:99px;padding:6px 10px;background:#39e5bb16;color:#70ecd0;font-size:11px;white-space:nowrap}.redemption-progress-status.pending{color:#f4d18e;background:#f4d18e14}.redemption-progress-status.rejected{color:#ffb2b2;background:#ffb2b214}.redemption-progress-amounts{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px;margin:24px 0 17px}.redemption-progress-amounts small{display:block;color:var(--muted,#b1bfcb);font-size:12px;margin-bottom:7px}.redemption-progress-amounts strong{display:block;font-size:clamp(22px,3.3vw,31px);font-variant-numeric:tabular-nums;letter-spacing:-.7px}.redemption-progress-amounts>div:first-child strong{color:#69edce}.redemption-progress-card progress{appearance:none;width:100%;height:7px;border:0;border-radius:99px;overflow:hidden;display:block;background:#ffffff13}.redemption-progress-card progress::-webkit-progress-bar{background:#ffffff13;border-radius:99px}.redemption-progress-card progress::-webkit-progress-value{background:linear-gradient(90deg,#2dbb9a,#8af4d9);border-radius:99px}.redemption-progress-card progress::-moz-progress-bar{background:#55ddba;border-radius:99px}.redemption-progress-schedule{display:flex;gap:12px;margin-top:20px;padding:14px;border-radius:12px;background:#0002}.redemption-progress-schedule>span{font-size:23px;color:#69edce;line-height:1}.redemption-progress-schedule small{color:var(--muted,#b1bfcb);font-size:11px}.redemption-progress-schedule p{margin:5px 0 0;font-weight:600;font-size:14px;line-height:1.55;overflow-wrap:anywhere}.redemption-next,.redemption-progress-note{font-size:12px;line-height:1.6;color:var(--muted,#b1bfcb);margin:14px 0}.redemption-next b{color:var(--text,#edf7fb);font-weight:500}.redemption-progress-card footer{display:flex;gap:14px;justify-content:space-between;margin-top:18px;color:var(--muted,#aab7c7);font-size:10px;line-height:1.5}.redemption-progress-card footer small{font-size:10px;white-space:nowrap}.redemption-progress-details{border-top:1px solid #ffffff10;margin-top:16px;padding-top:12px;color:var(--muted,#aab7c7);font-size:11px}.redemption-progress-details summary{cursor:pointer}.redemption-progress-details p{overflow-wrap:anywhere}.redemption-progress-details code{font-size:10px;overflow-wrap:anywhere}
@media(max-width:600px){.redemption-progress-card{padding:17px 15px}.redemption-progress-amounts{gap:10px;margin-top:22px}.redemption-progress-amounts strong{font-size:23px}.redemption-progress-amounts small{font-size:10px}.redemption-section-heading h3{font-size:20px}.redemption-section-heading>small{max-width:90px}.redemption-progress-card header{font-size:10px}.redemption-progress-card footer{flex-direction:column;gap:4px}.redemption-progress-schedule{padding:12px}.redemption-next b{display:block;margin-top:3px}}

/* Compact redemption status; optional schedule stays inside request details. */
.redemption-progress-section{margin:20px 0}.redemption-section-heading{margin-bottom:10px}.redemption-section-heading .eyebrow{display:none}.redemption-section-heading h3{font-size:19px;margin:0}.redemption-progress-card{padding:17px 19px;border-radius:14px;background:var(--surface,#131b2a)}.redemption-progress-amounts{margin:17px 0 13px;grid-template-columns:repeat(3,minmax(0,1fr))}.redemption-progress-amounts strong{font-size:25px;letter-spacing:-.5px}.redemption-progress-amounts small{margin-bottom:5px;font-size:11px}.redemption-progress-card progress{height:6px}.redemption-progress-note{margin:13px 0 0}.redemption-progress-card footer{margin-top:12px}.redemption-progress-details{margin-top:11px;padding-top:10px}.redemption-progress-details p{line-height:1.6}
@media(max-width:600px){.redemption-progress-card{padding:15px}.redemption-progress-amounts strong{font-size:23px}.redemption-progress-amounts{gap:10px;margin-top:17px}.redemption-progress-card footer{flex-direction:row;gap:10px}.redemption-progress-card footer>span{max-width:65%}.redemption-progress-card footer small{font-size:9px}}

/* /css/account/verification.css */
.notification-button{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid #403849;border-radius:12px;background:#211c29;color:#e9dffa;cursor:pointer}
.notification-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.notification-button:hover{background:#302638;border-color:#65506f}
.notification-count{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;border:2px solid #14121a;border-radius:20px;background:#d5f56a;color:#222119;font-size:9px;font-weight:800;line-height:1}
.notification-list{display:grid;gap:9px}
.notification-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:16px;border:1px solid #39313f;border-radius:13px;background:#211c27}
.notification-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#d5f56a18;color:#d5f56a}
.notification-row header{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.notification-row b{font-size:13px;color:#f5effa}
.notification-row time{font-size:10px;color:#a9a0b4;white-space:nowrap}
.notification-row p{margin:6px 0 0;color:#c0b8c8;font-size:12px;line-height:1.65}
.notification-empty{text-align:center;padding:52px 18px;color:#b6aabe}
.notification-empty>span{font-size:36px;color:#cdb8e7}
.notification-empty h3{margin:9px 0 4px;color:#f5effa}
.notification-empty p{margin:0;font-size:12px}
.kyc-summary{margin:20px 0;padding:21px;border:1px solid #4a3b53;border-radius:15px;background:linear-gradient(145deg,#28202f,#1c1924)}
.kyc-summary-head{display:flex;align-items:center;justify-content:space-between;gap:15px}
.kyc-summary-head h3{margin:5px 0 0;color:#f3edf8;font-size:18px}
.kyc-summary>p{max-width:760px;color:#bcb3c6;font-size:12px;line-height:1.7}
.kyc-state{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid #53465d;border-radius:20px;background:#292331;color:#d2c4dd;font-size:10px;font-weight:750;text-transform:capitalize;white-space:nowrap}
.kyc-state.pending{border-color:#72613c;background:#332d20;color:#f2d995}
.kyc-state.approved{border-color:#47634a;background:#202d22;color:#bee7b5}
.kyc-state.denied{border-color:#70444a;background:#332228;color:#f0b5b5}
.kyc-summary .secondary{padding:10px 14px;font-size:12px}
.kyc-dialog-heading{padding:4px 0 15px}
.kyc-dialog-heading h3,.kyc-owner-heading h3,.kyc-owner-player h3{margin:7px 0;color:#f6f0f9;font-size:clamp(23px,3vw,32px);letter-spacing:-.7px}
.kyc-dialog-heading p,.kyc-owner-heading p{margin:0;color:#bcb3c6;font-size:13px;line-height:1.7}
.kyc-intro{margin:12px 0 20px;color:#c4bacd;font-size:13px;line-height:1.7}
.kyc-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kyc-upload-card{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;padding:17px;border:1px solid #3b3341;border-radius:13px;background:#201b25;cursor:pointer}
.kyc-upload-card:hover{border-color:#78618a;background:#251e2d}
.kyc-upload-icon{width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#d5f56a18;color:#d5f56a;font-size:19px}
.kyc-upload-card b{color:#f1eaf5;font-size:12px}
.kyc-upload-card small{min-height:35px;color:#b8adbf;font-size:11px;line-height:1.55}
.kyc-upload-card input[type=file]{width:100%;padding:8px;border:1px solid #49404e;border-radius:8px;background:#19151e;color:#d8cfe0;font-size:10px}
.kyc-file-name{max-width:100%;overflow:hidden;color:#d5f56a;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.kyc-file-types{color:#9990a4;font-size:9px}
.kyc-privacy-note,.kyc-response-time{color:#a99fb2;font-size:11px;line-height:1.7}
.kyc-upload-form>.primary{width:100%;margin:8px 0}
.kyc-state-card{display:grid;grid-template-columns:38px minmax(0,1fr);gap:13px;margin:17px 0;padding:17px;border:1px solid #4d6247;border-radius:13px;background:#202a22}
.kyc-state-card.pending{border-color:#6d5b3c;background:#2c271f}
.kyc-state-card.denied{border-color:#684249;background:#2d2026}
.kyc-state-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#d5f56a17;color:#d5f56a;font-size:18px}
.kyc-state-card.pending .kyc-state-icon{color:#efd68d;background:#efd68d18}
.kyc-state-card.denied .kyc-state-icon{color:#f0aab2;background:#f0aab218}
.kyc-state-card b{color:#f1edf2;font-size:13px}
.kyc-state-card p{margin:5px 0 0;color:#c1b8c4;font-size:12px;line-height:1.7}
.kyc-response-time{margin-top:18px;padding-top:14px;border-top:1px solid #352e3b}
.kyc-response-time b{color:#dfd2e9}
.kyc-owner-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:8px 0 16px}
.kyc-owner-heading .field{min-width:160px;margin:0}
.kyc-owner-heading .field select{width:100%;margin-top:5px}
.owner-kyc-list{display:grid;gap:9px}
.owner-kyc-row{display:grid;grid-template-columns:38px minmax(140px,1fr) minmax(120px,.8fr) auto;align-items:center;gap:13px;padding:14px;border:1px solid #403545;border-radius:12px;background:#211b27}
.owner-kyc-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#d5f56a1a;color:#d5f56a;font-weight:800}
.owner-kyc-player,.owner-kyc-meta{display:grid;gap:4px;min-width:0}
.owner-kyc-player b{color:#f2ecf5;font-size:12px}
.owner-kyc-player small,.owner-kyc-meta small{overflow:hidden;color:#a99fb1;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.owner-kyc-row>.secondary{padding:9px 12px;font-size:11px}
.kyc-owner-player{margin:16px 0;padding:17px;border:1px solid #403545;border-radius:12px;background:#211b27}
.kyc-owner-player .eyebrow{font-size:9px}
.kyc-owner-player h3{font-size:23px}
.kyc-owner-player p{margin:0;color:#c0b5c8;font-size:12px}
.kyc-owner-player code{color:#d6c2e7;font-size:10px}
.owner-kyc-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:15px 0 22px}
.owner-kyc-document{overflow:hidden;border:1px solid #403545;border-radius:12px;background:#1c1822}
.owner-kyc-document header{display:flex;justify-content:space-between;gap:10px;padding:12px}
.owner-kyc-document header b{color:#eee6f1;font-size:11px}
.owner-kyc-document header small{color:#a69bae;font-size:9px}
.owner-kyc-document img{display:block;width:100%;max-height:430px;object-fit:contain;background:#110f15}
.kyc-pdf-link{display:flex;min-height:120px;align-items:center;justify-content:center;padding:18px;color:#d5f56a;font-size:12px}
.kyc-review-form{display:grid;gap:12px;padding:17px;border:1px solid #43364b;border-radius:13px;background:#211b27}
.kyc-review-form .field{margin:0}
.kyc-review-form textarea{min-height:90px}
.kyc-review-form .primary{justify-self:start}
.kyc-review-note{margin:12px 0;padding:13px;border-left:3px solid #c6929b;background:#2d2026}
.kyc-review-note b{font-size:11px;color:#f0c1c6}
.kyc-review-note p{margin:5px 0 0;color:#d7c5cd;font-size:12px;line-height:1.6}
.owner-overview{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
@media(max-width:760px){.account{gap:7px}.notification-button{width:38px;height:38px}.kyc-upload-grid,.owner-kyc-documents{grid-template-columns:1fr}.kyc-owner-heading{align-items:stretch;flex-direction:column;gap:10px}.owner-kyc-row{grid-template-columns:36px minmax(0,1fr) auto;gap:10px}.owner-kyc-meta{grid-column:2;grid-row:2}.owner-kyc-row>.secondary{grid-column:3;grid-row:1/3}.notification-row{padding:13px}.notification-row header{align-items:start;flex-direction:column;gap:3px}}
.notification-row p{white-space:pre-wrap}
.owner-notification-panel{max-width:700px;margin:10px auto;padding:24px;border:1px solid #4a3959;border-radius:14px;background:#211b2b}
.owner-notification-panel h3{margin:8px 0;color:#f4f3fa;font-size:23px}
.owner-notification-panel>p{color:#b0adc2;font-size:13px;line-height:1.7}
#owner-notification{display:grid;gap:12px;margin-top:18px}
#owner-notification .field{margin:0}
#owner-notification textarea{min-height:120px;resize:vertical}
#owner-notification>.secondary{justify-self:start}
#owner-notification>.primary{width:100%}

/* Owner-only KYC risk review: compact actions and horizontally contained evidence. */
.kyc-row-actions{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end;max-width:235px}
.kyc-row-actions .secondary{padding:9px 12px;font-size:11px}
.kyc-scan-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:16px 0}
.kyc-scan-heading h3{margin:7px 0;font-size:25px}.kyc-scan-heading p{margin:0;color:var(--muted,#b8abc8)}
.kyc-risk-score{display:grid;gap:5px;text-align:right}.kyc-risk-score strong{font-size:38px;color:#f3c971}.kyc-risk-score strong small{font-size:16px;color:var(--muted,#b8abc8)}.kyc-risk-score>span{font-size:12px}
.kyc-scan-section{padding:16px;margin:12px 0;border:1px solid #44364e;background:#17131f;border-radius:12px;min-width:0}
.kyc-scan-section>summary{cursor:pointer;font-weight:700}.kyc-scan-section>summary small{font-weight:400;color:#bbafc9;margin-left:7px}.kyc-scan-section h3{margin:0 0 12px}.kyc-scan-section li{margin:9px 0;line-height:1.5;font-size:13px}.kyc-scan-section>p{font-size:13px;line-height:1.5}
.kyc-scan-factor{border-top:1px solid #393040;padding:12px 0}.kyc-scan-factor summary{display:flex;align-items:baseline;gap:12px;cursor:pointer;line-height:1.5;font-size:13px}.kyc-scan-factor summary b{min-width:25px;color:#f3c971}.kyc-scan-factor summary span{overflow-wrap:anywhere}
.kyc-scan-table{overflow-x:auto;max-width:100%;margin-top:12px}.kyc-scan-table table{width:100%;border-collapse:collapse;font-size:12px}.kyc-scan-table th,.kyc-scan-table td{padding:9px;text-align:left;border-bottom:1px solid #393040;vertical-align:top;min-width:100px;max-width:300px;overflow-wrap:anywhere}.kyc-scan-table th{color:#c9b9da}.kyc-scan-table td{color:#f4edf9}
.kyc-scan-profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:0}.kyc-scan-profile dt{font-size:11px;color:#bbafc9}.kyc-scan-profile dd{margin:4px 0 0;font-size:13px;overflow-wrap:anywhere}
@media(max-width:760px){.kyc-row-actions{grid-column:3;grid-row:1/3;flex-direction:column;max-width:120px}.kyc-row-actions .secondary{font-size:10px;padding:9px}.kyc-scan-heading{align-items:flex-start}.kyc-scan-heading h3{font-size:20px;overflow-wrap:anywhere}.kyc-risk-score strong{font-size:30px}.kyc-scan-section{padding:12px}.kyc-scan-profile{grid-template-columns:1fr}.kyc-scan-section>summary small{display:block;margin:7px 0 0}}

.sidebar-count{margin-left:auto;flex:none;min-width:21px;height:21px;padding:0 6px;border-radius:20px;display:inline-flex;align-items:center;justify-content:center;background:var(--accent,#95eddf);color:var(--accent-ink,#102326);font-size:10px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.sidebar-count[hidden]{display:none!important}

/* /css/account/auth.css */
/* Authentication keeps one document scroll, including long signup and recovery forms. */
body.auth-open > :is(.sidebar,.topbar,main,.mobile-nav,.skip-link){display:none!important}
.auth-screen{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,720px) minmax(0,520px);justify-content:center;align-items:center;gap:clamp(36px,5vw,112px);min-height:100svh;width:100%;padding:clamp(28px,4vw,80px);background:radial-gradient(ellipse at 12% 32%,#59417740,transparent 52%),radial-gradient(ellipse at 85% 80%,#a3bc4820,transparent 42%),#100e17}
.auth-screen::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#bba2dc05 1px,transparent 1px),linear-gradient(90deg,#bba2dc05 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(#000,transparent)}
.auth-story{min-width:0;padding:12px 0}.auth-story .brand{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:clamp(30px,4vw,58px);font-size:33px;letter-spacing:-1.7px}.auth-story .brand img{flex:none}.auth-story .brand small{flex-basis:100%;margin:2px 0 0 41px;font-size:8px;letter-spacing:2.2px;color:#a99dbd}
.auth-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #9d83bd42;border-radius:30px;color:#d6c4ed;background:#7f60951a;font-size:9px;letter-spacing:1.8px;font-weight:700}.auth-pill i{height:5px;width:5px;background:#d6ed8a;border-radius:50%;box-shadow:0 0 12px #d6ed8a66}
.auth-story :is(h1,h2){font-size:clamp(38px,3.25vw,70px);line-height:1.08;letter-spacing:-2.8px;font-weight:750;margin:23px 0 18px;color:#f7f1ff;text-wrap:balance}.auth-story :is(h1,h2) em{font-style:normal;color:#d9ed98}.auth-intro>p{max-width:440px;font-size:15px;line-height:1.8;color:#afa4bf;margin:0}
.auth-showcase{display:grid;grid-template-columns:1.18fr 1fr 1fr;gap:12px;margin:36px 0 27px;max-width:600px;align-items:center}.auth-game{position:relative;isolation:isolate;min-width:0;aspect-ratio: .86;max-height:230px;border:1px solid #9a7fbd4d;border-radius:18px;overflow:hidden;box-shadow:0 18px 38px #0004;background:#302641}.auth-game::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#100e19e8);z-index:-1}.auth-game>div{position:absolute;bottom:19px;left:16px;right:10px}.auth-game b{font-size:23px;color:#fff4e2;letter-spacing:-.5px;display:block}.auth-game small{display:block;font-size:10px;color:#c2b6d0;margin-top:5px}.auth-game-tag{position:absolute;top:14px;left:14px;font-size:7px;letter-spacing:1.5px;color:#ffe6aa;border:1px solid #e4bb6744;background:#15101577;border-radius:20px;padding:6px 8px}.auth-game-bonanza{transform:rotate(-4deg);background:url('/assets/bonanza/vault.14b91d51548b.webp') center/cover;border-color:#dbba7955}.auth-game-bonanza .bonanza-symbol{position:absolute;width:75%;aspect-ratio:1;left:12%;top:15%;z-index:-2;filter:drop-shadow(0 12px 18px #0007)}.auth-game-plinko{background:linear-gradient(0deg,#22173233,#22173222),url('/assets/plinko-cover.svg') center/cover;transform:translateY(13px)}.auth-game-mines{background:radial-gradient(ellipse at 50% 20%,#8263b4,#34294a 80%);transform:rotate(4deg)}.auth-game-mines svg{position:absolute;width:66%;left:17%;top:13%;filter:drop-shadow(0 12px 15px #15372866);z-index:-2}
.auth-perks{display:flex;flex-wrap:wrap;gap:14px 22px;margin:32px 0 22px;font-size:11px;color:#c3b9cf}.auth-perks span{display:flex;align-items:center;gap:8px}.auth-perks b{font-size:9px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid #bba1db33;color:#d9ed98}.auth-eligibility{font-size:10px;color:#91869f;line-height:1.7}
.auth-card{position:relative;min-width:0;width:100%;padding:clamp(26px,2.5vw,42px);background:linear-gradient(145deg,#282130ee,#1b1823f5);border:1px solid #ab8ac63d;border-radius:26px;box-shadow:0 30px 100px #0005,inset 0 1px 0 #ffffff08}.auth-card>.eyebrow{font-size:9px;letter-spacing:2px;color:#b8a1d2}.auth-card h2{font-size:32px;line-height:1.15;letter-spacing:-1px;margin:13px 0 9px;color:#faf5ff}.auth-card>#auth-subtitle{font-size:13px;line-height:1.6;color:#b3a7c1;margin:0 0 20px}#auth-title:focus{outline:none}
.auth-signup-offer{margin:22px 0 25px;padding:18px 20px;border:1px solid #c1da7a44;border-radius:16px;background:radial-gradient(ellipse at 95% 0,#d2ed8030,transparent 70%),#cadc7310;line-height:1.5}.auth-signup-offer>.auth-offer-label{display:block;color:#c6d5a0;font-size:8px;letter-spacing:1.8px;font-weight:700}.auth-signup-offer>strong{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;color:#e1f39f;font-size:35px;letter-spacing:-1.3px;margin:5px 0 7px;line-height:1.2}.auth-signup-offer>strong span{white-space:nowrap}.auth-signup-offer>strong small{font-size:15px;letter-spacing:0;font-weight:500;color:#e0e9c9}.auth-signup-offer i{font-size:21px;font-style:normal;font-weight:400;color:#9fb66c}.auth-signup-offer>span:not(.auth-offer-label){display:block;color:#edf0df;font-size:12px}.auth-signup-offer>small{display:block;color:#a5ae97;font-size:10px;margin-top:5px}
.auth-card .field{font-size:12px;color:#c7bdd4;min-width:0}.auth-card .field :is(input,select){font-size:16px;min-height:48px;min-width:0;width:100%;border-radius:10px;background:#14111c;border-color:#77638955;transition:border-color .15s,box-shadow .15s}.auth-card .field :is(input,select):focus{outline:none;border-color:#c7df83;box-shadow:0 0 0 3px #c7df8315}.auth-card .primary{width:100%;min-height:50px;margin-top:15px;border-radius:11px;background:#d9f080;color:#222615;font-weight:750;box-shadow:0 5px 20px #c5e77915}.auth-card .primary:hover{background:#e6ffa0}.auth-card .back{min-height:44px;padding-block:10px;text-align:left;font-size:12px}.auth-help{display:flex;justify-content:space-between;flex-wrap:wrap;gap:0 12px;margin-top:8px}.auth-help .back{font-size:11px;color:#b5a7c5}.auth-fineprint{font-size:10px;line-height:1.8;color:#978ba6;margin:22px 0 0;padding-top:18px;border-top:1px solid #b393d11a}.auth-fineprint a{color:#c6b5da}
#verification-refresh{margin-top:18px;width:100%}#auth-back{display:block;margin-top:12px}#auth-error{overflow-wrap:anywhere}#auth-error:empty{display:none}#auth-switch{margin-top:16px;width:100%;text-align:center;border:1px solid #b49ace55;border-radius:10px;background:#9f7ebd0c;color:#e1d4f1;font-weight:600}#auth-switch:hover{background:#9f7ebd1c;border-color:#c9b3de}.auth-card :is(input,select,button){scroll-margin-block:24px}.auth-card #signup-profile{border:0;padding:0;min-width:0;margin-top:20px}.auth-card .profile-grid{gap:13px}.auth-card .terms-check{font-size:11px;line-height:1.65}.auth-card .input-hint{font-size:10px;line-height:1.6}.auth-screen:has(#auth-form[hidden]) .auth-signup-offer{display:none}
@media(min-width:961px){.auth-screen:has(#signup-profile:not([hidden])){align-items:start}.auth-screen:has(#signup-profile:not([hidden])) .auth-story{position:sticky;top:32px}}
@media(max-width:1100px) and (min-width:961px){.auth-screen{gap:30px;padding:30px}.auth-story :is(h1,h2){font-size:43px}.auth-game b{font-size:19px}.auth-game>div{left:12px}.auth-perks{gap:12px}.auth-card{padding:26px}}
@media(max-width:960px){.auth-screen{grid-template-columns:minmax(0,540px);align-content:start;gap:26px;padding:32px 20px 40px}.auth-story{padding:0;text-align:center}.auth-story .brand{justify-content:center;margin:0 0 25px;font-size:30px}.auth-story .brand small{display:none}.auth-pill{font-size:8px;padding:6px 10px}.auth-story :is(h1,h2){font-size:clamp(33px,6vw,48px);letter-spacing:-1.5px;margin:15px 0 10px}.auth-intro>p{margin:auto;font-size:13px;max-width:360px}.auth-showcase,.auth-perks,.auth-eligibility{display:none}.auth-card{padding:28px;border-radius:22px}.auth-card h2{font-size:28px}}
@media(max-width:480px){.auth-screen{gap:22px;padding:max(22px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.auth-story .brand{margin-bottom:19px}.auth-intro>p{font-size:12px;max-width:300px}.auth-card{padding:23px 19px;border-radius:19px}.auth-signup-offer{padding:16px;margin:19px 0 22px}.auth-signup-offer>strong{font-size:31px;gap:10px}.auth-signup-offer>strong small{font-size:13px}.auth-card .profile-grid{grid-template-columns:1fr}.auth-help{gap:0 9px}.auth-help .back{font-size:10px}.auth-card h2{font-size:27px}}
@media(max-height:600px) and (min-width:761px){.auth-screen{align-items:start;padding-block:24px}.auth-story .brand{margin-bottom:25px}.auth-showcase{margin-block:24px;max-width:440px}.auth-game{max-height:170px}.auth-story{position:static!important}}
@media(prefers-reduced-motion:reduce){.auth-card .field :is(input,select){transition:none}}
/* Consistent centering and a contained two-column layout at normal desktop scale. */
@media(min-width:961px){
 .auth-screen{grid-template-columns:minmax(0,560px) minmax(0,420px);gap:clamp(36px,4vw,64px);padding:32px 36px;align-items:center;align-content:center}
 .auth-story{text-align:center;padding:0;align-self:center}
 .auth-story .brand{justify-content:center;margin:0 0 28px;font-size:29px}
 .auth-story .brand small{margin:2px 0 0;flex-basis:100%;text-align:center}
 .auth-story :is(h1,h2){font-size:clamp(36px,3vw,48px);letter-spacing:-1.8px;margin:20px 0 15px}
 .auth-intro>p{max-width:450px;margin-inline:auto;font-size:13px;line-height:1.75}
 .auth-showcase{margin:28px auto 22px;width:100%;max-width:520px;gap:10px}
 .auth-showcase .auth-game{transform:none;max-height:170px;border-radius:13px}
 .auth-game>div{left:9px;right:9px;bottom:13px;text-align:center}
 .auth-game b,.auth-game-jester b{font-size:18px;line-height:1.1}
 .auth-game small{font-size:9px;line-height:1.4}
 .auth-game-tag{left:50%;transform:translateX(-50%);top:10px;white-space:nowrap;font-size:6px;padding:5px 6px}
 .auth-perks{justify-content:center;gap:10px 16px;margin:23px 0 17px;font-size:10px}
 .auth-about{margin:16px 0;font-size:11px}
 .auth-card{max-width:420px;justify-self:center;padding:26px 28px;border-radius:20px}
 .auth-card h2{font-size:28px;margin:12px 0 8px}
 .auth-card>#auth-subtitle{font-size:12px;margin-bottom:16px}
 .auth-card>.eyebrow,.auth-card h2,.auth-card>#auth-subtitle{text-align:center}
 .auth-signup-offer{text-align:center;padding:14px 16px;margin:18px 0 20px;border-radius:12px}
 .auth-signup-offer>strong{justify-content:center;font-size:30px}
 .auth-signup-offer>strong small{font-size:13px}
 .auth-card .field{margin-bottom:14px}
 .auth-card .field :is(input,select){min-height:44px;padding:10px 12px;font-size:14px}
 .auth-card .primary{min-height:44px;margin-top:10px;font-size:13px;padding:10px 16px}
 #auth-switch{margin-top:12px;font-size:11px}
 .auth-help{justify-content:center;column-gap:18px}
 .auth-help .back{font-size:10px;text-align:center}
 .auth-fineprint{margin-top:16px;padding-top:14px;text-align:center}
 .auth-screen:has(#signup-profile:not([hidden])){align-content:start}
 .auth-screen:has(#signup-profile:not([hidden])) .auth-story{align-self:start;top:32px;padding-top:30px}
}
@media(max-width:960px){.auth-card>.eyebrow,.auth-card h2,.auth-card>#auth-subtitle,.auth-signup-offer{text-align:center}.auth-signup-offer>strong{justify-content:center}.auth-about{text-align:center}.auth-help{justify-content:center;gap:0 16px}}

.bot-check{margin:16px 0;max-width:100%;min-width:0;display:grid;gap:8px;justify-items:center}.bot-check[hidden]{display:none}.bot-check small{font-size:12px;text-align:center;color:var(--muted,#aaa)}.bot-check .back{font-size:12px;min-height:28px}.bot-check>div{width:100%;min-width:0}

.google-auth{margin:20px 0;text-align:center;min-width:0}.google-auth #google-button{display:flex;justify-content:center;min-height:44px}.google-auth p{font-size:12px;line-height:1.5}.auth-divider{display:flex;align-items:center;gap:12px;margin-top:18px;font-size:11px;color:var(--muted)}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}#google-link-form>.primary{width:100%}#google-link-form>.back{display:block;margin:12px auto}#auth-screen:has(#email-action-form:not([hidden])) .google-auth{display:none}

