/* Login Page Styles - app.login.css */

:root {
    --login-bg-left: #111317;  /* Slightly darker left panel */
    --login-bg-right: #161920; /* Slightly lighter right panel for contrast */
    --login-accent: #0d6efd;
}

body, html {
    height: 100%;
    margin: 0;
    overflow: hidden; /* Prevent scrolling on desktop if not needed */
}

.login-container {
    display: flex;
    height: 100vh;
    width: 100vw;
}

/* Left Side - Image/Brand */
.login-left {
    flex: 1;
    background-color: var(--login-bg-left);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 2rem;
}

/* Right Side - Form */
.login-right {
    flex: 1;
    background-color: var(--login-bg-right);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
}

.login-card {
    width: 100%;
    max-width: 400px;
    background: transparent; /* Seamless look */
}

/* Input Styling for Dark Mode in Context */
.form-control.dark-input {
    background-color: rgba(0, 0, 0, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #fff;
}

.form-control.dark-input:focus {
    background-color: rgba(0, 0, 0, 0.3);
    border-color: var(--login-accent);
    color: #fff;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.form-control.dark-input::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

/* Responsive Handling */
@media (max-width: 768px) {
    body, html {
        overflow: auto; /* Allow scroll on mobile */
    }

    .login-container {
        flex-direction: column;
        height: auto;
        min-height: 100vh;
    }

    .login-left {
        min-height: 250px; /* Smaller image area on mobile */
        flex: 0 0 auto;
    }
    
    .login-right {
        flex: 1 0 auto;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
}
