@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

.validador-container-root {
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    -webkit-font-smoothing: antialiased;
}

.premium-glass {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.step-transition {
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.animate-shake {
    animation: shake 0.5s cubic-bezier(.36,.07,.19,.97) both;
}

@keyframes shake {
    10%, 90% { transform: translate3d(-1px, 0, 0); }
    20%, 80% { transform: translate3d(2px, 0, 0); }
    30%, 50%, 70% { transform: translate3d(-4px, 0, 0); }
    40%, 60% { transform: translate3d(4px, 0, 0); }
}

.reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: all 1s cubic-bezier(0.22, 1, 0.36, 1);
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

@media print {
    nav, footer, #btn-print, #btn-voltar, #btn-download, .trust-indicators {
        display: none !important;
    }
    .min-h-screen {
        background: white !important;
    }
    .premium-glass {
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }
    #step-result {
        display: block !important;
        opacity: 1 !important;
        transform: none !important;
    }
}
