/* BroLabz button schemes — single source of truth
 * Rest: soft ring + drop only (NO ambient glow)
 * Hover / :active / :focus-visible: full color glow
 * .is-active (current page): keeps full glow
 */
.btn, a.btn, button.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  box-sizing: border-box;
  min-height: 2.15rem;
  padding: 0 .9rem;
  border-radius: 11px;
  font-weight: 700;
  font-size: .88rem;
  line-height: 1.2;
  border: 1px solid rgba(148,163,184,.38);
  color: #e2e8f0;
  text-decoration: none;
  background: linear-gradient(165deg, rgba(148,163,184,.16), rgba(30,41,59,.5));
  box-shadow: 0 0 0 1px rgba(148,163,184,.08), 0 4px 12px rgba(0,0,0,.2);
  cursor: pointer;
  white-space: nowrap;
  transition: border-color .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease, transform .12s ease;
}
.btn:hover, a.btn:hover, button.btn:hover {
  text-decoration: none;
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(148,163,184,.35), rgba(51,65,85,.65));
  box-shadow: 0 0 0 1px rgba(255,255,255,.15), 0 8px 22px rgba(0,0,0,.3);
  transform: translateY(-1px);
}
.btn:active, a.btn:active, button.btn:active { transform: translateY(0); }

/* Primary — blue CTA */
.btn-primary, a.btn-primary, button.btn-primary {
  border: 0 !important;
  color: #fff !important;
  background: linear-gradient(90deg, #4f8cff, #2563eb) !important;
  box-shadow: 0 4px 14px rgba(79,140,255,.28), 0 0 0 1px rgba(79,140,255,.2) !important;
}
.btn-primary:hover, a.btn-primary:hover, button.btn-primary:hover,
.btn-primary:focus-visible, a.btn-primary:focus-visible {
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.88) !important;
  background: linear-gradient(90deg, #60a5fa, #3b82f6) !important;
  box-shadow: 0 10px 28px rgba(79,140,255,.5), 0 0 28px rgba(79,140,255,.32) !important;
}
.btn-primary.is-active, a.btn-primary.is-active, button.btn-primary.is-active {
  box-shadow: 0 8px 24px rgba(79,140,255,.48), 0 0 26px rgba(79,140,255,.32) !important;
}

/* Always-on — emerald */
.btn-always, a.btn-always, button.btn-always {
  border: 1px solid rgba(52,211,153,.75) !important;
  color: #6ee7b7 !important;
  background: linear-gradient(165deg, rgba(52,211,153,.35), rgba(6,95,70,.14)) !important;
  box-shadow: 0 0 0 1px rgba(52,211,153,.14), 0 4px 12px rgba(52,211,153,.12) !important;
}
.btn-always:hover, a.btn-always:hover, button.btn-always:hover,
.btn-always:focus-visible, a.btn-always:focus-visible,
.btn-always:active, a.btn-always:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(52,211,153,.55), rgba(6,95,70,.28)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(52,211,153,.42), 0 0 28px rgba(52,211,153,.3) !important;
}
.btn-always.is-active, a.btn-always.is-active, button.btn-always.is-active, .nav-cta .btn-always.is-active {
  border-color: rgba(167,243,208,.95) !important;
  color: #ecfdf5 !important;
  background: linear-gradient(165deg, rgba(52,211,153,.48), rgba(6,95,70,.22)) !important;
  box-shadow: 0 0 0 1px rgba(52,211,153,.28), 0 8px 22px rgba(52,211,153,.38), 0 0 26px rgba(52,211,153,.28) !important;
}

/* On-demand — gold */
.btn-ondemand, a.btn-ondemand, button.btn-ondemand {
  border: 1px solid rgba(212,168,75,.75) !important;
  color: #fcd34d !important;
  background: linear-gradient(165deg, rgba(212,168,75,.35), rgba(180,83,9,.14)) !important;
  box-shadow: 0 0 0 1px rgba(212,168,75,.14), 0 4px 12px rgba(212,168,75,.12) !important;
}
.btn-ondemand:hover, a.btn-ondemand:hover, button.btn-ondemand:hover,
.btn-ondemand:focus-visible, a.btn-ondemand:focus-visible,
.btn-ondemand:active, a.btn-ondemand:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(212,168,75,.55), rgba(180,83,9,.28)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(212,168,75,.42), 0 0 28px rgba(212,168,75,.3) !important;
}
.btn-ondemand.is-active, a.btn-ondemand.is-active, button.btn-ondemand.is-active, .nav-cta .btn-ondemand.is-active {
  border-color: rgba(253,230,138,.95) !important;
  color: #fff8e7 !important;
  background: linear-gradient(165deg, rgba(212,168,75,.48), rgba(180,83,9,.22)) !important;
  box-shadow: 0 0 0 1px rgba(212,168,75,.28), 0 8px 22px rgba(212,168,75,.38), 0 0 26px rgba(212,168,75,.28) !important;
}

