body {
    font-family: 'Mulish', sans-serif;
}

.navbar-brand img {
    margin-right: 10px; /* Adjust the space between the logo and the text */
}

.center-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start; /* Align items to the start */
    height: 100vh;
    padding-top: 10vh; /* Push content to start 10% down the container */
}

.form-container {
    display: flex;
    justify-content: center;
    align-items: center;
    /* padding-top: 20px; */
}

.filter-form .form-group {
    margin-bottom: 5px;  /* Reduce space between form groups */
    padding: 0 5px;      /* Reduce horizontal padding */
}

.filter-form .form-control {
    padding: 5px;        /* Reduce padding inside the form controls */
    width: auto;         /* Adjust width to fit content */
    display: inline-block; /* Display inline to make the form controls fit side by side */
}

.center-filter {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}

.btn-navy {
    background-color: #0f3e57; /* Custom Navy background */
    border-color: #0f3e57; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 175px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-decoration: none; 
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}


.btn-navy:hover, .btn-navy:active {
    background-color: #1a587a;
    color: #ffffff;
    text-decoration: none;  /* Ensures no underline on hover */
}


#navy_button {
    background-color: #0f3e57; /* Custom Navy background */
    border-color: #0f3e57; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 200px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#purple_button {
    background-color: #773594; /* Custom Navy background */
    border-color: #773594; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 200px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#orange_button {
    background-color: #f68722; /* Custom Navy background */
    border-color: #f68722; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 200px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#grey_button {
    background-color: #555F6A; /* Custom Navy background */
    border-color: #555F6A; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 200px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#green_button {
    background-color: #36714B; /* Custom Navy background */
    border-color: #36714B; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 300px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#studentIdsForm .form-group {
    margin-bottom: 10px;
    text-align: center;  /* Center the contents of the form-group */
}

#studentIdsForm .btn-navy {
    margin-top: 10px; /* Adds some space above the button */
}

#studentIdsInput {
    width: 100%; /* Ensures the textarea takes full width of its container */
}

.dashboard-button-container {
    display: flex;
    justify-content: center; /* Centers the buttons in the container */
    gap: 5px; /* Adds 5 pixels gap between each button */
    padding: 20px;
}

.dashboard-button {
    padding: 10px 20px;
    width: 150px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-decoration: none;
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    color: white;
    background-color: #773594;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    display: inline-block; /* Required for vertical-align to work */
}
.dashboard-button:hover {
    background-color: #6b2f85;
    color: white;
}
.dashboard-title {
    text-align: center;
    margin: 0;
    padding: 20px; /* Adds padding around the title for better spacing */
}

.hr.thin-line {
    border: none; /* Remove the default border */
    height: 1px; /* Set the height of the line */
    background-color: #ccc; /* Set the color of the line */
    margin: 20px 0; /* Add some space around the line */
}

.spacer {
    height: 15px; /* Adds a quarter inch of space */
}

.form-label {
    font-weight: bold;
}

.centered-container {
    display: flex;
    justify-content: center;
    align-items: center;
}
.content-box {
    width: 100%;
    text-align: left;
}
.section {
    display: flex;
    align-items: top; /* Keeps title and content vertically aligned */
    margin: 10px 0;
}
.section-title {
    font-weight: bold;
    margin-right: 5px;
    white-space: nowrap; /* Ensures title stays on one line */
}

.section-content {
    flex: 1; /* Ensures content fills the remaining space */
}

.home-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 10vh;
}

.logo {
    max-width: 500px;
    height: auto;
}


.button-group {
    display: flex;
    gap: 2rem;
    margin-top: 2rem;
}

.custom-button {
    font-family: 'Fira Sans', sans-serif;
    font-weight: 800; /* Extra Bold */
    background-color: #ccccccff; /* light grey background for all */
    color: white;
    padding: 1.2rem 2.5rem;
    font-size: 2.4rem; /* 2x larger than 1.2rem */
    border-radius: 1rem;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-block;
    border: none;
    width: 300px; /* fixed width large enough for "Dashboard" */
    text-align: center;
  }

  .dashboard-btn {
    color: #55a4db;
    border: 2px solid #55a4db;
  }
  
  .dashboard-btn:hover {
    background-color: #55a4db;
    color: white;
  }
  
  .report-btn {
    color: #f68722;
    border: 2px solid #f68722;
  }
  
  .report-btn:hover {
    background-color: #f68722;
    color: white;
  }
  .report-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 3rem 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  
  .report-logo {
    max-width: 100%;
    height: auto;
    margin-bottom: 2rem;
    display: block;
  }
  
  .report-intro {
    font-size: 1.1rem;
    line-height: 1.6;
    margin-bottom: 3rem;
    max-width: 700px;
  }
  
  .report-form {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
    width: 100%;
  }

  .generate-button-container {
    margin-top: 3rem;
    display: flex;
    justify-content: center;
  }
  
  .generate-button {
    display: flex;
    align-items: center;
    background-color: #434343ff;;
    color: white;
    padding: 1.2rem 2rem;
    font-size: 1.2rem;
    font-family: 'Fira Sans', sans-serif;
    font-weight: 600;
    border-radius: 1rem;
    text-decoration: none;
    transition: background-color 0.3s ease;
    border: none;
    width: fit-content;
  }
  
  .generate-button:hover {
    background-color:#ccccccff;
  }
  
  .generate-button strong {
    font-weight: 800;
  }
  
  .button-icon {
    height: 24px;
    margin-right: 1rem;
  }

  .dashboard-container {
    max-width: 800px;
    margin: 0 auto;
    padding: 4rem 1rem;
    text-align: center;
  }
  
  .dashboard-logo {
    min-width:400px;
    max-width: 500px;
    height: auto;
    margin-bottom: 2rem;
  }
  
  .dashboard-intro {
    font-size: 1.1rem;
    line-height: 1.6;
    margin-bottom: 3rem;
  }
  
  .start-button {
    background-color: #55a4db;
    color: white;
    padding: 1rem 2.5rem;
    font-size: 1.5rem;
    font-family: 'Fira Sans', sans-serif;
    font-weight: 800;
    border-radius: 1rem;
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease;
  }
  
  .start-button:hover {
    background-color: #4693c7;
  }
  
  .form-group {
    width: 100%;
    max-width: 400px;
    text-align: left;
  }
  
  .form-group label {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    text-align: center;
  }
  
  .form-control {
    width: 100%;
    padding: 0.5rem 1rem;
    border-radius: 8px;
    border: 1px solid #ccc;
    font-size: 1rem;
    text-align: center;
    background-color: #434343ff;   /* Dark grey background */
    color: white;                  /* Light text for contrast */
  }



