/* Final contrast layer shared by the public website, shop, and admin console. */

/* Public and shop buttons: every dark hover state carries light text. */
.gl-store .btn:hover,
.gl-store .btn:focus-visible {
  background: var(--gl-ink);
  border-color: var(--gl-ink);
  color: #fff;
}

.gl-store .btn-primary:hover,
.gl-store .btn-primary:focus-visible {
  background: var(--gl-purple-dark);
  border-color: var(--gl-purple-dark);
  color: #fff;
}

.gl-store .btn-danger:hover,
.gl-store .btn-danger:focus-visible {
  background: #8a2431;
  border-color: #8a2431;
  color: #fff;
}

.gl-main-site .brand-hero .btn:hover,
.gl-main-site .brand-hero .btn:focus-visible {
  background: var(--page-ink);
  border-color: var(--page-ink);
  color: #fff;
}

.gl-main-site .brand-hero .btn-primary:hover,
.gl-main-site .brand-hero .btn-primary:focus-visible {
  background: var(--page-violet);
  border-color: var(--page-violet);
  color: #fff;
}

.gl-main-site .brand-contact-form .btn:hover,
.gl-main-site .brand-contact-form .btn:focus-visible {
  background: #fff;
  border-color: #fff;
  color: var(--page-violet);
}

.gl-main-site .brand-cta .btn:hover,
.gl-main-site .brand-cta .btn:focus-visible {
  background: var(--page-violet);
  border-color: var(--page-violet);
  color: #fff;
}

.gl-store .btn:focus-visible,
.gl-store a:focus-visible,
.gl-store button:focus-visible {
  outline: 3px solid var(--gl-acid);
  outline-offset: 3px;
}

/* Admin sidebar identity and session controls override the older light theme. */
.gl-admin .admin-sidebar-brand,
.gl-admin .admin-sidebar-brand strong,
.gl-admin .admin-side-user strong {
  color: #fff;
}

.gl-admin .admin-side-user span {
  color: rgba(255,255,255,.76);
}

.gl-admin .admin-logout-btn {
  background: transparent;
  border-color: rgba(255,255,255,.55);
  color: #fff;
}

.gl-admin .admin-logout-btn:hover,
.gl-admin .admin-logout-btn:focus-visible {
  background: var(--a-acid);
  border-color: var(--a-acid);
  color: var(--a-ink);
}

.gl-admin .btn:hover,
.gl-admin .btn:focus-visible,
.gl-admin .admin-preview-link:hover,
.gl-admin .admin-preview-link:focus-visible {
  background: var(--a-ink);
  border-color: var(--a-ink);
  color: #fff;
}

.gl-admin .btn-primary:hover,
.gl-admin .btn-primary:focus-visible {
  background: var(--a-purple-dark);
  border-color: var(--a-purple-dark);
  color: #fff;
}

.gl-admin .btn-danger:hover,
.gl-admin .btn-danger:focus-visible {
  background: #8a2431;
  border-color: #8a2431;
  color: #fff;
}

.gl-admin .editor-savebar .btn:hover,
.gl-admin .editor-savebar .btn:focus-visible {
  background: #fff;
  border-color: #fff;
  color: var(--a-ink);
}

/* Unified GentleLAB purple hero cards across every admin workspace. */
.gl-admin .admin-modern-hero,
.gl-admin .top-spenders-hero {
  background: linear-gradient(135deg, #6845b3 0%, #51328f 52%, #2f1c58 100%);
  color: #fff;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 20px 48px rgba(47,28,88,.22);
}

.gl-admin .admin-modern-hero .section-kicker,
.gl-admin .top-spenders-hero .section-kicker {
  color: var(--a-acid);
}

.gl-admin .admin-modern-hero h1,
.gl-admin .top-spenders-hero h1 {
  color: #fff;
}

.gl-admin .admin-modern-hero p:not(.section-kicker),
.gl-admin .top-spenders-hero p:not(.section-kicker) {
  color: rgba(255,255,255,.82);
}

.gl-admin .admin-modern-hero-icon,
.gl-admin .top-spenders-hero-icon {
  background: rgba(215,255,79,.14);
  border: 1px solid rgba(215,255,79,.24);
}

.gl-admin .admin-modern-hero-icon svg,
.gl-admin .top-spenders-hero-icon svg {
  stroke: #fff;
}

.gl-admin a:focus-visible,
.gl-admin button:focus-visible,
.gl-admin input:focus-visible,
.gl-admin select:focus-visible,
.gl-admin textarea:focus-visible {
  outline: 3px solid var(--a-acid);
  outline-offset: 3px;
}
