/* 888 LOTTO Player v3.10.70 — refined black/red/gold blend + smooth motion */
:root {
  --rg-black: #050607;
  --rg-charcoal: #0b0e12;
  --rg-charcoal-2: #12161c;
  --rg-red-950: #240006;
  --rg-red-900: #3b0009;
  --rg-red-800: #65000f;
  --rg-red-700: #8f0b1d;
  --rg-gold-700: #9d6813;
  --rg-gold-500: #d7a82d;
  --rg-gold-300: #f8d86e;
  --rg-cream: #fff5d7;
  --rg-muted: #cdbb91;
  --rg-ease: cubic-bezier(.22,.61,.36,1);
  --bg: var(--rg-black) !important;
  --surface: var(--rg-charcoal) !important;
  --surface-2: #13070a !important;
  --surface-3: #1d090d !important;
  --panel: #0d0f13 !important;
  --panel-2: #16070b !important;
  --card: #0d0f13 !important;
  --ink: var(--rg-cream) !important;
  --text: var(--rg-cream) !important;
  --muted: var(--rg-muted) !important;
  --gold: var(--rg-gold-500) !important;
  --gold-2: var(--rg-gold-300) !important;
  --accent: var(--rg-red-700) !important;
}
*, *::before, *::after { box-sizing: border-box; }
html, body {
  background-color: var(--rg-black) !important;
  background-image:
    linear-gradient(128deg, transparent 0 15%, rgba(145,0,21,.18) 15.2% 27%, transparent 27.3% 48%, rgba(215,168,45,.055) 48.2% 48.7%, transparent 49%),
    linear-gradient(52deg, transparent 0 62%, rgba(120,0,18,.13) 62.2% 75%, transparent 75.2%),
    radial-gradient(circle at 88% 4%, rgba(158,0,24,.28), transparent 30%),
    radial-gradient(circle at 8% 84%, rgba(112,0,17,.22), transparent 34%),
    linear-gradient(180deg, #08090b 0%, #050607 100%) !important;
  background-attachment: fixed !important;
  color: var(--rg-cream) !important;
}
body::before {
  opacity: .18 !important;
  background-image:
    linear-gradient(30deg, rgba(215,168,45,.045) 12%, transparent 12.5%, transparent 87%, rgba(215,168,45,.045) 87.5%),
    linear-gradient(150deg, rgba(215,168,45,.035) 12%, transparent 12.5%, transparent 87%, rgba(215,168,45,.035) 87.5%) !important;
  background-size: 42px 72px !important;
  pointer-events: none !important;
}
header, .topbar, .app-header, .player-header, .mobile-header, .site-header {
  background:
    linear-gradient(112deg, rgba(5,6,7,.99) 0 37%, rgba(86,0,13,.96) 70%, rgba(20,1,5,.99) 100%) !important;
  border-bottom: 1px solid rgba(215,168,45,.48) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.34) !important;
}
.card, .panel, .section-card, .modal-card, .wallet-modal, .toolbar, .notice, .hero-card, .result-card, .account-card,
.quick-action, .top-action, .game-card, .lobby-card, [class*="card"], [class*="panel"] {
  color: var(--rg-cream) !important;
  border-color: rgba(215,168,45,.32) !important;
}
.card, .panel, .section-card, .modal-card, .wallet-modal, .toolbar, .notice, .hero-card, .result-card, .account-card {
  background:
    linear-gradient(145deg, rgba(18,22,28,.98) 0 58%, rgba(73,0,12,.84) 100%) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.035), 0 12px 28px rgba(0,0,0,.28) !important;
}
.card::before, .panel::before, .hero-card::before, .wallet-modal::before {
  border-color: rgba(248,216,110,.18) !important;
}
button, .button, .btn, a.button, [role="button"] {
  transition: transform 220ms var(--rg-ease), box-shadow 260ms var(--rg-ease), background-color 240ms var(--rg-ease), border-color 240ms var(--rg-ease), color 180ms ease !important;
}
button:hover, .button:hover, .btn:hover, [role="button"]:hover { transform: translateY(-1px); }
button:active, .button:active, .btn:active, [role="button"]:active { transform: translateY(0) scale(.985); }
.btn-primary, .primary, button.primary, .button-primary, .active-tab, .tab.active,
.quick-action.active, .top-action.deposit, [data-action="deposit"] {
  background: linear-gradient(180deg, #ffe284 0%, #d8a92f 48%, #a96e12 100%) !important;
  color: #160905 !important;
  border-color: #ffe69a !important;
  text-shadow: 0 1px rgba(255,255,255,.24) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.58), 0 8px 18px rgba(167,104,14,.22) !important;
}
.btn-secondary, .secondary, button.secondary, .button-secondary, .top-action.withdraw, [data-action="withdraw"] {
  background: linear-gradient(180deg, #9d1529 0%, #680818 55%, #3a020a 100%) !important;
  color: #fff2cf !important;
  border-color: rgba(248,216,110,.62) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.1), 0 8px 18px rgba(72,0,12,.28) !important;
}
input, select, textarea {
  background: #08090c !important;
  color: var(--rg-cream) !important;
  border-color: rgba(215,168,45,.34) !important;
}
option { background: #0b0d11 !important; color: var(--rg-cream) !important; }
::placeholder { color: #a28e68 !important; opacity: 1 !important; }
.nav-item.active, .sidebar a.active, .bottom-nav a.active, .category-tab.active {
  color: #ffe58c !important;
  background: linear-gradient(110deg, rgba(128,5,25,.68), rgba(34,2,8,.72)) !important;
  border-color: rgba(248,216,110,.5) !important;
}
.wallet-pill, .wallet-summary, .system-wallet {
  background: linear-gradient(135deg, rgba(11,13,17,.98), rgba(84,3,16,.9)) !important;
  border-color: rgba(248,216,110,.52) !important;
}
/* Smooth, deliberate motion. Do not globally speed up third-party or functional animations. */
:where(.modal, .modal-card, .wallet-modal, .drawer, .sidebar, .toast, .notification, .dropdown, .menu, .tab-panel, .page-view) {
  animation-duration: 420ms !important;
  animation-timing-function: var(--rg-ease) !important;
}
:where(.card, .panel, .game-card, .quick-action, .top-action, .nav-item, .category-tab, input, select, textarea) {
  transition-duration: 220ms !important;
  transition-timing-function: var(--rg-ease) !important;
}
/* Stop distracting endless movement while preserving functional loaders. */
:where(.shine, .shimmer, .glow-loop, .floating, .pulse:not(.loading):not(.spinner), .ambient-orb) {
  animation-duration: 5.5s !important;
  animation-timing-function: ease-in-out !important;
}
@media (max-width: 760px) {
  .wallet-pill, .system-wallet { min-width: 0 !important; }
  .card, .panel, .section-card { min-width: 0 !important; max-width: 100% !important; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}
