/* BitCasino / slots.bet.onion — UPx premium casino shell */

:root {
    --bc-bg: #06060a;
    --bc-surface: #0e0e14;
    --bc-panel: #12121a;
    --bc-border: rgba(255, 255, 255, 0.06);
    --bc-purple: #8b5cf6;
    --bc-purple-bright: #a78bfa;
    --bc-pink: #ec4899;
    --bc-gold: #fbbf24;
    --bc-green: #22c55e;
    --bc-red: #ef4444;
    --bc-cyan: #22d3ee;
    --bc-glow-purple: rgba(139, 92, 246, 0.45);
    --bc-glow-gold: rgba(251, 191, 36, 0.35);
}

.dn-site--casino {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    height: 100%;
    background: var(--bc-bg);
}

.dn-site--casino .dn-chrome--casino {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 12px;
    height: 32px;
    min-height: 32px;
    background: linear-gradient(180deg, #16161f, #101015);
    border: none;
    border-bottom: 1px solid var(--bc-border);
}

.dn-site--casino .dn-lock {
    width: 22px;
    height: 18px;
    font-size: 8px;
    font-weight: 800;
    font-family: "Segoe UI", sans-serif;
    color: #fff;
    background: linear-gradient(135deg, #7c3aed, #ec4899);
    border-radius: 3px;
    box-shadow: 0 0 12px var(--bc-glow-purple);
    display: flex;
    align-items: center;
    justify-content: center;
}

.dn-site--casino .dn-site-title {
    font-family: "Segoe UI", system-ui, sans-serif;
    font-size: 11px;
    font-weight: 700;
    color: #f4f4f5;
}

.dn-site--casino .dn-site-url {
    font-family: Consolas, monospace;
    font-size: 10px;
    color: #71717a;
}

.dn-status-ring--casino .dn-status-ring__dot {
    background: var(--bc-purple-bright);
    box-shadow: 0 0 8px var(--bc-glow-purple);
}

.dn-status-ring--casino .dn-status-ring__pulse {
    border-color: rgba(167, 139, 250, 0.5);
}

.dn-site--casino .dn-body {
    flex: 1;
    min-height: 0;
    padding: 0;
    overflow: hidden;
}

.dn-foot--casino {
    border-top: 1px solid var(--bc-border);
    background: linear-gradient(180deg, #101015, #0a0a0e);
}

#win-browser.casino-browser-mode {
    min-width: 1020px;
    min-height: 680px;
}

#win-browser .browser-body.casino-browser-body {
    padding: 0 !important;
    overflow: hidden !important;
}

/* ── App shell ── */
.bc-app {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 520px;
    color: #f4f4f5;
    font-family: "Segoe UI", system-ui, sans-serif;
    background: var(--bc-bg);
    overflow: hidden;
    isolation: isolate;
}

.bc-ambient {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}

.bc-ambient__orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.55;
    animation: bcOrbFloat 14s ease-in-out infinite;
}

.bc-ambient__orb--1 {
    width: 420px;
    height: 420px;
    top: -120px;
    left: -80px;
    background: radial-gradient(circle, rgba(124, 58, 237, 0.55), transparent 70%);
}

.bc-ambient__orb--2 {
    width: 360px;
    height: 360px;
    bottom: -100px;
    right: -60px;
    background: radial-gradient(circle, rgba(236, 72, 153, 0.35), transparent 70%);
    animation-delay: -5s;
}

.bc-ambient__orb--3 {
    width: 280px;
    height: 280px;
    top: 40%;
    left: 45%;
    background: radial-gradient(circle, rgba(34, 211, 238, 0.12), transparent 70%);
    animation-delay: -9s;
}

.bc-ambient__grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(139, 92, 246, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(139, 92, 246, 0.04) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: radial-gradient(ellipse 90% 70% at 50% 30%, #000 20%, transparent 75%);
}

.bc-ambient__scan {
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(255, 255, 255, 0.012) 2px,
        rgba(255, 255, 255, 0.012) 4px
    );
    opacity: 0.35;
}

@keyframes bcOrbFloat {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33% { transform: translate(30px, 20px) scale(1.05); }
    66% { transform: translate(-20px, 30px) scale(0.95); }
}

.bc-win-flash {
    animation: bcWinFlash 0.65s ease-out;
}

@keyframes bcWinFlash {
    0% { box-shadow: inset 0 0 0 0 rgba(34, 197, 94, 0); }
    30% { box-shadow: inset 0 0 80px 20px rgba(34, 197, 94, 0.25); }
    100% { box-shadow: inset 0 0 0 0 rgba(34, 197, 94, 0); }
}

/* Topbar */
.bc-topbar {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--bc-border);
    background: rgba(10, 10, 16, 0.82);
    backdrop-filter: blur(16px);
    flex-wrap: wrap;
}

.bc-brand {
    display: flex;
    align-items: center;
    gap: 12px;
}

.bc-logo {
    position: relative;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, #7c3aed 0%, #ec4899 50%, #fbbf24 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 15px;
    color: #fff;
    letter-spacing: -0.5px;
    box-shadow: 0 0 24px var(--bc-glow-purple), 0 8px 24px rgba(0, 0, 0, 0.45);
}

.bc-logo::after {
    content: "";
    position: absolute;
    inset: -2px;
    border-radius: 14px;
    background: linear-gradient(135deg, #a78bfa, #f472b6, #fcd34d);
    z-index: -1;
    opacity: 0.45;
    filter: blur(8px);
    animation: bcLogoPulse 3s ease-in-out infinite;
}

@keyframes bcLogoPulse {
    0%, 100% { opacity: 0.35; transform: scale(1); }
    50% { opacity: 0.65; transform: scale(1.04); }
}

.bc-brand h1 {
    margin: 0;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.02em;
    background: linear-gradient(90deg, #fff 0%, #e9d5ff 40%, #fbbf24 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-shadow: 0 0 40px rgba(167, 139, 250, 0.3);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.bc-brand h1 .bc-live-badge {
    -webkit-background-clip: unset;
    background-clip: unset;
    background: rgba(34, 197, 94, 0.12);
    color: #86efac;
}

.bc-brand p {
    margin: 3px 0 0;
    font-size: 10px;
    color: #71717a;
    letter-spacing: 0.04em;
}

.bc-live-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 10px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #86efac;
    background: rgba(34, 197, 94, 0.12);
    border: 1px solid rgba(34, 197, 94, 0.35);
}

.bc-live-badge__dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 8px #22c55e;
    animation: bcLiveBlink 1.4s ease-in-out infinite;
}

