:root {
    /* =========================================================
       THEME CONTRACT (GLOBAL)
       Dark warm theme, brand accent #ffcb04 (amber/gold)
       ========================================================= */

    /* Logo */
    --header-footer-logo: url("https://vendor-provider.fra1.cdn.digitaloceanspaces.com/6q/assets/images/dark-logo-new.svg");
    --homepage-entrance-bg-image: url("https://vendor-provider.fra1.cdn.digitaloceanspaces.com/ebetlab/betyonerv2/enterence-bg.png");

    /* Brand */
    --brand-primary: #ffcb04 !important;
    --accent: #ffcb04 !important;

    --brand-primary-rgb: 255, 203, 4;
    --brand-secondary-rgb: 255, 215, 100;

    --brand-primary-contrast: #1a1408;
    --brand-secondary: #ffcf4a;

    /* --accent: var(--brand-primary); */
    --accent-rgb: var(--brand-primary-rgb);
    --active: var(--accent);

    --accent-soft: rgba(var(--accent-rgb), 0.14);
    --accent-soft-2: rgba(var(--accent-rgb), 0.08);
    --accent-soft-3: rgba(var(--accent-rgb), 0.2);
    --accent-soft2: var(--accent-soft-2);
    --accent-soft3: var(--accent-soft-3);
    --accent-border: rgba(var(--accent-rgb), 0.34);
    --accent-border-strong: rgba(var(--accent-rgb), 0.56);
    --accent-glow: rgba(var(--accent-rgb), 0.38);

    /* Surfaces */
    --surface-bg: #141008;
    --surface-bg-rgb: 20, 16, 8;
    --surface-1: #1a140c;
    --surface-2: #1f1810;
    --surface-3: #261e14;
    --surface-4: #302618;

    --surface-card: var(--surface-2);
    --surface-modal: #18120c;
    --surface-elevated: #2a2218;

    --surface-border: rgba(255, 255, 255, 0.12);
    --surface-border-soft: rgba(255, 255, 255, 0.08);
    --surface-border-strong: rgba(255, 255, 255, 0.18);

    /* Legacy dark palette aliases */
    --legacy-bg-1: #1c1810;
    --legacy-bg-2: #221c14;
    --legacy-bg-3: #2a2218;
    --legacy-text-muted: #b8a890;

    /* Text */
    --text-primary: #ffffff;
    --text-secondary: rgba(255, 255, 255, 0.88);
    --text-muted: rgba(255, 255, 255, 0.72);
    --text-soft: rgba(255, 255, 255, 0.56);
    --text-disabled: rgba(255, 255, 255, 0.38);
    --text-on-accent: var(--brand-primary-contrast);

    /* States - amber / orange family (aligned with accent) */
    --success: #c9a010;
    --success-rgb: 201, 160, 16;
    --warning: #e8a820;
    --warning-rgb: 232, 168, 32;
    --danger: #e85a1a;
    --danger-rgb: 232, 90, 26;
    --info: #ffb020;
    --info-rgb: 255, 176, 32;

    --state-success-soft: rgba(var(--success-rgb), 0.16);
    --state-warning-soft: rgba(var(--warning-rgb), 0.18);
    --state-danger-soft: rgba(var(--danger-rgb), 0.15);
    --state-info-soft: rgba(var(--info-rgb), 0.16);

    /* Radius scale */
    --radius-2xs: 4px;
    --radius-xs: 6px;
    --radius-sm: 8px;
    --radius-md: 10px;
    --radius-lg: 12px;
    --radius-xl: 16px;
    --radius-2xl: 20px;
    --radius-3xl: 24px;
    --radius-pill: 999px;

    /* Border scale */
    --border-thin: 1px;
    --border-medium: 2px;

    /* Shadow scale */
    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.2);
    --shadow-sm: 0 6px 14px rgba(0, 0, 0, 0.22);
    --shadow-md: 0 10px 24px rgba(0, 0, 0, 0.28);
    --shadow-lg: 0 14px 32px rgba(0, 0, 0, 0.34);
    --shadow-xl: 0 18px 44px rgba(0, 0, 0, 0.42);
    --shadow-accent-sm: 0 8px 18px rgba(var(--accent-rgb), 0.24);
    --shadow-accent-md: 0 12px 28px rgba(var(--accent-rgb), 0.36);
    --shadow-accent-lg: 0 16px 36px rgba(var(--accent-rgb), 0.42);

    /* Gradients */
    --gradient-primary: linear-gradient(180deg, rgba(var(--accent-rgb), 0.95), rgba(var(--accent-rgb), 0.72));
    --gradient-primary-horizontal: linear-gradient(90deg, rgba(var(--accent-rgb), 0.96), rgba(var(--accent-rgb), 0.74));
    --gradient-overlay: linear-gradient(180deg, rgba(24, 18, 10, 0.9), rgba(14, 10, 6, 0.92));
    --gradient-surface: linear-gradient(180deg, var(--surface-2), var(--surface-1));
    --gradient-chip: linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.03));
    --gradient-withdraw: linear-gradient(90deg, #ff5a6f 0%, #f03b57 30%, #d91f3f 68%, #b5122e 100%);

    /* Legacy variables currently consumed by existing CSS */
    --panel-top: #2a2214;
    --panel-bottom: #141008;

    --panel-bg: var(--surface-2);
    --panel-bg2: var(--surface-1);
    --modalbg: linear-gradient(180deg, var(--panel-bg), var(--panel-bg2));
    --linearbg: radial-gradient(900px 220px at 15% 0%, rgba(255, 255, 255, 0.06), transparent 55%),
        linear-gradient(180deg, rgba(32, 24, 14, 0.92), rgba(20, 16, 8, 0.92));
    --linearbgreversed: radial-gradient(900px 220px at 85% 0%, rgba(255, 255, 255, 0.06), transparent 55%),
        linear-gradient(180deg, rgba(32, 24, 14, 0.92), rgba(20, 16, 8, 0.92));
    --lineartooltipbg: linear-gradient(180deg, rgba(28, 22, 14, 0.96), rgba(16, 12, 8, 0.98));

    /* Progress / indicators */
    --progressbg: linear-gradient(
        to right,
        rgba(var(--accent-rgb), 0.72) 0%,
        rgba(var(--accent-rgb), 0.82) 35%,
        rgba(var(--accent-rgb), 0.98) 70%,
        rgba(var(--accent-rgb), 1) 100%
    );

    /* Inputs */
    --input-bg: var(--linearbg);
    --input-bg-solid: var(--legacy-bg-3);
    --input-border: rgba(255, 255, 255, 0.14);
    --input-border-focus: rgba(var(--accent-rgb), 0.65);
    --input-placeholder: rgba(255, 255, 255, 0.45);

    /* Buttons */
    --btn-primary-bg: var(--accent);
    --btn-primary-bg-hover: color-mix(in srgb, var(--accent) 84%, #ffffff 16%);
    --btn-primary-bg-active: color-mix(in srgb, var(--accent) 88%, #000000 12%);
    --btn-primary-color: var(--brand-primary-contrast);
    --btn-primary-radius: var(--radius-xs);
    --btn-primary-shadow: var(--shadow-accent-sm);
    --btn-primary-shadow-active: var(--shadow-accent-md);
    --btn-primary-disabled-opacity: 0.55;

    --btn-secondary-bg: var(--legacy-bg-3);
    --btn-secondary-bg-hover: color-mix(in srgb, var(--legacy-bg-3) 86%, #ffffff 14%);
    --btn-secondary-color: var(--text-primary);
    --btn-secondary-border: var(--surface-border-soft);

    --btn-ghost-bg: rgba(255, 255, 255, 0.06);
    --btn-ghost-bg-hover: rgba(255, 255, 255, 0.12);
    --btn-ghost-color: var(--text-primary);

    /* Header */
    --header-shell-bg: linear-gradient(180deg, rgba(32, 26, 16, 0.98) 0%, rgba(20, 16, 10, 0.99) 100%);
    --header-shell-bg-solid: #1a140c;
    --header-top-strip-bg: rgba(24, 20, 14, 0.95);
    --header-register-bg: var(--btn-primary-bg);
    --header-register-color: var(--btn-primary-color);
    --wallet-btn-bg-start: #2a2214;
    --wallet-btn-bg-end: var(--accent);
    --wallet-btn-gradient: linear-gradient(90deg, var(--wallet-btn-bg-start) 0%, var(--wallet-btn-bg-end) 100%);
    --wallet-btn-color: var(--brand-primary-contrast);

    /* Tabs / chips / pills */
    --tab-active-bg: var(--accent);
    --tab-active-color: var(--brand-primary-contrast);
    --tab-active-border: var(--accent);
    --tab-inactive-bg: transparent;
    --tab-inactive-color: var(--text-muted);
    --tab-inactive-border: var(--surface-border-soft);

    --chip-bg: rgba(255, 255, 255, 0.06);
    --chip-border: rgba(255, 255, 255, 0.12);
    --chip-color: var(--text-muted);
    --chip-active-bg: rgba(var(--accent-rgb), 0.14);
    --chip-active-border: rgba(var(--accent-rgb), 0.55);
    --chip-active-color: var(--text-primary);

    /* Cards / modals */
    --card-bg: var(--gradient-surface);
    --card-border: var(--surface-border-soft);
    --card-radius: var(--radius-lg);
    --card-shadow: var(--shadow-md);

    --modal-bg: var(--modalbg);
    --modal-border: var(--surface-border-soft);
    --modal-radius: var(--radius-lg);
    --modal-shadow: var(--shadow-xl);

    /* Wallet */
    --wallet-deposit-bg: var(--accent);
    --wallet-withdraw-gradient: var(--gradient-withdraw);
    --wallet-footer-btn-bg: var(--legacy-bg-3);
    --wallet-footer-btn-color: var(--text-primary);

    /* Game opener */
    --game-opener-border: var(--accent);
    --game-opener-overlay: linear-gradient(0deg, rgba(28, 22, 14, 0.84) 0%, rgba(28, 22, 14, 0.84) 100%);
    --game-play-btn-bg: var(--accent);
    --game-play-btn-color: var(--brand-primary-contrast);
    --game-demo-btn-bg: var(--legacy-text-muted);
    --game-demo-btn-color: #ffffff;

    /* Slider controls */
    --slider-nav-bg: rgba(36, 28, 16, 0.8);
    --slider-nav-bg-hover: rgba(var(--accent-rgb), 0.28);
    --slider-nav-border: rgba(var(--accent-rgb), 0.35);
    --slider-nav-color: #ffffff;
    --slider-pagination-dot: rgba(255, 255, 255, 0.35);
    --slider-pagination-dot-active: var(--accent);

    /* Typography tokens */
    --font-family-regular: "Rubik", sans-serif;
    --font-family-medium: "Rubik Medium", sans-serif;
    --font-family-semibold: "Rubik SemiBold", sans-serif;
    --font-family-bold: "Rubik Bold", sans-serif;

    /* Top search (global) */
    --top-search-form-border: 1px solid #4a3d28;
    --top-search-form-radius: 4px;
    --top-search-form-margin-top: 24px;
    --top-search-form-margin-bottom: 24px;
    --top-search-form-padding-x: 12px;
    --top-search-form-height: 48px;
    --top-search-form-line-height: 62px;
    --top-search-form-font-size: 0px;
    --top-search-form-bg: var(--linearbg);
    --top-search-form-font-family: var(--font-family-medium);

    --top-search-icon-color: #b8a990;
    --top-search-input-color: var(--text-primary);
    --top-search-input-placeholder: rgba(255, 255, 255, 0.55);
    --top-search-focus-radius: 16px;
    --top-search-focus-shadow: 0 22px 70px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(var(--accent-rgb), 0.22),
        0 0 30px rgba(var(--accent-rgb), 0.1);

    --top-search-layer-radius: 18px;
    --top-search-layer-border: 1px solid rgba(255, 255, 255, 0.1);
    --top-search-layer-border-bottom: 10px solid rgba(255, 255, 255, 0.1);
    --top-search-layer-bg: rgba(24, 18, 12, 0.72);
    --top-search-layer-shadow: 0 18px 55px rgba(0, 0, 0, 0.55);
    --top-search-layer-blur: 14px;
    --top-search-recent-wrap-radius: 10px;
    --top-search-recent-wrap-border: 1px solid rgba(var(--brand-secondary-rgb), 0.26);
    --top-search-recent-wrap-bg: linear-gradient(180deg, rgba(22, 18, 12, 0.82), rgba(14, 12, 8, 0.84));
    --top-search-recent-wrap-shadow: 0 14px 26px rgba(0, 0, 0, 0.32);
    --top-search-recent-chip-radius: 999px;
    --top-search-recent-chip-border: 1px solid rgba(var(--brand-secondary-rgb), 0.5);
    --top-search-recent-chip-bg: linear-gradient(
        135deg,
        rgba(var(--brand-secondary-rgb), 0.26),
        rgba(var(--brand-secondary-rgb), 0.14)
    );
    --top-search-recent-chip-color: #fff8e8;
    --top-search-recent-chip-font-family: var(--font-family-semibold);
    --top-search-recent-chip-shadow: 0 6px 14px rgba(var(--brand-secondary-rgb), 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.16);

    /* Lowbar (mobile dock) */
    --lb-bg: rgba(26, 22, 16, 0.72);
    --lb-stroke: rgba(255, 255, 255, 0.1);
    --lb-stroke-2: rgba(255, 255, 255, 0.06);
    --lb-text: rgba(255, 255, 255, 0.86);
    --lb-muted: rgba(255, 255, 255, 0.65);
    --lb-active: var(--accent);
    --lb-shadow: 0 18px 40px rgba(0, 0, 0, 0.5);
    --lb-shadow-soft: 0 10px 26px rgba(0, 0, 0, 0.35);
    --lb-search-bg: #1c1810;
    --lb-radius: 22px;
    --lb-radius-sm: 20px;
    --lb-surface-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
    --lb-wallet-ring-color: rgba(var(--accent-rgb), 0.6);
    --lb-wallet-ring-size: 0.2rem;
    --lb-wallet-glow: radial-gradient(circle, rgba(var(--accent-rgb), 0.18), rgba(var(--accent-rgb), 0) 65%);
    --lb-wallet-glow-radius: radial-gradient(circle, rgba(var(--accent-rgb), 0.22), rgba(var(--accent-rgb), 0) 62%);
    --lb-chat-bg: linear-gradient(135deg, rgba(var(--accent-rgb), 0.9), rgba(var(--accent-rgb), 0.65));
    --lb-chat-border: rgba(var(--accent-rgb), 0.5);
    --lb-chat-color: #ffffff;
    --lb-chat-shadow: 0 12px 24px rgba(var(--accent-rgb), 0.26), 0 8px 20px rgba(0, 0, 0, 0.28);
    --lb-chat-shadow-hover: 0 14px 28px rgba(var(--accent-rgb), 0.34), 0 10px 24px rgba(0, 0, 0, 0.32);

    /* Sidebar top tabs (casino/sportsbook) */
    --sidebar-tab-casino-bg-image: linear-gradient(180deg, rgba(255, 203, 4, 0.9), rgba(255, 203, 4, 0.9));
    --sidebar-tab-sportsbook-bg-image: linear-gradient(180deg, #fb6308d6, #fb6308d6);

    /* Bonus request modal */
    --bonus-request-tab-bg: var(--tab-inactive-bg);
    --bonus-request-tab-border: var(--tab-inactive-border);
    --bonus-request-tab-text: var(--tab-inactive-color);
    --bonus-request-tab-active-bg: var(--tab-active-bg);
    --bonus-request-tab-active-border: var(--tab-active-border);
    --bonus-request-tab-active-text: var(--tab-active-color);
    --bonus-request-card-bg: var(--card-bg);
    --bonus-request-card-border: var(--card-border);
    --bonus-request-card-shadow: var(--card-shadow);
    --bonus-request-info-bg: rgba(var(--accent-rgb), 0.16);
    --bonus-request-info-border: rgba(var(--accent-rgb), 0.45);
    --bonus-request-info-color: var(--text-primary);
    --bonus-request-button-bg: var(--btn-primary-bg);
    --bonus-request-button-text: var(--btn-primary-color);
    --bonus-request-empty-bg: rgba(255, 255, 255, 0.02);
    --bonus-request-empty-border: var(--surface-border-soft);
    --bonus-request-empty-text: var(--text-muted);

    /* VIP club page */
    --vip-accent: var(--accent);
    --vip-accent-rgb: var(--accent-rgb);
    --vip-bg0: var(--surface-bg);
    --vip-bg1: var(--surface-2);
    --vip-card-bg: rgba(255, 255, 255, 0.05);
    --vip-card-border: rgba(255, 255, 255, 0.10);
    --vip-card-border-soft: rgba(255, 255, 255, 0.06);
    --vip-card-hover-bg: rgba(255, 255, 255, 0.06);
    --vip-text: var(--text-secondary);
    --vip-muted: var(--text-soft);
    --vip-chip-bg: rgba(255, 255, 255, 0.06);
    --vip-chip-border: rgba(255, 255, 255, 0.10);
    --vip-chip-active-bg: rgba(var(--vip-accent-rgb), 0.16);
    --vip-chip-active-border: rgba(var(--vip-accent-rgb), 0.30);
    --vip-tag-bg: rgba(0, 0, 0, 0.18);
    --vip-gift-tag-bg: rgba(var(--vip-accent-rgb), 0.10);
    --vip-gift-tag-border: rgba(var(--vip-accent-rgb), 0.18);
    --vip-button-border: rgba(var(--vip-accent-rgb), 0.28);
    --vip-button-bg: linear-gradient(180deg, rgba(var(--vip-accent-rgb), 0.22), rgba(var(--vip-accent-rgb), 0.10));
    --vip-button-border-hover: rgba(var(--vip-accent-rgb), 0.42);
    --vip-link: rgba(var(--vip-accent-rgb), 0.95);
    --vip-link-border: rgba(var(--vip-accent-rgb), 0.35);
    --vip-link-border-hover: rgba(var(--vip-accent-rgb), 0.65);

    /* Misc */
    --focus-ring: 0 0 0 3px rgba(var(--accent-rgb), 0.22);
    --divider: var(--surface-border-soft);

    /* Notification dropdown */
    --notif-badge-bg: var(--accent);
    --notif-badge-border: rgba(255, 255, 255, 0.55);
    --notif-panel-bg: var(--lineartooltipbg);
    --notif-panel-border: rgba(255, 255, 255, 0.08);
    --notif-panel-shadow: 0 16px 40px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.06);
    --notif-empty-bg: rgba(120, 108, 88, 0.16);
    --notif-empty-border: rgba(255, 255, 255, 0.08);
    --notif-item-bg: rgba(120, 108, 88, 0.14);
    --notif-item-bg-hover: rgba(120, 108, 88, 0.18);
    --notif-item-border: rgba(255, 255, 255, 0.08);
    --notif-item-border-hover: rgba(255, 255, 255, 0.14);
    --notif-track-thumb: rgba(255, 255, 255, 0.1);

    /* Wallet settings modal */
    --wgs-text: rgba(255, 255, 255, 0.92);
    --wgs-muted: rgba(255, 255, 255, 0.55);
    --wgs-panel-bg: rgba(28, 24, 18, 0.75);
    --wgs-panel-border: rgba(255, 255, 255, 0.05);
    --wgs-block-bg: rgba(255, 255, 255, 0.03);
    --wgs-block-bg-hover: rgba(255, 255, 255, 0.04);
    --wgs-block-border: rgba(255, 255, 255, 0.06);
    --wgs-switch-on-bg: rgba(var(--accent-rgb), 0.14);
    --wgs-switch-on-border: rgba(var(--accent-rgb), 0.28);
    --wgs-switch-knob: rgba(255, 255, 255, 0.35);
    --wgs-switch-knob-on: rgba(var(--accent-rgb), 0.9);
    --wgs-dot-bg: rgba(var(--accent-rgb), 0.1);
    --wgs-dot-border: rgba(var(--accent-rgb), 0.15);
    --wgs-dot-ring: rgba(var(--accent-rgb), 0.25);
    --wgs-save-border: rgba(var(--success-rgb), 0.22);
    --wgs-save-bg: linear-gradient(90deg, rgba(48, 36, 12, 0.92), rgba(var(--accent-rgb), 0.45));

    /* Game page + empty states */
    --game-theater-overlay: rgba(0, 0, 0, 0.65);
    --game-overlay-soft: rgba(0, 0, 0, 0.55);
    --game-fs-close-bg: var(--legacy-bg-3);
    --game-switch-bg: var(--legacy-bg-3);
    --game-switch-knob: var(--legacy-bg-2);
    --game-switch-active-gradient: linear-gradient(to right, #b88600, #d4a010, #ffcb04, #ffd54a, #ffe08a);
    --game-bets-empty-bg: linear-gradient(145deg, rgba(42, 32, 18, 0.92), rgba(24, 18, 10, 0.86));
    --game-bets-empty-border: rgba(200, 160, 60, 0.34);
    --game-bets-empty-icon-bg: rgba(180, 130, 20, 0.24);
    --game-bets-empty-icon-border: rgba(230, 190, 80, 0.34);
    --game-bets-empty-icon-shadow: 0 8px 24px rgba(24, 16, 6, 0.45);
    --game-bets-empty-title: #fff8ec;
    --game-bets-empty-text: rgba(255, 230, 200, 0.9);
    --game-bets-empty-button-bg: rgba(160, 110, 20, 0.45);
    --game-bets-empty-button-border: rgba(220, 175, 60, 0.5);
    --game-bets-empty-button-hover-bg: rgba(190, 135, 28, 0.58);
    --game-bets-empty-button-hover-border: rgba(240, 200, 90, 0.72);

    /* Favorites empty card */
    --favorites-empty-bg: linear-gradient(140deg, rgba(36, 28, 14, 0.94), rgba(18, 14, 8, 0.96));
    --favorites-empty-border: rgba(210, 170, 70, 0.3);
    --favorites-empty-shadow: inset 0 1px 0 rgba(255, 220, 150, 0.14), 0 18px 42px rgba(12, 8, 4, 0.42);
    --favorites-empty-icon-bg: rgba(200, 150, 30, 0.28);
    --favorites-empty-icon-border: rgba(235, 200, 100, 0.42);
    --favorites-empty-icon-shadow: 0 8px 26px rgba(80, 50, 8, 0.45);
    --favorites-empty-title: #fff8ec;
    --favorites-empty-text: rgba(255, 228, 200, 0.9);
    --favorites-empty-btn-bg: linear-gradient(180deg, #e6b000 0%, #b8860b 100%);
    --favorites-empty-btn-border: rgba(240, 200, 90, 0.58);
    --favorites-empty-btn-shadow: 0 8px 20px rgba(90, 60, 10, 0.36);

    /* Race / raffle info blocks */
    --event-trophy-bg: rgba(0, 0, 0, 0.18);
    --event-trophy-border: rgba(230, 190, 90, 0.34);
    --event-card-border: rgba(255, 255, 255, 0.08);
    --event-divider: rgba(255, 255, 255, 0.12);
    --event-title: #ffffff;
    --event-label: rgba(255, 244, 228, 0.95);
    --event-muted: rgba(210, 195, 170, 0.95);
    --event-stat-label: rgba(205, 190, 165, 0.92);
    --event-cta-bg: var(--gradient-primary);
    --event-cta-color: var(--brand-primary-contrast);
    --event-progress-track: rgba(36, 30, 20, 0.75);

    /* Withdraw progress */
    --withdraw-progress-bg: rgba(32, 26, 16, 0.72);
    --withdraw-progress-border: rgba(150, 130, 90, 0.3);
    --withdraw-progress-track: rgba(48, 40, 28, 0.85);
    --withdraw-progress-fill: linear-gradient(90deg, #c9a010 0%, #ffcb04 100%);
    --withdraw-progress-stat-bg: rgba(255, 255, 255, 0.04);
    --withdraw-progress-label: #b8a890;
    --withdraw-progress-value: #fff8ec;
    --withdraw-progress-note: #c9b8a0;

    /* Challenges page */
    --challenge-filter-bg: rgba(42, 40, 32, 0.55);
    --challenge-filter-border: rgba(160, 140, 100, 0.24);
    --challenge-filter-text: #a89880;
    --challenge-filter-text-hover: #fff0cc;
    --challenge-filter-active-bg: var(--linearbg);
    --challenge-filter-active-text: var(--text-primary);
    --challenge-filter-active-ring: rgba(var(--accent-rgb), 0.36);

    --challenge-card-radius: var(--radius-sm);
    --challenge-card-bg: radial-gradient(120% 80% at 8% -10%, rgba(var(--accent-rgb), 0.25) 0%, rgba(var(--accent-rgb), 0) 58%),
        radial-gradient(90% 70% at 100% 100%, rgba(var(--accent-rgb), 0.2) 0%, rgba(var(--accent-rgb), 0) 64%),
        linear-gradient(160deg, color-mix(in srgb, var(--surface-3) 82%, #5c4a20 18%) 0%, var(--surface-3) 42%, var(--surface-2) 100%);
    --challenge-card-shadow: 0 10px 24px rgba(0, 0, 0, 0.24), inset 0 0 0 1px rgba(255, 255, 255, 0.05);
    --challenge-card-sheen: linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0%, rgba(255, 255, 255, 0) 38%),
        repeating-linear-gradient(-35deg, rgba(255, 255, 255, 0.02) 0 2px, rgba(255, 255, 255, 0) 2px 14px);
    --challenge-card-overlay-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06), inset 0 -42px 60px rgba(12, 8, 4, 0.32);
    --challenge-image-fallback: color-mix(in srgb, var(--surface-3) 75%, #2a2214 25%);

    --challenge-title: #fff8ec;
    --challenge-target: rgba(240, 220, 195, 0.86);
    --challenge-label: rgba(195, 180, 155, 0.84);
    --challenge-value: #fff8ec;
    --challenge-author: #fff8ec;
    --challenge-claimed-divider: rgba(220, 190, 140, 0.16);

    --challenge-completed-ring: rgba(var(--success-rgb), 0.24);
    --challenge-completed-bg: linear-gradient(180deg, rgba(var(--success-rgb), 0.16) 0%, rgba(var(--success-rgb), 0.1) 100%);
    --challenge-control-label: rgba(255, 255, 255, 0.75);
    --challenge-control-btn-bg: rgba(18, 14, 10, 0.9);
    --challenge-control-btn-border: rgba(255, 255, 255, 0.1);
    --challenge-control-btn-text: #ffffff;
    --challenge-control-btn-icon: rgba(255, 255, 255, 0.85);
    --challenge-control-badge-bg: rgba(var(--accent-rgb), 0.18);
    --challenge-control-badge-border: rgba(var(--accent-rgb), 0.35);
    --challenge-control-badge-text: color-mix(in srgb, var(--accent) 70%, #fff8e0 30%);
    --challenge-dropdown-bg: #ffffff;
    --challenge-dropdown-text: #1c1814;
    --challenge-dropdown-border: rgba(0, 0, 0, 0.1);
    --challenge-dropdown-divider: rgba(0, 0, 0, 0.08);
    --challenge-dropdown-item-hover: rgba(0, 0, 0, 0.06);
    --challenge-dropdown-shadow: 0 14px 40px rgba(0, 0, 0, 0.35);
    --challenge-dropdown-active: var(--accent);
    --challenge-provider-pill-bg: linear-gradient(
        to right,
        color-mix(in srgb, var(--accent) 82%, #8a6a08 18%) 0%,
        color-mix(in srgb, var(--accent) 84%, #b8860b 16%) 100%
    );
    --challenge-provider-pill-text: var(--brand-primary-contrast);

    /* Tournament buttons */
    --tournament-button-bg: linear-gradient(
        180deg,
        color-mix(in srgb, var(--accent) 86%, #ffffff 14%) 0%,
        color-mix(in srgb, var(--accent) 84%, #000000 16%) 100%
    );
    --tournament-button-border: rgba(var(--accent-rgb), 0.54);
    --tournament-button-color: var(--brand-primary-contrast);
    --tournament-button-radius: var(--radius-2xs);
    --tournament-button-shadow: 0 8px 22px rgba(var(--accent-rgb), 0.34);
    --tournament-button-hover-filter: brightness(1.05);

    /* General header tabs */
    --general-tabs-text: #9a8f82;
    --general-tabs-active-text: var(--accent);
    --general-tabs-active-font: "Rubik Bold";

    /* Sidebar */
    --sidebar-width: 260px;
    --sidebar-rail-width: 78px;
    --sidebar-z: 2000;
    --sidebar-ease: cubic-bezier(.2, .9, .2, 1);

    --sidebar-bg-open: linear-gradient(180deg, rgba(32, 26, 16, .96) 0%, rgba(18, 14, 8, .96) 100%);
    --sidebar-bg-open-accent: rgba(var(--accent-rgb), .18);
    --sidebar-bg-open-secondary: rgba(var(--warning-rgb), .10);

    --sidebar-bg-collapsed: linear-gradient(180deg, rgba(22, 18, 12, 0.98) 0%, rgba(14, 12, 8, 0.98) 100%);
    --sidebar-bg-collapsed-accent: rgba(var(--accent-rgb), 0.20);

    --sidebar-bg-active: linear-gradient(180deg, rgba(26, 22, 14, 0.97) 0%, rgba(14, 12, 8, 0.98) 100%);
    --sidebar-bg-active-accent: rgba(var(--accent-rgb), 0.22);
    --sidebar-bg-active-secondary: rgba(var(--success-rgb), 0.12);

    --sidebar-stroke: rgba(255, 255, 255, .06);
    --sidebar-stroke-strong: rgba(255, 255, 255, .10);
    --sidebar-stroke-accent: rgba(var(--accent-rgb), .24);
    --sidebar-text: rgba(255, 246, 235, 0.94);
    --sidebar-text-muted: rgba(190, 180, 165, 0.84);
    --sidebar-text-soft: #bdbdbd;

    --sidebar-chip: rgba(255, 255, 255, .05);
    --sidebar-chip-2: rgba(255, 255, 255, .03);
    --sidebar-chip-stroke: rgba(255, 255, 255, .08);

    --sidebar-shadow: 0 30px 70px rgba(0, 0, 0, .55);
    --sidebar-shadow-soft: 0 14px 30px rgba(0, 0, 0, .28);
    --sidebar-active-glow: 0 0 0 1px rgba(var(--accent-rgb), .16);

    --sidebar-overlay: rgba(0, 0, 0, .60);

    --sidebar-search-bg: radial-gradient(420px 120px at 15% 0%, rgba(var(--accent-rgb), .10), transparent 60%),
        linear-gradient(180deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .02));
    --sidebar-search-text: var(--sidebar-text-muted);

    --sidebar-promo-bg: rgba(255, 255, 255, .03);
    --sidebar-promo-border: rgba(255, 255, 255, .07);
    --sidebar-promo-item-bg: rgba(0, 0, 0, .14);
    --sidebar-promo-item-bg-hover: rgba(0, 0, 0, .20);
    --sidebar-promo-dot: var(--accent);
    --sidebar-promo-dot-glow: rgba(var(--accent-rgb), .15);
    --sidebar-hero-glow: linear-gradient(90deg, #2a2214 0%, color-mix(in srgb, var(--accent) 84%, #b8860b 16%) 100%);

    --sidebar-top-btn-border: rgba(255, 255, 255, 0.07);
    --sidebar-top-btn-bg: linear-gradient(95deg, rgba(48, 40, 24, 0.65) 0%, rgba(36, 30, 18, 0.75) 50%, rgba(28, 24, 14, 0.8) 100%);
    --sidebar-top-btn-shadow: 0 14px 26px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.05);
    --sidebar-top-btn-title: rgba(255, 246, 235, 0.94);
    --sidebar-top-btn-arrow: rgba(230, 200, 130, 0.88);

    --sidebar-top-btn-hover-border: rgba(var(--accent-rgb), 0.34);
    --sidebar-top-btn-hover-shadow: 0 18px 30px rgba(0, 0, 0, 0.36), 0 0 0 1px rgba(var(--accent-rgb), 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.08);

    --sidebar-top-btn-active-border: rgba(var(--accent-rgb), 0.48);
    --sidebar-top-btn-active-bg: linear-gradient(95deg, rgba(var(--accent-rgb), 0.34) 0%, rgba(var(--accent-rgb), 0.22) 100%);
    --sidebar-top-btn-active-shadow: 0 18px 34px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(var(--accent-rgb), 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.11);
}

/* Scoped variables for hero area slider */
.hero-area-slider {
    --hero-accent: var(--accent);
    --hero-accent-rgb: var(--accent-rgb);
    --hero-nav-bg: var(--slider-nav-bg);
    --hero-nav-bg-hover: var(--slider-nav-bg-hover);
    --hero-nav-border: var(--slider-nav-border);
    --hero-pagination-dot: var(--slider-pagination-dot);
    --hero-pagination-dot-active: var(--slider-pagination-dot-active);
}

/* =========================================================
   GLOBAL THEME OVERRIDES FOR LEGACY SELECTORS
   ========================================================= */

/* Header shell — override default blue-tinted top bar / middle bar */
header#header,
#header {
    background: var(--header-shell-bg) !important;
    background-color: var(--header-shell-bg-solid) !important;
}

div.hero-box div.box-register a.register-button {
    margin-top: 16px;
    margin-bottom: 8px;
    background-color: #e6b00b !important;
    display: inline-block;
    min-width: 280px;
    height: 48px;
    border-radius: 12px;
    font-family: "Rubik Bold";
    font-size: 14px;
    color: #fff;
    line-height: 48px;
}

header#header .top-header,
header#header .upper-header,
header#header .header-top,
#header .middle-header {
    background: var(--header-shell-bg) !important;
    background-color: transparent !important;
}

header#header .middle-header-container,
header#header .header-inner {
    background: transparent !important;
}

/* Header buttons — register (classes vary: .button.register, .register-button, etc.) */
header#header div.middle-header div.middle-header-container div.header-buttons div.login-buttons a.button.register,
header#header .login-buttons a.button.register,
header#header .login-buttons a.register-button,
header#header .login-buttons .register-button,
header#header a.register-button,
header#header .login-buttons a[href*="register"],
#header .register-button {
    background-color: var(--accent) !important;
    background-image: linear-gradient(180deg, var(--accent), var(--accent)) !important;
    color: var(--header-register-color) !important;
    border-radius: var(--btn-primary-radius);
    box-shadow: var(--btn-primary-shadow);
    border-color: rgba(var(--accent-rgb), 0.35) !important;
}

header#header .login-buttons a.button.register:hover,
header#header .login-buttons a.register-button:hover,
header#header .login-buttons .register-button:hover,
header#header a.register-button:hover,
header#header .login-buttons a[href*="register"]:hover,
#header .register-button:hover {
    background-color: var(--btn-primary-bg-hover) !important;
    background-image: linear-gradient(180deg, var(--btn-primary-bg-hover), var(--btn-primary-bg-hover)) !important;
}

header#header div.middle-header div.middle-header-container div.logo img, header#header div.middle-header div.middle-header-container div.logo svg{
    margin-top: 4px;
}
header#header div.middle-header div.middle-header-container div.header-buttons div.wallet-menu div.current-wallet a.wallet-button {
    color: var(--wallet-btn-color) !important;
    background: var(--wallet-btn-gradient) !important;
    border-radius: var(--radius-xs);
}

/* Primary action buttons */
.common-form-button .button,
form.general-form div.form-buttons button,
.auth div.auth-box form.auth-form div.form-buttons button,
.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-buttons button {
    background-color: var(--btn-primary-bg) !important;
    color: var(--btn-primary-color) !important;
    border-radius: var(--btn-primary-radius) !important;
    box-shadow: var(--btn-primary-shadow);
}

.common-form-button .button:hover,
form.general-form div.form-buttons button:hover,
.auth div.auth-box form.auth-form div.form-buttons button:hover,
.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-buttons button:hover {
    background-color: var(--btn-primary-bg-hover) !important;
}

.common-form-button .button:active,
form.general-form div.form-buttons button:active,
.auth div.auth-box form.auth-form div.form-buttons button:active,
.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-buttons button:active {
    background-color: var(--btn-primary-bg-active) !important;
    box-shadow: var(--btn-primary-shadow-active) !important;
}

/* Inputs */
.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-group div.form-item.form-item-text input,
.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-group div.form-item.form-item-password input,
form.general-form div.form-group div.form-item.form-item-text input,
form.general-form div.form-group div.form-item.form-item-password input,
form.general-form div.form-group div.form-item.form-item-select select,
.phone-input,
.phone-input input {
    background: var(--input-bg) !important;
    border-color: var(--input-border) !important;
    border-radius: var(--radius-xs) !important;
    color: var(--text-primary) !important;
}

.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-group div.form-item.form-item-text input::placeholder,
.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-group div.form-item.form-item-password input::placeholder,
form.general-form div.form-group div.form-item.form-item-text input::placeholder,
form.general-form div.form-group div.form-item.form-item-password input::placeholder {
    color: var(--input-placeholder) !important;
}

.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-group div.form-item.form-item-text input:focus,
.auth-modal .modal-dialog .modal-content .modal-box form.auth-form div.form-group div.form-item.form-item-password input:focus,
form.general-form div.form-group div.form-item.form-item-text input:focus,
form.general-form div.form-group div.form-item.form-item-password input:focus,
.phone-input input:focus {
    border-color: var(--input-border-focus) !important;
    box-shadow: var(--focus-ring) !important;
}
/* 
/* Modals and cards */
.modal .modal-dialog .modal-content,
.modal-body,
#betModal .modal-dialog .modal-content .modal-body div.wallet-box,
#walletModal .modal-dialog .modal-content .modal-body div.wallet-box,
.auth-modal .modal-dialog .modal-content .modal-body {
    /* background: var(--modal-bg) !important; */
    /* border: var(--border-thin) solid var(--modal-border); */
    /* border-radius: var(--modal-radius) !important; */
    /* box-shadow: var(--modal-shadow); */
} */

/* Wallet buttons */
#walletModal .modal-dialog .modal-content .modal-body div.wallet-box div.wallet-normal div.wallet-body div.wallet-buttons span.button.deposit {
    background-color: var(--wallet-deposit-bg) !important;
    color: var(--brand-primary-contrast) !important;
}

#walletModal .modal-dialog .modal-content .modal-body div.wallet-box div.wallet-normal div.wallet-body div.wallet-buttons span.button.withdraw {
    background-image: var(--wallet-withdraw-gradient) !important;
    color: var(--brand-primary-contrast) !important;
}

#walletModal .modal-dialog .modal-content .modal-body div.wallet-footer a.button {
    background-color: var(--wallet-footer-btn-bg) !important;
    color: var(--wallet-footer-btn-color) !important;
    border-radius: var(--radius-xs) !important;
}

/* Tabs and chips */
.simple-bets .nav.nav-pills .nav-link.active,
.simple-bets .nav.nav-pills .nav-link[aria-selected="true"],
.simple-bets ul li button.active,
.simple-bets ul li button[aria-selected="true"] {
    color: var(--tab-active-color) !important;
    background-color: var(--tab-active-bg) !important;
    border-color: var(--tab-active-border) !important;
}

.faq__chip,
.ato-btn {
    border-color: var(--chip-border);
    background: var(--chip-bg);
    color: var(--chip-color);
    border-radius: var(--radius-pill);
}

.faq__chip.is-active,
.ato-btn.is-active {
    border-color: var(--chip-active-border) !important;
    background: var(--chip-active-bg) !important;
    color: var(--chip-active-color) !important;
}

/* Animated tab indicator */
.ato-indicator {
    background: linear-gradient(
        to bottom,
        rgba(var(--accent-rgb), 0.72),
        rgba(var(--accent-rgb), 0.42)
    ) !important;
    border: 1px solid rgba(var(--accent-rgb), 0.35) !important;
    border-radius: var(--radius-xs) !important;
    /* box-shadow: 0 10px 22px rgba(var(--accent-rgb), 0.22), inset 0 1px rgba(255, 255, 255, 0.18) !important; */
}

/* Progress bars */
div.progress-bar span,
.progress-fill,
.race-progress .line,
.simple-progress .fill {
    background: var(--progressbg) !important;
}

.progress-circle .progress-svg circle.circle-bg {
    stroke: rgba(160, 150, 130, 0.2);
}

.progress-circle .progress-svg circle.circle {
    stroke: var(--accent);
}

/* Game opener buttons */
.game-item div.game-top div.game-opener {
    border-color: var(--game-opener-border) !important;
    background: var(--game-opener-overlay) !important;
    border-radius: var(--radius-md);
}

.game-item div.game-top div.game-opener div.play-buttons span.button,
.game-item div.game-top div.game-opener div.play-buttons a.button {
    background-color: var(--game-play-btn-bg) !important;
    color: var(--game-play-btn-color) !important;
    border-radius: var(--radius-sm) !important;
}

.game-item div.game-top div.game-opener div.play-buttons span.button.demo,
.game-item div.game-top div.game-opener div.play-buttons a.button.demo {
    background-color: var(--game-demo-btn-bg) !important;
    color: var(--game-demo-btn-color) !important;
}

/* Race carousel CTA */
div.race-carousels div.slider-item .race-item div.head div.details div.buttons a.button {
    background-color: var(--accent) !important;
    color: var(--brand-primary-contrast) !important;
    border-color: var(--accent) !important;
    border-radius: var(--radius-xs) !important;
}

/* Sidebar / menu active marker and active links */
.sidebar .menu a.active,
.sidebar .submenu a.active,
.sidebar-menu a.active,
.accordion-menu a.active,
.lowbar .item.active {
    color: var(--accent) !important;
}

.sidebar .menu .active-indicator,
.accordion-menu .active-indicator,
.lowbar .indicator {
    background: var(--gradient-primary-horizontal) !important;
    box-shadow: var(--shadow-accent-sm);
    border-radius: var(--radius-pill);
}

/* FAQ background glow */
.faq__bg {
    filter: none !important;
    pointer-events: none;
    background:
        radial-gradient(700px 320px at 10% 0, rgba(var(--accent-rgb), 0.16), transparent 60%),
        radial-gradient(520px 260px at 100% 30%, rgba(255, 255, 255, 0.08), transparent 62%),
        radial-gradient(560px 300px at 20% 120%, rgba(var(--accent-rgb), 0.1), transparent 55%) !important;
}

/* Notification surfaces */
.notifications .notification-item,
.notification-item {
    background: var(--gradient-surface) !important;
    border: var(--border-thin) solid var(--surface-border-soft);
    border-radius: var(--radius-sm) !important;
}

.notifications .notification-item.unread,
.notification-item.unread {
    border-color: var(--accent-border) !important;
    box-shadow: inset 0 0 0 1px rgba(var(--accent-rgb), 0.08);
}

/* Generic utility mappings for old hardcoded palette usage */
.theme-bg-primary,
.bg-primary,
[data-theme="primary"] {
    background-color: var(--accent) !important;
    color: var(--brand-primary-contrast) !important;
}

.theme-surface,
.bg-surface,
[data-theme="surface"] {
    background-color: var(--legacy-bg-3) !important;
    color: var(--text-primary) !important;
}

.theme-muted,
.text-muted,
[data-theme="muted"] {
    color: var(--legacy-text-muted) !important;
}

/* Settings page theme tokens */
:root {
    --settings-sidebar-bg: rgba(24, 18, 10, 0.9);
    --settings-sidebar-border: rgba(210, 175, 90, 0.2);
    --settings-sidebar-shadow: 0 18px 36px rgba(0, 0, 0, 0.34);
    --settings-sidebar-radius: 12px;
    --settings-sidebar-select-bg: rgba(255, 255, 255, 0.03);
    --settings-sidebar-item-radius: 8px;
    --settings-sidebar-item-color: rgba(255, 240, 220, 0.84);
    --settings-sidebar-item-active-bg: linear-gradient(120deg, rgba(var(--accent-rgb), 0.24), rgba(var(--accent-rgb), 0.08));
    --settings-sidebar-active-color: #fff8ec;

    --settings-content-bg: rgba(20, 16, 10, 0.86);
    --settings-content-border: rgba(200, 170, 100, 0.18);
    --settings-content-shadow: 0 24px 48px rgba(0, 0, 0, 0.36);
    --settings-content-radius: 12px;

    --settings-block-bg: rgba(24, 20, 14, 0.82);
    --settings-block-border: rgba(190, 165, 110, 0.18);
    --settings-block-divider: rgba(190, 165, 110, 0.16);
    --settings-block-header-bg: transparent;
    --settings-block-radius: 10px;
    --settings-block-title-color: rgba(255, 250, 240, 0.96);
    --settings-block-desc-color: rgba(210, 200, 180, 0.78);

    --settings-field-title-color: rgba(255, 244, 228, 0.9);
    --settings-control-bg: rgba(18, 14, 10, 0.72);
    --settings-control-border: rgba(200, 170, 110, 0.24);
    --settings-control-color: rgba(255, 248, 238, 0.95);
    --settings-control-radius: 8px;

    --settings-check-title-color: rgba(255, 248, 238, 0.94);
    --settings-check-desc-color: rgba(200, 188, 170, 0.74);

    /* Common page header */
    --page-header-radius: 4px;
    --page-header-bg: var(--linearbg);
    --page-header-shadow: 0 18px 60px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    --page-header-top-line: linear-gradient(90deg, rgba(var(--accent-rgb), 0), rgba(var(--accent-rgb), 0.55), rgba(var(--accent-rgb), 0));
    --page-header-title-color: rgba(255, 255, 255, 0.96);
    --page-header-subtitle-color: rgba(255, 255, 255, 0.65);
    --page-header-icon-color: #151210;

    /* Blog detail */
    --blog-detail-shell-border: rgba(255, 255, 255, 0.08);
    --blog-detail-shell-radius: 12px;
    --blog-detail-shell-bg: linear-gradient(180deg, rgba(20, 16, 10, 0.94), rgba(20, 16, 10, 0.84));
    --blog-detail-shell-shadow: 0 24px 50px rgba(0, 0, 0, 0.36);
    --blog-detail-empty-border: rgba(255, 255, 255, 0.15);
    --blog-detail-empty-color: rgba(255, 255, 255, 0.8);
    --blog-detail-card-bg: rgba(255, 255, 255, 0.02);
    --blog-detail-close-border: rgba(255, 255, 255, 0.14);
    --blog-detail-close-bg: rgba(255, 255, 255, 0.04);
    --blog-detail-close-color: rgba(255, 255, 255, 0.9);
    --blog-detail-close-border-hover: rgba(255, 255, 255, 0.28);
    --blog-detail-close-bg-hover: rgba(255, 255, 255, 0.08);
    --blog-detail-image-border: rgba(255, 255, 255, 0.08);
    --blog-detail-title-color: #fff;
    --blog-detail-lead-color: rgba(255, 255, 255, 0.82);
    --blog-detail-time-color: rgba(255, 255, 255, 0.65);
    --blog-detail-content-color: rgba(255, 255, 255, 0.88);

    /* Policies page */
    --policies-content-bg: rgba(20, 16, 10, 0.86);
    --policies-content-color: var(--text-secondary);
    --policies-link-color: var(--accent);
    --policies-heading-color: #fff;

    /* Wheel page */
    --wheel-page-glow-a: rgba(var(--accent-rgb), 0.16);
    --wheel-page-glow-b: rgba(255, 255, 255, 0.07);
    --wheel-tabs-border: rgba(255, 255, 255, 0.08);
    --wheel-tabs-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(255, 255, 255, 0.01));
    --wheel-tabs-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 14px 24px rgba(0, 0, 0, 0.28);
    --wheel-tab-border: rgba(255, 255, 255, 0.16);
    --wheel-tab-bg: rgba(255, 255, 255, 0.03);
    --wheel-tab-color: rgba(255, 255, 255, 0.9);
    --wheel-tab-border-hover: rgba(255, 255, 255, 0.28);
    --wheel-tab-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
    --wheel-tab-shadow-hover: 0 10px 18px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    --wheel-chip-color: #fff;
    --wheel-chip-bg: rgba(var(--accent-rgb), 0.2);
    --wheel-chip-border: rgba(var(--accent-rgb), 0.36);
    --wheel-tab-active-border: rgba(var(--accent-rgb), 0.48);
    --wheel-tab-active-bg: linear-gradient(180deg, rgba(var(--accent-rgb), 0.86), rgba(var(--accent-rgb), 0.56));
    --wheel-tab-active-shadow: 0 10px 20px rgba(var(--accent-rgb), 0.24);
    --wheel-card-border: rgba(255, 255, 255, 0.08);
    --wheel-card-bg: var(--modalbg);
    --wheel-card-shadow: 0 16px 32px rgba(0, 0, 0, 0.3);
    --wheel-stage-ring: rgba(255, 255, 255, 0.1);
    --wheel-stage-ring-outer: rgba(255, 255, 255, 0.03);
    --wheel-stage-plate-border: rgba(255, 255, 255, 0.14);
    --wheel-stage-plate-bg: radial-gradient(circle, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
    --wheel-stage-center-bg: radial-gradient(circle at 50% 35%, rgba(48, 40, 24, 0.92), rgba(18, 14, 10, 0.98));
    --wheel-stage-center-border: rgba(255, 255, 255, 0.26);
    --wheel-stage-center-ring: rgba(16, 12, 8, 0.62);
    --wheel-stage-center-shadow: 0 10px 24px rgba(0, 0, 0, 0.42);
    --wheel-stage-center-highlight: rgba(255, 255, 255, 0.14);
    --wheel-halo-outer-border: rgba(var(--accent-rgb), 0.36);
    --wheel-halo-inner-border: rgba(var(--accent-rgb), 0.22);
    --wheel-halo-inner-shadow: inset 0 0 45px rgba(var(--accent-rgb), 0.16);
    --wheel-arrow-shadow: drop-shadow(0 8px 16px rgba(0, 0, 0, 0.45));
    --wheel-spin-btn-border: rgba(255, 255, 255, 0.2);
    --wheel-spin-btn-bg: linear-gradient(180deg, rgba(36, 30, 18, 0.94), rgba(16, 14, 10, 0.97));
    --wheel-spin-btn-color: rgba(255, 246, 235, 0.96);
    --wheel-spin-btn-shadow: 0 12px 24px rgba(0, 0, 0, 0.34), 0 0 0 1px rgba(var(--accent-rgb), 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12);
    --wheel-side-summary-border: rgba(255, 255, 255, 0.08);
    --wheel-side-summary-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.015));
    --wheel-muted-text: rgba(255, 255, 255, 0.7);
    --wheel-strong-text: #fff;
    --wheel-status-border: rgba(255, 255, 255, 0.15);
    --wheel-status-bg: rgba(255, 255, 255, 0.04);
    --wheel-status-ready-color: #e6b020;
    --wheel-status-ready-border: rgba(220, 175, 60, 0.35);
    --wheel-status-ready-bg: rgba(220, 175, 60, 0.12);
    --wheel-status-passive-color: rgba(255, 255, 255, 0.76);
    --wheel-article-border: rgba(255, 255, 255, 0.08);
    --wheel-article-bg: rgba(255, 255, 255, 0.01);
    --wheel-article-color: rgba(255, 255, 255, 0.88);
    --wheel-result-border: rgba(var(--accent-rgb), 0.22);
    --wheel-result-bg: rgba(var(--accent-rgb), 0.1);
    --wheel-register-btn-border: rgba(var(--accent-rgb), 0.5);
    --wheel-register-btn-bg: linear-gradient(180deg, var(--accent), rgba(var(--accent-rgb), 0.8));
    --wheel-register-btn-color: var(--brand-primary-contrast);
    --wheel-register-btn-shadow: 0 12px 24px rgba(var(--accent-rgb), 0.2);

    /* Promotions cards */
    --promotion-hover-panel-bg: linear-gradient(180deg, rgba(22, 18, 12, 0.94), rgba(14, 12, 8, 0.96));
    --promotion-hover-panel-pattern: radial-gradient(620px 240px at 80% 20%, rgba(255, 255, 255, 0.04), transparent 66%);
    --promotion-hover-title-color: rgba(255, 255, 255, 0.96);
    --promotion-hover-desc-color: rgba(210, 195, 175, 0.78);
    --promotion-bottom-icon-color: var(--text-primary);
    --promotion-bottom-info-color: var(--text-muted);
}