/* ==============================================================
   HOKIEMAS88 - OBSIDIAN CHAMPAGNE GOLD (DESIGN OPTION B)
   Non-invasive visual overrides; original markup and scripts retained.
   Loaded as a local stylesheet. Colors can be customized here.
   ============================================================== */
:root {
  --obs-bg: #0c0d0f;
  --obs-surface: #242023;
  --obs-panel: #181719;
  --obs-panel-raised: #2e2727;
  --obs-gold: #d5b17a;
  --obs-gold-light: #f2d8a5;
  --obs-gold-deep: #a88655;
  --obs-text: #fbf3e8;
  --obs-muted: #cfc2b4;
  --obs-border: rgba(218,178,112,.47);
  --obs-radius: 16px;
  /* Image source copied to assets/ by scripts/download_assets.py */
  --obs-background-image: url("../assets/dsuown9evwz4y.cloudfront.net/Images/v-normad-beta/dark-red/desktop/backgrounds/home__qf2004700.jpg");
}

html, body { background-color: var(--obs-bg) !important; color: var(--obs-text) !important; }
body {
  background-image:
    linear-gradient(180deg,rgba(10,10,12,.68),rgba(10,10,12,.86)),
    var(--obs-background-image) !important;
  background-position: center top, center top !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important;
}
body .navbar, body .navbar-fixed-top { box-shadow: 0 6px 32px rgba(0,0,0,.35) !important; }
body .topbar-container {
  background: linear-gradient(90deg,#101113,#272022,#101113) !important;
  border-bottom: 1px solid rgba(218,178,112,.25) !important;
}
body .site-header {
  background: linear-gradient(125deg,#0e0f12 0%,#2c2323 60%,#141214 100%) !important;
  border-bottom: 1px solid var(--obs-border) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.32) !important;
}
body .navbar .top-menu > li > a,
body .topbar-container .topbar-item,
body .topbar-container .topbar-item a { color: var(--obs-text) !important; }
body .top-menu > li:hover,
body .top-menu > li[data-active="true"] {
  background: linear-gradient(180deg,rgba(213,177,122,.15),rgba(213,177,122,.035)) !important;
  color: var(--obs-gold-light) !important;
}
body .top-menu > li:hover > a,
body .top-menu > li[data-active="true"] > a { color: var(--obs-gold-light) !important; }
body .site-header .game-list-container {
  background-color: #211d20 !important;
  border: 1px solid rgba(213,177,122,.3) !important;
  box-shadow: 0 12px 32px rgba(0,0,0,.4) !important;
}
body .login-panel .login-button,
body .login-panel .register-button {
  border: 1px solid var(--obs-gold) !important;
  border-radius: 9px !important;
  transition: filter .2s, box-shadow .2s !important;
  text-shadow: none !important;
}
body .login-panel .login-button {
  color: var(--obs-gold-light) !important;
  background: linear-gradient(165deg,#292225,#100f11) !important;
}
body .login-panel .register-button {
  color: #1c1712 !important;
  background: linear-gradient(145deg,#f3d49b,#bb925c) !important;
  font-weight: 800 !important;
}
body .login-panel .login-button:hover,
body .login-panel .register-button:hover { filter:brightness(1.12);box-shadow:0 0 17px rgba(232,187,107,.32)!important; }

body .banner { background: #100f12 !important; }
body .banner .banner-carousel {
  border-bottom: 1px solid rgba(213,177,122,.42) !important;
  box-shadow: 0 16px 34px rgba(0,0,0,.25) !important;
}
body .banner .banner-img { max-width:100%; height:auto; }
body .announcement-outer-container {
  background: linear-gradient(100deg,rgba(18,17,19,.98),rgba(46,37,36,.94),rgba(18,17,19,.98)) !important;
  border-block: 1px solid rgba(213,177,122,.32) !important;
  color: var(--obs-text) !important;
}
body .announcement-container,
body .announcement-container [data-section="date"],
body .announcement-container [data-section="announcements"] {
  background: transparent !important;
  color: var(--obs-text) !important;
}
body [data-container-background="home"] {
  background-color: #101113 !important;
  background-blend-mode: multiply !important;
}
body .home-outer-container { max-width: 1200px !important; margin-inline: auto !important; }
body .home-progressive-jackpot { filter: drop-shadow(0 0 14px rgba(207,158,80,.15)); }
body .home-progressive-jackpot .jackpot-border-container {
  border-color: var(--obs-gold) !important;
  box-shadow: 0 0 16px rgba(216,168,91,.26), inset 0 0 20px rgba(0,0,0,.24) !important;
}
body .home-progressive-jackpot .jackpot-currency { color: var(--obs-gold-light) !important; }

/* Animated ring: apply sparingly, never to all 30 cards. */
@property --obs-ring-angle { syntax: "<angle>"; inherits: false; initial-value: 0deg; }
@keyframes obs-ring-orbit { to { --obs-ring-angle: 360deg; } }
body .popular-slots-outer-container > .popular-game-title-container,
body .download-apk-container .download-apk {
  border: 1px solid transparent !important;
  border-radius: var(--obs-radius) !important;
  background:
    linear-gradient(110deg,rgba(38,31,30,.98),rgba(17,17,19,.98)) padding-box,
    conic-gradient(from var(--obs-ring-angle),#876640,#e9c78b,#5b4435,#f1d9a9,#876640) border-box !important;
  animation: obs-ring-orbit 11s linear infinite !important;
  box-shadow: 0 9px 24px rgba(0,0,0,.35),0 0 13px rgba(213,177,122,.10) !important;
}
body .popular-slots-outer-container > .popular-game-title-container {
  padding: 12px 18px !important;
  margin: 25px 0 15px !important;
  min-height: 0 !important;
}
body .popular-game-title-container .title,
body .popular-game-title-container a { color: var(--obs-gold-light) !important; font-weight: 800 !important; }
body .popular-slots-outer-container .game-list-container {
  background: rgba(23,21,23,.94) !important;
  border: 1px solid rgba(213,177,122,.28) !important;
  border-radius: 16px !important;
  padding: 12px !important;
  margin-bottom: 23px !important;
  box-shadow: 0 9px 25px rgba(0,0,0,.24) !important;
}
body .popular-slots-outer-container .game-item {
  background: linear-gradient(150deg,#302729,#19191b) !important;
  border: 1px solid rgba(213,177,122,.32) !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 12px rgba(0,0,0,.25) !important;
  transition: transform .22s ease,box-shadow .22s ease,border-color .22s ease !important;
  overflow: hidden;
}
body .popular-slots-outer-container .game-item:hover {
  transform: translateY(-3px);
  border-color: var(--obs-gold) !important;
  box-shadow: 0 7px 20px rgba(0,0,0,.40),0 0 16px rgba(213,177,122,.20) !important;
}
body .popular-slots-outer-container .game-item .game-name { color: var(--obs-text) !important; }
body .popular-slots-outer-container .game-item .provider-name { color: var(--obs-muted) !important; }
body .popular-slots-outer-container .game-item .play-now {
  background: linear-gradient(145deg,#f0d4a0,#b48c57) !important;
  border-radius: 8px !important;
  color: #201912 !important;
  font-weight: 800 !important;
}
body .popular-slots-outer-container .game-item .play-now:hover { filter: brightness(1.1); }

body .download-apk-container { background-color: #111113 !important; padding-block: 32px !important; }
body .download-apk-container::before {
  background: linear-gradient(135deg,rgba(11,11,13,.84),rgba(35,27,25,.78),rgba(12,12,14,.87)) !important;
  pointer-events: none !important;
}
body .download-apk-container .download-apk { padding: 19px !important; }
body .download-apk-container .h2,
body .download-apk-container .h2 strong { color: var(--obs-gold-light) !important; }
body .download-apk-container .h3,
body .download-apk-container .download-apk-section,
body .download-apk-container .download-apk-section span { color: var(--obs-text) !important; }
body .download-apk-container a.btn {
  background: linear-gradient(145deg,#d9b67f,#af8750) !important;
  color: #191512 !important;
  border-radius: 10px !important;
  border: 1px solid #efcd94 !important;
}
body .download-popup-modal .modal-content { background:#252122!important; border:1px solid var(--obs-gold-deep)!important; color:var(--obs-text)!important; }
body .download-popup-modal .modal-header { background:#302522!important; color:var(--obs-gold-light)!important; }
body .download-popup-modal .modal-body { background:#1a191a!important; color:var(--obs-text)!important; }

body .site-footer {
  background: linear-gradient(175deg,#181719,#0c0d0f) !important;
  border-top: 1px solid rgba(213,177,122,.45) !important;
  color: var(--obs-muted) !important;
}
body .site-footer .container { max-width: 1200px !important; }
body .site-footer .footer-section-title,
body .site-footer h1,body .site-footer h2,body .site-footer h3,body .site-footer h4 {
  color: var(--obs-gold-light) !important;
}
body .site-footer a { color: var(--obs-gold) !important; }
body .site-footer a:hover { color: #fff0d0 !important; }
body .site-footer .site-info-description,
body .site-footer p { color: var(--obs-muted) !important; }
body .site-footer .footer-separator { border-color: rgba(213,177,122,.26) !important; }

/* Original left menu remains; V2 interaction and handle live in hokie-floating-popup.css/js. */
body .ard-sosmed-bar .left {
  background: linear-gradient(160deg,#33282a,#121214) !important;
  border: 1px solid var(--obs-gold-deep) !important;
  box-shadow: 0 7px 22px rgba(0,0,0,.45) !important;
}
body .ard-sosmed-bar .left > div {
  background: rgba(205,167,103,.15) !important;
  border: 1px solid rgba(213,177,122,.45) !important;
}
body .LcButton { border: 2px solid var(--obs-gold-deep) !important; box-shadow:0 0 13px rgba(220,179,115,.35)!important; }
@media (max-width: 768px) {
  body .popular-slots-outer-container .game-list-container { padding: 8px !important; }
  body .popular-slots-outer-container > .popular-game-title-container { padding: 10px 12px !important; }
  body .download-apk-container { padding-block: 20px !important; }
  body .download-apk-container .download-apk { padding: 12px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body .popular-slots-outer-container > .popular-game-title-container,
  body .download-apk-container .download-apk { animation: none !important; }
  body .popular-slots-outer-container .game-item { transition: none !important; }
}
/* Subtle champagne spotlight inside game cards; never intercepts clicks. */
body .popular-slots-outer-container .game-item { position: relative; }
body .popular-slots-outer-container .game-item::after {
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(170px circle at var(--obs-x, 50%) var(--obs-y, 50%),rgba(255,216,155,.16),transparent 72%);
  opacity: 0;
  transition: opacity .2s ease;
}
body .popular-slots-outer-container .game-item:hover::after { opacity: 1; }
@media (hover: none) { body .popular-slots-outer-container .game-item::after { display: none; } }