/* Custom — rose/pink (site schema: rest → white border + glow on hover/active) */
.btn-custom, a.btn-custom, button.btn-custom {
  border: 1px solid rgba(244,114,182,.75) !important;
  color: #f9a8d4 !important;
  background: linear-gradient(165deg, rgba(244,114,182,.32), rgba(157,23,77,.14)) !important;
  box-shadow: 0 0 0 1px rgba(244,114,182,.14), 0 4px 12px rgba(244,114,182,.12) !important;
}
.btn-custom:hover, a.btn-custom:hover, button.btn-custom:hover,
.btn-custom:focus-visible, a.btn-custom:focus-visible,
.btn-custom:active, a.btn-custom:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(244,114,182,.55), rgba(157,23,77,.3)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(244,114,182,.42), 0 0 28px rgba(244,114,182,.3) !important;
}
.btn-custom.is-active, a.btn-custom.is-active, button.btn-custom.is-active, .nav-cta .btn-custom.is-active {
  border-color: rgba(251,207,232,.95) !important;
  color: #fdf2f8 !important;
  background: linear-gradient(165deg, rgba(244,114,182,.48), rgba(157,23,77,.22)) !important;
  box-shadow: 0 0 0 1px rgba(244,114,182,.28), 0 8px 22px rgba(244,114,182,.38), 0 0 26px rgba(244,114,182,.28) !important;
}

/* Rock the vote — violet */
.btn-vote, a.btn-vote, button.btn-vote {
  border: 1px solid rgba(167,139,250,.7) !important;
  color: #ddd6fe !important;
  background: linear-gradient(165deg, rgba(139,92,246,.32), rgba(88,28,135,.16)) !important;
  box-shadow: 0 0 0 1px rgba(139,92,246,.14), 0 4px 12px rgba(139,92,246,.12) !important;
}
.btn-vote:hover, a.btn-vote:hover, button.btn-vote:hover,
.btn-vote:focus-visible, a.btn-vote:focus-visible,
.btn-vote:active, a.btn-vote:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(139,92,246,.5), rgba(88,28,135,.28)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(139,92,246,.42), 0 0 28px rgba(139,92,246,.3) !important;
}
.btn-vote.is-active, a.btn-vote.is-active, button.btn-vote.is-active, .nav-cta .btn-vote.is-active {
  border-color: rgba(221,214,254,.95) !important;
  color: #f5f3ff !important;
  background: linear-gradient(165deg, rgba(139,92,246,.48), rgba(88,28,135,.24)) !important;
  box-shadow: 0 0 0 1px rgba(139,92,246,.28), 0 8px 22px rgba(139,92,246,.38), 0 0 26px rgba(139,92,246,.28) !important;
}

/* Games & join — cyan */
.btn-join, a.btn-join, button.btn-join {
  border: 1px solid rgba(34,211,238,.7) !important;
  color: #67e8f9 !important;
  background: linear-gradient(165deg, rgba(34,211,238,.32), rgba(8,145,178,.16)) !important;
  box-shadow: 0 0 0 1px rgba(34,211,238,.14), 0 4px 12px rgba(34,211,238,.12) !important;
}
.btn-join:hover, a.btn-join:hover, button.btn-join:hover,
.btn-join:focus-visible, a.btn-join:focus-visible,
.btn-join:active, a.btn-join:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(34,211,238,.52), rgba(8,145,178,.28)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(34,211,238,.42), 0 0 28px rgba(34,211,238,.3) !important;
}
.btn-join.is-active, a.btn-join.is-active, button.btn-join.is-active, .nav-cta .btn-join.is-active {
  border-color: rgba(165,243,252,.95) !important;
  color: #ecfeff !important;
  background: linear-gradient(165deg, rgba(34,211,238,.45), rgba(8,145,178,.22)) !important;
  box-shadow: 0 0 0 1px rgba(34,211,238,.28), 0 8px 22px rgba(34,211,238,.38), 0 0 26px rgba(34,211,238,.28) !important;
}

