.mainBody {
    background-color: #caedf1;
    min-height: 100vh; /* Ensures the body takes full viewport height */
    display: flex;
    align-items: center;
    justify-content: center;
}

.mainBody .card {
    border-radius: 15px;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
    max-width: 400px; /* Ensures the card doesn't get too wide on larger screens */
    width: 100%; /* Full width on smaller screens */
    min-height: 450px; /* Set a minimum height */
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center; /* Vertically center the content */
}

.mainBody .mainCard {
    background-color: #0c0765;
    height: 5px;
}

.mainBody .btnSize {
    width: 100%; /* Full width button for all screens */
}

.forgot {
    text-decoration: none;
    color: black;
}

.mainBody .card img {
    width: 180px;
    height: 180px;
    margin-bottom: 20px;
}

@media (min-width: 768px) {
    .mainBody .card {
        max-width: 450px; /* Slightly wider on medium and up screens */
    }
}


#error-message {
    color: red;
    display: none;

}

.invalid-feedback {
    color: red;
    display: block;
}


.fixed-footer {
    /* position: fixed; */
    bottom: 0;
    width: 100%;
    height: 60px; /* Adjust based on your design */
    background-color: #004378; /* Dark background */
    color: #000000;
}


.spinner {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
  }
  
  @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
  }


  .adminroles{
    color: #1313eb;
  }

  .bodybg{
    background-color: #f4eaea;
  }

  .text-green {
    color: green;
    /* Success color */
}

.text-danger {
    color: red;
    /* Error color */
}

.invalid-feedback {
    display: block;
    /* Ensures the feedback is visible */
}



 /* html, body {
    height: 100%;
    margin: 0;
} */

.page-wrapper {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    
}

.footer {
    background: linear-gradient(45deg, #003366, #006699);
    color: #ffffff;
    font-size: 14px;
    padding: 12px 0;
    margin-top: auto;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.15);
}

.footer h6 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
    color: #ffffff;
}

.footer small, .footer p {
    color: #e0e0e0;
    margin: 0;
}

.footer a {
    color: #ffffff;
    text-decoration: underline dotted;
}

.footer a:hover {
    color: #ffdd57;
    text-decoration: underline;
}


        .navbar {
                   background: linear-gradient(90deg, rgb(235, 153, 153), #990000, #990000);
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
        }

        .navbar-brand img {
            border-radius: 10px;
        }

        .navbar-brand span {
            font-size: 1.2rem;
            color: #fff;
        }

        .nav-link {
            color: #ffffff !important;
            font-weight: 500;
            transition: 0.3s;
        }

        .nav-link:hover {
            color: #ffd700 !important;
        }

        .admin-info p {
            margin: 0;
            font-size: 14px;
            color: #f8f9fa;
        }

        .logout-btn {
            margin-left: 1rem;
            font-weight: 600;
            border-radius: 20px;
        }

        .main-container {
            background-color: #f4eaea;
            padding: 20px;
            border-radius: 10px;
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
            margin-top: 100px;
        }

        .main-container h2 {
            font-weight: 700;
            color: #004080;
            text-align: center;
        }

        @media (max-width: 767px) {
            .admin-info {
                flex-direction: column;
                align-items: flex-start;
                margin-top: 1rem;
            }
            .logout-btn {
                margin-left: 0;
                margin-top: 0.5rem;
            }
        }


 .card {
    border-radius: 16px;
    transition: all 0.3s ease-in-out;
      background-color: #e6f2ff;
}

.maincard:hover {
    transform: scale(1.02);
    box-shadow: 0 8px 16px rgba(0,0,0,0.1);
}
.card .fs-1 {
    font-size: 2.5rem !important;
}


.paymentqr{
    max-height: 150px;
    max-width: 150px;
}


/* Email preview styles */
.email-preview-container {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    font-family: Arial, sans-serif;
    border: 1px solid #ddd;
    border-radius: 6px;
    overflow: hidden;
}
.email-preview-header {
    text-align: center;
    padding: 20px;
}
.email-preview-logo {
    max-width: 150px;
    height: auto;
}
.email-preview-title {
    background-color: #007bff;
    color: #fff;
    padding: 16px;
    text-align: center;
    font-size: 20px;
    margin: 0;
}
.email-preview-body {
    padding: 20px;
    font-size: 16px;
    color: #333;
    line-height: 1.6;
}
.email-preview-footer {
    background-color: #f5f5f5;
    padding: 12px;
    text-align: center;
    font-size: 13px;
    color: #777;
    border-top: 1px solid #ddd;
}
.payment-details {
    margin-top: 20px;
}
.payment-details h4 {
    color: #007bff;
    margin-bottom: 10px;
}
.payment-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 10px;
}
.payment-table td {
    padding: 8px 0;
    border-bottom: 1px solid #eee;
}
.payment-table td:first-child {
    width: 40%;
    font-weight: bold;
}


.spinner-border {
    vertical-align: middle;
    margin-left: 5px;
}


    #emailPreview {
    overflow: auto;
    max-height: 500px;
    background-color: #fff;
}

#emailPreview img {
    max-width: 100%;
    height: auto;
}

#emailPreview table {
    margin: 0 auto;
}