/* ALLANDRICH HOME MASTER THEME
   Final source of truth for public, authentication, user, advertiser,
   publisher and admin interfaces. Loaded after every legacy stylesheet. */
:root{
  --ar-home-black:#050505;
  --ar-home-black-soft:#0b0b0c;
  --ar-home-card:#111113;
  --ar-home-card-2:#18181b;
  --ar-home-gold:#f4c84a;
  --ar-home-gold-bright:#ffd966;
  --ar-home-gold-dark:#9d7218;
  --ar-home-white:#f8fafc;
  --ar-home-muted:#aeb3bf;
  --ar-home-border:rgba(244,200,74,.42);
  --ar-home-border-soft:rgba(244,200,74,.20);
  --qtp-primary:#f4c84a;
  --qtp-primary-light:#ffd966;
  --qtp-primary-dark:#9d7218;
  --qtp-primary-rgb:244,200,74;
  --qtp-body-bg:#050505;
  --qtp-card-bg:#111113;
  --qtp-border:rgba(244,200,74,.22);
  --qtp-text:#f8fafc;
  --qtp-text-muted:#aeb3bf;
  --qtp-dark:#050505;
  --qtp-dark-light:#111113;
  --qtp-sidebar:#050505;
  --qtp-sidebar-hover:#15130d;
  --qtp-sidebar-active:linear-gradient(135deg,#2a210c,#0a0a0a);
}
html,body{background:#050505!important;color:#f8fafc!important;color-scheme:dark}
body,.app-wrapper,.app-main,.app-content,main,.content-wrapper,.page-wrapper{background:#050505!important}
body{font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif!important}
::selection{background:var(--ar-home-gold);color:#050505}
::-webkit-scrollbar-thumb{background:#6e571c!important}
::-webkit-scrollbar-thumb:hover{background:var(--ar-home-gold)!important}

/* Shared shell */
.app-sidebar,.app-topbar,.public-navbar,.app-footer,.public-footer,.qe-navbar{
  background:linear-gradient(180deg,#0c0c0d,#050505)!important;
  color:#fff!important;border-color:var(--ar-home-border-soft)!important
}
.app-sidebar{border-right:1px solid var(--ar-home-border-soft)!important}
.app-topbar,.public-navbar{border-bottom:1px solid var(--ar-home-border-soft)!important}
.sidebar-brand,.sidebar-footer{border-color:var(--ar-home-border-soft)!important}
.brand-icon,.topbar-avatar{background:#0a0a0a!important;color:var(--ar-home-gold)!important;border:1px solid var(--ar-home-border)!important;box-shadow:0 0 22px rgba(244,200,74,.12)!important}
.nav-section{color:var(--ar-home-gold)!important;font-weight:800!important;letter-spacing:.09em!important}
.sidebar-nav .nav-link,.public-navbar .nav-link{color:#e4e4e7!important;border:1px solid transparent!important;border-radius:12px!important}
.sidebar-nav .nav-link:hover,.public-navbar .nav-link:hover{background:#11100c!important;color:var(--ar-home-gold)!important;border-color:var(--ar-home-border-soft)!important}
.sidebar-nav .nav-link.active,.public-navbar .nav-link.active{
  background:#0a0a0a!important;color:var(--ar-home-gold-bright)!important;
  border:1px solid var(--ar-home-gold)!important;box-shadow:0 0 0 1px rgba(244,200,74,.08),0 10px 28px rgba(0,0,0,.35)!important;font-weight:850!important
}
.sidebar-nav .nav-link.active i,.public-navbar .nav-link.active i{color:var(--ar-home-gold)!important}

/* Typography */
h1,h2,h3,h4,h5,h6,.page-title,.card-title,.modal-title,strong,.fw-bold{color:#fff!important}
p,.text-muted,.form-text,small,.small{color:var(--ar-home-muted)!important;opacity:1!important}
a:not(.btn):not(.nav-link):not(.dropdown-item):not([class*="btn"]):not([class*="button"]):not([role="button"]){color:var(--ar-home-gold)!important}
a:not(.btn):not(.nav-link):not(.dropdown-item):not([class*="btn"]):not([class*="button"]):not([role="button"]):hover{color:var(--ar-home-gold-bright)!important}
.text-primary,.text-warning,.gold-text,.stat-value,.metric-value{color:var(--ar-home-gold)!important}

/* Cards and panels */
.card,.stat-card,.metric-card,.dashboard-card,.panel,.widget,.modal-content,.offcanvas,.dropdown-menu,
.list-group-item,.accordion-item,.queue-panel,.reward-panel,.filter-card,.admin-v2-card,.admin-v2-data-card,
.qe-queue-col,.qe-panel,.qe-card,.auth-card{
  background:linear-gradient(180deg,rgba(22,22,24,.98),rgba(7,7,8,.99))!important;
  color:#fff!important;border:1px solid var(--ar-home-border-soft)!important;border-radius:18px!important;
  box-shadow:0 18px 48px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.025)!important
}
.card:hover,.stat-card:hover,.metric-card:hover,.dashboard-card:hover{border-color:var(--ar-home-border)!important}
.card-header,.card-footer,.modal-header,.modal-footer,.accordion-button,.queue-panel-head,.reward-panel-header{
  background:linear-gradient(180deg,rgba(40,31,10,.80),rgba(10,10,11,.96))!important;
  color:var(--ar-home-gold)!important;border-color:var(--ar-home-border-soft)!important
}
.bg-white,.bg-light,.bg-body,.bg-body-tertiary,.table-light{background:#111113!important;color:#fff!important}
.border,.border-top,.border-bottom,.border-start,.border-end{border-color:var(--ar-home-border-soft)!important}

/* Buttons: requested brand control — black background, gold border, white/gold text */
.btn,button,input[type="submit"],input[type="button"],input[type="reset"],a.btn{
  border-radius:999px!important;font-weight:800!important;transition:.18s ease!important
}
.btn-primary,.btn-warning,.btn-light,.btn-dark,.btn-secondary,.btn-outline-primary,.btn-outline-warning,
.btn-outline-light,.btn-outline-secondary,.btn-outline-dark,.btn-info,.btn-outline-info,.allandrich-btn,
button[type="submit"]:not(.btn-danger):not(.btn-success),input[type="submit"]{
  background:#080808!important;color:var(--ar-home-gold)!important;
  border:1px solid var(--ar-home-gold)!important;box-shadow:none!important
}
.btn-primary *,.btn-warning *,.btn-light *,.btn-dark *,.btn-secondary *,.btn-outline-primary *,
.btn-outline-warning *,.btn-outline-light *,.btn-outline-secondary *,.allandrich-btn *{color:inherit!important}
.btn-primary:hover,.btn-warning:hover,.btn-light:hover,.btn-dark:hover,.btn-secondary:hover,
.btn-outline-primary:hover,.btn-outline-warning:hover,.btn-outline-light:hover,.btn-outline-secondary:hover,
.btn-outline-dark:hover,.btn-info:hover,.btn-outline-info:hover,.allandrich-btn:hover,
button[type="submit"]:not(.btn-danger):not(.btn-success):hover,input[type="submit"]:hover{
  background:var(--ar-home-gold)!important;color:#050505!important;border-color:var(--ar-home-gold-bright)!important;
  transform:translateY(-1px)!important;box-shadow:0 10px 28px rgba(244,200,74,.16)!important
}
.btn-success{background:#0b1d12!important;color:#9cf2b8!important;border-color:#2b8a4b!important}
.btn-success:hover{background:#198754!important;color:#fff!important}
.btn-danger,.btn-outline-danger{background:#1c090b!important;color:#ffadb4!important;border-color:#a93643!important}
.btn-danger:hover,.btn-outline-danger:hover{background:#b02a37!important;color:#fff!important}
.btn:disabled,button:disabled,input:disabled{opacity:.52!important;transform:none!important;box-shadow:none!important}

/* Forms */
.form-control,.form-select,.input-group-text,textarea,input:not([type="checkbox"]):not([type="radio"]),select{
  background:#0b0b0d!important;color:#fff!important;border:1px solid var(--ar-home-border-soft)!important;border-radius:12px!important
}
.form-control:focus,.form-select:focus,textarea:focus,input:focus,select:focus{
  background:#0d0d0f!important;color:#fff!important;border-color:var(--ar-home-gold)!important;
  box-shadow:0 0 0 .2rem rgba(244,200,74,.12)!important
}
.form-control::placeholder,textarea::placeholder,input::placeholder{color:#777d89!important}
.form-label,label{color:#f5f5f5!important}
.form-check-input{background:#090909!important;border-color:var(--ar-home-gold-dark)!important}
.form-check-input:checked{background-color:var(--ar-home-gold)!important;border-color:var(--ar-home-gold)!important}

/* Tables */
.table-responsive,.table-wrap,.admin-v2-table-wrap{background:#070708!important;border:1px solid var(--ar-home-border-soft)!important;border-radius:16px!important}
table,.table{--bs-table-bg:#09090a!important;--bs-table-color:#fff!important;--bs-table-striped-bg:#111113!important;--bs-table-hover-bg:#1b170d!important;--bs-table-border-color:rgba(244,200,74,.15)!important;color:#fff!important}
table thead th,.table thead th{background:linear-gradient(180deg,#2a210b,#0c0c0d)!important;color:var(--ar-home-gold)!important;border-color:var(--ar-home-border-soft)!important}
table td,table th,.table td,.table th{color:#fff!important;border-color:rgba(244,200,74,.13)!important}

/* Tabs, badges, progress */
.nav-tabs,.nav-pills{border-color:var(--ar-home-border-soft)!important}
.nav-tabs .nav-link,.nav-pills .nav-link{background:#080808!important;color:#d5d5d8!important;border:1px solid var(--ar-home-border-soft)!important}
.nav-tabs .nav-link.active,.nav-pills .nav-link.active{background:#080808!important;color:var(--ar-home-gold)!important;border-color:var(--ar-home-gold)!important;box-shadow:0 0 16px rgba(244,200,74,.10)!important}
.badge.bg-primary,.badge.bg-warning,.badge.bg-light{background:#0a0a0a!important;color:var(--ar-home-gold)!important;border:1px solid var(--ar-home-border)!important}
.progress,.queue-progress,.qe-queue-progress{background:#202023!important;border:1px solid rgba(244,200,74,.12)!important}
.progress-bar,.queue-progress-fill,.qe-queue-progress-bar{background:linear-gradient(90deg,var(--ar-home-gold-dark),var(--ar-home-gold-bright))!important;color:#050505!important}

/* Modals/dropdowns/pagination */
.dropdown-item{color:#f3f4f6!important}
.dropdown-item:hover,.dropdown-item.active{background:#18140b!important;color:var(--ar-home-gold)!important}
.page-link{background:#080808!important;color:var(--ar-home-gold)!important;border-color:var(--ar-home-border-soft)!important}
.page-item.active .page-link,.page-link:hover{background:#151109!important;color:var(--ar-home-gold-bright)!important;border-color:var(--ar-home-gold)!important}

/* Semantic alerts retain meaning */
.alert-info{background:#0c151c!important;color:#cde8ff!important;border-color:#285b7a!important}
.alert-success{background:#0a1d11!important;color:#b8f7cd!important;border-color:#287447!important}
.alert-warning{background:#211a08!important;color:#ffe8a1!important;border-color:#86691d!important}
.alert-danger{background:#250b0e!important;color:#ffc3c8!important;border-color:#90323d!important}

/* Authentication */
body.bg-light{background:radial-gradient(circle at 50% 0,rgba(244,200,74,.10),transparent 38%),#050505!important}
body.bg-light .container>.row{min-height:80vh;align-items:center}

/* Public queue engine legacy components */
.qe-stats-bar,.hero-section{background:radial-gradient(circle at 18% 20%,rgba(244,200,74,.16),transparent 36%),linear-gradient(135deg,#050505,#16130b)!important}
.qe-ticket{background:#0d0d0f!important;color:#fff!important;border-color:rgba(244,200,74,.12)!important}
.qe-ticket:hover{border-color:var(--ar-home-border)!important;background:#15130d!important}
.qe-queue-progress{background:#202023!important}

@media(max-width:767.98px){
  .card,.stat-card,.metric-card,.dashboard-card{border-radius:15px!important}
  .btn,button{min-height:42px}
}

/* =====================================================================
   FILLED GOLD CONTROL TEXT LOCK — GLOBAL FULL-LOAD/CACHE-SAFE FIX
   Keeps text and nested icons black whenever a control uses the filled
   ALLANDRICH gold treatment. This block intentionally loads last.
   ===================================================================== */
:where(
  .btn-primary,
  .btn-warning,
  .btn-gold,
  .package-buy-btn,
  .queue-action-btn,
  .qac-primary,
  .export-btn,
  .rt-btn,
  .support-page .btn-gold,
  .support-admin .btn-gold,
  .rlg .btn-gold,
  .ar-btn.primary
),
:where(
  .btn-primary,
  .btn-warning,
  .btn-gold,
  .package-buy-btn,
  .queue-action-btn,
  .qac-primary,
  .export-btn,
  .rt-btn,
  .support-page .btn-gold,
  .support-admin .btn-gold,
  .rlg .btn-gold,
  .ar-btn.primary
):link,
:where(
  .btn-primary,
  .btn-warning,
  .btn-gold,
  .package-buy-btn,
  .queue-action-btn,
  .qac-primary,
  .export-btn,
  .rt-btn,
  .support-page .btn-gold,
  .support-admin .btn-gold,
  .rlg .btn-gold,
  .ar-btn.primary
):visited,
:where(
  .btn-primary,
  .btn-warning,
  .btn-gold,
  .package-buy-btn,
  .queue-action-btn,
  .qac-primary,
  .export-btn,
  .rt-btn,
  .support-page .btn-gold,
  .support-admin .btn-gold,
  .rlg .btn-gold,
  .ar-btn.primary
):hover,
:where(
  .btn-primary,
  .btn-warning,
  .btn-gold,
  .package-buy-btn,
  .queue-action-btn,
  .qac-primary,
  .export-btn,
  .rt-btn,
  .support-page .btn-gold,
  .support-admin .btn-gold,
  .rlg .btn-gold,
  .ar-btn.primary
):focus,
:where(
  .btn-primary,
  .btn-warning,
  .btn-gold,
  .package-buy-btn,
  .queue-action-btn,
  .qac-primary,
  .export-btn,
  .rt-btn,
  .support-page .btn-gold,
  .support-admin .btn-gold,
  .rlg .btn-gold,
  .ar-btn.primary
):focus-visible,
:where(
  .btn-primary,
  .btn-warning,
  .btn-gold,
  .package-buy-btn,
  .queue-action-btn,
  .qac-primary,
  .export-btn,
  .rt-btn,
  .support-page .btn-gold,
  .support-admin .btn-gold,
  .rlg .btn-gold,
  .ar-btn.primary
):active {
  color:#050505!important;
  -webkit-text-fill-color:#050505!important;
}

:where(
  .btn-primary,
  .btn-warning,
  .btn-gold,
  .package-buy-btn,
  .queue-action-btn,
  .qac-primary,
  .export-btn,
  .rt-btn,
  .support-page .btn-gold,
  .support-admin .btn-gold,
  .rlg .btn-gold,
  .ar-btn.primary
) :where(i,svg,span,strong,b,small) {
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}

/* Bootstrap can apply text utility colors to nested icons after page load. */
:where(.btn-primary,.btn-warning,.btn-gold,.qac-primary,.package-buy-btn,.queue-action-btn)
:where(.text-primary,.text-warning,.text-light,.text-white,.gold-text) {
  color:#050505!important;
  -webkit-text-fill-color:#050505!important;
}
