/* ABQARI approved palette: marketing/brand/brand-guidelines.html v1.0.
 * Opt in on ABQARI-owned interfaces only. Never attach to tenant storefronts.
 * Typography, customer palettes and semantic success/error/warning colors stay owned locally.
 */
.abq-admin-shell, .abq-brand-owned {
  --abq-brand-navy-950: #0F1D2E;
  --abq-brand-navy-900: #16293F;
  --abq-brand-navy-800: #1F3A5C;
  --abq-brand-navy-700: #2B4A73;
  --abq-brand-navy-600: #3A5F8F;
  --abq-brand-navy-100: #D9E2EE;
  --abq-brand-navy-50: #EEF3F9;
  --abq-brand-gold-700: #8A6413;
  --abq-brand-gold-600: #C29327;
  --abq-brand-gold-500: #E3B23C;
  --abq-brand-gold-300: #F0CE7E;
  --abq-brand-gold-50: #FBF6E9;
  --abq-brand-primary: var(--abq-brand-navy-800);
  --abq-brand-primary-hover: var(--abq-brand-navy-900);
  --abq-brand-accent: var(--abq-brand-gold-500);
  --abq-brand-ink: #23272B;
  --abq-brand-surface: #FFFFFF;
  --abq-brand-muted: #6B7280;
  --abq-brand-border: #D6DAE0;
  --abq-brand-focus: var(--abq-brand-gold-700);
  --theme-color: var(--abq-brand-primary);
  --primary: 31 58 92;
  --abq-brand-link: var(--abq-brand-primary);
  --abq-navy: var(--abq-brand-primary);
  --abq-gold: var(--abq-brand-accent);
}
/* Correct legacy green active/focus rules on primary actions only. */
:is(.abq-admin-shell, .abq-brand-owned) .btn-primary {
  color: #fff;
  background-color: var(--abq-brand-primary);
  border-color: var(--abq-brand-primary);
}
:is(.abq-admin-shell, .abq-brand-owned) .btn-primary:hover,
:is(.abq-admin-shell, .abq-brand-owned) .btn-primary:not([disabled]):not(.disabled):active,
:is(.abq-admin-shell, .abq-brand-owned) .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: var(--abq-brand-primary-hover);
  border-color: var(--abq-brand-primary-hover);
}
:is(.abq-admin-shell, .abq-brand-owned) .btn-primary:focus,
:is(.abq-admin-shell, .abq-brand-owned) .btn-primary.focus,
:is(.abq-admin-shell, .abq-brand-owned) .btn-outline-primary:focus,
:is(.abq-admin-shell, .abq-brand-owned) .btn-outline-primary.focus {
  box-shadow: 0 0 0 .2rem rgba(31, 58, 92, .25);
  outline: 2px solid var(--abq-brand-focus);
  outline-offset: 2px;
}
:is(.abq-admin-shell, .abq-brand-owned) .btn-outline-primary:not([disabled]):not(.disabled):active,
:is(.abq-admin-shell, .abq-brand-owned) .show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: var(--abq-brand-primary-hover);
  border-color: var(--abq-brand-primary-hover);
  box-shadow: 0 0 0 .2rem rgba(31, 58, 92, .25);
}

