/* =====================================================================
   OpulGold Theme — design-only re-skin
   Dramatic gold (#D4AF37) on warm near-black (#08060A) — elegant,
   diamond-luxury feel. Restyle only; no markup/logic changes.
   Loaded LAST so it overrides nj_theme / bootstrap / admin / page CSS.
   ===================================================================== */

:root {
  --og-bg:        #08060A;
  --og-bg-2:      #100C09;
  --og-bg-3:      #1A130C;
  --og-surface:   rgba(20, 14, 8, 0.85);
  --og-glass:     rgba(255, 215, 130, 0.05);
  --og-gold:      #D4AF37;
  --og-gold-2:    #E6C658;
  --og-gold-3:    #FBF6E4;
  --og-gold-deep: #9C7818;
  --og-gold-dark: #5E4910;
  --og-text:      #f5efe0;
  --og-muted:     #b6a980;
  --og-border:    rgba(212, 175, 55, 0.16);
  --og-gold-bd:   rgba(212, 175, 55, 0.40);
  --og-grad:      linear-gradient(135deg, #FBF6E4, #E6C658 30%, #D4AF37 60%, #9C7818);
  --og-grad-soft: linear-gradient(135deg, #E6C658 0%, #D4AF37 55%, #9C7818 100%);
  --og-glow:      0 14px 40px -8px rgba(212, 175, 55, 0.55);
  --og-glow-soft: 0 0 30px -8px rgba(212, 175, 55, 0.45);
}

/* ============================= BASE ============================= */
html, body {
  background: var(--og-bg) !important;
  color: var(--og-text) !important;
  overflow-x: hidden !important;
  max-width: 100%;
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
}
body {
  background:
    radial-gradient(900px 600px at 50% -10%, rgba(212,175,55,.12), transparent 60%),
    radial-gradient(700px 500px at 100% 100%, rgba(156,120,24,.10), transparent 60%),
    radial-gradient(500px 400px at 0% 50%, rgba(212,175,55,.06), transparent 60%),
    var(--og-bg) !important;
  min-height: 100vh;
}
::selection { background: var(--og-gold); color: #08060A; }
a { color: var(--og-gold-2); transition: color .25s ease; }
a:hover, a:focus { color: var(--og-gold-3); }

/* subtle grid texture */
body::before {
  content: "";
  position: fixed; inset: 0; z-index: -2; pointer-events: none;
  background-image:
    linear-gradient(rgba(212,175,55,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(212,175,55,.035) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, #000 30%, transparent 75%);
          mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, #000 30%, transparent 75%);
}

/* scrollbar */
* { scrollbar-color: rgba(212,175,55,.5) transparent; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--og-bg-2); }
::-webkit-scrollbar-thumb { background: rgba(212,175,55,.4); border-radius: 10px; }
::-webkit-scrollbar-thumb:hover { background: rgba(212,175,55,.7); }

/* ===================== LOGO (CSS swap) ===================== */
/* swap ANY old CoreMint / mint logo.png references to the OpulGold SVG */
img[src*="coremint-logo"],
img[src*="nj_theme/images/logo"],
img[src="logo.png"],
img[src$="/logo.png"],
img[src*="MyCustom/logo"],
.pm-logo img,
.navbar-brand img,
.preload-logo img {
  content: url("logo.png");
  height: 44px !important;
  width: auto !important;
  object-fit: contain;
  filter: drop-shadow(0 0 14px rgba(212,175,55,.55));
}
.pm-logo img { margin-left: 0 !important; }

/* ===================== FLOATING GLOW SHAPES ===================== */
.bg-shape { filter: blur(110px) !important; opacity: .35 !important; }
.bg-shape.one   { background: #D4AF37 !important; }
.bg-shape.two   { background: #9C7818 !important; }
.bg-shape.three { background: #E6C658 !important; }

/* ===================== MEMBER APP CHROME ===================== */
.pm-header, .pm-footer, .pm-sidebar {
  background: rgba(8,6,10,.93) !important;
  border-color: rgba(212,175,55,.20) !important;
  backdrop-filter: blur(16px) saturate(140%);
}
.pm-header { box-shadow: 0 4px 24px rgba(0,0,0,.4), 0 1px 0 rgba(212,175,55,.12); }
.pm-footer { box-shadow: 0 -4px 24px rgba(0,0,0,.4), 0 -1px 0 rgba(212,175,55,.12); }
.pm-user { display: none !important; }
.pm-logo { margin-left: auto !important; }

.pm-menu-btn {
  background: var(--og-bg-2) !important;
  border: 1px solid var(--og-gold-bd) !important;
  color: var(--og-gold) !important;
  border-radius: 10px !important;
  transition: all .25s ease;
}
.pm-menu-btn:hover { background: rgba(212,175,55,.10) !important; box-shadow: var(--og-glow-soft); }

.pm-nav a, .pm-footer-menu a { color: #a89970 !important; transition: color .25s ease, transform .25s ease; }
.pm-nav a:hover, .pm-footer-menu a:hover { color: var(--og-gold) !important; }
.pm-nav .active a, .pm-footer-menu .active a,
.pm-nav .active i, .pm-footer-menu .active i { color: var(--og-gold) !important; }
.pm-nav li:last-child a, .pm-footer-menu .pm-logout a { color: #ff6b6d !important; }
.pm-nav i, .pm-footer-menu i { transition: transform .25s ease; }
.pm-nav a:hover i { transform: scale(1.15); }

/* center home button */
.pm-home a {
  background: var(--og-grad) !important;
  color: #08060A !important;
  box-shadow: 0 14px 36px -6px rgba(212,175,55,.65), inset 0 1px 0 rgba(255,255,255,.4) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border: 2px solid rgba(251,246,228,.3) !important;
}
.pm-home i { color: #08060A !important; }

/* sidebar links */
.pm-sidebar ul li a {
  color: #d6c79a !important;
  border-left: 3px solid transparent;
  transition: all .25s ease;
}
.pm-sidebar ul li a:hover {
  background: linear-gradient(90deg, rgba(212,175,55,.15), transparent) !important;
  color: var(--og-gold) !important;
  border-left-color: var(--og-gold) !important;
  padding-left: 22px !important;
}
.pm-sidebar i { color: var(--og-gold) !important; }

/* ===================== CARDS / GLASS PANELS ===================== */
.card, .tf-container, .panel, .panel-default, .widget, .dash-card,
.pm-surface, .pm-card, .bg-menuDark {
  background: var(--og-surface) !important;
  border: 1px solid rgba(212,175,55,.18) !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.6), inset 0 1px 0 rgba(212,175,55,.08) !important;
  color: var(--og-text) !important;
  animation: ogFadeUp .6s cubic-bezier(.2,.7,.2,1) both;
  position: relative;
}
.card::before, .pm-surface::before, .bg-menuDark::before {
  content: "";
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,.6), transparent);
  pointer-events: none;
}
.card:hover, .panel:hover, .dash-card:hover {
  border-color: var(--og-gold-bd) !important;
  box-shadow: 0 24px 70px -20px rgba(212,175,55,.45) !important;
  transition: box-shadow .4s ease, border-color .4s ease;
}
.card-header, .panel-heading {
  background: rgba(212,175,55,.07) !important;
  border-color: rgba(212,175,55,.18) !important;
  color: var(--og-gold) !important;
}
.panel-title, .card-title { color: var(--og-gold) !important; }

/* ===================== BUTTONS ===================== */
.btn_theme, .btn-primary, .btn-info, .btn-success,
.btn-default.btn-primary, input[type="submit"].btn, .swal2-confirm {
  background: var(--og-grad-soft) !important;
  border: none !important;
  color: #08060A !important;
  font-weight: 700 !important;
  border-radius: 14px !important;
  box-shadow: var(--og-glow), inset 0 1px 0 rgba(255,255,255,.35) !important;
  transition: transform .25s ease, box-shadow .35s ease, filter .25s ease !important;
  letter-spacing: .3px;
}
.btn_theme:hover, .btn-primary:hover, .btn-info:hover, .btn-success:hover,
input[type="submit"].btn:hover {
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 22px 55px -10px rgba(212,175,55,.7), inset 0 1px 0 rgba(255,255,255,.45) !important;
  filter: brightness(1.08);
  color: #08060A !important;
}
.btn-outline-primary, .btn-outline-info {
  border: 1px solid var(--og-gold-bd) !important;
  color: var(--og-gold) !important;
  background: transparent !important;
}
.btn-outline-primary:hover, .btn-outline-info:hover {
  background: rgba(212,175,55,.12) !important;
  color: var(--og-gold-3) !important;
  border-color: var(--og-gold) !important;
}
.btn-secondary, .btn-default {
  background: var(--og-glass) !important;
  border: 1px solid var(--og-border) !important;
  color: var(--og-text) !important;
}
.btn-danger { background: linear-gradient(135deg,#ff7a7c,#e23b3e) !important; border: none !important; }

/* ===================== FORMS ===================== */
.form-control, .form-select, select, textarea,
input[type="text"], input[type="password"], input[type="email"],
input[type="number"], input[type="tel"], input[type="date"] {
  background: rgba(255,215,130,.04) !important;
  border: 1px solid rgba(212,175,55,.2) !important;
  color: var(--og-text) !important;
  border-radius: 12px !important;
  transition: all .25s ease;
}
.form-control:focus, .form-select:focus, select:focus, textarea:focus,
input:focus {
  border-color: var(--og-gold) !important;
  box-shadow: 0 0 0 3px rgba(212,175,55,.22) !important;
  outline: none !important;
}
.form-control::placeholder, input::placeholder { color: #756648 !important; }
.form-check-input:checked { background-color: var(--og-gold) !important; border-color: var(--og-gold) !important; }
label { color: #d6c79a !important; }

/* ===================== TEXT ACCENTS ===================== */
.text-info, .text-primary, .text-success,
html body .text-info, html body .text-primary, html body .text-success,
html body span.text-primary, html body h5 .text-primary, html body a.text-primary {
  color: var(--og-gold) !important;
}
.text-gradient, .text-brand {
  background: linear-gradient(100deg, #FBF6E4, #E6C658 45%, #D4AF37) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important; color: transparent !important;
}
.bg-primary, .bg-info, .bg-success { background: var(--og-grad-soft) !important; color:#08060A !important; }
.badge, .label {
  background: rgba(212,175,55,.15) !important;
  color: var(--og-gold) !important;
  border: 1px solid rgba(212,175,55,.30) !important;
  border-radius: 999px !important;
  padding: 4px 12px !important;
  font-weight: 600 !important;
}
.badge-danger, .label-danger { background: rgba(255,107,109,.15) !important; color:#ff8b8d !important; border-color: rgba(255,107,109,.3) !important; }

/* ===================== TABLES ===================== */
.table, table.gridview, .gvTheGrid { color: #d6c79a !important; }
.table th, table th, thead th {
  color: var(--og-gold) !important;
  border-color: rgba(212,175,55,.20) !important;
  background: rgba(212,175,55,.06) !important;
  font-weight: 700 !important;
  letter-spacing: .3px;
  text-transform: uppercase;
  font-size: 12px;
}
.table td, table td { border-color: rgba(212,175,55,.08) !important; }
.table-striped > tbody > tr:nth-of-type(odd),
table tr:nth-of-type(even) { background: rgba(212,175,55,.02) !important; }
.table-hover > tbody > tr:hover, table tr:hover { background: rgba(212,175,55,.07) !important; }

/* grid pager (ASP.NET) */
.gridpagerstyle { background: transparent !important; color: var(--og-gold) !important; }
.gridpagerstyle span { background: var(--og-grad-soft) !important; color:#08060A !important; border:none !important; border-radius:8px !important; box-shadow: var(--og-glow-soft) !important; }
.gridpagerstyle a { background: var(--og-glass) !important; color: var(--og-text) !important; border:1px solid var(--og-border) !important; border-radius:8px !important; }
.gridpagerstyle a:hover { background: rgba(212,175,55,.18) !important; color: var(--og-gold-3) !important; }

/* ===================== ADMIN TEMPLATE ===================== */
#wrapper, #page-wrapper, .main-page, .content-wrapper { background: var(--og-bg) !important; }
.top-navbar, .navbar-default, .navbar-static-top, .navbar.navbar-default {
  background: rgba(8,6,10,.93) !important;
  border-color: rgba(212,175,55,.20) !important;
}
.navbar-default .navbar-nav > li > a, .navbar-brand, .navbar-top-links > li > a { color: var(--og-text) !important; }
.navbar-default .navbar-nav > li > a:hover { color: var(--og-gold) !important; }
.sidebar, .sidebar-nav, .nav-second-level, .side-menu, #sidebar-wrapper {
  background: rgba(8,6,10,.96) !important;
  border-color: rgba(212,175,55,.16) !important;
}
.sidebar .nav > li > a, .side-menu li a, .nav-second-level li a { color: #d6c79a !important; }
.sidebar .nav > li > a:hover, .sidebar .nav > li.active > a,
.side-menu li a:hover, .side-menu li.active > a {
  background: rgba(212,175,55,.12) !important;
  color: var(--og-gold) !important;
  border-left: 3px solid var(--og-gold) !important;
}
.page-header, h1, h2, h3, h4, h5 { color: #fff; font-family: 'Playfair Display', 'Cormorant Garamond', serif; }
h1 .text-primary, h2 .text-primary, h3 .text-primary, h4 .text-primary, h5 .text-primary { color: var(--og-gold) !important; }

/* ===================== PRELOADER ===================== */
.preload, .preload-container { background: var(--og-bg) !important; }
.spinner { border-top-color: var(--og-gold) !important; }
.preload-logo {
  background-image: url('logo.png') !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  filter: drop-shadow(0 0 18px rgba(212,175,55,.6));
}

/* ===================== DASHBOARD-SPECIFIC TUNING ===================== */
/* User card avatar/name */
.pm-user-card { background: linear-gradient(135deg, rgba(212,175,55,.10), rgba(20,14,8,.85)) !important; }
.pm-avatar {
  background: var(--og-grad-soft) !important;
  color: #08060A !important;
  box-shadow: var(--og-glow-soft) !important;
}
.pm-hello, .pm-activation, .pm-code, .pm-name { color: var(--og-text) !important; }
.pm-name { color: var(--og-gold-3) !important; font-family: 'Sora','Inter',sans-serif; }
.pm-code { color: var(--og-gold) !important; font-weight: 700; }
.pm-badge {
  background: rgba(212,175,55,.15) !important;
  border: 1px solid rgba(212,175,55,.30) !important;
  color: var(--og-gold) !important;
  border-radius: 999px !important;
  padding: 4px 12px !important;
  font-size: 12px;
}
.pm-badge.active { background: linear-gradient(135deg, rgba(34,197,94,.20), rgba(34,197,94,.10)) !important; color: #5eecbf !important; border-color: rgba(34,197,94,.30) !important; }
.pm-badge.rank { background: var(--og-grad-soft) !important; color: #08060A !important; }

/* Quick action icons (Add / Withdraw / Investment / Earn) */
.pm-ic-green, .pm-ic-blue, .pm-ic-purple, .pm-ic-gold, .pm-ic-cyan {
  width: 56px !important; height: 56px !important; border-radius: 18px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.15) !important;
  color: #08060A !important;
}
.pm-ic-green  { background: linear-gradient(135deg, #E6C658, #D4AF37) !important; }
.pm-ic-blue   { background: linear-gradient(135deg, #FBF6E4, #D4AF37) !important; }
.pm-ic-purple { background: linear-gradient(135deg, #D4AF37, #9C7818) !important; }
.pm-ic-gold   { background: linear-gradient(135deg, #FBF6E4, #E6C658, #D4AF37) !important; }
.pm-ic-cyan   { background: linear-gradient(135deg, #E6C658, #9C7818) !important; }
.pm-ic-red    { background: linear-gradient(135deg, #ff7a7c, #e23b3e) !important; }
.pm-ic-green i, .pm-ic-blue i, .pm-ic-purple i, .pm-ic-gold i, .pm-ic-cyan i { color: #08060A !important; }

/* Refer link */
.pm-refer-card { background: linear-gradient(135deg, rgba(212,175,55,.08), rgba(20,14,8,.85)) !important; }
.pm-refer-ic {
  background: var(--og-grad-soft) !important;
  color: #08060A !important;
  width: 44px; height: 44px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  box-shadow: var(--og-glow-soft) !important;
}
.pm-linkbox {
  background: rgba(212,175,55,.06) !important;
  border: 1px solid rgba(212,175,55,.18) !important;
  border-radius: 14px !important;
}
.pm-link-ic { color: var(--og-gold) !important; }
.pm-linktext { color: var(--og-gold-3) !important; word-break: break-all; }
.pm-iconbtn {
  background: var(--og-grad-soft) !important;
  color: #08060A !important;
  border-radius: 10px !important;
  box-shadow: var(--og-glow-soft) !important;
}
.pm-btn-wa { background: linear-gradient(135deg, #25D366, #128C7E) !important; color: #fff !important; }
.pm-btn-copy { background: var(--og-grad-soft) !important; color: #08060A !important; box-shadow: var(--og-glow-soft) !important; }
.pm-toast {
  background: rgba(8,6,10,.9) !important;
  color: var(--og-gold) !important;
  border: 1px solid rgba(212,175,55,.3) !important;
}

/* Income tiles */
.pm-income-tile {
  position: relative; overflow: hidden;
  border-radius: 18px !important;
  padding: 18px !important;
  background: linear-gradient(135deg, rgba(212,175,55,.08), rgba(20,14,8,.85)) !important;
  border: 1px solid rgba(212,175,55,.20) !important;
  color: var(--og-text) !important;
  text-decoration: none !important;
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.pm-income-tile:hover {
  transform: translateY(-4px);
  border-color: var(--og-gold-bd) !important;
  box-shadow: 0 18px 40px -12px rgba(212,175,55,.45) !important;
}
.pm-income-tile .pm-tile-ic {
  background: var(--og-grad-soft) !important;
  color: #08060A !important;
  width: 42px; height: 42px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  box-shadow: var(--og-glow-soft) !important;
}
.pm-income-tile.pm-cyan .pm-tile-ic   { background: linear-gradient(135deg, #FBF6E4, #D4AF37) !important; }
.pm-income-tile.pm-purple .pm-tile-ic { background: linear-gradient(135deg, #E6C658, #9C7818) !important; }
.pm-income-tile.pm-green .pm-tile-ic  { background: linear-gradient(135deg, #D4AF37, #9C7818) !important; }
.pm-income-tile.pm-gold .pm-tile-ic   { background: linear-gradient(135deg, #FBF6E4, #E6C658, #D4AF37) !important; }
.pm-income-tile.pm-red .pm-tile-ic    { background: linear-gradient(135deg, #ff7a7c, #e23b3e) !important; color:#fff !important; }
.pm-title { color: var(--og-gold-3) !important; font-weight: 700; }
.pm-mini  { color: var(--og-muted) !important; font-size: 12px; }
.pm-amt   { color: var(--og-gold) !important; font-size: 22px; font-weight: 800; font-family: 'Sora','Inter',sans-serif; }
.pm-currency { color: var(--og-gold) !important; }
.pm-go i { color: var(--og-gold) !important; }
.pm-glow {
  position: absolute; right: -40px; bottom: -40px;
  width: 120px; height: 120px; border-radius: 50%;
  background: radial-gradient(circle, rgba(212,175,55,.35), transparent 70%);
  pointer-events: none;
}

/* Downline list */
.pm-downline-head { color: var(--og-gold-3) !important; }
.pm-downline-head h5 { color: var(--og-gold-3) !important; font-family: 'Sora','Inter',sans-serif; }
.pm-downline-head i { color: var(--og-gold) !important; margin-right: 8px; }
.pm-downline-header {
  display: flex; justify-content: space-between;
  padding: 8px 14px; margin-top: 8px;
  border-bottom: 1px solid rgba(212,175,55,.15);
  color: var(--og-muted) !important; font-size: 12px; text-transform: uppercase; letter-spacing: .25em;
}
.pm-downline-list { list-style: none; padding: 0; margin: 8px 0 0; }
.pm-downline-item {
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid transparent;
  text-decoration: none !important;
  transition: all .25s ease;
}
.pm-downline-item:hover {
  background: rgba(212,175,55,.06) !important;
  border-color: rgba(212,175,55,.18);
}
.pm-downline-left { display: flex; align-items: center; gap: 12px; }
.pm-downline-icon {
  width: 40px; height: 40px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  color: #08060A !important;
  box-shadow: var(--og-glow-soft) !important;
}
.pm-downline-title { color: var(--og-text) !important; font-weight: 600; }
.pm-downline-count { color: var(--og-gold) !important; font-weight: 800; font-size: 18px; font-family: 'Sora','Inter',sans-serif; }

/* Section headers */
.pm-sec-head h5 { color: var(--og-gold-3) !important; font-family: 'Sora','Inter',sans-serif; }
.pm-sec-sub { color: var(--og-muted) !important; font-size: 12px; }
.pm-section { background: var(--og-surface) !important; border-radius: 20px; }
.pm-page-title { color: var(--og-gold-3) !important; font-family: 'Sora','Inter',sans-serif !important; }
.pm-sub { color: var(--og-muted) !important; }

/* ===================== LEVELBUSINESS overrides ===================== */
/* Override the page's :root vars to use gold tones */
.pm-wrap { --pm-cyan: #D4AF37; --pm-purple: #E6C658; --pm-green: #9C7818; --pm-gold: #D4AF37; --pm-text: #f5efe0; --pm-muted: #b6a980; }
.pm-chip {
  background: rgba(212,175,55,.10) !important;
  border-color: rgba(212,175,55,.25) !important;
  color: var(--og-gold) !important;
}
.pm-ic.cyan   { background: linear-gradient(135deg, #FBF6E4, #D4AF37) !important; }
.pm-ic.green  { background: linear-gradient(135deg, #D4AF37, #9C7818) !important; }
.pm-ic.purple { background: linear-gradient(135deg, #E6C658, #9C7818) !important; }
.pm-k { color: var(--og-muted) !important; }
.pm-v { color: var(--og-text) !important; font-family: 'Sora','Inter',sans-serif; }

/* ===================== NEWS TICKER ===================== */
.TickerNews.default_theme_2 { border-color: rgba(212,175,55,.18) !important; background: rgba(20,14,8,.6) !important; border-radius: 12px; }
.ti_news a { color: var(--og-gold) !important; }
.ti_news i { color: var(--og-gold-2) !important; }

/* ===================== ELEGANT TOUCHES + ANIMATIONS ===================== */
@keyframes ogFadeUp {
  from { opacity: 0; transform: translateY(22px); }
  to   { opacity: 1; transform: none; }
}
@keyframes ogShimmer {
  0%   { transform: translateX(-120%); }
  60%  { transform: translateX(120%); }
  100% { transform: translateX(120%); }
}
@keyframes ogShine {
  0%, 100% { background-position: 0% 50%; }
  50%      { background-position: 100% 50%; }
}

/* sheen sweep across primary buttons */
.btn_theme, .btn-primary { position: relative; overflow: hidden; }
.btn_theme::after, .btn-primary::after {
  content: ""; position: absolute; top: 0; left: 0; width: 45%; height: 100%;
  background: linear-gradient(100deg, transparent, rgba(255,255,255,.45), transparent);
  transform: translateX(-120%);
}
.btn_theme:hover::after, .btn-primary:hover::after { animation: ogShimmer 1s ease; }

@keyframes ogFadeIn { from { opacity: 0; } to { opacity: 1; } }
.page-body > * { animation: ogFadeIn .55s ease both; }

/* gold focus ring */
a:focus-visible, button:focus-visible, .btn:focus-visible {
  outline: 2px solid var(--og-gold); outline-offset: 2px;
}

/* dividers */
hr { border-color: rgba(212,175,55,.20) !important; }
.border, .border-top, .border-bottom { border-color: var(--og-border) !important; }

/* ===================== PUBLIC LANDING PAGE VARIABLES ===================== */
:root {
  --brand1: #D4AF37 !important;
  --brand2: #9C7818 !important;
  --brand3: #E6C658 !important;
  --good:   #D4AF37 !important;
  --bg:     #08060A !important;
  --bg2:    #100C09 !important;
}
.btn-grad, .cta, .btn-cta, .hero-btn {
  background: var(--og-grad-soft) !important;
  color: #08060A !important; border: none !important;
}
.text-brand, .brand, .highlight { color: var(--og-gold) !important; }

/* ===================== MAX-SPECIFICITY BUTTON OVERRIDE =====================
   MyCustom/custom_new.css uses element selectors (input[type=submit], button)
   which can outweigh class selectors. These rules use compound selectors plus
   !important to win every cascade no matter how deep the loading order. */
html body input[type="submit"].btn_theme,
html body input[type="submit"].btn.btn_theme,
html body button.btn_theme,
html body .btn_theme,
html body input[type="submit"],
html body input[type="button"].btn_theme,
html body input.btn_theme {
  background: linear-gradient(135deg, #FBF6E4 0%, #E6C658 20%, #D4AF37 55%, #BE9322 100%) !important;
  background-color: #D4AF37 !important;
  border: none !important;
  border-radius: 14px !important;
  color: #08060A !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  box-shadow:
    0 18px 45px -10px rgba(212,175,55,.55),
    inset 0 1px 0 rgba(255,255,255,.45) !important;
  text-shadow: none !important;
  transition: transform .3s ease, box-shadow .35s ease, filter .25s ease !important;
}
html body input[type="submit"].btn_theme:hover,
html body input[type="submit"].btn.btn_theme:hover,
html body button.btn_theme:hover,
html body .btn_theme:hover,
html body input[type="submit"]:hover,
html body input[type="button"].btn_theme:hover {
  background: linear-gradient(135deg, #FBF6E4 0%, #E6C658 20%, #D4AF37 55%, #BE9322 100%) !important;
  background-color: #D4AF37 !important;
  color: #08060A !important;
  border: none !important;
  transform: translateY(-3px) scale(1.015) !important;
  box-shadow:
    0 26px 60px -8px rgba(212,175,55,.7),
    inset 0 1px 0 rgba(255,255,255,.55) !important;
  filter: brightness(1.06);
}

/* Exempt explicitly non-primary buttons (cancel, danger, ghost, etc.) */
html body input[type="submit"].btn-danger,
html body button.btn-danger,
html body .btn-danger {
  background: linear-gradient(135deg,#ff7a7c,#e23b3e) !important;
  background-color: #e23b3e !important;
  color: #fff !important;
}
html body input[type="submit"].btn-secondary,
html body button.btn-secondary,
html body .btn-secondary {
  background: rgba(212,175,55,.10) !important;
  background-color: transparent !important;
  color: var(--og-gold) !important;
  border: 1px solid rgba(212,175,55,.35) !important;
}

/* ===================== MENU-LINKED INNER PAGES (rewards, salary, etc.) ===================== */

/* Page titles (h5.title used by rewards, salarybonus, deposit history, etc.) */
.bg-menuDark h5.title,
.bg-menuDark .title,
h5.title {
  font-family: 'Playfair Display', 'Cormorant Garamond', serif !important;
  font-size: 24px !important;
  font-weight: 600 !important;
  color: #FBF6E4 !important;
  letter-spacing: .015em !important;
  margin-bottom: 18px !important;
  position: relative;
  padding-bottom: 12px;
  display: inline-block;
}
.bg-menuDark h5.title::after,
h5.title::after {
  content: "";
  position: absolute;
  bottom: 0; left: 0;
  width: 60%; height: 2px;
  background: linear-gradient(90deg, rgba(212,175,55,.85), transparent);
  border-radius: 1px;
}

/* Bootstrap card.card-danger used by reward / salary tables */
.card.card-danger {
  background: linear-gradient(135deg, rgba(212,175,55,.08), rgba(20,14,8,.85)) !important;
  border: 1px solid rgba(212,175,55,.22) !important;
  border-radius: 20px !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.55), inset 0 1px 0 rgba(212,175,55,.12) !important;
  overflow: hidden;
  position: relative;
}
.card.card-danger::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,.8), transparent);
  pointer-events: none;
}

/* Reward / Salary table cells */
.table .text-xs.font-weight-bold {
  color: #FBF6E4 !important;
  font-family: 'Sora','Inter',sans-serif !important;
  font-weight: 600 !important;
}
.table .text-secondary {
  color: #D4AF37 !important;
}

/* Badges within tables (achieved vs locked) */
.badge.bg-gradient-success {
  background: linear-gradient(135deg, #FBF6E4, #E6C658, #D4AF37) !important;
  color: #08060A !important;
  border: 0 !important;
  box-shadow: 0 6px 16px -6px rgba(212,175,55,.55), inset 0 1px 0 rgba(255,255,255,.4) !important;
}
.badge.bg-gradient-secondary {
  background: rgba(20,14,8,.6) !important;
  color: #b6a980 !important;
  border: 1px solid rgba(212,175,55,.18) !important;
}

/* Withdraw / Deposit forms (.profile-card / .input-box) */
.profile-card {
  background: linear-gradient(135deg, rgba(212,175,55,.08), rgba(20,14,8,.85)) !important;
  border: 1px solid rgba(212,175,55,.22) !important;
  border-radius: 22px !important;
  padding: 22px !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.5), inset 0 1px 0 rgba(212,175,55,.12) !important;
  position: relative;
  overflow: hidden;
}
.profile-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, rgba(212,175,55,.8), transparent);
}
.input-box {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: rgba(212,175,55,.05) !important;
  border: 1px solid rgba(212,175,55,.22) !important;
  border-radius: 14px !important;
  padding: 12px 16px !important;
  margin-bottom: 14px !important;
  transition: all .25s ease;
}
.input-box:focus-within {
  border-color: rgba(212,175,55,.65) !important;
  box-shadow: 0 0 0 3px rgba(212,175,55,.18) !important;
}
.input-box img { opacity: .7; filter: brightness(0) saturate(100%) invert(70%) sepia(80%) saturate(450%) hue-rotate(15deg); }
.input-box input {
  flex: 1 !important;
  background: transparent !important;
  border: 0 !important;
  outline: none !important;
  color: #FBF6E4 !important;
  font-size: 14px !important;
  padding: 0 !important;
}
.input-box input::placeholder { color: #756648 !important; }

.gradient-btn-full {
  width: 100% !important;
  padding: 14px !important;
  background: linear-gradient(135deg, #FBF6E4 0%, #E6C658 20%, #D4AF37 55%, #BE9322 100%) !important;
  border: none !important;
  border-radius: 14px !important;
  color: #08060A !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  cursor: pointer;
  box-shadow: 0 18px 45px -10px rgba(212,175,55,.55), inset 0 1px 0 rgba(255,255,255,.45) !important;
  transition: all .3s ease !important;
  margin-top: 8px !important;
}
.gradient-btn-full:hover {
  transform: translateY(-3px) scale(1.01);
  box-shadow: 0 26px 60px -8px rgba(212,175,55,.7), inset 0 1px 0 rgba(255,255,255,.55) !important;
  color: #08060A !important;
}

/* "Balance $X" header text (Withdraw page) */
.profile.deposit h5 {
  font-family: 'Sora','Inter',sans-serif !important;
  font-size: 28px !important;
  color: #FBF6E4 !important;
  font-weight: 600 !important;
  text-align: center;
}
.profile.deposit h5 .red-text { color: #D4AF37 !important; }
.profile.deposit p { color: #b6a980 !important; font-size: 13px; }

/* Page back arrow */
.bi-arrow-left {
  color: #D4AF37 !important;
  font-size: 18px;
}
