﻿/* Стили для страниц аутентификации с исправленной контрастностью */

/* Исправление для сообщений об ошибках */
.text-danger {
    color: #ff6b6b !important;
    background-color: transparent !important;
}

.alert-danger {
    background-color: rgba(220, 53, 69, 0.1);
    border: 1px solid #dc3545;
    color: #ff6b6b;
}

.alert-success {
    background-color: rgba(40, 167, 69, 0.1);
    border: 1px solid #28a745;
    color: #5eff7f;
}

/* Стили для validation summary */
.validation-summary-errors {
    background-color: rgba(220, 53, 69, 0.1);
    border: 1px solid #dc3545;
    border-radius: 10px;
    padding: 15px;
    margin-bottom: 20px;
}

/* Скрываем пустой validation summary */
.text-danger:empty {
    display: none !important;
}

/* Стили для validation summary когда есть ошибки */
.text-danger.validation-summary-errors {
    display: block !important;
}

.validation-summary-errors ul {
    margin: 0;
    padding-left: 20px;
}

.validation-summary-errors li {
    color: #ff6b6b;
}

/* Стили для ссылок в темной теме */
.login-form a, .register-form a {
    color: #ec6090 !important;
    text-decoration: none;
    transition: all 0.3s ease;
}

    .login-form a:hover, .register-form a:hover {
        color: #ff7fa8 !important;
        text-decoration: underline;
    }

/* Стили для checkbox и label */
.form-check-label {
    color: #ccc !important;
    cursor: pointer;
}

.form-check-input:checked {
    background-color: #ec6090;
    border-color: #ec6090;
}

/* Стили для labels */
.form-group label {
    color: #ccc !important;
    font-weight: 500;
}

/* Стили для input полей */
.form-control {
    background-color: #1f2122 !important;
    border: 1px solid #444 !important;
    color: #fff !important;
}

    .form-control:focus {
        background-color: #27292a !important;
        border-color: #ec6090 !important;
        color: #fff !important;
        box-shadow: 0 0 0 0.2rem rgba(236, 96, 144, 0.25);
    }

    .form-control::placeholder {
        color: #666 !important;
    }

/* Исправление для мелкого текста */
.text-muted {
    color: #999 !important;
}

small.text-muted {
    color: #888 !important;
}

/* Стили для кнопок */
.btn-primary {
    background-color: #ec6090;
    border-color: #ec6090;
    color: #fff;
}

    .btn-primary:hover {
        background-color: #d63384;
        border-color: #d63384;
        color: #fff;
    }

/* Дополнительные стили для читаемости */
p {
    color: #ccc;
}

h4, h5 {
    color: #fff;
}

/* Исправление видимости текста в модальных окнах */
.modal-body p, .modal-body label {
    color: #ccc !important;
}

/* Стили для ошибок валидации полей */
.field-validation-error {
    color: #ff6b6b !important;
    font-size: 14px;
    margin-top: 5px;
}

.input-validation-error {
    border-color: #dc3545 !important;
}

/* Улучшение контрастности для ссылок в тексте условий */
.form-check-label a {
    color: #ff7fa8 !important;
    font-weight: 500;
}

    .form-check-label a:hover {
        color: #ffa0c4 !important;
    }
/* Enhanced Header Styles - Add this to your CSS file or in the <style> section of _Layout.cshtml */

/* Base header improvements */
.header-area {
    background-color: transparent;
    position: fixed !important;
    height: 70px;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 0.6s cubic-bezier(0.23, 1, 0.32, 1) !important;
    will-change: transform, background-color, box-shadow;
    backdrop-filter: none;
}

    /* Enhanced background header */
    .header-area.background-header {
        background: rgba(31, 33, 34, 0.95) !important;
        backdrop-filter: blur(10px) saturate(180%) !important;
        -webkit-backdrop-filter: blur(10px) saturate(180%) !important;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3), 0 2px 8px rgba(236, 96, 144, 0.1) !important;
        border-bottom: 1px solid rgba(236, 96, 144, 0.1);
        height: 70px !important;
        transform: translateY(0) !important;
    }

    /* Header states */
    .header-area.header-hidden {
        transform: translateY(-100%) !important;
        pointer-events: none;
    }

    .header-area.header-visible {
        transform: translateY(0) !important;
        pointer-events: all;
    }

    .header-area.header-transparent {
        background: transparent !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
        border-bottom: none;
    }

    /* Scrolling indicator */
    .header-area.is-scrolling {
        transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    }

    /* Enhanced main nav */
    .header-area .main-nav {
        min-height: 70px;
        background: transparent;
        display: flex;
        padding: 15px 0px;
        border-radius: 0;
        transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        position: relative;
        will-change: transform, padding;
    }

