    body {
        background: #f4f6f9;
        margin: 0;
        min-height: 100vh;
        font-family: 'Segoe UI', sans-serif;
    }

    /* Container that holds the card */
    .auth-container {
        width: 100%;
        /* let the container center the card while leaving header/footer in normal flow */
        min-height: calc(100vh - 56px); /* adjust 56px if your navbar height differs */
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    /* Make the card span almost the full viewport and remove side gutters */
    .auth-card {
        border-radius: 0;
        overflow: hidden;
        background: white;
        width: 100vw;
        max-width: 1400px; /* constrain so very large screens look ok */
        margin: 0;
        display: flex;
        flex-direction: row;
        align-items: stretch;
        max-height: calc(100vh - 80px);
    }

    /* Panels: make right-panel take most of the white space */
    .left-panel {
        background: #1abc9c;
        color: white;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        text-align: center;
        flex: 0 0 28%;    /* shrink left side to ~28% */
        max-width: 28%;
        padding: 40px;
        min-width: 220px;
    }

    .right-panel {
        background: white;
        padding: 40px;                 /* reduce padding so form has more room */
        display: flex;
        flex-direction: column;
        justify-content: center;
        flex: 1 1 72%;                 /* right panel occupies ~72% */
        max-width: 72%;
        min-width: 420px;
    }

    /* Avatar and left-panel text */
    .avatar {
        width: 220px;
        height: 220px;
        object-fit: contain;
    }

    .left-panel h1 {
        font-weight: bold;
        font-size: 48px;
        margin-top: 20px;
    }

    .divider {
        width: 140px;
        border: 2px solid white;
        opacity: 1;
    }

    .left-panel p {
        font-size: 20px;
        margin-top: 12px;
    }

    /* Form styling: make inputs and button stretch to fill the available form width */
    .right-panel h2 {
        text-align: center;
        color: #2C3E50;
        font-weight: bold;
        margin-bottom: 20px;
    }

    .subtitle {
        text-align: center;
        color: gray;
        margin-bottom: 40px;
    }

    .custom-input {
        border: none;
        border-bottom: 2px solid #dcdcdc;
        border-radius: 0;
        box-shadow: none;
        padding: 15px;
        width: 100%;
        max-width: none;
        box-sizing: border-box;
    }

    /* Make the form use most of the right-panel width */
    .form-inner {
        width: 90%;            /* now nearly full width of right panel */
        margin: 0 auto;
        max-width: 900px;
    }

    /* If you prefer the form to use nearly all the right panel, increase the width above */
    .login-btn {
        background: #2C3E50;
        color: white;
        padding: 15px;
        border-radius: 8px;
        font-weight: bold;
        width: 100%;
        display: block;
        border: none;
    }

    .login-btn:hover {
        background: #17a589;
        color: white;
    }

    a {
        color: #1abc9c;
        text-decoration: none;
    }

    a:hover {
        text-decoration: underline;
    }

    /* Responsive: stack on small screens and remove fixed widths */
    @media (max-width: 991px) {
        .auth-card {
            flex-direction: column;
            width: 100%;
            height: auto;
            margin: 0;
            max-height: none;
        }

        .left-panel, .right-panel {
            padding: 30px;
            flex: 1 1 auto;
            max-width: 100%;
        }

        .left-panel {
            order: -1; /* show left panel above on small screens if desired */
        }

        .avatar {
            width: 160px;
            height: 160px;
        }

        .form-inner {
            width: 100%;
            padding: 0 10px;
        }

        .custom-input {
            width: 100%;
        }

        .login-btn {
            width: 100%;
        }
    }
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: 'Segoe UI', sans-serif;
    background: #f4f6f9;
}

/* Container that holds the card - full width and full available height */
.auth-container {
    width: 100vw;
    height: calc(100vh - 56px); /* adjust 56px if your navbar height differs */
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: stretch; /* let child fill vertical space */
}

/* Card stretches edge-to-edge inside the container */
.auth-card {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border-radius: 0;
    overflow: hidden;
    background: white;
    box-shadow: none;
    max-width: none;
}

/* Left panel kept but minimized so right panel owns the white area */
.left-panel {
    flex: 0 0 20%;      /* occupies 20% of width */
    max-width: 20%;
    min-width: 180px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #1abc9c;
    color: #fff;
}

/* Right panel takes the remaining width and full height */
.right-panel {
    flex: 1 1 80%;
    padding: 30px 40px; /* reduced padding so form can expand */
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    min-width: 320px;
}

/* Make form fill the right panel */
.form-inner {
    width: 100%;
    max-width: none;
    padding: 0 10px;
    box-sizing: border-box;
}

