/* Сообщение об ошибке */
.custom-error-message {
    position: fixed;
    right: 20px;
    bottom: 20px;
    background: #eaeaea;
    color: #f70000 !important;
    padding: 10px 15px;
    border-radius: 5px;
    font-size: 14px;
    line-height: 18px;
    font-family: 'Montserrat', Arial, sans-serif;
    display: none;
    max-width: 250px;
    z-index: 99999;
    transition: opacity 0.3s ease-in-out;
    padding: 16px;
}

/* Красная обводка у поля */
.invalid-input {
    border: 1px solid #f70000 !important;
    color: #f70000 !important;
}

/* Сообщение на мобильных устройствах - центрируется */
@media screen and (max-width: 640px) {
    .custom-error-message {
        transform: translateX(3%);
        bottom: 10px;
        font-size: 10px;
        max-width: 90%;
        text-align: center;
        font-size: 12px;
        line-height: 16px;
        padding: 16px;
        max-width: 90% !important;
    }
}

button:disabled {
    opacity: 0.5;
    cursor: default;
}