/* CSS complementar ao Tailwind — apenas overrides e utilitários globais */

/* Área mínima de toque para acessibilidade mobile (44x44px) */
.touch-target {
    min-width: 44px;
    min-height: 44px;
}

/* Fade-in para toasts */
@keyframes fade-in {
    from { opacity: 0; transform: translateY(-8px); }
    to   { opacity: 1; transform: translateY(0); }
}
.animate-fade-in {
    animation: fade-in 0.2s ease-out;
}

/* Auto-dismiss para toasts via JS */
.toast-auto-dismiss {
    animation: fade-in 0.2s ease-out, fade-out 0.3s ease-in 4s forwards;
}
@keyframes fade-out {
    to { opacity: 0; transform: translateY(-8px); }
}

/* ── Progress bar de navegação (full-page + HTMX) ───────────────── */
#nav-progress {
    position: fixed;
    top: 0; left: 0;
    height: 3px;
    width: 0%;
    background: #2563eb;
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transition: width 200ms ease, opacity 300ms ease;
}

/* ── View Transitions API (Chrome 126+, Safari 18.2+) ───────────── */
@view-transition {
    navigation: auto;
}
::view-transition-old(root) {
    animation: 120ms ease-out both fade-out;
}
::view-transition-new(root) {
    animation: 180ms ease-in both fade-in;
}
