/* Focused fixes for captcha controls and the login/register UI. */
#login-modal.modal {
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

.captcha-img-container .captcha-reload {
    -webkit-appearance: none;
    appearance: none;
    display: inline-flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    min-width: 42px;
    height: 42px;
    margin-inline-start: 10px;
    margin-inline-end: 0;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    background: linear-gradient(135deg, var(--ac-primary, #7c4dff), var(--ac-primary-2, #4263ff));
    color: #ffffff !important;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(66, 99, 255, 0.28);
    transition: box-shadow 0.2s ease, filter 0.2s ease;
}

.captcha-img-container .captcha-reload:hover {
    color: #ffffff !important;
    filter: brightness(1.08);
    box-shadow: 0 10px 24px rgba(66, 99, 255, 0.38);
}

.captcha-img-container .captcha-reload:focus-visible {
    outline: 2px solid var(--ac-cyan, #36c8e8) !important;
    outline-offset: 3px;
}

.captcha-img-container .captcha-reload-icon {
    display: block;
    width: 21px;
    height: 21px;
    pointer-events: none;
}

#register-submit-container > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    border: 1px solid var(--ac-border-strong, rgba(173, 186, 230, 0.28));
    background: rgba(255, 255, 255, 0.08);
    color: var(--ac-text, #f7f8ff) !important;
    box-shadow: none;
}

#register-submit-container > a:hover {
    border-color: rgba(113, 104, 255, 0.45);
    background: rgba(113, 104, 255, 0.14);
    color: #ffffff !important;
}
