.input-mask {
    transition: all 0.3s ease;
}

.success-checkmark {
    transform: scale(0);
    opacity: 0;
    transition: all 0.3s ease;
}

.visible {
    transform: scale(1);
    opacity: 1;
}

@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

.pulse {
    animation: pulse 0.6s ease-in-out;
}

/* Improved responsive design */
@media (max-width: 640px) {
    .security-features {
        grid-template-columns: 1fr;
    }
}

/* Custom badge styles */
.ssl-badge {
    background: linear-gradient(45deg, #2c3e50, #4ca1af);
}

.verified-badge {
    background: linear-gradient(45deg, #134e5e, #71b280);
}

/* Custom focus effect */
.focus-ring:focus {
    box-shadow: 0 0 0 3px rgba(66, 153, 225, 0.5);
    outline: none;
}