/* ALLANDRICH global black, gold and white theme.
   Home-page visual language applied across public, user and admin interfaces. */
:root{
  --ar-black:#050505;
  --ar-black-2:#0b0b0c;
  --ar-surface:#111113;
  --ar-surface-2:#18181b;
  --ar-gold:#ffd35a;
  --ar-gold-2:#f0a91f;
  --ar-gold-dark:#9d6812;
  --ar-white:#f8fafc;
  --ar-muted:#b8bcc6;
  --ar-line:rgba(255,211,90,.22);
  --ar-soft-line:rgba(255,255,255,.08);
}
html,body{background:var(--ar-black)!important;color:var(--ar-white)!important}
body,.app-wrapper,.app-main,.app-content,main{background-color:var(--ar-black)!important}
body{font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif}
a{color:var(--ar-gold)}
a:hover{color:#ffe487}

/* Navigation and layout */
.app-sidebar,.public-navbar,.app-topbar,.app-footer,.public-footer{
  background:linear-gradient(180deg,#0d0d0f,#050505)!important;
  border-color:var(--ar-line)!important;
  color:var(--ar-white)!important;
}
.sidebar-brand,.allandrich-sidebar-brand{border-color:var(--ar-line)!important}
.sidebar-brand strong,.brand-copy strong,.navbar-brand strong,.page-title{color:var(--ar-white)!important}
.sidebar-brand small,.brand-copy small{color:var(--ar-muted)!important}
.nav-section{color:var(--ar-gold)!important;letter-spacing:.08em;font-weight:800}
.sidebar-nav .nav-link,.public-navbar .nav-link{color:#e5e7eb!important;border:1px solid transparent}
.sidebar-nav .nav-link:hover,.public-navbar .nav-link:hover{color:var(--ar-gold)!important;background:rgba(255,211,90,.06)!important;border-color:rgba(255,211,90,.14)!important}
.sidebar-nav .nav-link.active,.public-navbar .nav-link.active{
  color:#070707!important;background:linear-gradient(135deg,var(--ar-gold),var(--ar-gold-2))!important;
  border-color:var(--ar-gold)!important;box-shadow:0 10px 24px rgba(240,169,31,.18)!important;font-weight:900!important
}
.sidebar-nav .nav-link.active i,.public-navbar .nav-link.active i{color:#070707!important}
.topbar-icon-btn,.sidebar-toggle{color:var(--ar-gold)!important;border-color:var(--ar-line)!important;background:#0b0b0c!important}
.topbar-avatar{background:linear-gradient(135deg,var(--ar-gold),var(--ar-gold-2))!important;color:#070707!important}

/* Primary actions: mandatory gold background + black text */
.btn-primary,.btn-warning,.allandrich-btn-gold,
button[type="submit"]:not(.btn-danger):not(.btn-secondary):not(.btn-outline-secondary):not(.btn-outline-danger):not(.btn-success),
input[type="submit"]{
  background:linear-gradient(135deg,var(--ar-gold),var(--ar-gold-2))!important;
  color:#070707!important;border-color:var(--ar-gold)!important;font-weight:900!important;
  box-shadow:0 8px 20px rgba(240,169,31,.18)!important
}
.btn-primary *, .btn-warning *, .allandrich-btn-gold *, button[type="submit"]:not(.btn-danger):not(.btn-secondary):not(.btn-outline-secondary):not(.btn-outline-danger):not(.btn-success) *{color:#070707!important}
.btn-primary:hover,.btn-primary:focus,.btn-warning:hover,.btn-warning:focus,.allandrich-btn-gold:hover,.allandrich-btn-gold:focus,
button[type="submit"]:not(.btn-danger):not(.btn-secondary):not(.btn-outline-secondary):not(.btn-outline-danger):not(.btn-success):hover{
  background:linear-gradient(135deg,#ffe484,var(--ar-gold))!important;color:#000!important;border-color:#ffe484!important;transform:translateY(-1px)
}
.btn-primary:disabled,.btn-warning:disabled,button[type="submit"]:disabled{background:#777!important;color:#171717!important;border-color:#777!important;box-shadow:none!important}
.btn-outline-primary,.btn-outline-warning,.allandrich-btn-outline,.btn-outline-light{
  background:#080808!important;color:var(--ar-gold)!important;border-color:var(--ar-gold)!important;font-weight:800!important
}
.btn-outline-primary:hover,.btn-outline-warning:hover,.allandrich-btn-outline:hover,.btn-outline-light:hover{
  background:var(--ar-gold)!important;color:#070707!important;border-color:var(--ar-gold)!important
}
.btn-outline-primary:hover *, .btn-outline-warning:hover *, .allandrich-btn-outline:hover *, .btn-outline-light:hover *{color:#070707!important}
.btn-secondary,.btn-dark{background:#111!important;color:var(--ar-white)!important;border-color:#3a3a3a!important}

/* Cards, panels and dropdowns */
.card,.stat-card,.dashboard-card,.metric-card,.panel,.widget,.modal-content,.dropdown-menu,.offcanvas,.list-group-item,.accordion-item{
  background:linear-gradient(180deg,rgba(24,24,27,.98),rgba(8,8,9,.98))!important;
  color:var(--ar-white)!important;border-color:var(--ar-line)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.035)!important
}
.card-header,.card-footer,.modal-header,.modal-footer,.accordion-button{
  background:linear-gradient(180deg,rgba(45,34,10,.96),rgba(14,14,15,.96))!important;
  color:var(--ar-gold)!important;border-color:var(--ar-line)!important
}
.dropdown-item{color:var(--ar-white)!important}
.dropdown-item:hover,.dropdown-item:focus,.dropdown-item.active{background:rgba(255,211,90,.12)!important;color:var(--ar-gold)!important}
hr,.dropdown-divider{border-color:var(--ar-line)!important;opacity:1}

/* Text */
h1,h2,h3,h4,h5,h6,.card-title,.modal-title,.accordion-button{color:var(--ar-white)!important}
.text-muted,.form-text,small,.small{color:var(--ar-muted)!important;opacity:1!important}
.text-primary,.text-warning,.gold-text,.stat-value,.metric-value{color:var(--ar-gold)!important}

/* Forms */
.form-control,.form-select,.input-group-text,textarea,.form-check-input{
  background:#0d0d0f!important;color:var(--ar-white)!important;border-color:rgba(255,211,90,.28)!important
}
.form-control:focus,.form-select:focus,textarea:focus,.form-check-input:focus{
  background:#101012!important;color:#fff!important;border-color:var(--ar-gold)!important;box-shadow:0 0 0 .22rem rgba(255,211,90,.14)!important
}
.form-control::placeholder,textarea::placeholder{color:#7f8490!important}
.form-label,label{color:#f3f4f6!important}
.form-check-input:checked{background-color:var(--ar-gold)!important;border-color:var(--ar-gold)!important}
.form-check-input:checked[type="checkbox"]{--bs-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}

/* Tables */
.table-responsive{background:#070707!important;border:1px solid var(--ar-line)!important;border-radius:16px!important}
table,.table{color:var(--ar-white)!important;--bs-table-bg:#09090a!important;--bs-table-color:var(--ar-white)!important;--bs-table-striped-bg:#111113!important;--bs-table-hover-bg:rgba(255,211,90,.07)!important;--bs-table-border-color:rgba(255,211,90,.13)!important}
table thead th,.table thead th{background:linear-gradient(180deg,#2b2109,#11100b)!important;color:var(--ar-gold)!important;border-color:var(--ar-line)!important}
table td,table th,.table td,.table th{color:var(--ar-white)!important;border-color:rgba(255,211,90,.13)!important;background-color:transparent!important}

/* Badges, progress, pagination */
.badge.bg-primary,.badge.bg-warning{background:var(--ar-gold)!important;color:#070707!important}
.progress{background:#262626!important;border:1px solid rgba(255,211,90,.12)!important}
.progress-bar{background:linear-gradient(90deg,var(--ar-gold-dark),var(--ar-gold))!important;color:#070707!important;font-weight:900!important}
.page-link{background:#0b0b0c!important;color:var(--ar-gold)!important;border-color:var(--ar-line)!important}
.page-item.active .page-link,.page-link:hover{background:var(--ar-gold)!important;color:#070707!important;border-color:var(--ar-gold)!important}

/* Alerts and status colors retain semantic meaning while matching dark theme */
.alert{border-radius:14px!important;border-width:1px!important}
.alert-info{background:#10151a!important;color:#dbeafe!important;border-color:#27506b!important}
.alert-warning{background:#2a2109!important;color:#ffe8a3!important;border-color:#80651a!important}
.alert-success{background:#0c2117!important;color:#c9f7df!important;border-color:#236343!important}
.alert-danger{background:#2a1013!important;color:#ffd4d8!important;border-color:#7c2832!important}

/* Tabs */
.nav-tabs,.nav-pills{border-color:var(--ar-line)!important}
.nav-tabs .nav-link,.nav-pills .nav-link{color:var(--ar-muted)!important}
.nav-tabs .nav-link.active,.nav-pills .nav-link.active{background:var(--ar-gold)!important;color:#070707!important;border-color:var(--ar-gold)!important;font-weight:900!important}

/* Ensure page-level white backgrounds cannot leak through */
.bg-white,.bg-light,.table-light{background-color:var(--ar-surface)!important;color:var(--ar-white)!important}
.border,.border-top,.border-bottom,.border-start,.border-end{border-color:var(--ar-line)!important}

@media (max-width:767.98px){
  .btn{min-height:42px}
  .card{border-radius:16px!important}
}
