/* Complementos ao style.css (Tailwind compilado do site original) */

/* O atributo hidden tem sempre prioridade sobre classes como .flex/.grid */
[hidden] { display: none !important; }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

.not-italic { font-style: normal; }

/* Link "saltar para o conteúdo" (acessibilidade) */
.focus\:not-sr-only:focus {
  position: fixed; top: .5rem; left: .5rem; z-index: 200;
  width: auto; height: auto; margin: 0; overflow: visible; clip: auto; white-space: normal;
  padding: .5rem 1rem; border-radius: .375rem;
  background: hsl(var(--background)); color: hsl(var(--foreground));
  box-shadow: 0 10px 30px -10px rgba(0,0,0,.25);
}

/* Campo anti-spam invisível */
.alma-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

/* Notificações */
.alma-toaster {
  position: fixed; z-index: 120; right: 1rem; bottom: 1rem;
  display: flex; flex-direction: column; gap: .5rem;
  width: min(356px, calc(100vw - 2rem)); pointer-events: none;
}
.alma-toast {
  pointer-events: auto; display: flex; gap: .75rem; align-items: flex-start;
  padding: 1rem; border-radius: .75rem;
  background: hsl(var(--background)); color: hsl(var(--foreground));
  border: 1px solid hsl(var(--border));
  box-shadow: 0 10px 30px -10px rgba(0,0,0,.25);
  font-size: .875rem; line-height: 1.35;
  opacity: 0; transform: translateY(12px); transition: opacity .25s ease, transform .25s ease;
}
.alma-toast.is-in { opacity: 1; transform: none; }
.alma-toast__icon { flex-shrink: 0; margin-top: 1px; }
.alma-toast--success .alma-toast__icon { color: hsl(var(--primary)); }
.alma-toast--error .alma-toast__icon { color: hsl(var(--destructive)); }
.alma-toast__title { font-weight: 600; }
.alma-toast__desc { margin-top: .15rem; color: hsl(var(--muted-foreground)); font-size: .8125rem; }
