/* General Body Styles */
body {
    font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    background: linear-gradient(to right, #0056b3, #007bff);
    /* Blue gradient, can be adapted to Kemenag's green/yellow */
    background-size: cover;
    min-height: 100vh;
    /* Ensure full viewport height */
    display: flex;
    /* Use flexbox for centering content */
    align-items: center;
    /* Center vertically */
    justify-content: center;
    /* Center horizontally */
}

/* Login Card Specific Styles */
.login-card {
    border-radius: 1rem;
    /* Rounded corners for the card */
    background: rgba(255, 255, 255, 0.95);
    /* Slightly transparent white background */
    backdrop-filter: blur(5px);
    /* Subtle blur effect */
    -webkit-backdrop-filter: blur(5px);
    /* For Safari */
    padding: 20px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
    /* More prominent shadow */
}

.login-card .card-title {
    color: #28a745;
    /* Green for Kemenag, or #0056b3 for blue */
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
}

/* Input Group Enhancements */
.input-group-text {
    background-color: #e9ecef;
    border-right: none;
    color: #495057;
    border-radius: .25rem 0 0 .25rem;
    /* Match input border-radius */
}

.form-control-lg {
    height: calc(2.5rem + 2px);
    /* Larger input fields */
    border-left: none;
    border-radius: 0 .25rem .25rem 0;
    /* Match input border-radius */
}

.form-control-lg:focus {
    box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
    /* Focus shadow for primary color */
}

/* Button Styles */
.btn-primary {
    background-color: #28a745;
    /* Kemenag Green */
    border-color: #28a745;
    /* Kemenag Green */
    font-weight: 600;
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.btn-primary:hover {
    background-color: #218838;
    /* Darker green on hover */
    border-color: #1e7e34;
}

.btn-outline-secondary {
    color: #6c757d;
    border-color: #6c757d;
    font-weight: 600;
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.btn-outline-secondary:hover {
    background-color: #6c757d;
    color: #fff;
}

/* Footer text */
.text-muted small {
    font-size: 0.85em;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .login-card {
        margin: 20px;
    }
}