/* Dashboard — blue */
.btn-dash, a.btn-dash, button.btn-dash {
  border: 1px solid rgba(96,165,250,.7) !important;
  color: #93c5fd !important;
  background: linear-gradient(165deg, rgba(59,130,246,.32), rgba(30,64,175,.16)) !important;
  box-shadow: 0 0 0 1px rgba(59,130,246,.14), 0 4px 12px rgba(59,130,246,.12) !important;
}
.btn-dash:hover, a.btn-dash:hover, button.btn-dash:hover,
.btn-dash:focus-visible, a.btn-dash:focus-visible,
.btn-dash:active, a.btn-dash:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(59,130,246,.52), rgba(30,64,175,.3)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(59,130,246,.42), 0 0 28px rgba(59,130,246,.3) !important;
}
.btn-dash.is-active, a.btn-dash.is-active, button.btn-dash.is-active, .nav-cta .btn-dash.is-active {
  border-color: rgba(191,219,254,.95) !important;
  color: #eff6ff !important;
  background: linear-gradient(165deg, rgba(59,130,246,.45), rgba(30,64,175,.24)) !important;
  box-shadow: 0 0 0 1px rgba(59,130,246,.28), 0 8px 22px rgba(59,130,246,.38), 0 0 26px rgba(59,130,246,.28) !important;
}

/* Request — rose */
.btn-request, a.btn-request, button.btn-request {
  border: 1px solid rgba(251,113,133,.7) !important;
  color: #fda4af !important;
  background: linear-gradient(165deg, rgba(244,63,94,.28), rgba(136,19,55,.12)) !important;
  box-shadow: 0 0 0 1px rgba(244,63,94,.14), 0 4px 12px rgba(244,63,94,.12) !important;
}
.btn-request:hover, a.btn-request:hover, button.btn-request:hover,
.btn-request:focus-visible, a.btn-request:focus-visible,
.btn-request:active, a.btn-request:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(244,63,94,.5), rgba(136,19,55,.28)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(244,63,94,.42), 0 0 28px rgba(244,63,94,.3) !important;
}
.btn-request.is-active, a.btn-request.is-active, button.btn-request.is-active {
  border-color: rgba(254,205,211,.95) !important;
  color: #fff1f2 !important;
  background: linear-gradient(165deg, rgba(244,63,94,.48), rgba(136,19,55,.22)) !important;
  box-shadow: 0 0 0 1px rgba(244,63,94,.28), 0 8px 22px rgba(244,63,94,.38), 0 0 26px rgba(244,63,94,.28) !important;
}

/* Flagship list / servers browse — indigo (same family as always, distinct) */
.btn-flagship, a.btn-flagship, button.btn-flagship,
.btn-servers, a.btn-servers, button.btn-servers {
  border: 1px solid rgba(129,140,248,.7) !important;
  color: #c7d2fe !important;
  background: linear-gradient(165deg, rgba(99,102,241,.32), rgba(67,56,202,.14)) !important;
  box-shadow: 0 0 0 1px rgba(99,102,241,.14), 0 4px 12px rgba(99,102,241,.12) !important;
}
.btn-flagship:hover, a.btn-flagship:hover, .btn-servers:hover, a.btn-servers:hover,
.btn-flagship:focus-visible, .btn-servers:focus-visible,
.btn-flagship:active, .btn-servers:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(129,140,248,.55), rgba(79,70,229,.3)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(99,102,241,.42), 0 0 28px rgba(99,102,241,.3) !important;
}

