﻿/* Кнопки */
.btn-custom {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--white);
    transition: all var(--transition-fast);
}

    .btn-custom:hover {
        background-color: var(--primary-dark);
        border-color: var(--primary-dark);
    }

/* Навигационное меню */
.navbar-nav .nav-item {
    flex: none;
}

    .navbar-nav .nav-item .nav-link {
        will-change: color, text-shadow, background-color;
        transition: color 0.4s cubic-bezier(0.25, 0.45, 0.45, 0.95), text-shadow 0.4s cubic-bezier(0.25, 0.45, 0.45, 0.95), background-color 0.4s cubic-bezier(0.25, 0.45, 0.45, 0.95);
        color: var(--text-color);
        font-weight: 400;
        text-decoration: none;
        display: block;
        padding: 0.5rem 1rem;
    }

        .navbar-nav .nav-item .nav-link:hover,
        .navbar-nav .nav-item .nav-link.active {
            color: #1a1a1a;
            text-shadow: 0 0 0px rgba(0, 0, 0, 0.4), 0 0 4px rgba(0, 0, 0, 0.2);
            background-color: rgba(255, 255, 255, 0.08);
        }






/* Поле поиска */
.navbar-nav .nav-item form input[type="search"] {
    border-radius: var(--border-radius-lg);
    margin-left: 0.5rem;
    transition: border-radius var(--transition-slow);
}

    .navbar-nav .nav-item form input[type="search"]:focus {
        border-radius: var(--border-radius-sm);
        box-shadow: 0 0 0 3px var(--shadow-color);
    }

/* Кастомная скруглённая кнопка */
.custom-rounded-btn {
    border-radius: var(--border-radius-sm) !important;
    transition: all var(--transition-fast);
}

    .custom-rounded-btn:hover {
        border-radius: var(--border-radius-xl);
        transform: translateY(-1px);
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    }

/* Стили для фокусов */
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem var(--white), 0 0 0 0.25rem rgba(0, 0, 0, 0.2);
}

/* Плавающие формы */
.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
    text-align: start;
}
