/* ---- GLOBAL ---- */
body.login-body {
    margin: 0;
    padding: 0;
    background: #eef3ff;
    font-family: "Poppins", sans-serif;
}

.login-container {
    display: flex;
    height: 100vh;
}

/* ---- PARTIE GAUCHE ---- */
.login-left {
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ffffff;
    animation: fadeInLeft 0.8s ease;
}

.login-form-box {
    width: 85%;
    max-width: 380px;
}

.login-logo {
    width: 120px;
    margin-bottom: 10px;
}

.login-title {
    font-weight: 700;
    font-size: 28px;
}

.login-subtitle {
    color: #555;
    margin-bottom: 25px;
}

/* Inputs */
.login-input {
    border-radius: 12px;
    padding: 12px 15px;
    border: 1px solid #ccc;
    transition: 0.2s ease;
}

.login-input:focus {
    border-color: #5b3cf0;
    box-shadow: 0px 4px 15px rgba(93, 43, 255, 0.25);
    transform: scale(1.02);
}

/* Button */
.login-button {
    background: linear-gradient(90deg, #6a37ff, #965cff);
    color: white;
    padding: 12px;
    border-radius: 25px;
    font-weight: 600;
    transition: 0.25s ease;
}

.login-button:hover {
    transform: translateY(-2px);
    box-shadow: 0px 8px 20px rgba(93, 43, 255, 0.35);
}

/* ---- PARTIE DROITE ---- */
.login-right {
    width: 50%;
    position: relative;
    background: linear-gradient(135deg, #4b2ce8, #7e5bff);
    display: flex;
    justify-content: center;
    align-items: center;
    animation: fadeInRight 0.8s ease;
    overflow: hidden;
}

/* Fond wavy animé */
.login-right::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 200%;
    background: url('/images/waves.svg') repeat;
    opacity: 0.18;
    animation: waveMove 20s linear infinite;
}

/* Message */
.right-content {
    z-index: 2;
    color: white;
    text-align: center;
    max-width: 380px;
}

.right-content h1 {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 10px;
}

/* ---- ANIMATIONS ---- */

@keyframes waveMove {
    from { transform: translate(0,0); }
    to { transform: translate(-200px, -200px); }
}

@keyframes fadeInLeft {
    from { opacity: 0; transform: translateX(-50px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes fadeInRight {
    from { opacity: 0; transform: translateX(50px); }
    to { opacity: 1; transform: translateX(0); }
}

/* ---- RESPONSIVE ---- */
@media(max-width: 900px) {
    .login-container { flex-direction: column; }
    .login-left, .login-right { width: 100%; height: 50%; }
}
