/* UNIMERCE global button contrast hardening.
   Keeps storefront, role-login, pricing, public profile, and member portal buttons readable even when older CSS loads before/after Bootstrap. */
:root {
  --um-btn-ink: #17120e;
  --um-btn-ivory: #fffdf8;
  --um-btn-paper: #f7f3ea;
  --um-btn-line: #ded2c3;
  --um-btn-gold: #b88a38;
  --um-btn-gold-dark: #8a6125;
  --um-btn-gold-light: #d9ad56;
}

a.um-btn,
button.um-btn,
.um-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 44px;
  padding: 12px 18px;
  border: 1px solid var(--um-btn-gold);
  border-radius: 999px;
  background: transparent;
  color: var(--um-btn-ink) !important;
  font-weight: 900;
  font-size: 12px;
  letter-spacing: .08em;
  line-height: 1.15;
  text-transform: uppercase;
  text-decoration: none !important;
  cursor: pointer;
  text-shadow: none !important;
  -webkit-text-fill-color: currentColor;
}

a.um-btn:visited,
a.um-btn:active,
a.um-btn:focus,
button.um-btn:focus,
.um-btn:focus {
  color: var(--um-btn-ink) !important;
  text-decoration: none !important;
}

.um-btn.gold,
.um-btn-gold,
.um-btn.um-btn-gold,
.um-btn.gold.full,
.um-btn.um-btn-gold.full,
a.um-btn.gold,
a.um-btn-gold,
button.um-btn.gold,
button.um-btn-gold {
  background: linear-gradient(135deg, var(--um-btn-gold), var(--um-btn-gold-light)) !important;
  border-color: var(--um-btn-gold) !important;
  color: var(--um-btn-ivory) !important;
  -webkit-text-fill-color: var(--um-btn-ivory) !important;
  box-shadow: 0 8px 24px rgba(184, 138, 56, .22);
}

.um-btn.gold:hover,
.um-btn-gold:hover,
.um-btn.um-btn-gold:hover,
.um-btn.gold:focus,
.um-btn-gold:focus,
.um-btn.um-btn-gold:focus,
.um-btn.gold.full:hover,
.um-btn.um-btn-gold.full:hover {
  background: linear-gradient(135deg, #95691f, var(--um-btn-gold)) !important;
  border-color: #95691f !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: 0 10px 28px rgba(149, 105, 31, .28);
}

.um-btn.um-btn-outline-dark,
.um-btn-outline-dark,
a.um-btn.um-btn-outline-dark,
button.um-btn.um-btn-outline-dark {
  background: transparent !important;
  border-color: var(--um-btn-ink) !important;
  color: var(--um-btn-ink) !important;
  -webkit-text-fill-color: var(--um-btn-ink) !important;
  box-shadow: none !important;
}

.um-btn.um-btn-outline-dark:hover,
.um-btn-outline-dark:hover,
.um-btn.um-btn-outline-dark:focus,
.um-btn-outline-dark:focus {
  background: var(--um-btn-ink) !important;
  border-color: var(--um-btn-ink) !important;
  color: var(--um-btn-ivory) !important;
  -webkit-text-fill-color: var(--um-btn-ivory) !important;
}

.um-btn.um-btn-outline,
.um-btn-outline,
a.um-btn.um-btn-outline,
button.um-btn.um-btn-outline,
.um-btn.light,
.um-btn.secondary {
  background: var(--um-btn-ivory) !important;
  border-color: var(--um-btn-line) !important;
  color: var(--um-btn-gold-dark) !important;
  -webkit-text-fill-color: var(--um-btn-gold-dark) !important;
}

.um-btn.um-btn-outline:hover,
.um-btn-outline:hover,
.um-btn.light:hover,
.um-btn.secondary:hover,
.um-btn.um-btn-outline:focus,
.um-btn-outline:focus,
.um-btn.light:focus,
.um-btn.secondary:focus {
  background: var(--um-btn-paper) !important;
  border-color: var(--um-btn-gold) !important;
  color: var(--um-btn-ink) !important;
  -webkit-text-fill-color: var(--um-btn-ink) !important;
}

.um-btn.full,
.um-btn-gold.full,
.um-btn.gold.full {
  width: 100%;
}

.um-btn[disabled],
.um-btn.disabled,
button.um-btn:disabled {
  opacity: .58;
  cursor: not-allowed;
  box-shadow: none !important;
}

@media (max-width: 991.98px) {
  .um-btn.mobile-full,
  .um-auth-form .um-btn,
  .um-role-login-links .um-btn,
  .um-profile-filter-actions .um-btn,
  .merchant-filter-actions .um-btn {
    width: 100%;
  }
}

/* Patch 034: context-aware contrast for outline buttons on dark pricing CTA blocks.
   The generic outline-dark style is dark ink for light backgrounds, but the merchant pricing afterword CTA sits on #17100b. */
.um-pricing-afterword .um-btn.um-btn-outline-dark,
.um-pricing-afterword a.um-btn.um-btn-outline-dark,
.um-pricing-afterword button.um-btn.um-btn-outline-dark,
.um-pricing-afterword .um-btn-outline-dark {
  background: transparent !important;
  border-color: var(--um-btn-gold-light) !important;
  color: var(--um-btn-ivory) !important;
  -webkit-text-fill-color: var(--um-btn-ivory) !important;
  box-shadow: none !important;
}

.um-pricing-afterword .um-btn.um-btn-outline-dark:visited,
.um-pricing-afterword a.um-btn.um-btn-outline-dark:visited,
.um-pricing-afterword .um-btn-outline-dark:visited {
  color: var(--um-btn-ivory) !important;
  -webkit-text-fill-color: var(--um-btn-ivory) !important;
}

.um-pricing-afterword .um-btn.um-btn-outline-dark:hover,
.um-pricing-afterword a.um-btn.um-btn-outline-dark:hover,
.um-pricing-afterword button.um-btn.um-btn-outline-dark:hover,
.um-pricing-afterword .um-btn.um-btn-outline-dark:focus,
.um-pricing-afterword a.um-btn.um-btn-outline-dark:focus,
.um-pricing-afterword button.um-btn.um-btn-outline-dark:focus,
.um-pricing-afterword .um-btn-outline-dark:hover,
.um-pricing-afterword .um-btn-outline-dark:focus {
  background: var(--um-btn-gold-light) !important;
  border-color: var(--um-btn-gold-light) !important;
  color: var(--um-btn-ink) !important;
  -webkit-text-fill-color: var(--um-btn-ink) !important;
  box-shadow: 0 10px 28px rgba(217, 173, 86, .22) !important;
}