@keyframes bcLiveBlink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.35; }
}

.bc-wallet {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.bc-balance {
    position: relative;
    padding: 10px 16px;
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(24, 24, 32, 0.95), rgba(14, 14, 20, 0.95));
    border: 1px solid rgba(34, 197, 94, 0.25);
    font-size: 12px;
    box-shadow: 0 0 20px rgba(34, 197, 94, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.bc-balance strong {
    color: #4ade80;
    font-size: 18px;
    font-family: Consolas, "Ubuntu Mono", monospace;
    text-shadow: 0 0 16px rgba(74, 222, 128, 0.45);
}

.bc-link-btn {
    border: 1px solid rgba(139, 92, 246, 0.35);
    background: rgba(18, 18, 26, 0.9);
    color: #c4b5fd;
    font-size: 11px;
    font-weight: 600;
    padding: 9px 14px;
    border-radius: 10px;
    cursor: pointer;
    transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}

.bc-link-btn:hover {
    border-color: var(--bc-purple-bright);
    color: #fff;
    box-shadow: 0 0 20px var(--bc-glow-purple);
    transform: translateY(-1px);
}

/* Stats ticker */
.bc-stats-bar {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 18px;
    border-bottom: 1px solid var(--bc-border);
    background: rgba(8, 8, 12, 0.75);
    flex-wrap: wrap;
}

.bc-stat {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 10px;
    color: #71717a;
}

.bc-stat strong {
    color: #e4e4e7;
    font-family: Consolas, monospace;
    font-size: 12px;
}

.bc-stat--jackpot strong {
    color: var(--bc-gold);
    font-size: 14px;
    text-shadow: 0 0 12px var(--bc-glow-gold);
    animation: bcJackpotGlow 2.5s ease-in-out infinite;
}

@keyframes bcJackpotGlow {
    0%, 100% { filter: brightness(1); }
    50% { filter: brightness(1.25); }
}

.bc-stat-icon {
    font-size: 14px;
}

/* Layout */
.bc-layout {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 1;
    min-height: 0;
}

.bc-sidebar {
    width: 220px;
    flex-shrink: 0;
    border-right: 1px solid var(--bc-border);
    background: rgba(8, 8, 12, 0.88);
    backdrop-filter: blur(12px);
    padding: 14px 10px;
    overflow-y: auto;
}

.bc-nav-title {
    font-size: 9px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #52525b;
    padding: 4px 12px 10px;
    font-weight: 700;
}

.bc-nav-item {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 11px 14px;
    margin-bottom: 5px;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    color: #a1a1aa;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    text-align: left;
    transition: background 0.2s, border-color 0.2s, color 0.2s, box-shadow 0.2s;
}

.bc-nav-item:hover {
    background: rgba(255, 255, 255, 0.03);
    border-color: rgba(139, 92, 246, 0.2);
    color: #f4f4f5;
}

.bc-nav-item.active {
    background: linear-gradient(90deg, rgba(124, 58, 237, 0.28), rgba(124, 58, 237, 0.06));
    border-color: rgba(167, 139, 250, 0.35);
    color: #fff;
    box-shadow: inset 3px 0 0 var(--bc-purple), 0 0 24px rgba(124, 58, 237, 0.15);
}

.bc-nav-icon {
    font-size: 18px;
    width: 26px;
    text-align: center;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4));
}

.bc-main {
    flex: 1;
    min-width: 0;
    overflow-y: auto;
    padding: 18px 20px 24px;
    scrollbar-width: thin;
    scrollbar-color: #3f3f50 transparent;
}

/* Lobby hero */
.bc-lobby {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.bc-hero-banner {
    position: relative;
    border-radius: 18px;
    padding: 28px 32px;
    overflow: hidden;
    border: 1px solid rgba(167, 139, 250, 0.25);
    background:
        linear-gradient(135deg, rgba(124, 58, 237, 0.22) 0%, rgba(236, 72, 153, 0.12) 45%, rgba(6, 6, 10, 0.9) 100%);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.bc-hero-banner::before {
    content: "";
    position: absolute;
    top: -50%;
    right: -10%;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(251, 191, 36, 0.2), transparent 65%);
    pointer-events: none;
}

.bc-hero-banner__kicker {
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #c4b5fd;
    font-weight: 700;
    margin-bottom: 8px;
}

.bc-hero-banner h2 {
    margin: 0 0 8px;
    font-size: 32px;
    font-weight: 900;
    line-height: 1.05;
    background: linear-gradient(90deg, #fff, #fde68a);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.bc-hero-banner p {
    margin: 0;
    max-width: 480px;
    font-size: 12px;
    color: #a1a1aa;
    line-height: 1.55;
}

.bc-hero-banner__cta {
    margin-top: 18px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.bc-hero-chips {
    display: flex;
    gap: 8px;
    margin-top: 16px;
    flex-wrap: wrap;
}

.bc-hero-chip {
    padding: 5px 12px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 700;
    background: rgba(0, 0, 0, 0.35);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #d4d4d8;
}

.bc-lobby-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    gap: 14px;
}

.bc-game-card {
    position: relative;
    border-radius: 16px;
    padding: 20px 18px 18px;
    cursor: pointer;
    overflow: hidden;
    border: 1px solid var(--bc-border);
    background: linear-gradient(160deg, rgba(24, 24, 34, 0.95) 0%, rgba(12, 12, 18, 0.98) 100%);
    transition: transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1), border-color 0.25s, box-shadow 0.25s;
}

.bc-game-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--bc-card-accent, rgba(139, 92, 246, 0.15)), transparent 55%);
    opacity: 0.8;
    pointer-events: none;
}

