
    * {
        box-sizing: border-box;
    }

    body {
        font-family: 'Segoe UI', Arial, sans-serif;
        margin: 0;
        background-color: #e9ecef;
        color: #343a40;
        line-height: 1.6;
        min-height: 100vh;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 20px;
    }

    .container {
        max-width: 600px; /* Reduced width for a more compact form */
        margin: 20px auto;
        padding: 0; /* Let card handle padding */
        position: relative;
        z-index: 2;
    }

    .card {
        background-color: #fff;
        border-radius: 8px;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
        padding: 20px;
        margin: 0;
    }

    .card-body {
        padding: 0; /* Bootstrap card-body padding is sufficient */
    }


.title.alert.alert-success,
.result.alert.alert-success {
    display: none;
}
    .alert {
        border-radius: 6px;
        margin-bottom: 20px;
        padding: 15px;
        font-size: 16px;
        text-align: center;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    }

    .alert-success {
        background-color: #d4edda;
        color: #155724;
        border-color: #c3e6cb;
    }

    .alert-warning {
        background-color: #fff3cd;
        color: #856404;
        border-color: #ffeeba;
    }

    .alert-info {
        background-color: #d1ecf1;
        color: #0c5460;
        border-color: #bee5eb;
    }

    .alert i {
        margin-right: 8px;
    }

    .alert ul {
        list-style-type: none;
        padding: 0;
        margin: 10px 0 0;
        text-align: left;
    }

    .alert ul li {
        margin: 5px 0;
    }

    .alert ul li a {
        color: #007bff;
        text-decoration: none;
        transition: color 0.3s;
    }

    .alert ul li a:hover {
        color: #ff4500;
        text-decoration: underline;
    }

    .form-control {
        border-radius: 4px;
        font-size: 16px;
        padding: 10px;
    }

    .input-group-text {
        background-color: #f8f9fa;
        border-color: #ced4da;
        color: #495057;
    }

    .btn-success {
        background-color: #28a745;
        border-color: #28a745;
        font-weight: 500;
        padding: 10px 20px;
        border-radius: 4px;
        transition: background-color 0.3s, transform 0.2s;
    }

    .btn-success:hover {
        background-color: #218838;
        border-color: #1e7e34;
        transform: translateY(-2px);
    }

    .btn-success i {
        margin-right: 5px;
    }

    p {
        font-size: 16px;
        margin: 10px 0;
        text-align: center;
    }

    footer {
        text-align: center;
        padding: 20px;
        color: #6c757d;
        width: 100%;
        z-index: 1;
        position: relative;
    }

    #corner-image {
        position: fixed;
        bottom: 10px;
        right: 10px;
        max-height: 150px;
        z-index: 4;
    }

    @media (max-width: 768px) {
        .container {
            margin: 15px;
        }

        h1 {
            font-size: 24px;
        }

        .alert {
            font-size: 14px;
            padding: 10px;
        }

        .form-control {
            font-size: 14px;
            padding: 8px;
        }

        .btn-success {
            padding: 8px 16px;
            font-size: 14px;
        }

        #corner-image {
            max-height: 100px;
            bottom: 5px;
            right: 5px;
        }

        footer {
            padding: 10px;
            font-size: 14px;
        }
    }