/* Mail / fund */
.btn-mail, a.btn-mail, button.btn-mail {
  border: 1px solid rgba(45,212,191,.65) !important;
  color: #99f6e4 !important;
  background: linear-gradient(165deg, rgba(20,184,166,.28), rgba(15,118,110,.12)) !important;
  box-shadow: 0 0 0 1px rgba(45,212,191,.12), 0 4px 12px rgba(20,184,166,.12) !important;
}
.btn-mail:hover, a.btn-mail:hover,
.btn-mail:focus-visible, .btn-mail:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(20,184,166,.55), rgba(15,118,110,.3)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(20,184,166,.4), 0 0 28px rgba(20,184,166,.28) !important;
}
.btn-fund, a.btn-fund, button.btn-fund {
  border: 1px solid rgba(251,191,36,.65) !important;
  color: #fde68a !important;
  background: linear-gradient(165deg, rgba(251,191,36,.28), rgba(180,83,9,.12)) !important;
  box-shadow: 0 0 0 1px rgba(251,191,36,.12), 0 4px 12px rgba(251,191,36,.12) !important;
}
.btn-fund:hover, a.btn-fund:hover,
.btn-fund:focus-visible, .btn-fund:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(251,191,36,.55), rgba(180,83,9,.3)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(251,191,36,.4), 0 0 28px rgba(251,191,36,.28) !important;
}

/* Danger / stop — rose-red */
.btn-danger, a.btn-danger, button.btn-danger,
.btn-stop, a.btn-stop, button.btn-stop {
  border: 1px solid rgba(248,113,113,.7) !important;
  color: #fecaca !important;
  background: linear-gradient(165deg, rgba(248,113,113,.22), rgba(127,29,29,.14)) !important;
  box-shadow: 0 0 0 1px rgba(248,113,113,.12), 0 4px 12px rgba(248,113,113,.1) !important;
}
.btn-danger:hover, a.btn-danger:hover, .btn-stop:hover, a.btn-stop:hover,
.btn-danger:focus-visible, .btn-stop:focus-visible,
.btn-danger:active, .btn-stop:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(248,113,113,.5), rgba(127,29,29,.3)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(248,113,113,.4), 0 0 28px rgba(248,113,113,.28) !important;
}

/* Sign out */
.btn-signout, a.btn-signout, button.btn-signout {
  border: 1px solid rgba(255,255,255,.18) !important;
  color: #fecaca !important;
  background: #0b0d12 !important;
  box-shadow: 0 0 0 1px rgba(248,113,113,.1), 0 4px 12px rgba(0,0,0,.35) !important;
}
.btn-signout:hover, a.btn-signout:hover, button.btn-signout:hover,
.btn-signout:focus-visible, .btn-signout:active {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(248,113,113,.42), rgba(127,29,29,.35)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(248,113,113,.4), 0 0 28px rgba(248,113,113,.28) !important;
}

/* Ghost / copy — neutral, glow on hover only */
.btn-ghost, a.btn-ghost, button.btn-ghost {
  border: 1px solid rgba(148,163,184,.28) !important;
  color: #94a3b8 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.btn-ghost:hover, a.btn-ghost:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: rgba(148,163,184,.18) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.15), 0 8px 20px rgba(0,0,0,.28) !important;
}
.btn-copy, a.btn-copy, button.btn-copy {
  border: 1px solid rgba(148,163,184,.35) !important;
  color: #cbd5e1 !important;
  background: linear-gradient(165deg, rgba(148,163,184,.12), rgba(30,41,59,.4)) !important;
  box-shadow: 0 0 0 1px rgba(148,163,184,.08), 0 3px 10px rgba(0,0,0,.18) !important;
}
.btn-copy:hover, a.btn-copy:hover, button.btn-copy:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(148,163,184,.28), rgba(51,65,85,.55)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.18), 0 8px 20px rgba(148,163,184,.25), 0 0 22px rgba(148,163,184,.18) !important;
}

/* Star / success soft */
.btn-star, a.btn-star, button.btn-star {
  border: 1px solid rgba(52,211,153,.65) !important;
  color: #a7f3d0 !important;
  background: linear-gradient(165deg, rgba(52,211,153,.22), rgba(6,95,70,.12)) !important;
  box-shadow: 0 0 0 1px rgba(52,211,153,.12), 0 4px 12px rgba(52,211,153,.1) !important;
}
.btn-star:hover, a.btn-star:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(52,211,153,.5), rgba(6,95,70,.28)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(52,211,153,.4), 0 0 28px rgba(52,211,153,.28) !important;
}

