/* Auth Pages Shared Styles */

.is-hidden {
    display: none !important;
}

.theme-toggle-btn {
    background-color: var(--theme-primary);
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 1050;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    transition: all 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    border: none;
    color: #fff;
}

.theme-toggle-btn:hover {
    transform: rotate(15deg) scale(1.1);
}

.theme-toggle {
    background: transparent;
    border: none;
    color: inherit;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.form-control:focus {
    box-shadow: 0 0 0 0.25rem rgba(var(--theme-primary-rgb), 0.25);
    border-color: var(--theme-primary);
}

.btn-primary {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-weight: 600;
}

/* Fix for password toggle overlap with validation icon */
.form-control.is-invalid ~ [data-password-toggle] {
    right: 2rem !important;
}

.form-control.is-invalid {
    padding-right: 4.5rem !important;
}
