/* Promo Junkie Halloween Lite v2 — accents only. No overlays or pseudo-elements. */
:root {
  --pj-h-orange: #ff6422;
  --pj-h-purple: #7a35ff;
}

/* Existing Junkie buttons receive only a colored edge glow on hover. */
:is(.btn,.button,.auth-header nav a,.member-nav a,.admin-nav a,.xpc-nav a,
    button,input[type="submit"],input[type="button"]):not(.no-seasonal-theme) {
  transition: filter .15s ease, box-shadow .15s ease;
}

:is(.btn,.button,.auth-header nav a,.member-nav a,.admin-nav a,.xpc-nav a,
    button,input[type="submit"],input[type="button"]):not(.no-seasonal-theme):hover {
  filter: saturate(1.08) brightness(1.025);
  box-shadow: 2px 2px 0 var(--pj-h-purple), 0 0 8px rgba(255,100,34,.28);
}

/* Small seasonal accent on established cards; no background changes. */
:is(.auth-card,.member-card,.admin-card,.xpc-panel,.sitewide-square-card,
    .sitewide-spotlight,.daily-promo-card):not(.no-seasonal-theme) {
  border-bottom-color: var(--pj-h-orange);
}

/* Existing lightning/status details get a warm Halloween glow. */
:is(.brand-bolt,.admin-status-dot,.member-status-dot) {
  filter: drop-shadow(0 0 4px rgba(255,100,34,.48));
}

/* Seasonal focus ring remains readable and accessible. */
:is(input,select,textarea):focus {
  outline-color: rgba(255,100,34,.55);
  border-color: var(--pj-h-purple);
}

/* Accent only the borders of existing notices. */
:is(.alert,.notice,.message,[role="alert"]):not(.no-seasonal-theme) {
  border-left-color: var(--pj-h-orange);
}

@media (prefers-reduced-motion: reduce) {
  :is(.btn,.button,button,input,a) { transition: none !important; }
}