/* Social icon buttons */
.btn-discord, a.btn-discord, button.btn-discord {
  border: 1px solid rgba(88,101,242,.65) !important;
  color: #e0e7ff !important;
  background: linear-gradient(165deg, rgba(88,101,242,.35), rgba(88,101,242,.14)) !important;
  box-shadow: 0 0 0 1px rgba(88,101,242,.16), 0 6px 16px rgba(88,101,242,.2) !important;
}
.btn-discord:hover, a.btn-discord:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(88,101,242,.6), rgba(67,56,202,.35)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(88,101,242,.42), 0 0 28px rgba(88,101,242,.28) !important;
}
.btn-discord svg, a.btn-discord svg {
  fill: currentColor !important;
  fill-rule: evenodd;
}
/* X — pure near-black tile (match Steam / nav-social) */
.btn-x, a.btn-x, button.btn-x {
  border: 1px solid rgba(255,255,255,.18) !important;
  color: #fff !important;
  background: #0b0d12 !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.06), 0 6px 16px rgba(0,0,0,.4) !important;
}
.btn-x:hover, a.btn-x:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.9) !important;
  background: #1c2430 !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.25), 0 8px 20px rgba(0,0,0,.5) !important;
}
.btn-x svg, a.btn-x svg { fill: currentColor !important; }
/* Steam — same black tile */
.btn-steam, a.btn-steam, button.btn-steam {
  border: 1px solid rgba(255,255,255,.18) !important;
  color: #fff !important;
  background: #0b0d12 !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.06), 0 6px 16px rgba(0,0,0,.4) !important;
}
.btn-steam:hover, a.btn-steam:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.9) !important;
  background: #1c2430 !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.25), 0 8px 20px rgba(0,0,0,.5) !important;
}
.btn-steam svg, a.btn-steam svg { fill: currentColor !important; }
/* Steam mask icon (.si.si-steam) — public cards + portal; path works on site (/assets) + portal (/static) */
.btn-steam .si, a.btn-steam .si, button.btn-steam .si,
.btn-icon.btn-steam .si {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  flex-shrink: 0 !important;
  background-color: currentColor !important;
  -webkit-mask-size: contain !important;
  mask-size: contain !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
}
.btn-steam .si-steam, a.btn-steam .si-steam, button.btn-steam .si-steam,
.si.si-steam, span.si-steam {
  -webkit-mask-image: url("/assets/icon-steam.svg") !important;
  mask-image: url("/assets/icon-steam.svg") !important;
  background-color: currentColor !important;
}
/* Portal member site serves icons under /static */
body.portal .btn-steam .si-steam,
body.portal .si.si-steam,
.portal-root .si-steam {
  -webkit-mask-image: url("/static/icon-steam.svg") !important;
  mask-image: url("/static/icon-steam.svg") !important;
}

/* Minecraft green accent */
.btn-minecraft, a.btn-minecraft, button.btn-minecraft {
  border: 1px solid rgba(139,195,74,.7) !important;
  color: #d9f99d !important;
  background: linear-gradient(165deg, rgba(124,179,66,.28), rgba(61,92,31,.16)) !important;
  box-shadow: 0 0 0 1px rgba(139,195,74,.12), 0 4px 12px rgba(61,92,31,.16) !important;
}
.btn-minecraft:hover, a.btn-minecraft:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.88) !important;
  background: linear-gradient(165deg, rgba(124,179,66,.5), rgba(61,92,31,.32)) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 10px 26px rgba(124,179,66,.4), 0 0 28px rgba(124,179,66,.28) !important;
}

/* Petition promote/demote wrappers inherit scheme buttons */
.pet-act-promote .btn-always,
.catalog-actions .btn-always,
.catalog-game-grid .btn-always { /* same as always rest */ }
.pet-act-demote .btn,
.pet-act-demote button.btn,
.catalog-actions .btn-ondemand {
  /* ondemand scheme already covers */
}

/* === LOCK: X pure black (labeled + icon) — no gray gradients === */
a.btn.btn-x, button.btn.btn-x, .btn.btn-x, a.btn-x, button.btn-x, .btn-x {
  border: 1px solid rgba(255,255,255,.18) !important;
  color: #fff !important;
  background: #0b0d12 !important;
  background-image: none !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.06), 0 6px 16px rgba(0,0,0,.4) !important;
}
a.btn.btn-x:hover, button.btn.btn-x:hover, .btn.btn-x:hover, a.btn-x:hover, .btn-x:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.9) !important;
  background: #1c2430 !important;
  background-image: none !important;
}
a.btn.btn-x svg, .btn.btn-x svg, a.btn-x svg { fill: #fff !important; }
a.btn.btn-discord svg path, .btn.btn-discord svg path, .btn-discord svg path {
  fill: currentColor !important;
  fill-rule: evenodd !important;
}