body {
    font-family: 'Mulish', sans-serif;
}

.navbar-brand img {
    margin-right: 10px; /* Adjust the space between the logo and the text */
}

.center-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start; /* Align items to the start */
    height: 100vh;
    padding-top: 10vh; /* Push content to start 10% down the container */
}

.form-container {
    display: flex;
    justify-content: center;
    align-items: center;
    /* padding-top: 20px; */
}

.filter-form .form-group {
    margin-bottom: 5px;  /* Reduce space between form groups */
    padding: 0 5px;      /* Reduce horizontal padding */
}

.filter-form .form-control {
    padding: 5px;        /* Reduce padding inside the form controls */
    width: auto;         /* Adjust width to fit content */
    display: inline-block; /* Display inline to make the form controls fit side by side */
}

.center-filter {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
}

.btn-navy {
    background-color: #0f3e57; /* Custom Navy background */
    border-color: #0f3e57; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 175px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-decoration: none; 
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}


.btn-navy:hover, .btn-navy:active {
    background-color: #1a587a;
    color: #ffffff;
    text-decoration: none;  /* Ensures no underline on hover */
}


#navy_button {
    background-color: #0f3e57; /* Custom Navy background */
    border-color: #0f3e57; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 200px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#purple_button {
    background-color: #773594; /* Custom Navy background */
    border-color: #773594; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 200px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#orange_button {
    background-color: #f68722; /* Custom Navy background */
    border-color: #f68722; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 200px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#grey_button {
    background-color: #555F6A; /* Custom Navy background */
    border-color: #555F6A; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 200px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#green_button {
    background-color: #36714B; /* Custom Navy background */
    border-color: #36714B; /* Custom navy border */
    color: #ffffff; /* White text */
    width: 300px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    display: inline-block; /* Required for vertical-align to work */
}

#studentIdsForm .form-group {
    margin-bottom: 10px;
    text-align: center;  /* Center the contents of the form-group */
}

#studentIdsForm .btn-navy {
    margin-top: 10px; /* Adds some space above the button */
}

#studentIdsInput {
    width: 100%; /* Ensures the textarea takes full width of its container */
}

.dashboard-button-container {
    display: flex;
    justify-content: center; /* Centers the buttons in the container */
    gap: 5px; /* Adds 5 pixels gap between each button */
    padding: 20px;
}

.dashboard-button {
    padding: 10px 20px;
    width: 150px; /* Set the desired width */
    white-space: normal; /* Allows text to wrap */
    text-decoration: none;
    text-align: center; /* Center the text horizontally */
    vertical-align: middle; /* Align the text vertically */
    color: white;
    background-color: #773594;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    display: inline-block; /* Required for vertical-align to work */
}
.dashboard-button:hover {
    background-color: #6b2f85;
    color: white;
}
.dashboard-title {
    text-align: center;
    margin: 0;
    padding: 20px; /* Adds padding around the title for better spacing */
}

.hr.thin-line {
    border: none; /* Remove the default border */
    height: 1px; /* Set the height of the line */
    background-color: #ccc; /* Set the color of the line */
    margin: 20px 0; /* Add some space around the line */
}

.spacer {
    height: 15px; /* Adds a quarter inch of space */
}

.form-label {
    font-weight: bold;
}

.centered-container {
    display: flex;
    justify-content: center;
    align-items: center;
}
.content-box {
    width: 100%;
    text-align: left;
}
.section {
    display: flex;
    align-items: top; /* Keeps title and content vertically aligned */
    margin: 10px 0;
}
.section-title {
    font-weight: bold;
    margin-right: 5px;
    white-space: nowrap; /* Ensures title stays on one line */
}

.section-content {
    flex: 1; /* Ensures content fills the remaining space */
}