@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Inter', sans-serif;
}

.animation-delay-2000 {
    animation-delay: 2s;
}

.animation-delay-4000 {
    animation-delay: 4s;
}

/* Анимации для модального окна */
#successModal.show {
    display: flex !important;
}

#successModal.show > div {
    transform: scale(1);
    opacity: 1;
}

/* Кастомные стили для полей ввода */
input::placeholder {
    color: #c4b5fd;
}

input:focus {
    box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.1);
}

/* Стили для переключателей */
input[type="checkbox"]:checked + div {
    background-color: #8b5cf6;
}

input[type="checkbox"]:checked + div > div {
    transform: translateX(1rem);
}

/* Анимация появления поля пароля */
#passwordField.show {
    display: block;
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Стили для радио кнопок */
input[type="radio"]:checked + label {
    box-shadow: 0 0 0 2px rgba(168, 85, 247, 0.5);
}

/* Анимация пульсации для кнопки */
@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

.pulse-animation {
    animation: pulse 2s infinite;
}

/* Стили для скроллбара */
::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 3px;
}

::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.5);
}

/* Адаптивность */
@media (max-width: 640px) {
    .grid.grid-cols-2 {
        grid-template-columns: 1fr;
    }
    
    .grid.grid-cols-3 {
        grid-template-columns: repeat(3, 1fr);
    }
}