body {
    font-family: 'Inter', sans-serif;
    -webkit-tap-highlight-color: transparent;
    background-color: #f8fafc; /* slate-50 */
}

/* Evita flash de conteúdo não-Alpine antes do x-init */
[x-cloak] { display: none !important; }

/* Scrollbar discreta */
.eq-scroll::-webkit-scrollbar {
    width: 6px;
}
.eq-scroll::-webkit-scrollbar-track {
    background: transparent;
}
.eq-scroll::-webkit-scrollbar-thumb {
    background: rgba(100, 116, 139, 0.25);
    border-radius: 999px;
}
.eq-scroll::-webkit-scrollbar-thumb:hover {
    background: rgba(100, 116, 139, 0.45);
}

/* Evita zoom automático do iOS ao focar inputs */
input, select, textarea {
    font-size: 16px;
}

/* Remove o "X" nativo do input search no Chrome */
input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
}

/* Truncate de 2 linhas para descrição curta */
.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Modal — animação suave */
@keyframes modal-in {
    from { opacity: 0; transform: scale(0.96) translateY(8px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}
.modal-content {
    animation: modal-in 0.18s ease-out;
}

/* Safe-area do iOS no rodapé do card (notch / home indicator).
   Garante que o botão de continuar fique acima da barra do sistema
   e não seja coberto pelo teclado em devices com home indicator. */
.safe-bottom {
    padding-bottom: max(1rem, env(safe-area-inset-bottom));
}
