/* Login Page Custom Styles */

/* Input wrapper positioning */
.login-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

/* Ensure padding-left stays fixed so text NEVER overlaps the left icon in text or password mode */
.login-input-wrapper input[type="text"],
.login-input-wrapper input[type="email"],
.login-input-wrapper input[type="password"] {
    padding-left: 2.75rem !important;
    padding-right: 2.75rem !important;
    background-image: none !important; /* prevent classless.css bg image conflicts */
    height: 2.75rem !important;
    min-height: 2.75rem !important;
    margin-bottom: 0 !important;
    line-height: 1.5 !important;
}

/* Vertical centering for left icon */
.login-input-icon {
    position: absolute !important;
    left: 0.85rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    pointer-events: none !important;
    user-select: none !important;
    z-index: 10 !important;
}

/* Vertical centering & sizing for toggle password button */
.toggle-password-btn,
button.toggle-password-btn {
    position: absolute !important;
    right: 0.75rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 1.75rem !important;
    width: 1.75rem !important;
    min-height: 0 !important;
    min-width: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: #94a3b8 !important;
    cursor: pointer !important;
    transition: color 0.15s ease-in-out !important;
    border-radius: 0.375rem !important;
    z-index: 10 !important;
}

.toggle-password-btn:hover,
button.toggle-password-btn:hover {
    color: #16a34a !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

.dark .toggle-password-btn,
.dark button.toggle-password-btn {
    color: #64748b !important;
}

.dark .toggle-password-btn:hover,
.dark button.toggle-password-btn:hover {
    color: #34d399 !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* Toggle password icon sizing */
.toggle-password-icon {
    font-size: 1.15rem !important;
    line-height: 1 !important;
}

/* Image opacity in dark mode */
.dark img[src*="inferior.jpg"] {
    opacity: 0.85;
}
