/** Login — layout split-screen (shell + colonne formulaire) */
html, body { height: 100%; }

body {
    margin: 0;
    font-family: var(--font-sans);
    color: var(--gray-900);
    background: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.login-shell {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1.1fr 1fr;
}

.login-form-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 64px 48px;
    background: white;
}

.login-form {
    width: 100%;
    max-width: 380px;
    animation: formFadeIn 0.6s ease 0.1s both;
}

@keyframes formFadeIn {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}
