/* Общие стили для контейнера */
main.container {
    max-width: 400px;
    padding: 2rem;
    border: 1px solid #e0b0ff; /* Светло-фиолетовая граница (светлая тема) */
    border-radius: 3vw;
    margin-top: 3rem;
    background-color: #fff; /* Белый фон (светлая тема) */
}

/* Стили для заголовка */
h1 {
    text-align: center;
    color: #a78cd3; /* Нежный фиолетовый цвет (светлая тема) */
    margin-bottom: 1.5rem;
}

/* Стили для формы */
form {
    display: flex;
    flex-direction: column;
}

label {
    font-weight: bold;
    margin-bottom: 0.5rem;
    color: #d689c1; /* Розовый цвет для меток (светлая тема) */
}

input[type="text"],
input[type="password"],
input[type="email"] {
    padding: 0.75rem;
    margin-bottom: 1rem;
    border: 1px solid #d689c1; /* Розовая граница для полей ввода (светлая тема) */
    border-radius: 3vw;
    font-size: 1rem;
    background-color: #fff; /* Белый фон полей ввода (светлая тема) */
    color: #333; /* Темный цвет текста в полях ввода (светлая тема) */
}

button[type="submit"] {
    background-color: #c77dff; /* Яркий фиолетовый цвет кнопки (светлая тема) */
    color: #fff; /* Белый текст кнопки (светлая тема) */
    padding: 0.8rem 1.5rem;
    border: none;
    border-radius: 3vw;
    cursor: pointer;
    font-size: 1.1rem;
    transition: background-color 0.3s ease;
}

button[type="submit"]:hover {
    background-color: #b159d3; /* Более темный фиолетовый при наведении (светлая тема) */
}

/* Стили для сообщения об ошибке (если используются flash messages) */
ul {
    list-style: none;
    padding: 0;
    margin-bottom: 1rem;
    background-color: #ffe6f9; /* Очень светло-розовый фон (светлая тема) */
    border: 3px solid #f06292; /* Розовая граница (светлая тема) */
    color: #f06292; /* Розовый текст (светлая тема) */
    padding: 0.75rem;
    border-radius: 16px;
}

ul li {
    margin-bottom: 0.25rem;
}

/* Стили для ссылки на регистрацию */
p {
    text-align: center;
    margin-top: 1.5rem;
    color: #00000000; /* Более нейтральный серый (светлая тема) */
}

p a {
    color: #c77dff; /* Фиолетовый цвет ссылки (светлая тема) */
    text-decoration: none;
}

p a:hover {
    text-decoration: underline;
}

/* Стили для футера */
footer {
    margin-top: 3rem;
    text-align: center;
    color: #aaa; /* Светло-серый цвет футера (светлая тема) */
}

/* Темная тема */
@media (prefers-color-scheme: dark) {
    body {
        background-color: #1e1e1e; /* Темно-серый фон */
        color: #d4d4d4; /* Светло-серый текст */
    }

    main.container {
        background-color: #333; /* Темно-серый фон контейнера */
        border-color: #a78cd3; /* Светло-фиолетовая граница */
    }

    h1 {
        color: #d689c1; /* Розовый цвет */
    }

    label {
        color: #c77dff; /* Яркий фиолетовый */
    }

    input[type="text"],
    input[type="password"] {
        background-color: #444; /* Еще темнее фон полей ввода */
        color: #eee; /* Светлый текст в полях ввода */
        border-color: #c77dff; /* Яркий фиолетовый */
    }

    button[type="submit"] {
        background-color: #f06292; /* Розовый цвет кнопки */
        color: #1e1e1e; /* Темный текст кнопки */
    }

    button[type="submit"]:hover {
        background-color: #e33371; /* Более темный розовый при наведении */
    }

    ul {
        background-color: #552c55; /* Темно-фиолетовый фон ошибки */
        border-color: #f77eb9; /* Яркая розовая граница ошибки */
        color: #f77eb9; /* Яркий розовый текст ошибки */
    }

    p {
        color: #bbb;
    }

    p a {
        color: #d1aaff; /* Светлый фиолетовый цвет ссылки */
    }

    footer {
        color: #777;
    }
}