/* Global Black-Yellow Theme - CSS variables. Layout and logic untouched. */
:root {
  /* Legacy aliases for this stylesheet */
  --bg: var(--bg_page_dark);
  --panel: var(--bg_card);
  --panel2: var(--bg_card_darker);
  --gold: var(--primary);
  --gold2: var(--primary_light);
  --yellow: var(--primary);
  --yellow2: var(--primary_light);
  --text: var(--text_primary);
  --muted: var(--text_secondary);
  --line: var(--border_default);
}

html,body{background:var(--bg_page_dark) !important;color:var(--text_primary) !important;}
body{background-color:var(--bg_page_dark) !important;}

/* Keep every existing surface/layout intact; only recolor surfaces. */
.app,.slots-page,.register-page,.login-page,.promo-page,.dash,.category-page,
.page-wrap,.content-wrap,.main-content,.content,.container-wrapper,
.container-box,.backdrop{background-color:var(--bg_page_dark) !important;}

/* Header / footer / navigation */
.header,.slots-header,.register-head,.side-head,
.top-bar,.inner-header,.header-main,.main-header,
.mobilesite-footer,.footer,.bottom,.bottom-menu,
.home-bottom,.mobile-bottom,.bottom-nav,.nav-bottom,
.sidebar,.side-nav,#sideNav,#r-side-bar{background-color:var(--bg_page_dark) !important;border-color:var(--primary) !important;}

/* Primary borders and accents */
.header,.slots-header,.register-head,.side-head,
.top-bar,.inner-header,.main-header,.sidebar,.side-nav,
.simple-card,.promo-card,.register-card,.login-card,.balance,
.provider,.provider-brand,.game-card,.home-benefit,.provider-item,
.bank-online-card,.dash-action,.toto,.error-state,.empty-state,
.loading-card,.cat,.category-provider,.menu-item,.side-link,
.search-box,.form-control,.field input,.field textarea{
  border-color:var(--primary) !important;
}

/* Buttons / actions: primary color, never red or other */
.register,.register-submit,.hero-btn,.head-login,.guest-login-primary,
.login-modal-submit,.submit,.play-btn,.btn-primary,.btn-success,
button[type="submit"],.bottom .center span{
  background:var(--primary) !important;
  background-image:none !important;
  border-color:var(--primary) !important;
  color:var(--btn_text) !important;
}

.login,.back-btn,.icon-btn,.search-btn,.more,.guest-login-secondary,
.login-modal-close{background:var(--bg_card) !important;color:var(--primary) !important;border-color:var(--primary) !important;}

/* Panels / cards */
.simple-card,.promo-card,.register-card,.login-card,.balance,
.provider,.provider-brand,.game-card,.home-benefit,.provider-item,
.bank-online-card,.dash-action,.toto,.error-state,.empty-state,
.loading-card,.category-provider,.cat{
  background:linear-gradient(145deg,var(--bg_card),var(--bg_card_darker)) !important;
}

/* Login popup */
#loginModal.login-modal-backdrop{background:var(--shadow_card) !important;}
#loginModal .login-modal-box{background:linear-gradient(145deg,var(--bg_card),var(--bg_card_darker)) !important;border-color:var(--primary) !important;box-shadow:0 28px 90px var(--shadow_card),0 0 30px var(--shadow_button) !important;}
#loginModal .login-modal-icon{background:var(--primary_light) !important;border-color:var(--border_primary) !important;color:var(--primary) !important;}
#loginModal .login-modal-title,#loginModal .login-modal-field label{color:var(--text_primary) !important;}
#loginModal .login-modal-field input{background:var(--bg_input) !important;border-color:var(--border_default) !important;color:var(--text_primary) !important;}
#loginModal .login-modal-field input:focus{border-color:var(--border_input_focus) !important;box-shadow:0 0 0 3px var(--shadow_focus) !important;}
#loginModal .login-modal-foot a{color:var(--primary) !important;}

/* Active / hover states */
.cat.active,.cat:active,.provider.active,.provider:active,
.provider-brand.active,.provider-brand:active,.category-provider.active,
.category-provider:active,.game-card:active,.game:hover,
.games-grid .game-card:hover,.side-link:hover,.side-link.active,
.side-tab.active,.menu-item.active{
  border-color:var(--border_primary) !important;
  box-shadow:0 0 0 1px var(--shadow_focus),0 8px 24px var(--shadow_card) !important;
}
.cat.active,.category-provider.active,.provider.active,.provider-brand.active{
  background:linear-gradient(180deg,var(--bg_card_darker),var(--bg_page_dark)) !important;
}
.cat.active .cat-art,.provider-brand.active .provider-logo{border-color:var(--border_primary) !important;}

/* Typography / indicators */
.section-head h2,.section-title,.eyebrow,.logo,.home-stat strong,
.home-contact>a,.register-login a,.links a,.provider-item:hover,
.side-link:hover,.side-link.active,.side-tab.active,.game-meta,
.hero-kicker,.hero-subtitle,.brand .fallback,.promo-mark,
.latest-game-badge,.game-badge,.guest-login-icon{color:var(--primary) !important;}
.dot,.section-head h2:after,.hero-dots i.active,.bank-online-dot,
.promo-card:before{background:var(--primary) !important;box-shadow:0 0 8px var(--shadow_button) !important;}

/* Inputs / forms */
.field input,.field textarea,.form-control,.search-box input{
  background:var(--bg_input) !important;border-color:var(--border_default) !important;color:var(--text_primary) !important;
}
.field input:focus,.field textarea:focus,.form-control:focus,
.search-box:focus-within{border-color:var(--border_input_focus) !important;box-shadow:0 0 0 3px var(--shadow_focus) !important;}

.login-page,.register-page,.promo-page{min-height:100vh;}
.login-card,.register-card,.promo-card{backdrop-filter:blur(6px) !important;}
.submit,.register-submit{box-shadow:0 9px 24px var(--shadow_button) !important;}

/* Slots / provider surfaces */
.slots-page{background:var(--bg_page_dark) !important;border-left-color:var(--primary) !important;border-right-color:var(--primary) !important;}
.slots-header{background:var(--bg_input) !important;border-color:var(--primary) !important;}
.provider.active,.provider-brand.active{color:var(--primary) !important;}
.game-badge{color:var(--primary) !important;border-color:var(--border_primary) !important;background:var(--bg_card) !important;}
.promo-mark{background:var(--primary) !important;color:var(--btn_text) !important;}
.hero-orb{background:radial-gradient(circle at 38% 35%,var(--primary_light) 0,var(--primary) 28%,var(--primary_dark) 55%,transparent 70%) !important;}

/* Force legacy yellow theme tokens to primary wherever reused. */
[class*="yellow"], [class*="success"]{--yellow:var(--primary);--yellow2:var(--primary_light);}

@media(max-width:600px){
  body{background-attachment:scroll !important;background-color:var(--bg_page_dark) !important;}
  .app,.slots-page,.register-page,.login-page,.promo-page{background-color:var(--bg_page_dark) !important;}
}