.bc-game-card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--bc-card-accent-solid, #8b5cf6), transparent);
    opacity: 0.7;
}

.bc-game-card:hover {
    transform: translateY(-4px) scale(1.01);
    border-color: rgba(167, 139, 250, 0.45);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.45), 0 0 30px var(--bc-card-glow, var(--bc-glow-purple));
}

.bc-game-card--featured {
    grid-column: span 2;
    min-height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-color: rgba(251, 191, 36, 0.35);
    --bc-card-accent: rgba(251, 191, 36, 0.18);
    --bc-card-accent-solid: #fbbf24;
    --bc-card-glow: var(--bc-glow-gold);
}

.bc-game-card--gold { --bc-card-accent: rgba(251, 191, 36, 0.15); --bc-card-accent-solid: #fbbf24; --bc-card-glow: var(--bc-glow-gold); }
.bc-game-card--purple { --bc-card-accent: rgba(139, 92, 246, 0.18); --bc-card-accent-solid: #8b5cf6; --bc-card-glow: var(--bc-glow-purple); }
.bc-game-card--cyan { --bc-card-accent: rgba(34, 211, 238, 0.12); --bc-card-accent-solid: #22d3ee; --bc-card-glow: rgba(34, 211, 238, 0.25); }
.bc-game-card--pink { --bc-card-accent: rgba(236, 72, 153, 0.15); --bc-card-accent-solid: #ec4899; --bc-card-glow: rgba(236, 72, 153, 0.3); }
.bc-game-card--green { --bc-card-accent: rgba(34, 197, 94, 0.12); --bc-card-accent-solid: #22c55e; --bc-card-glow: rgba(34, 197, 94, 0.25); }
.bc-game-card--red { --bc-card-accent: rgba(239, 68, 68, 0.12); --bc-card-accent-solid: #ef4444; --bc-card-glow: rgba(239, 68, 68, 0.25); }

.bc-game-card__icon {
    position: relative;
    font-size: 38px;
    margin-bottom: 10px;
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.5));
}

.bc-game-card--featured .bc-game-card__icon {
    font-size: 52px;
}

.bc-game-card__title {
    position: relative;
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 5px;
}

.bc-game-card__desc {
    position: relative;
    font-size: 10px;
    color: #71717a;
    line-height: 1.45;
}

.bc-game-card__tag {
    position: relative;
    display: inline-block;
    margin-top: 10px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.06em;
    padding: 4px 10px;
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: #e9d5ff;
}

.bc-game-card__play {
    position: absolute;
    right: 16px;
    bottom: 16px;
    font-size: 10px;
    font-weight: 700;
    color: var(--bc-card-accent-solid, #a78bfa);
    opacity: 0;
    transform: translateX(-6px);
    transition: opacity 0.2s, transform 0.2s;
}

.bc-game-card:hover .bc-game-card__play {
    opacity: 1;
    transform: translateX(0);
}

/* Game panels */
.bc-panel {
    max-width: 580px;
    margin: 0 auto;
}

.bc-panel-head {
    text-align: center;
    margin-bottom: 20px;
}

.bc-panel-head h2 {
    margin: 0 0 6px;
    font-size: 26px;
    font-weight: 900;
    background: linear-gradient(90deg, #fff, #c4b5fd);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.bc-panel-head p {
    margin: 0;
    font-size: 11px;
    color: #71717a;
}

.bc-bet-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}

.bc-bet-row label {
    font-size: 11px;
    font-weight: 600;
    color: #a1a1aa;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.bc-bet-select {
    background: rgba(18, 18, 26, 0.95);
    border: 1px solid rgba(139, 92, 246, 0.35);
    color: #fff;
    padding: 10px 16px;
    border-radius: 10px;
    font-family: Consolas, monospace;
    font-size: 14px;
    font-weight: 700;
    box-shadow: 0 0 16px rgba(124, 58, 237, 0.12);
    cursor: pointer;
}

.bc-msg {
    min-height: 28px;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    margin: 14px 0;
    padding: 8px 12px;
    border-radius: 10px;
    transition: background 0.2s, color 0.2s;
}

.bc-msg--win {
    color: #4ade80;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.25);
    text-shadow: 0 0 20px rgba(74, 222, 128, 0.35);
}

.bc-msg--lose {
    color: #f87171;
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.bc-msg--info {
    color: #a1a1aa;
    background: transparent;
    border: 1px solid transparent;
}

.bc-btn {
    position: relative;
    border: none;
    border-radius: 12px;
    padding: 12px 22px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.02em;
    cursor: pointer;
    overflow: hidden;
    transition: transform 0.15s, filter 0.15s, box-shadow 0.2s;
}

.bc-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), transparent 50%);
    pointer-events: none;
}

.bc-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
    transform: none !important;
}

.bc-btn:not(:disabled):hover {
    transform: translateY(-2px);
}

.bc-btn--primary {
    background: linear-gradient(135deg, #7c3aed, #9333ea 50%, #ec4899);
    color: #fff;
    box-shadow: 0 8px 28px rgba(124, 58, 237, 0.4);
}

.bc-btn--primary:hover:not(:disabled) {
    box-shadow: 0 12px 36px rgba(124, 58, 237, 0.55);
}

.bc-btn--success {
    background: linear-gradient(135deg, #059669, #10b981);
    color: #fff;
    box-shadow: 0 8px 28px rgba(16, 185, 129, 0.35);
}

.bc-btn--ghost {
    background: rgba(18, 18, 26, 0.95);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #f4f4f5;
}

.bc-btn--ghost:hover:not(:disabled) {
    border-color: rgba(167, 139, 250, 0.5);
    box-shadow: 0 0 20px rgba(124, 58, 237, 0.2);
}

.bc-btn--lg {
    padding: 14px 32px;
    font-size: 15px;
}

.bc-actions {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

/* Slots cabinet */
.bc-slots-cabinet {
    position: relative;
    border-radius: 20px;
    padding: 4px;
    background: linear-gradient(145deg, #2a1a4a, #1a1028, #0a0810);
    box-shadow:
        0 24px 60px rgba(0, 0, 0, 0.55),
        0 0 0 1px rgba(167, 139, 250, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.bc-slots-marquee {
    text-align: center;
    padding: 10px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.2em;
    color: var(--bc-gold);
    text-shadow: 0 0 12px var(--bc-glow-gold);
    animation: bcMarqueePulse 2s ease-in-out infinite;
}

@keyframes bcMarqueePulse {
    0%, 100% { opacity: 0.85; }
    50% { opacity: 1; }
}

.bc-slots {
    border-radius: 16px;
    padding: 24px 20px;
    background:
        radial-gradient(ellipse 80% 60% at 50% 0%, rgba(124, 58, 237, 0.2), transparent),
        linear-gradient(180deg, #14101f 0%, #08060e 100%);
    border: 1px solid rgba(76, 29, 149, 0.5);
    box-shadow: inset 0 0 60px rgba(0, 0, 0, 0.6);
}

.bc-slots-led {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-bottom: 14px;
}

.bc-slots-led span {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--bc-purple);
    box-shadow: 0 0 8px var(--bc-glow-purple);
    animation: bcLedBlink 1.2s ease-in-out infinite;
}

.bc-slots-led span:nth-child(2) { animation-delay: 0.2s; background: var(--bc-pink); box-shadow: 0 0 8px rgba(236, 72, 153, 0.5); }
.bc-slots-led span:nth-child(3) { animation-delay: 0.4s; background: var(--bc-gold); box-shadow: 0 0 8px var(--bc-glow-gold); }
.bc-slots-led span:nth-child(4) { animation-delay: 0.6s; }
.bc-slots-led span:nth-child(5) { animation-delay: 0.8s; background: var(--bc-cyan); box-shadow: 0 0 8px rgba(34, 211, 238, 0.5); }

@keyframes bcLedBlink {
    0%, 100% { opacity: 0.35; transform: scale(0.85); }
    50% { opacity: 1; transform: scale(1); }
}

.bc-slots-reels {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin: 18px 0;
    padding: 16px;
    border-radius: 14px;
    background: rgba(0, 0, 0, 0.45);
    border: 2px solid rgba(124, 58, 237, 0.35);
    box-shadow: inset 0 0 30px rgba(124, 58, 237, 0.08);
}

.bc-slot-reel {
    position: relative;
    width: 88px;
    height: 104px;
    background: linear-gradient(180deg, #0a0a10 0%, #050508 50%, #0a0a10 100%);
    border: 2px solid #6d28d9;
    border-radius: 12px;
    font-size: 48px;
    line-height: 104px;
    text-align: center;
    box-shadow:
        inset 0 0 20px rgba(0, 0, 0, 0.8),
        0 0 20px rgba(124, 58, 237, 0.2);
    overflow: hidden;
}

.bc-slot-reel::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 30%, transparent 70%, rgba(0, 0, 0, 0.3));
    pointer-events: none;
}

.bc-slot-reel.spinning {
    animation: bcReelSpin 0.07s infinite linear;
    border-color: var(--bc-gold);
    box-shadow: 0 0 24px var(--bc-glow-gold), inset 0 0 20px rgba(0, 0, 0, 0.8);
}

.bc-slot-reel.win-glow {
    animation: bcReelWin 0.6s ease-out 3;
    border-color: var(--bc-green);
    box-shadow: 0 0 30px rgba(34, 197, 94, 0.5);
}

@keyframes bcReelSpin {
    0% { transform: translateY(0); }
    100% { transform: translateY(-10px); }
}

@keyframes bcReelWin {
    0%, 100% { box-shadow: 0 0 30px rgba(34, 197, 94, 0.5); }
    50% { box-shadow: 0 0 50px rgba(34, 197, 94, 0.8); }
}

.bc-paytable {
    margin-top: 18px;
    padding: 14px 16px;
    border-radius: 12px;
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.06);
    font-size: 10px;
    color: #71717a;
    line-height: 1.7;
    text-align: center;
}

.bc-paytable strong {
    color: var(--bc-gold);
}

/* Coin flip */
.bc-coin-stage {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 24px;
    border-radius: 18px;
    background: radial-gradient(circle at 50% 30%, rgba(251, 191, 36, 0.12), transparent 60%), rgba(18, 18, 26, 0.8);
    border: 1px solid rgba(251, 191, 36, 0.2);
}

.bc-coin-wrap {
    perspective: 600px;
}

.bc-coin {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 30%, #fde68a, #f59e0b 45%, #b45309 100%);
    border: 5px solid #fcd34d;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 48px;
    box-shadow:
        0 16px 40px rgba(0, 0, 0, 0.5),
        0 0 40px var(--bc-glow-gold),
        inset 0 -4px 12px rgba(0, 0, 0, 0.3);
    transform-style: preserve-3d;
}

.bc-coin.flipping {
    animation: bcCoinFlip 0.65s ease-in-out;
}

@keyframes bcCoinFlip {
    0% { transform: rotateY(0) scale(1); }
    50% { transform: rotateY(360deg) scale(1.08); }
    100% { transform: rotateY(720deg) scale(1); }
}

/* Dice */
.bc-dice-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 18px;
}

.bc-dice {
    width: 96px;
    height: 96px;
    border-radius: 18px;
    background: linear-gradient(145deg, #ffffff, #e4e4e7);
    color: #18181f;
    font-size: 42px;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow:
        0 12px 32px rgba(0, 0, 0, 0.45),
        inset 0 -4px 8px rgba(0, 0, 0, 0.1),
        0 0 24px rgba(255, 255, 255, 0.08);
    border: 2px solid rgba(255, 255, 255, 0.5);
}

.bc-dice.shake {
    animation: bcDiceShake 0.45s ease;
}

@keyframes bcDiceShake {
    0%, 100% { transform: rotate(0) scale(1); }
    20% { transform: rotate(-15deg) scale(1.08) translateY(-8px); }
    40% { transform: rotate(12deg) scale(1.05); }
    60% { transform: rotate(-8deg) scale(1.06); }
    80% { transform: rotate(6deg) scale(1.02); }
}

/* Roulette */
.bc-roulette-stage {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 24px;
    border-radius: 18px;
    background: radial-gradient(circle at 50% 50%, rgba(239, 68, 68, 0.08), transparent 55%), rgba(18, 18, 26, 0.85);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.bc-roulette-pointer {
    font-size: 18px;
    color: var(--bc-gold);
    text-shadow: 0 0 10px var(--bc-glow-gold);
    margin-bottom: -8px;
    z-index: 2;
}

.bc-roulette-wheel {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 8px solid #3f3f50;
    outline: 3px solid rgba(251, 191, 36, 0.35);
    background: conic-gradient(#ef4444 0deg 180deg, #18181f 180deg 360deg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 900;
    color: #fff;
    box-shadow:
        0 0 40px rgba(0, 0, 0, 0.5),
        inset 0 0 20px rgba(0, 0, 0, 0.4);
}

.bc-roulette-wheel.spin {
    animation: bcWheelSpin 1.2s cubic-bezier(0.15, 0.85, 0.25, 1);
}

@keyframes bcWheelSpin {
    from { transform: rotate(0deg); }
    to { transform: rotate(1800deg); }
}

.bc-color-btn { min-width: 110px; }
.bc-color-btn--red { background: linear-gradient(135deg, #b91c1c, #ef4444) !important; border: none !important; box-shadow: 0 6px 20px rgba(239, 68, 68, 0.35); }
.bc-color-btn--black { background: linear-gradient(135deg, #18181b, #3f3f46) !important; border: 1px solid #52525b !important; }
.bc-color-btn--green { background: linear-gradient(135deg, #047857, #10b981) !important; border: none !important; box-shadow: 0 6px 20px rgba(16, 185, 129, 0.35); }

/* Crash */
.bc-crash-display {
    position: relative;
    text-align: center;
    padding: 32px 24px;
    border-radius: 18px;
    background:
        radial-gradient(ellipse 70% 50% at 50% 100%, rgba(34, 197, 94, 0.12), transparent),
        linear-gradient(180deg, rgba(18, 18, 26, 0.95), rgba(8, 8, 12, 0.98));
    border: 1px solid rgba(34, 197, 94, 0.2);
    margin-bottom: 18px;
    overflow: hidden;
}

.bc-crash-display::before {
    content: "";
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
        90deg,
        transparent,
        transparent 40px,
        rgba(34, 197, 94, 0.03) 40px,
        rgba(34, 197, 94, 0.03) 41px
    );
    pointer-events: none;
}

.bc-crash-rocket {
    font-size: 36px;
    margin-bottom: 8px;
    display: inline-block;
    transition: transform 0.1s linear;
    filter: drop-shadow(0 0 12px rgba(34, 211, 238, 0.5));
}

.bc-crash-rocket.flying {
    animation: bcRocketFly 0.4s ease-in-out infinite alternate;
}

@keyframes bcRocketFly {
    from { transform: translateY(4px) rotate(-8deg); }
    to { transform: translateY(-8px) rotate(8deg); }
}

.bc-crash-mult {
    font-size: 56px;
    font-weight: 900;
    font-family: Consolas, "Ubuntu Mono", monospace;
    color: #4ade80;
    line-height: 1;
    text-shadow: 0 0 30px rgba(74, 222, 128, 0.5);
    transition: color 0.2s, text-shadow 0.2s;
}

.bc-crash-mult.rising {
    animation: bcMultPulse 0.5s ease-in-out infinite alternate;
}

@keyframes bcMultPulse {
    from { text-shadow: 0 0 20px rgba(74, 222, 128, 0.4); }
    to { text-shadow: 0 0 40px rgba(74, 222, 128, 0.7); }
}

.bc-crash-mult.crashed {
    color: #f87171;
    text-shadow: 0 0 30px rgba(248, 113, 113, 0.5);
    animation: bcCrashShake 0.4s ease;
}

@keyframes bcCrashShake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-6px); }
    75% { transform: translateX(6px); }
}

.bc-crash-bar {
    height: 8px;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.06);
    margin-top: 16px;
    overflow: hidden;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.3);
}

.bc-crash-bar-fill {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #7c3aed, #22d3ee, #22c55e);
    box-shadow: 0 0 12px rgba(34, 197, 94, 0.5);
    transition: width 0.1s linear;
}

/* History */
.bc-history {
    margin-top: 24px;
    padding: 16px;
    border-radius: 14px;
    background: rgba(8, 8, 12, 0.6);
    border: 1px solid var(--bc-border);
}

.bc-history-title {
    font-size: 10px;
    color: #52525b;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: 700;
    margin-bottom: 10px;
}

.bc-history-list {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.bc-history-chip {
    font-size: 10px;
    padding: 5px 10px;
    border-radius: 8px;
    font-family: Consolas, monospace;
    font-weight: 600;
    background: rgba(18, 18, 26, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.bc-history-chip--win {
    color: #4ade80;
    border-color: rgba(74, 222, 128, 0.35);
    box-shadow: 0 0 12px rgba(34, 197, 94, 0.12);
}

.bc-history-chip--lose {
    color: #f87171;
    border-color: rgba(248, 113, 113, 0.3);
}

.bc-history-chip--info {
    color: #71717a;
}

.bc-bet-select--sm {
    padding: 8px 12px;
    font-size: 12px;
}

.bc-bet-controls {
    margin-bottom: 16px;
}

.bc-bet-row--compact {
    justify-content: center;
    gap: 10px;
}

.bc-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.bc-chip {
    min-width: 52px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 2px dashed rgba(255, 255, 255, 0.15);
    background: radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.08), rgba(0, 0, 0, 0.4));
    color: #e4e4e7;
    font-size: 11px;
    font-weight: 800;
    font-family: Consolas, monospace;
    cursor: pointer;
    transition: transform 0.15s, border-color 0.15s, box-shadow 0.15s;
}

.bc-chip:hover {
    transform: translateY(-2px);
    border-color: rgba(167, 139, 250, 0.5);
}

.bc-chip.active {
    border-style: solid;
    border-color: var(--bc-gold);
    color: var(--bc-gold);
    box-shadow: 0 0 16px var(--bc-glow-gold);
    transform: scale(1.05);
}

.bc-toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: #a1a1aa;
    cursor: pointer;
}

.bc-streak-val--hot { color: #4ade80 !important; }
.bc-streak-val--cold { color: #f87171 !important; }

.bc-panel--wide { max-width: 680px; }

.bc-lobby-section { margin-top: 8px; }

.bc-lobby-section__title {
    font-size: 12px;
    font-weight: 800;
    color: #a1a1aa;
    margin: 0 0 10px;
    letter-spacing: 0.04em;
}

.bc-live-feed-wrap {
    padding: 12px 14px;
    border-radius: 14px;
    background: rgba(8, 8, 12, 0.7);
    border: 1px solid var(--bc-border);
}

.bc-live-feed-title {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #71717a;
    margin-bottom: 8px;
}

.bc-live-feed {
    display: flex;
    flex-direction: column;
    gap: 6px;
    max-height: 120px;
    overflow: hidden;
}

.bc-live-feed__item {
    font-size: 11px;
    color: #71717a;
    animation: bcFeedIn 0.4s ease;
}

.bc-live-feed__item strong { color: #4ade80; }
.bc-live-feed__user { color: #c4b5fd; font-weight: 600; }

@keyframes bcFeedIn {
    from { opacity: 0; transform: translateX(-8px); }
    to { opacity: 1; transform: translateX(0); }
}

.bc-particle {
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    pointer-events: none;
    z-index: 50;
    animation: bcParticleFly 0.85s ease-out forwards;
}

@keyframes bcParticleFly {
    to {
        transform: translate(var(--bc-px), var(--bc-py));
        opacity: 0;
    }
}

.bc-main { position: relative; }

/* 5-reel slots */
.bc-slots-reels--5 {
    gap: 8px;
    padding: 14px 10px;
}

.bc-slots-reels--5 .bc-slot-reel {
    width: 72px;
    height: 92px;
    font-size: 40px;
    line-height: 92px;
}

.bc-slot-reel--stop {
    animation: bcReelStop 0.28s ease;
}

@keyframes bcReelStop {
    0% { transform: scale(1.08); }
    100% { transform: scale(1); }
}

.bc-slots-winline {
    text-align: center;
    min-height: 22px;
    font-size: 12px;
    font-weight: 800;
    color: var(--bc-gold);
    letter-spacing: 0.15em;
    opacity: 0;
    transition: opacity 0.3s;
}

.bc-slots-winline.active {
    opacity: 1;
    animation: bcWinLinePulse 1s ease infinite alternate;
}

@keyframes bcWinLinePulse {
    from { text-shadow: 0 0 8px var(--bc-glow-gold); }
    to { text-shadow: 0 0 20px var(--bc-glow-gold); }
}

.bc-slots-lastwin {
    text-align: center;
    font-size: 11px;
    color: #71717a;
    margin: 10px 0;
}

.bc-slots-lastwin strong {
    color: #4ade80;
    font-family: Consolas, monospace;
}

.bc-paytable--grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    text-align: center;
}

.bc-paytable--grid div {
    padding: 6px;
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.3);
}

/* Mines */
.bc-mines-meta {
    display: flex;
    justify-content: center;
    gap: 24px;
    margin-bottom: 14px;
    font-size: 12px;
    color: #a1a1aa;
}

.bc-mines-meta strong {
    color: #4ade80;
    font-family: Consolas, monospace;
    font-size: 16px;
}

.bc-mines-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
    max-width: 320px;
    margin: 0 auto 18px;
}

.bc-mines-cell {
    aspect-ratio: 1;
    border-radius: 10px;
    border: 1px solid rgba(139, 92, 246, 0.3);
    background: linear-gradient(145deg, #1a1a24, #0e0e14);
    font-size: 22px;
    cursor: pointer;
    transition: transform 0.15s, box-shadow 0.15s, border-color 0.15s;
}

.bc-mines-cell:not(:disabled):hover {
    transform: scale(1.06);
    border-color: var(--bc-purple-bright);
    box-shadow: 0 0 16px var(--bc-glow-purple);
}

.bc-mines-cell--gem {
    background: linear-gradient(145deg, rgba(34, 197, 94, 0.25), #0e0e14);
    border-color: rgba(34, 197, 94, 0.5);
    animation: bcGemPop 0.35s ease;
}

.bc-mines-cell--boom {
    background: linear-gradient(145deg, rgba(239, 68, 68, 0.4), #1a0a0a);
    border-color: #ef4444;
    animation: bcBoom 0.5s ease;
}

.bc-mines-cell--mine-show {
    opacity: 0.55;
    background: rgba(239, 68, 68, 0.15);
}

@keyframes bcGemPop {
    0% { transform: scale(0.6); }
    60% { transform: scale(1.15); }
    100% { transform: scale(1); }
}

@keyframes bcBoom {
    0%, 100% { transform: scale(1); }
    30% { transform: scale(1.2); box-shadow: 0 0 30px rgba(239, 68, 68, 0.6); }
}

/* Hi-Lo */
.bc-hilo-stage {
    text-align: center;
    padding: 24px;
    border-radius: 18px;
    background: radial-gradient(circle at 50% 0%, rgba(34, 211, 238, 0.1), transparent 55%), rgba(18, 18, 26, 0.9);
    border: 1px solid rgba(34, 211, 238, 0.2);
    margin-bottom: 16px;
}

.bc-hilo-card {
    width: 100px;
    height: 140px;
    margin: 0 auto 16px;
    border-radius: 12px;
    background: linear-gradient(145deg, #fff, #e4e4e7);
    color: #18181f;
    font-size: 42px;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45);
    border: 3px solid #fff;
}

.bc-hilo-card--flip {
    animation: bcCardFlip 0.4s ease;
}

@keyframes bcCardFlip {
    50% { transform: rotateY(90deg) scale(0.9); }
}

.bc-hilo-stats {
    display: flex;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
    font-size: 11px;
    color: #71717a;
}

.bc-hilo-stats strong {
    color: #e4e4e7;
    font-family: Consolas, monospace;
}

/* Plinko */
.bc-plinko-board {
    position: relative;
    height: 280px;
    margin-bottom: 16px;
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(18, 18, 26, 0.95), rgba(8, 8, 12, 0.98));
    border: 1px solid rgba(139, 92, 246, 0.25);
    overflow: hidden;
}

.bc-plinko-pegs {
    position: absolute;
    inset: 20px 10px 60px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: flex-start;
    gap: 14px 20px;
    pointer-events: none;
}

.bc-plinko-peg {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(167, 139, 250, 0.6);
    box-shadow: 0 0 6px var(--bc-glow-purple);
}

.bc-plinko-ball {
    position: absolute;
    top: 8px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 24px;
    z-index: 3;
    transition: left 1.2s cubic-bezier(0.4, 0.1, 0.6, 0.9), top 1.2s ease-in;
}

.bc-plinko-ball--drop {
    top: 200px;
    left: var(--bc-plinko-target, 50%);
}

.bc-plinko-slots {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    gap: 2px;
    padding: 8px 4px;
}

.bc-plinko-slot {
    flex: 1;
    text-align: center;
    font-size: 8px;
    font-weight: 800;
    padding: 6px 2px;
    border-radius: 4px 4px 0 0;
    background: rgba(0, 0, 0, 0.4);
    color: #71717a;
    font-family: Consolas, monospace;
}

.bc-plinko-slot--hit {
    background: rgba(34, 197, 94, 0.35);
    color: #4ade80;
    box-shadow: 0 0 12px rgba(34, 197, 94, 0.4);
    transform: scaleY(1.15);
}

/* Wheel */
.bc-wheel-stage {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px;
    margin-bottom: 12px;
}

.bc-wheel-pointer {
    font-size: 22px;
    color: var(--bc-gold);
    text-shadow: 0 0 12px var(--bc-glow-gold);
    margin-bottom: -10px;
    z-index: 2;
}

.bc-wheel {
    width: 220px;
    height: 220px;
    border-radius: 50%;
    border: 6px solid #3f3f50;
    outline: 3px solid rgba(251, 191, 36, 0.35);
    background: conic-gradient(
        #52525b 0deg 45deg,
        #3f3f46 45deg 90deg,
        #7c3aed 90deg 135deg,
        #2563eb 135deg 180deg,
        #0891b2 180deg 225deg,
        #059669 225deg 270deg,
        #d97706 270deg 315deg,
        #dc2626 315deg 360deg
    );
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-shadow: 0 0 40px rgba(0, 0, 0, 0.5);
}

.bc-wheel-seg {
    position: absolute;
    font-size: 0;
    pointer-events: none;
}

.bc-sound-btn {
    min-width: 38px;
    padding: 9px 10px !important;
    font-size: 14px !important;
}

.bc-sound-btn--muted {
    opacity: 0.55;
    border-color: rgba(255, 255, 255, 0.12) !important;
}

/* Account cabinet */
.bc-account-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.bc-account-card {
    padding: 16px;
    border-radius: 14px;
    background: rgba(18, 18, 26, 0.9);
    border: 1px solid var(--bc-border);
}

.bc-account-card--profile {
    grid-column: span 2;
    display: flex;
    align-items: center;
    gap: 14px;
}

.bc-account-avatar {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: linear-gradient(135deg, #7c3aed, #ec4899);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    font-weight: 900;
    color: #fff;
}

.bc-account-name { font-size: 16px; font-weight: 800; }
.bc-account-id { font-size: 10px; color: #71717a; font-family: Consolas, monospace; margin-top: 2px; }
.bc-account-verified { font-size: 10px; color: #4ade80; margin-top: 4px; }
.bc-account-label { font-size: 10px; color: #71717a; text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 6px; }
.bc-account-value { font-size: 20px; font-weight: 800; font-family: Consolas, monospace; }
.bc-account-value--gold { color: var(--bc-gold); text-shadow: 0 0 16px var(--bc-glow-gold); }

.bc-account-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 14px;
}

.bc-account-box {
    padding: 18px;
    border-radius: 14px;
    background: rgba(12, 12, 18, 0.85);
    border: 1px solid var(--bc-border);
}

.bc-account-box h3 { margin: 0 0 4px; font-size: 14px; }
.bc-account-box p { margin: 0 0 12px; font-size: 10px; color: #71717a; }
.bc-account-box--log { margin-top: 4px; }

.bc-account-input-row {
    display: flex;
    gap: 8px;
    margin-top: 10px;
}

.bc-input {
    flex: 1;
    padding: 10px 14px;
    border-radius: 10px;
    border: 1px solid rgba(139, 92, 246, 0.35);
    background: rgba(0, 0, 0, 0.4);
    color: #fff;
    font-family: Consolas, monospace;
    font-size: 14px;
}

.bc-btn--sm { padding: 8px 14px; font-size: 11px; margin-top: 8px; }
.bc-chips--deposit { margin-bottom: 8px; }

.bc-tx-log { display: flex; flex-direction: column; gap: 6px; max-height: 180px; overflow-y: auto; }
.bc-tx-empty { font-size: 11px; color: #52525b; text-align: center; padding: 12px; }
.bc-tx-row {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 10px;
    align-items: center;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 11px;
    background: rgba(0, 0, 0, 0.25);
}

.bc-tx-row--deposit strong { color: #4ade80; }
.bc-tx-row--withdraw strong { color: #fbbf24; }
.bc-tx-time { color: #52525b; font-size: 10px; font-family: Consolas, monospace; }

/* Mines mine count picker */
.bc-mines-picker {
    margin-bottom: 14px;
    text-align: center;
}

.bc-mines-picker label {
    display: block;
    font-size: 11px;
    color: #a1a1aa;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.bc-mines-counts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.bc-mines-count {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    padding: 10px 14px;
    border-radius: 12px;
    border: 1px solid rgba(236, 72, 153, 0.25);
    background: rgba(18, 18, 26, 0.9);
    color: #e4e4e7;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.bc-mines-count span {
    font-size: 9px;
    color: #71717a;
    font-weight: 600;
}

.bc-mines-count.active {
    border-color: #ec4899;
    box-shadow: 0 0 20px rgba(236, 72, 153, 0.25);
    color: #fbcfe8;
}

/* Crash LIVE */
.bc-panel--crash { max-width: 720px; }

.bc-crash-history {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
}

.bc-crash-hist {
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 800;
    font-family: Consolas, monospace;
    background: rgba(18, 18, 26, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.06);
    color: #a1a1aa;
}

.bc-crash-hist--high { color: #4ade80; border-color: rgba(74, 222, 128, 0.3); }
.bc-crash-hist--low { color: #f87171; border-color: rgba(248, 113, 113, 0.25); }
.bc-crash-hist--info { color: #52525b; }

.bc-crash-live {
    display: grid;
    grid-template-columns: 1fr 160px;
    gap: 12px;
    margin-bottom: 14px;
}

.bc-crash-chart-wrap {
    position: relative;
    border-radius: 14px;
    background: rgba(6, 6, 10, 0.95);
    border: 1px solid rgba(34, 197, 94, 0.2);
    overflow: hidden;
    min-height: 220px;
}

.bc-crash-canvas {
    display: block;
    width: 100%;
    height: 220px;
}

.bc-crash-phase {
    position: absolute;
    top: 10px;
    left: 12px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.5);
}

.bc-crash-phase--betting { color: #fbbf24; border: 1px solid rgba(251, 191, 36, 0.35); }
.bc-crash-phase--running { color: #4ade80; border: 1px solid rgba(74, 222, 128, 0.35); animation: bcLiveBlink 1s infinite; }
.bc-crash-phase--crashed { color: #f87171; border: 1px solid rgba(248, 113, 113, 0.35); }

.bc-crash-mult--live {
    position: absolute;
    bottom: 16px;
    right: 16px;
    font-size: 42px !important;
    font-weight: 900;
    font-family: Consolas, monospace;
    color: #4ade80;
    text-shadow: 0 0 24px rgba(74, 222, 128, 0.5);
}

.bc-crash-mult--live.crashed { color: #f87171 !important; text-shadow: 0 0 24px rgba(248, 113, 113, 0.5); }
.bc-crash-mult--live.rising { animation: bcMultPulse 0.5s ease-in-out infinite alternate; }

.bc-crash-players {
    display: flex;
    flex-direction: column;
    gap: 4px;
    max-height: 220px;
    overflow-y: auto;
    padding: 8px;
    border-radius: 12px;
    background: rgba(12, 12, 18, 0.9);
    border: 1px solid var(--bc-border);
    font-size: 10px;
}

.bc-crash-player {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 6px;
    padding: 5px 6px;
    border-radius: 6px;
    color: #71717a;
}

.bc-crash-player--out { color: #4ade80; background: rgba(34, 197, 94, 0.08); }
.bc-crash-player--lost { color: #f87171; background: rgba(239, 68, 68, 0.08); }

.bc-crash-mybet {
    text-align: center;
    font-size: 12px;
    color: #a1a1aa;
    margin-bottom: 12px;
    padding: 10px;
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.3);
}

.bc-crash-mybet strong { color: #4ade80; }

/* ── BitCasino registration (GooMail linked) ── */
.bc-auth {
    max-width: 920px;
    margin: 0 auto;
    padding: 8px 0 24px;
}

.bc-auth-top {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--bc-border);
}

.bc-auth-logo {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: linear-gradient(135deg, #ffd700, #ff6b00);
    color: #111;
    font-weight: 900;
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.bc-auth-title {
    margin: 0;
    font-size: 22px;
    color: #fff;
    font-family: 'Orbitron', sans-serif;
}

.bc-auth-sub {
    margin: 4px 0 0;
    font-size: 12px;
    color: #71717a;
}

.bc-auth-layout {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 20px;
}

.bc-auth-aside {
    background: rgba(255, 215, 0, 0.06);
    border: 1px solid rgba(255, 215, 0, 0.2);
    border-radius: 12px;
    padding: 20px;
}

.bc-auth-aside h3 {
    margin: 0 0 12px;
    font-size: 16px;
    color: #ffd700;
}

.bc-auth-aside ul {
    margin: 0;
    padding-left: 18px;
    font-size: 12px;
    color: #a1a1aa;
    line-height: 1.7;
}

.bc-auth-card {
    background: rgba(0, 0, 0, 0.35);
    border: 1px solid var(--bc-border);
    border-radius: 12px;
    padding: 24px;
}

.bc-auth-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.bc-auth-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.bc-auth-field span {
    font-size: 12px;
    color: #a1a1aa;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.bc-auth-field input {
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid var(--bc-border);
    border-radius: 8px;
    padding: 12px 14px;
    color: #fff;
    font-size: 14px;
    font-family: inherit;
    outline: none;
}

.bc-auth-field input:focus {
    border-color: #ffd700;
}

.bc-auth-error {
    background: rgba(239, 68, 68, 0.15);
    border: 1px solid rgba(239, 68, 68, 0.4);
    color: #fca5a5;
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 13px;
}

.bc-auth-submit {
    background: linear-gradient(135deg, #ffd700, #ff9500);
    border: none;
    border-radius: 8px;
    padding: 14px 20px;
    font-size: 14px;
    font-weight: 700;
    color: #111;
    cursor: pointer;
    font-family: inherit;
    margin-top: 4px;
}

.bc-auth-submit:hover {
    filter: brightness(1.08);
}

.bc-auth-foot {
    margin: 16px 0 0;
    font-size: 11px;
    color: #71717a;
    line-height: 1.5;
}

@media (max-width: 900px) {
    .bc-auth-layout { grid-template-columns: 1fr; }
    .bc-auth-aside { display: none; }
    .bc-game-card--featured { grid-column: span 1; }
    .bc-sidebar { width: 180px; }
    .bc-slots-reels--5 .bc-slot-reel { width: 56px; height: 72px; font-size: 30px; line-height: 72px; }
    .bc-paytable--grid { grid-template-columns: repeat(2, 1fr); }
    .bc-account-actions { grid-template-columns: 1fr; }
    .bc-account-card--profile { grid-column: span 1; }
    .bc-crash-live { grid-template-columns: 1fr; }
}


