/* OreFront static-page interaction styles.
 *
 * The production CSP has no script-src 'unsafe-inline', so inline
 * onmouseover/onfocus handlers never run. Hover and focus effects live
 * here as classes instead. Per-element colors are passed via CSS custom
 * properties set in the element's style attribute, e.g.
 *   <a class="hv hv-border" style="--hv-border: #f59e0b50; ...">
 */

.hv {
  transition: border-color 0.2s, background-color 0.2s, box-shadow 0.2s,
    transform 0.2s, opacity 0.2s;
}

.hv-border:hover {
  border-color: var(--hv-border, #3b82f6) !important;
}

.hv-bg:hover {
  background-color: var(--hv-bg, rgba(30, 40, 65, 0.7)) !important;
}

.hv-shadow:hover {
  box-shadow: var(--hv-shadow, 0 0 20px rgba(59, 130, 246, 0.08));
}

.hv-lift:hover {
  transform: translateY(-1px);
}

.hv-dim:hover {
  opacity: 0.9;
}

.focus-accent:focus {
  border-color: #3b82f6 !important;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Inline status message rendered by /js/email-signup.js */
.email-signup-status {
  font-size: 12px;
  line-height: 1.5;
  margin-top: 8px;
}

.email-signup-status.is-success {
  color: #34d399;
}

.email-signup-status.is-error {
  color: #f87171;
}

button[disabled].email-signup-pending {
  opacity: 0.6;
  cursor: wait;
}
