@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600&display=swap');

* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Poppins', sans-serif; }

body { 
    background-color: #e2e8f0; 
    display: flex; 
    justify-content: center; 
    align-items: center; 
    min-height: 100vh; 
    padding: 20px; 
}

.main-card { 
    display: flex; 
    background: white; 
    width: 100%;
    max-width: 850px; 
    min-height: 550px; 
    height: auto;
    border-radius: 30px; 
    box-shadow: 0 20px 50px rgba(0,0,0,0.1); 
    overflow: hidden; 
}

.left-panel { 
    flex: 1.2; 
    background-color: #7d97f4; 
    color: white; 
    display: flex; 
    flex-direction: column; 
    justify-content: center; 
    align-items: center; 
    padding: 40px; 
    border-top-right-radius: 180px; 
    border-bottom-right-radius: 180px; 
    text-align: center;
}

.register-link-btn { 
    padding: 12px 50px; 
    border: 2px solid white; 
    border-radius: 12px; 
    color: white; 
    text-decoration: none; 
    font-weight: 600; 
    margin-top: 20px; 
    transition: 0.3s;
}

.register-link-btn:hover { background: white; color: #7d97f4; }

.right-panel { 
    flex: 1; 
    padding: 40px 50px; 
    display: flex; 
    flex-direction: column; 
    justify-content: center; 
}

.right-panel h2 { font-size: 28px; margin-bottom: 10px; }

form input { 
    width: 100%; 
    padding: 12px; 
    background: #f1f5f9; 
    border: none; 
    border-radius: 10px; 
    margin-top: 5px; 
    outline: none; 
    margin-bottom: 10px; 
}

.forgot-link { text-align: right; margin-bottom: 15px; }
.forgot-link a { font-size: 12px; color: #7d97f4; text-decoration: none; }

.submit-btn { 
    width: 100%; 
    padding: 14px; 
    background-color: #7d97f4; 
    color: white; 
    border: none; 
    border-radius: 10px; 
    font-weight: bold; 
    cursor: pointer; 
    transition: 0.3s; 
}
.submit-btn:hover { background-color: #637edb; }

/* Social Section */
.social-section { text-align: center; margin-top: 20px; }
.social-section p { font-size: 13px; color: #888; margin-bottom: 10px; }

.social-icons { display: flex; justify-content: center; }
.social-icons .icon { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 10px; 
    padding: 10px 20px; 
    border: 1px solid #ddd; 
    border-radius: 10px; 
    text-decoration: none; 
    color: #333; 
    font-size: 14px; 
    transition: 0.3s;
    width: 100%;
}
.social-icons .icon:hover { background: #f8fafc; border-color: #7d97f4; }
.social-icons .icon img { width: 22px !important; height: 22px; }
.google-btn {
            margin-top: 15px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: white;
            color: black;
            padding: 12px;
            text-decoration: none;
            font-weight: 500;
            gap: 10px;
            border-radius: 4px;
            transition: 0.3s ease;
        }

        .google-btn:hover {
            background: #f1f1f1;
        }
.divider {
    display: flex;
    align-items: center;
    text-align: center;
    margin: 20px 0;
    color: #888;
    font-size: 14px;
}

.divider::before,
.divider::after {
    content: "";
    flex: 1;
    border-bottom: 1px solid #ddd;
}

.divider:not(:empty)::before {
    margin-right: 15px; 
}

.divider:not(:empty)::after {
    margin-left: 15px;
}        
/* Responsive Media Queries */
@media (max-width: 850px) {
    .main-card { flex-direction: column; max-width: 500px; }
    .left-panel { 
        border-radius: 0 0 100px 100px; 
        padding: 50px 20px;
    }
    .right-panel { padding: 40px 30px; }
}