.background-header .main-nav {
    padding: 10px 0px;
    background-color: transparent;
}

/* Enhanced logo animations */
.header-area .main-nav .logo {
    border-right: 1px solid rgba(39, 41, 42, 0.3);
    flex-basis: 25%;
    margin-right: 5%;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left center;
}

.background-header .main-nav .logo {
    margin-top: 0px;
    transform: scale(0.9);
}

.header-area .main-nav .logo img {
    width: 191px;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.1));
}

.background-header .main-nav .logo img {
    width: 180px;
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.2));
}

/* Enhanced navigation */
.header-area .main-nav .nav {
    display: inline-flex;
    flex-basis: 70%;
    justify-content: flex-end;
    vertical-align: middle;
    text-align: right;
    margin-top: 0px;
    margin-right: 0px;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    position: relative;
    z-index: 999;
}

    .header-area .main-nav .nav li {
        padding-left: 10px;
        padding-right: 10px;
        display: inline-block;
        transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        position: relative;
    }

        /* Enhanced nav links */
        .header-area .main-nav .nav li a {
            display: block;
            font-weight: 400;
            font-size: 14px;
            text-transform: capitalize;
            color: #666;
            transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            border: transparent;
            padding: 13px 10px;
            border-radius: 18px;
            letter-spacing: .3px;
            position: relative;
            overflow: hidden;
        }

            /* Beautiful hover effects */
            .header-area .main-nav .nav li a::before {
                content: '';
                position: absolute;
                top: 0;
                left: -100%;
                width: 100%;
                height: 100%;
                background: linear-gradient(90deg, transparent, rgba(236, 96, 144, 0.1), transparent);
                transition: left 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            }

            .header-area .main-nav .nav li a:hover::before {
                left: 100%;
            }

            .header-area .main-nav .nav li a::after {
                content: '';
                position: absolute;
                bottom: 0;
                left: 50%;
                width: 0;
                height: 2px;
                background: linear-gradient(90deg, #ec6090, #e75e8d);
                transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
                transform: translateX(-50%);
            }

            .header-area .main-nav .nav li:hover a::after,
            .header-area .main-nav .nav li a.active::after {
                width: 80%;
            }

        /* Enhanced last nav item (profile) */
        .header-area .main-nav .nav li:last-child a {
            background: linear-gradient(45deg, #27292a, #2a2c2d);
            padding: 8px 10px 8px 20px;
            border-radius: 23px;
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
            border: 1px solid rgba(236, 96, 144, 0.1);
            transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
        }

            .header-area .main-nav .nav li:last-child a:hover {
                background: linear-gradient(45deg, #e75e8d, #ec6090) !important;
                transform: translateY(-2px) scale(1.05);
                box-shadow: 0 8px 25px rgba(236, 96, 144, 0.3);
                border-color: rgba(255, 255, 255, 0.2);
            }

            .header-area .main-nav .nav li:last-child a img {
                max-width: 30px;
                border-radius: 50%;
                margin-left: 5px;
                transition: all 0.3s ease;
                border: 2px solid rgba(255, 255, 255, 0.1);
            }

            .header-area .main-nav .nav li:last-child a:hover img {
                border-color: rgba(255, 255, 255, 0.3);
                transform: rotate(5deg) scale(1.1);
            }

        /* Hover states */
        .header-area .main-nav .nav li:hover a,
        .header-area .main-nav .nav li a.active {
            color: #e75e8d !important;
            transform: translateY(-1px);
            text-shadow: 0 2px 8px rgba(236, 96, 144, 0.3);
        }

.background-header .main-nav .nav li:hover a,
.background-header .main-nav .nav li a.active {
    color: #e75e8d !important;
    background-color: rgba(236, 96, 144, 0.1);
}

/* Mobile responsive enhancements */
@media (max-width: 992px) {
    .header-area {
        background-color: rgba(31, 33, 34, 0.95);
        backdrop-filter: blur(10px);
        padding: 0px 15px;
        height: 80px;
    }

        .header-area .main-nav .nav {
            background: rgba(31, 33, 34, 0.98);
            backdrop-filter: blur(15px);
            border-radius: 15px;
            margin-top: 10px;
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
        }
}

/* Additional smooth animations for page transitions */
@keyframes headerSlideIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes navItemSlideIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Performance optimizations */
.header-area {
    transform: translateZ(0);
    backface-visibility: hidden;
    perspective: 1000px;
}

    .header-area .main-nav .nav li a {
        transform: translateZ(0);
        backface-visibility: hidden;
    }

        /* Improved focus states for accessibility */
        .header-area .main-nav .nav li a:focus {
            outline: 2px solid #ec6090;
            outline-offset: 2px;
            background-color: rgba(236, 96, 144, 0.1);
        }

/* High contrast mode support */
@media (prefers-contrast: high) {
    .header-area.background-header {
        background: rgba(0, 0, 0, 0.95) !important;
        border-bottom: 2px solid #ec6090;
    }

    .header-area .main-nav .nav li a {
        color: #fff !important;
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .header-area,
    .header-area .main-nav,
    .header-area .main-nav .nav li a {
        transition: none !important;
        animation: none !important;
    }
}

/* ПРОСТОЕ ИСПРАВЛЕНИЕ МОБИЛЬНОГО МЕНЮ */

/* Сначала переопределим базовые стили для мобильных */
@media (max-width: 992px) {
    /* Основной header */
    .header-area {
        background-color: rgba(31, 33, 34, 0.95) !important;
        padding: 0px 15px !important;
        height: 80px !important;
        box-shadow: 0px 0px 10px rgba(0,0,0,0.15) !important;
        position: fixed !important;
        top: 0 !important;
    }

        /* Контейнер навигации */
        .header-area .main-nav {
            overflow: visible !important;
            background: transparent !important;
            padding: 15px 0px !important;
        }

            /* Логотип */
            .header-area .main-nav .logo {
                position: absolute !important;
                left: 0px !important;
                top: 15px !important;
                z-index: 1001 !important;
                border-right: none !important;
            }

                .header-area .main-nav .logo img {
                    width: 150px !important;
                }

            /* Кнопка гамбургер */
            .header-area .main-nav .menu-trigger {
                display: block !important;
                position: absolute !important;
                top: 23px !important;
                right: 0px !important;
                width: 32px !important;
                height: 40px !important;
                z-index: 1002 !important;
                cursor: pointer !important;
            }

            /* Само меню - ВАЖНО! */
            .header-area .main-nav .nav {
                position: absolute !important;
                top: 80px !important;
                left: -15px !important;
                right: -15px !important;
                width: calc(100% + 30px) !important;
                background: rgba(31, 33, 34, 0.98) !important;
                backdrop-filter: blur(10px) !important;
                box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3) !important;
                border-radius: 0px !important;
                padding: 20px 0px !important;
                /* Скрываем по умолчанию */
                display: none !important;
                opacity: 0 !important;
                transform: translateY(-20px) !important;
                transition: all 0.3s ease !important;
                /* Делаем вертикальным */
                flex-direction: column !important;
                align-items: center !important;
            }

                /* Показываем меню когда активно */
                .header-area .main-nav .nav.mobile-active {
                    display: flex !important;
                    opacity: 1 !important;
                    transform: translateY(0) !important;
                }

                /* Пункты меню */
                .header-area .main-nav .nav li {
                    width: 100% !important;
                    background: transparent !important;
                    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
                    padding: 0px !important;
                    margin: 0px !important;
                    display: block !important;
                }

                    .header-area .main-nav .nav li:last-child {
                        border-bottom: none !important;
                    }

                    /* Ссылки в меню */
                    .header-area .main-nav .nav li a {
                        display: block !important;
                        width: 100% !important;
                        height: 50px !important;
                        line-height: 50px !important;
                        padding: 0px 20px !important;
                        text-align: center !important;
                        background: transparent !important;
                        color: #ccc !important;
                        border: none !important;
                        border-radius: 0px !important;
                        font-size: 16px !important;
                        transition: all 0.3s ease !important;
                    }

                        .header-area .main-nav .nav li a:hover,
                        .header-area .main-nav .nav li a.active {
                            background: rgba(236, 96, 144, 0.1) !important;
                            color: #ec6090 !important;
                        }

                    /* Последний пункт (профиль/вход) */
                    .header-area .main-nav .nav li:last-child a {
                        background: linear-gradient(45deg, #ec6090, #d63384) !important;
                        color: #fff !important;
                        border-radius: 25px !important;
                        margin: 10px 20px !important;
                        width: calc(100% - 40px) !important;
                    }

                        .header-area .main-nav .nav li:last-child a:hover {
                            background: linear-gradient(45deg, #d63384, #ec6090) !important;
                            color: #fff !important;
                        }

                        .header-area .main-nav .nav li:last-child a img {
                            display: none !important;
                        }

            /* Убираем поиск */
            .header-area .main-nav #search {
                display: none !important;
            }

    /* Контент страницы */
    body .page-content {
        margin-top: 100px !important;
        padding: 30px 15px !important;
    }
}

/* Гамбургер иконка */
.header-area .main-nav .menu-trigger span {
    display: block;
    position: absolute;
    height: 2px;
    width: 24px;
    background: #ec6090;
    border-radius: 1px;
    opacity: 1;
    left: 4px;
    transform: rotate(0deg);
    transition: .25s ease-in-out;
}

    .header-area .main-nav .menu-trigger span:nth-child(1) {
        top: 0px;
    }

    .header-area .main-nav .menu-trigger span:nth-child(2) {
        top: 8px;
    }

    .header-area .main-nav .menu-trigger span:nth-child(3) {
        top: 16px;
    }

/* Анимация гамбургера при активации */
.header-area .main-nav .menu-trigger.active span:nth-child(1) {
    top: 8px;
    transform: rotate(135deg);
}

.header-area .main-nav .menu-trigger.active span:nth-child(2) {
    opacity: 0;
    left: -60px;
}

.header-area .main-nav .menu-trigger.active span:nth-child(3) {
    top: 8px;
    transform: rotate(-135deg);
}

/* Очень маленькие экраны */
@media (max-width: 576px) {
    .header-area .main-nav .logo img {
        width: 130px !important;
    }

    .header-area .main-nav .nav li a {
        font-size: 15px !important;
    }
}
/* Enhanced Authentication Styles */
/* Этот файл можно добавить к существующему auth.css */

/* Глобальные улучшения для страниц авторизации */
.page-content.auth-page {
    margin-top: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    min-height: 100vh;
}

/* Улучшенные переходы между страницами */
.auth-page-transition {
    animation: authPageFadeIn 0.6s ease-out;
}

@keyframes authPageFadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Улучшения для мобильного меню на страницах авторизации */
@media (max-width: 992px) {
    .auth-container + .header-area {
        position: fixed !important;
        top: 0 !important;
        background: rgba(31, 33, 34, 0.95) !important;
        backdrop-filter: blur(10px) !important;
    }
}

/* Плавные переходы для элементов формы */
.form-input,
.google-btn,
.submit-btn {
    transform: translateZ(0);
    backface-visibility: hidden;
    perspective: 1000px;
}

/* Улучшенные фокус-стили для доступности */
.form-input:focus,
.google-btn:focus,
.submit-btn:focus,
.checkbox-input:focus + .checkbox-custom {
    outline: 2px solid rgba(236, 96, 144, 0.5);
    outline-offset: 2px;
}

/* Анимации загрузки */
@keyframes loadingPulse {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

.auth-loading {
    animation: loadingPulse 1.5s ease-in-out infinite;
}

/* Улучшенные состояния ошибок */
.form-input.error {
    border-color: #ef4444 !important;
    background-color: rgba(239, 68, 68, 0.05) !important;
    animation: shake 0.5s ease-in-out;
}

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

/* Улучшенные состояния успеха */
.form-input.success {
    border-color: #10b981 !important;
    background-color: rgba(16, 185, 129, 0.05) !important;
}

/* Микро-анимации для повышения UX */
.auth-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.5),
    0 10px 30px rgba(236, 96, 144, 0.15);
}

/* Улучшения для высокого контраста */
@media (prefers-contrast: high) {
    .auth-card {
        border: 2px solid #ec6090;
        background: rgba(0, 0, 0, 0.98);
    }

    .form-input {
        border: 2px solid #ffffff;
        background: #000000;
    }

    .google-btn {
        border: 2px solid #000000;
    }
}

/* Поддержка уменьшенной анимации */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }

    .decoration-circle {
        animation: none;
    }

    .auth-icon::before {
        animation: none;
    }
}

/* Поддержка темной темы системы */
@media (prefers-color-scheme: dark) {
    .google-btn {
        background: rgba(255, 255, 255, 0.05);
        border-color: rgba(255, 255, 255, 0.2);
        color: #ffffff;
    }

    .google-btn:hover {
        background: rgba(255, 255, 255, 0.1);
    }
}

/* Улучшения для print media */
@media print {
    .auth-container {
        background: white !important;
        color: black !important;
    }

    .decoration-circle,
    .auth-decoration {
        display: none !important;
    }

    .auth-card {
        background: white !important;
        box-shadow: none !important;
        border: 1px solid black !important;
    }
}

/* Состояния загрузки для различных элементов */
.google-btn.loading {
    pointer-events: none;
    opacity: 0.7;
}

.google-btn.loading .google-btn-content {
    animation: loadingPulse 1s ease-in-out infinite;
}

/* Дополнительные утилитарные классы */
.auth-text-gradient {
    background: linear-gradient(135deg, #ec6090 0%, #d63384 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.auth-glass-effect {
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    background: rgba(39, 41, 42, 0.8);
}

.auth-shadow-glow {
    box-shadow: 0 0 30px rgba(236, 96, 144, 0.3);
}

/* Улучшенная анимация для success состояний */
.auth-success-animation {
    animation: successBounce 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

@keyframes successBounce {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    50% {
        transform: scale(1.1);
        opacity: 1;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* Стили для уведомлений */
.auth-notification {
    position: fixed;
    top: 20px;
    right: 20px;
    padding: 16px 24px;
    background: rgba(39, 41, 42, 0.95);
    backdrop-filter: blur(10px);
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #ffffff;
    z-index: 10000;
    transform: translateX(400px);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.auth-notification.show {
    transform: translateX(0);
}

.auth-notification.success {
    border-color: rgba(16, 185, 129, 0.3);
    background: rgba(16, 185, 129, 0.1);
}

.auth-notification.error {
    border-color: rgba(239, 68, 68, 0.3);
    background: rgba(239, 68, 68, 0.1);
}

/* Responsive improvements */
@media (max-width: 1024px) {
    .auth-container {
        padding: 16px;
    }
}

@media (max-width: 640px) {
    .auth-notification {
        top: 10px;
        right: 10px;
        left: 10px;
        transform: translateY(-100px);
    }

    .auth-notification.show {
        transform: translateY(0);
    }
}

/* Исправления для интеграции с существующими стилями */
.login-form,
.register-form {
    background: transparent !important;
    border-radius: 0 !important;
    padding: 0 !important;
}

/* Скрытие пустых блоков валидации */
.validation-errors:empty,
.field-validation-error:empty,
.text-danger:empty {
    display: none !important;
}

/* Улучшенные стили для ошибок валидации */
.validation-errors {
    animation: slideInFromTop 0.3s ease-out;
}

@keyframes slideInFromTop {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Скрыть старые стили на новых страницах */
.page-content:has(.auth-container) {
    background: transparent !important;
    padding: 0 !important;
    margin-top: 0 !important;
}

/* Улучшения производительности */
.auth-card,
.decoration-circle,
.google-btn,
.form-input {
    will-change: transform;
    contain: layout style;
}

/* Сглаживание шрифтов */
.auth-container * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Дополнительные состояния для кнопок */
.submit-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none !important;
}

.submit-btn:disabled:hover {
    box-shadow: 0 4px 15px rgba(236, 96, 144, 0.4) !important;
}

/* Улучшенная типографика */
.auth-container {
    font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
}

/* Исправления для старых браузеров */
@supports not (backdrop-filter: blur(20px)) {
    .auth-card {
        background: rgba(39, 41, 42, 0.98) !important;
    }

    .google-btn {
        background: #ffffff !important;
    }
}

/* Touch-friendly improvements для мобильных */
@media (hover: none) and (pointer: coarse) {
    .form-input,
    .google-btn,
    .submit-btn {
        min-height: 44px;
    }

    .password-toggle-btn,
    .checkbox-custom {
        min-width: 44px;
        min-height: 44px;
    }
}

/* Безопасные зоны для iPhone X и новее */
@media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) {
    .auth-container {
        padding-top: max(20px, env(safe-area-inset-top));
        padding-bottom: max(20px, env(safe-area-inset-bottom));
    }
}

/* Дополнительные анимации для элементов */
.benefit-item {
    animation: slideInFromLeft 0.6s ease-out;
    animation-fill-mode: both;
}

.benefit-item:nth-child(1) { animation-delay: 0.1s; }
.benefit-item:nth-child(2) { animation-delay: 0.2s; }
.benefit-item:nth-child(3) { animation-delay: 0.3s; }

@keyframes slideInFromLeft {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Финальные полировки */
.auth-container a {
    color: inherit;
}

.auth-container a:hover {
    color: inherit;
}

/* Кастомные scrollbar для элементов с прокруткой */
.auth-card::-webkit-scrollbar {
    width: 4px;
}

.auth-card::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.05);
}

.auth-card::-webkit-scrollbar-thumb {
    background: rgba(236, 96, 144, 0.3);
    border-radius: 2px;
}

.auth-card::-webkit-scrollbar-thumb:hover {
    background: rgba(236, 96, 144, 0.5);
}