/* Inputs and button stretch */
.custom-input {
    width: 100%;
    box-sizing: border-box;
}

.login-btn {
    width: 100%;
    display: block;
    padding: 14px;
    border-radius: 6px;
}

/* Small screens: stack and still occupy full width */
@media (max-width: 991px) {
    .auth-container {
        height: auto;
        min-height: 100vh;
    }

    .auth-card {
        flex-direction: column;
        height: auto;
    }

    .left-panel {
        order: -1;
        width: 100%;
        max-width: 100%;
        flex: 0 0 auto;
    }

    .right-panel {
        width: 100%;
        max-width: 100%;
        flex: 0 0 auto;
        padding: 24px;
    }

    .form-inner {
        width: 100%;
        padding: 0;
    }
}
body {
    background: #f4f6f9;
    margin: 0;
    min-height: 100vh;
    font-family: 'Segoe UI', sans-serif;
}

/* Container that holds the card */
.auth-container {
    width: 100%;
    /* let the container center the card while leaving header/footer in normal flow */
    min-height: calc(100vh - 56px); /* adjust 56px if your navbar height differs */
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Make the card span almost the full viewport and remove side gutters */
.auth-card {
    border-radius: 0;
    overflow: hidden;
    background: white;
    width: 100vw;
    max-width: 1400px; /* constrain so very large screens look ok */
    margin: 0;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    max-height: calc(100vh - 80px);
}

/* Panels: make right-panel take most of the white space */
.left-panel {
    background: #1abc9c;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex: 0 0 28%;    /* shrink left side to ~28% */
    max-width: 28%;
    padding: 40px;
    min-width: 220px;
}

.right-panel {
    background: white;
    padding: 40px;                 /* reduce padding so form has more room */
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1 1 72%;                 /* right panel occupies ~72% */
    max-width: 72%;
    min-width: 420px;
}

/* Avatar and left-panel text */
.avatar {
    width: 220px;
    height: 220px;
    object-fit: contain;
}

.left-panel h1 {
    font-weight: bold;
    font-size: 48px;
    margin-top: 20px;
}

.divider {
    width: 140px;
    border: 2px solid white;
    opacity: 1;
}

.left-panel p {
    font-size: 20px;
    margin-top: 12px;
}

/* Form styling: make inputs and button stretch to fill the available form width */
.right-panel h2 {
    text-align: center;
    color: #2C3E50;
    font-weight: bold;
    margin-bottom: 20px;
}

.subtitle {
    text-align: center;
    color: gray;
    margin-bottom: 40px;
}

.custom-input {
    border: none;
    border-bottom: 2px solid #dcdcdc;
    border-radius: 0;
    box-shadow: none;
    padding: 15px;
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

/* Make the form use most of the right-panel width */
.form-inner {
    width: 90%;            /* now nearly full width of right panel */
    margin: 0 auto;
    max-width: 900px;
}

/* If you prefer the form to use nearly all the right panel, increase the width above */
.login-btn {
    background: #2C3E50;
    color: white;
    padding: 15px;
    border-radius: 8px;
    font-weight: bold;
    width: 100%;
    display: block;
    border: none;
}

.login-btn:hover {
    background: #17a589;
    color: white;
}

a {
    color: #1abc9c;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* Responsive: stack on small screens and remove fixed widths */
@media (max-width: 991px) {
    .auth-card {
        flex-direction: column;
        width: 100%;
        height: auto;
        margin: 0;
        max-height: none;
    }

    .left-panel, .right-panel {
        padding: 30px;
        flex: 1 1 auto;
        max-width: 100%;
    }

    .left-panel {
        order: -1; /* show left panel above on small screens if desired */
    }

    .avatar {
        width: 160px;
        height: 160px;
    }

    .form-inner {
        width: 100%;
        padding: 0 10px;
    }

    .custom-input {
        width: 100%;
    }

    .login-btn {
        width: 100%;
    }
}
body {
    background: #f4f6f9;
    margin: 0;
    min-height: 100vh;
    font-family: 'Segoe UI', sans-serif;
}

/* Container that holds the card */
.auth-container {
    width: 100%;
    /* let the container center the card while leaving header/footer in normal flow */
    min-height: calc(100vh - 56px); /* adjust 56px if your navbar height differs */
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Make the card span almost the full viewport and remove side gutters */
.auth-card {
    border-radius: 0;
    overflow: hidden;
    background: white;
    width: 100vw;         /* use full viewport width */
    max-width: 100%;
    margin: 0;            /* remove margins so panels reach edges */
    display: flex;
    flex-direction: row;
    align-items: stretch;
    /* don't force the whole page to be a single viewport-tall flex item */
    max-height: calc(100vh - 80px);
}

/* Panels: let them take remaining space with a controlled ratio */
.left-panel {
    background: #1abc9c;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex: 0 0 42%;    /* change the 42% to make left side wider/narrower */
    max-width: 42%;
    padding: 40px;
}

.right-panel {
    background: white;
    padding: 70px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1 1 58%;    /* remaining space (58%); adjust to taste */
    max-width: 58%;
    min-width: 320px;
}

/* Avatar and left-panel text */
.avatar {
    width: 220px;
    height: 220px;
    object-fit: contain;
}

.left-panel h1 {
    font-weight: bold;
    font-size: 48px;
    margin-top: 20px;
}

.divider {
    width: 140px;
    border: 2px solid white;
    opacity: 1;
}

.left-panel p {
    font-size: 20px;
    margin-top: 12px;
}

/* Form styling: make inputs and button stretch to fill the available form width */
.right-panel h2 {
    text-align: center;
    color: #2C3E50;
    font-weight: bold;
    margin-bottom: 20px;
}

.subtitle {
    text-align: center;
    color: gray;
    margin-bottom: 40px;
}

.custom-input {
    border: none;
    border-bottom: 2px solid #dcdcdc;
    border-radius: 0;
    box-shadow: none;
    padding: 15px;
    width: 100%;           /* full width of form container */
    max-width: none;       /* remove previous constraints */
    box-sizing: border-box;
}

/* Constrain form inner column to a percentage so it looks centered but fills space */
.form-inner {
    width: 70%;            /* the inner column width inside the right panel */
    margin: 0 auto;
    max-width: 700px;
}

/* If you prefer the form to use nearly all the right panel, increase the width above */
.login-btn {
    background: #2C3E50;
    color: white;
    padding: 15px;
    border-radius: 8px;
    font-weight: bold;
    width: 100%;           /* fill the form-inner width */
    display: block;
    border: none;
}

.login-btn:hover {
    background: #17a589;
    color: white;
}

a {
    color: #1abc9c;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* Responsive: stack on small screens and remove fixed widths */
@media (max-width: 991px) {
    .auth-card {
        flex-direction: column;
        width: 100%;
        height: auto;
        margin: 0;
        max-height: none;
    }

    .left-panel, .right-panel {
        padding: 30px;
        flex: 1 1 auto;
        max-width: 100%;
    }

    .avatar {
        width: 160px;
        height: 160px;
    }

    .form-inner {
        width: 100%;
        padding: 0 10px;
    }

    .custom-input {
        width: 100%;
    }

    .login-btn {
        width: 100%;
    }
}
body {
    background: #f4f6f9;
    margin: 0;
    min-height: 100vh;
    font-family: 'Segoe UI', sans-serif;
}

/* Container that holds the card */
.auth-container {
    width: 100%;
    /* let the container center the card while leaving header/footer in normal flow */
    min-height: calc(100vh - 56px); /* adjust 56px if your navbar height differs */
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Make the card span almost the full viewport and remove side gutters */
.auth-card {
    border-radius: 0;
    overflow: hidden;
    background: white;
    width: 100vw;
    max-width: 1400px; /* constrain so very large screens look ok */
    margin: 0;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    max-height: calc(100vh - 80px);
}

/* Panels: make right-panel take most of the white space */
.left-panel {
    background: #1abc9c;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex: 0 0 28%;    /* shrink left side to ~28% */
    max-width: 28%;
    padding: 40px;
    min-width: 220px;
}

.right-panel {
    background: white;
    padding: 40px;                 /* reduce padding so form has more room */
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1 1 72%;                 /* right panel occupies ~72% */
    max-width: 72%;
    min-width: 420px;
}

/* Avatar and left-panel text */
.avatar {
    width: 220px;
    height: 220px;
    object-fit: contain;
}

.left-panel h1 {
    font-weight: bold;
    font-size: 48px;
    margin-top: 20px;
}

.divider {
    width: 140px;
    border: 2px solid white;
    opacity: 1;
}

.left-panel p {
    font-size: 20px;
    margin-top: 12px;
}

/* Form styling: make inputs and button stretch to fill the available form width */
.right-panel h2 {
    text-align: center;
    color: #2C3E50;
    font-weight: bold;
    margin-bottom: 20px;
}

.subtitle {
    text-align: center;
    color: gray;
    margin-bottom: 40px;
}

.custom-input {
    border: none;
    border-bottom: 2px solid #dcdcdc;
    border-radius: 0;
    box-shadow: none;
    padding: 15px;
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

/* Make the form use most of the right-panel width */
.form-inner {
    width: 90%;            /* now nearly full width of right panel */
    margin: 0 auto;
    max-width: 900px;
}

/* If you prefer the form to use nearly all the right panel, increase the width above */
.login-btn {
    background: #2C3E50;
    color: white;
    padding: 15px;
    border-radius: 8px;
    font-weight: bold;
    width: 100%;
    display: block;
    border: none;
}

.login-btn:hover {
    background: #17a589;
    color: white;
}

a {
    color: #1abc9c;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* Responsive: stack on small screens and remove fixed widths */
@media (max-width: 991px) {
    .auth-card {
        flex-direction: column;
        width: 100%;
        height: auto;
        margin: 0;
        max-height: none;
    }

    .left-panel, .right-panel {
        padding: 30px;
        flex: 1 1 auto;
        max-width: 100%;
    }

    .left-panel {
        order: -1; /* show left panel above on small screens if desired */
    }

    .avatar {
        width: 160px;
        height: 160px;
    }

    .form-inner {
        width: 100%;
        padding: 0 10px;
    }

    .custom-input {
        width: 100%;
    }

    .login-btn {
        width: 100%;
    }
}
body {
    background: #f4f6f9;
    margin: 0;
    min-height: 100vh;
    font-family: 'Segoe UI', sans-serif;
}

/* Container that holds the card */
.auth-container {
    width: 100%;
    /* let the container center the card while leaving header/footer in normal flow */
    min-height: calc(100vh - 56px); /* adjust 56px if your navbar height differs */
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Make the card span almost the full viewport and remove side gutters */
.auth-card {
    border-radius: 0;
    overflow: hidden;
    background: white;
    width: 100vw;         /* use full viewport width */
    max-width: 100%;
    margin: 0;            /* remove margins so panels reach edges */
    display: flex;
    flex-direction: row;
    align-items: stretch;
    /* don't force the whole page to be a single viewport-tall flex item */
    max-height: calc(100vh - 80px);
}

/* Panels: let them take remaining space with a controlled ratio */
.left-panel {
    background: #1abc9c;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex: 0 0 42%;    /* change the 42% to make left side wider/narrower */
    max-width: 42%;
    padding: 40px;
}

.right-panel {
    background: white;
    padding: 70px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1 1 58%;    /* remaining space (58%); adjust to taste */
    max-width: 58%;
    min-width: 320px;
}

/* Avatar and left-panel text */
.avatar {
    width: 220px;
    height: 220px;
    object-fit: contain;
}

.left-panel h1 {
    font-weight: bold;
    font-size: 48px;
    margin-top: 20px;
}

.divider {
    width: 140px;
    border: 2px solid white;
    opacity: 1;
}

.left-panel p {
    font-size: 20px;
    margin-top: 12px;
}

/* Form styling: make inputs and button stretch to fill the available form width */
.right-panel h2 {
    text-align: center;
    color: #2C3E50;
    font-weight: bold;
    margin-bottom: 20px;
}

.subtitle {
    text-align: center;
    color: gray;
    margin-bottom: 40px;
}

.custom-input {
    border: none;
    border-bottom: 2px solid #dcdcdc;
    border-radius: 0;
    box-shadow: none;
    padding: 15px;
    width: 100%;           /* full width of form container */
    max-width: none;       /* remove previous constraints */
    box-sizing: border-box;
}

/* Constrain form inner column to a percentage so it looks centered but fills space */
.form-inner {
    width: 70%;            /* the inner column width inside the right panel */
    margin: 0 auto;
    max-width: 700px;
}

/* If you prefer the form to use nearly all the right panel, increase the width above */
.login-btn {
    background: #2C3E50;
    color: white;
    padding: 15px;
    border-radius: 8px;
    font-weight: bold;
    width: 100%;           /* fill the form-inner width */
    display: block;
    border: none;
}

.login-btn:hover {
    background: #17a589;
    color: white;
}

a {
    color: #1abc9c;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

/* Responsive: stack on small screens and remove fixed widths */
@media (max-width: 991px) {
    .auth-card {
        flex-direction: column;
        width: 100%;
        height: auto;
        margin: 0;
        max-height: none;
    }

    .left-panel, .right-panel {
        padding: 30px;
        flex: 1 1 auto;
        max-width: 100%;
    }

    .avatar {
        width: 160px;
        height: 160px;
    }

    .form-inner {
        width: 100%;
        padding: 0 10px;
    }

    .custom-input {
        width: 100%;
    }

    .login-btn {
        width: 100%;
    }
}