/* Central ABQARI public templates opt in at the document root; customer storefronts do not. */
.abq-central-public { --primary: 31 58 92; }
.abq-central-public .btn-primary { color: #fff; background-color: var(--abq-brand-primary); border-color: var(--abq-brand-primary); }
.abq-central-public .btn-primary:hover { background-color: var(--abq-brand-primary-hover); border-color: var(--abq-brand-primary-hover); }
.abq-central-public .btn-primary:focus-visible { outline: 2px solid var(--abq-brand-focus); outline-offset: 2px; }

/* Current routed central home uses readability-r6; old direction candidates are untouched. */
.abq-public-home {
  --navy: var(--abq-brand-primary);
  --deep: var(--abq-brand-navy-950);
  --yellow: var(--abq-brand-accent);
  --ink: var(--abq-brand-primary);
}
.abq-public-home :is(button, a):focus-visible { outline-color: var(--abq-brand-focus); }

/* Platform-owned legacy components: colors only, no layout or behavior changes. */
:is(.abq-admin-shell,.abq-brand-owned) .btn-primary{background-image:none;color:#fff}
:is(.abq-admin-shell,.abq-brand-owned) .btn-outline-primary{color:var(--abq-brand-link);border-color:var(--abq-brand-link)}
:is(.abq-admin-shell,.abq-brand-owned) .btn-outline-primary:hover{color:#fff;background-color:var(--abq-brand-primary);border-color:var(--abq-brand-primary)}
:is(.abq-admin-shell,.abq-brand-owned) .text-primary{color:var(--abq-brand-link)!important}
:is(.abq-admin-shell,.abq-brand-owned) :is(.bg-primary,.badge-primary){color:#fff;background-color:var(--abq-brand-primary)!important}
:is(.abq-admin-shell,.abq-brand-owned) .page-item.active .page-link{color:#fff;background-color:var(--abq-brand-primary);border-color:var(--abq-brand-primary)}
:is(.abq-admin-shell,.abq-brand-owned) :is(.btn-link,.page-link){color:var(--abq-brand-link)}
:is(.abq-admin-shell,.abq-brand-owned) :is(a,button,summary):focus-visible{outline:2px solid var(--abq-brand-focus);outline-offset:2px}
:is(.abq-admin-shell,.abq-brand-owned) .form-control:not(.is-invalid):not(.is-valid):not([aria-invalid=true]):focus{border-color:var(--abq-brand-focus);box-shadow:0 0 0 .2rem rgba(138,100,19,.18)}
:is(.abq-admin-shell,.abq-brand-owned).dark-mode{--abq-brand-link:var(--abq-brand-accent);--abq-brand-focus:var(--abq-brand-accent)}
:is(.abq-admin-shell,.abq-brand-owned).dark-mode .page-item.active .page-link{color:#fff}

/* Sales POS uses top-head; Restaurant POS uses backend main without admin layout. */
.abq-pos-owned .btn-primary:focus{color:#fff}
.abq-pos-owned :is(.btn-primary,.btn-outline-primary):focus-visible{outline-color:var(--abq-brand-focus)}
.abq-pos-owned a:not(.btn):not(.dropdown-item):not(.nav-link):hover{color:var(--abq-brand-link)}
.abq-pos-owned #abq-pay-more:hover{border-color:var(--abq-brand-link)}

/* Navigation/action accents, retaining every status class and merchant setting. */
.abq-admin-shell nav.side-navbar .abq-nav>li>a.active{background:var(--abq-brand-primary)!important;color:#fff!important}
.abq-admin-shell nav.side-navbar .abq-nav>li>a.active i{color:var(--abq-brand-accent)!important}
.abq-admin-shell nav.side-navbar .abq-nav details a.active{background:var(--abq-brand-navy-50)!important;color:var(--abq-brand-primary)!important}
.abq-admin-shell :is(.abq-activity-quote button,.abq-workspace-search){background:var(--abq-brand-primary);color:#fff}
.abq-admin-shell :is(.abq-activity-option-link[aria-current=true],.abq-activity-options button[aria-current]){background:var(--abq-brand-gold-50);color:var(--abq-brand-primary)}
.abq-admin-shell .abq-fb .abq-fb-primary:hover{background:var(--abq-brand-primary-hover)}
.abq-admin-shell.dark-mode .abq-fb .abq-fb-primary{background:var(--abq-brand-accent);border-color:var(--abq-brand-accent);color:var(--abq-brand-primary)}
.abq-admin-shell.dark-mode .abq-fb .abq-fb-primary:hover{background:var(--abq-brand-gold-300)}

/* Auth artwork is replaced only on explicit platform scopes, never on storefronts. */
.abq-platform-auth a:not(.btn):not(.dropdown-item){color:var(--abq-brand-link)}
.abq-platform-auth .btn-primary{background:var(--abq-brand-primary);color:#fff}
.abq-platform-auth .btn-primary:hover{background:var(--abq-brand-primary-hover);color:#fff}
.abq-platform-auth .promo-side{background-image:linear-gradient(135deg,var(--abq-brand-navy-950),var(--abq-brand-primary))!important;color:#fff}
.abq-platform-auth .promo-side a{color:#fff}
.abq-platform-auth .abq-orb{background:rgba(227,178,60,.45)!important}
.abq-platform-auth :is(.abq-gold,.abq-stat-num){color:var(--abq-brand-accent)}
.abq-platform-auth .form-control:not(.is-invalid):not(.is-valid):not([aria-invalid=true]):focus{border-color:var(--abq-brand-focus)}
.abq-central-public .form-input:focus{border-color:var(--abq-brand-primary)!important;box-shadow:0 0 0 3px rgba(227,178,60,.35)!important}
.abq-central-public :is(a,button):focus-visible{outline-color:var(--abq-brand-focus)!important}

/* Independent landlord and affiliate layouts explicitly opt in. */
.abq-affiliate-shell :is(.aff-navbar,.aff-hero){background:linear-gradient(135deg,var(--abq-brand-navy-950),var(--abq-brand-primary));color:#fff}
.abq-affiliate-shell .aff-mobile-nav{background:var(--abq-brand-primary)}
:is(.abq-affiliate-shell,.abq-central-admin) .bg-light-purple{background:var(--abq-brand-navy-50);color:var(--abq-brand-primary)}
:is(.abq-affiliate-shell,.abq-central-admin) .bg-light-gold{background:var(--abq-brand-gold-50);color:var(--abq-brand-gold-700)}

/* Decorative primary accents in existing platform tools, not state colors. */
.abq-admin-shell .dashboard-widget .bg-light-purple{background:var(--abq-brand-navy-50);color:var(--abq-brand-primary)}
.abq-admin-shell .dashboard-widget .bg-light-gold{background:var(--abq-brand-gold-50);color:var(--abq-brand-gold-700)}
.abq-central-admin .fa-hover i{color:var(--abq-brand-link)}
.abq-central-admin .affiliate-avatar{background:linear-gradient(135deg,var(--abq-brand-navy-950),var(--abq-brand-primary))}
.abq-admin-shell .custom-control-input:checked~.custom-control-label::before{background-color:var(--abq-brand-primary);border-color:var(--abq-brand-primary)}
.abq-admin-shell .pd-modal-header{background:linear-gradient(135deg,var(--abq-brand-navy-950),var(--abq-brand-primary))}
.abq-admin-shell .pd-product-code{background:var(--abq-brand-navy-50);color:var(--abq-brand-primary)}
.abq-admin-shell .pd-info-card:not([class*="accent-"])::before,.abq-admin-shell .pd-info-card.accent-blue::before{background:linear-gradient(180deg,var(--abq-brand-primary),var(--abq-brand-navy-700))}
.abq-admin-shell .pd-description-box{border-inline-start-color:var(--abq-brand-primary);border-left-color:var(--abq-brand-primary)}
.abq-admin-shell .pd-section-title{color:var(--abq-brand-link)}
.abq-admin-shell .pd-section-title .pd-section-icon:not(.green):not(.orange){background:var(--abq-brand-primary);color:#fff}
.abq-admin-shell :is(.ai-message-user .ai-bubble,.ai-composer-btn){background:var(--abq-brand-primary);color:#fff}
.abq-admin-shell .ai-composer-btn:hover:not(:disabled){background:var(--abq-brand-primary-hover)}
.abq-admin-shell .ai-composer-textarea:focus{border-color:var(--abq-brand-focus);box-shadow:0 0 0 .2rem rgba(138,100,19,.18)}
.abq-admin-shell .ai-suggestion-btn:hover{border-color:var(--abq-brand-primary);background:var(--abq-brand-navy-50);color:var(--abq-brand-primary)}
.abq-admin-shell .ai-spinner{border-top-color:var(--abq-brand-primary)}
.abq-platform-auth body.dark-mode{--abq-brand-link:var(--abq-brand-accent);--abq-brand-focus:var(--abq-brand-accent)}

/* Selected POS controls remain outlined, with readable dark-mode brand contrast. */
:is(.abq-admin-shell,.abq-brand-owned).dark-mode .btn-primary.active{color:var(--abq-brand-link)!important;border-color:var(--abq-brand-link)!important}
.abq-pos-owned.dark-mode a:not(.btn):not(.dropdown-item):not(.nav-link){color:var(--abq-brand-link)}
.abq-pos-owned.dark-mode .navbar .nav-link{color:var(--abq-brand-link)}

/* Shared gold selection tints follow the same approved scale. */
.abq-admin-shell :is(.abq-activity-option-link:hover,.abq-activity-options button:hover,.abq-workspace-card nav a:first-child,.abq-fb-count){background:var(--abq-brand-gold-50);color:var(--abq-brand-gold-700)}
.abq-admin-shell.dark-mode :is(.abq-activity-option-link:hover,.abq-activity-options button:hover){background:var(--abq-brand-navy-700);color:#fff}
