.cursor-pointer {cursor:pointer;}
.rounded-bottom-start {border-bottom-left-radius: 0.25rem!important;}
.rounded-bottom-end {border-bottom-right-radius: 0.25rem!important;}

.invalid-feedback {
    color: #dc3545!important;
}

.error-feedback {
    color: #dc3545!important;
}

/**
 * Състояния, които login.js / recovery.js слагат по формата.
 *
 * И двата класа са НОВИ имена нарочно: темите оформят кутията със съобщението
 * всяка по своему (`.auth-alert-box`, `.auth-feedback`, `.alert-danger`…) и
 * тук не искаме да се борим с тях — искаме само полето и бутонът да покажат,
 * че нещо не е наред и че заявката тече.
 */

input.auth-invalid,
.auth-invalid input {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 1px rgba(220, 53, 69, .18);
}

.auth-busy {
    opacity: .65;
    cursor: progress;
    pointer-events: none;
}

/**
 * Празната кутия не заема място и не се вижда, но щом login.js сложи текст,
 * `.auth-feedback-on` я връща във видимия поток.
 *
 * `:where()` е с нулева специфичност — правилото служи само на теми, които
 * нямат СВОЕ оформление за кутията (иначе тяхното винаги печели).
 */
:where(.auth-feedback-on) {
    display: block;
    margin-bottom: 1rem;
    padding: 10px 14px;
    border: 1px solid rgba(220, 53, 69, .25);
    border-radius: 8px;
    background: rgba(220, 53, 69, .07);
    font-size: .875rem;
    font-weight: 500;
    line-height: 1.45;
    text-align: center;
}
