.validation-message {
  color: #f44336;
  font-size: .8rem;
  margin: 3px 0 0;
  text-align: start;
  font-weight: 400;
  line-height: 1.66;
  letter-spacing: .03333em;
}

.mud-snackbar-location-bottom-left {
  bottom: 50px !important;
}

.mud-snackbar-location-bottom-right {
  bottom: 50px !important;
}

/* Make the table cell as compact as possible */
.dense-td {
  padding: 0 !important;
  margin: 0 !important;
  vertical-align: middle; /* Adjust alignment as needed */
}

/* Style for the button to make it as small as possible */
.dense-button {
  padding: 2px 4px !important; /* Minimal padding */
  margin: 0 !important;
  font-size: 0.75rem !important; /* Smaller font size */
  min-width: 0 !important;
  line-height: 1 !important;
}

/* Style for the provider-card */
/* Set the vertical alignment */
.vertical-radio-group {
  display: flex;
  flex-direction: column;
  gap: 8px; /* Space between items */
  width: 100%;
}


/* Styles for the provider card */
.provider-card {
  height: 80px;
  width: 100%;
  display: flex;
  align-items: center;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 8px;
  cursor: pointer;
  transition: border-color 0.3s ease;
  box-sizing: border-box;
}

/* Responsive adjustment to ensure good layout on smaller screens */
/*@media (max-width: 600px) {
    .provider-logo {
        max-width: 60px;*/ /* Slightly smaller image on mobile */
/*}

    .provider-text {
        font-size: 0.875rem;*/ /* Adjust font size for smaller screens */
/*}

    .provider-content {
        flex-direction: row;*/ /* Keep elements in row for smaller screens */
/*gap: 8px;*/ /* Adjust space between elements */
/*}
}*/

/* Selected card styling */
.selected-card {
  border: 2px solid #007bff;
  border-radius: 8px;
}

/* Provider content container for horizontal alignment */
.provider-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-width: 100%;
}

/* Align radio button and text horizontally */
.radio-text-group {
  display: flex;
  align-items: center;
  margin-right: 20px;
}

/* Space adjustment for radio and text */
.provider-radio {
  margin-right: 2px;
}

.provider-text {
  margin-left: 2px;
}

/* Style for the logo (rectangular and responsive) */
.provider-logo {
  width: 120px; /* Adjust width as needed */
  height: 55px;
  object-fit: contain; /* Ensures the logo fits within the specified dimensions */
  margin-left: auto;
  border-radius: 5px; /* Makes the logo rectangular */
}

/* Style for the main ServiceRequests table header */
/*.main-table thead tr {
  background-color: #0012f5ab;*/ /* Primary blue */
/*color: white;
}*/

/* Style for the nested Invoices table header */
/*.nested-table thead tr {
  background-color: #0012f54d;*/ /* Secondary orange */
/*color: white;
}*/

.status-badge {
  color: inherit; /* Uses the default theme color */
}

/* Style for the main ServiceRequests table header */
.main-table thead th {
  background-color: rgba(var(--mud-palette-primary-rgb), 0.67); /* Adjusted primary color */
  color: var(--mud-palette-text-primary); /* Text color adapts to theme */
}

/* Style for the nested Invoices table header */
.nested-table thead th {
  background-color: rgba(var(--mud-palette-secondary-rgb), 0.1); /* Adjusted secondary color */
  color: var(--mud-palette-text-primary); /* Text color adapts to theme */
}

/* Custom CSS for header row */
.custom-main-header-row {
  background-color: rgba(var(--mud-palette-primary-rgb), 0.67); /* Adjusted secondary color */
  /*  color: var(--mud-palette-text-primary);*/ /* Text color adapts to theme */
}
/* Custom CSS for header row */
.custom-nested-header-row {
  background-color: rgba(var(--mud-palette-secondary-rgb), 0.1); /* Adjusted secondary color */
  /*color: var(--mud-palette-text-primary);*/ /* Text color adapts to theme */
}


.hidden-row {
  display: none;
}

.align-right {
  text-align: right;
  font-weight: bold;
}

.geebg {
  margin: 0;
  padding: 0;
  /*  height: 100vh;*/
  background: linear-gradient(180deg, #d0d9e8 0%, #a3b6d0 100%);
  /* Adjust colors to match the gradient in your image */
}

.custom-frame {
  border: 1px solid #61616c; /* Light gray border */
  border-radius: 5px; /* Rounded corners */
  padding: 12px; /* Optional padding for content spacing */
  margin: 0 0 5px; /* Optional margin for spacing */
}

.title {
  text-align: center; /* Center-align the title */
  font-weight: bold; /* Make the title bold */
  margin-bottom: 16px; /* Add space between title and content */
  color: #1976d2; /* Optional: Change color to match the border */
}

.ParentInvoiceRowClass {
  font-weight: bold;
  background-color: #3598c247;
}


/* Dialogs */
.dialog-header {
  background-color: var(--mud-palette-background-paper);
  border-bottom: 1px solid var(--mud-palette-divider);
}

.dialog-title {
  font-weight: bold;
  margin-bottom: 8px;
}

.dialog-message {
  color: var(--mud-palette-text-secondary);
}

.dialog-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}


/* Custom CSS for the custom Page */
/* Scope styles only to the custom page */
.full-page-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
  /*height: calc(100vh - 3px);*/
  width: 100%; /* Full width of the viewport */
  background: transparent;
  margin: 0;
  padding: 0;
  /* Still scrollable, but we hide the scrollbar visually */
  overflow: auto;
}

/* Spinner container */
/*.spinner-container {
  flex: 0 0 auto;*/ /* Fixed height for the spinner */
  /*height: 5px;*/ /* Example height for the spinner */
/*}*/

/* Body container */
/*.body-container {
  flex: 1 1 auto;*/ /* Take the remaining space */
  /*height: calc(100% - 5px);*/ /* Adjust height dynamically (100% minus spinner height) */
  /*overflow: auto;*/ /* Prevent content overflow */
/*}*/

.custom-page {
  min-height: 100vh; /* Full viewport height */
  height: 100vh;
  width: 100vw; /* Full viewport width */
  margin: 0;
  padding: 0;
  overflow: hidden; /* Prevent scrollbars */

  background-image: url('../images/background.jpg'); /* Background image */
  background-size: cover; /* Stretch and fill the entire container */
  background-repeat: no-repeat; /* Prevent repeated images */
  background-position: center; /* Center the background image */

  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}

.custom-page .background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.custom-form-wrapper {
  width: 90%;
  max-width: 550px;
  padding: 30px;
  background-color: rgba(255, 255, 255, 0.95);
  /*background-image: url('../images/custom-background.jpg');*/ /* Background image */
  /*background-size: cover;*/
  border-radius: 16px;
  box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.2);
  text-align: center;
  animation: fadeIn 1.5s ease-in-out;
}


/*.custom-page .wave {
    position: absolute;
    width: 200%;
    height: 50%;*/ /* Increased wave size for better coverage */
/*background: rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    animation: waveAnimation 6s infinite ease-in-out;
  }*/

/*.custom-page .wave:nth-child(1) {
      top: 15%;*/ /* Adjust wave position */
/*left: 25%;
      animation-delay: 0s;
    }

    .custom-page .wave:nth-child(2) {
      top: 50%;*/ /* Adjust wave position */
/*left: 60%;
      background: rgba(255, 255, 255, 0.2);
      animation-delay: 2s;
    }*/

/*.custom-page .wave:nth-child(3) {
      top: 80%;*/ /* Adjust wave position */
/*left: 40%;
      background: rgba(255, 255, 255, 0.1);
      animation-delay: 4s;
    }*/

/*@keyframes waveAnimation {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
  }

  50% {
    transform: translate(-50%, -50%) scale(1.2);
  }
}*/

/* custom Header Image */
.custom-logo {
  width: 100%;
  height: 100px;
  max-width: 800px; /* Limit the width of the image */
  margin: 0 auto 20px auto; /* Center the image with spacing below */
  display: block;
  border-radius: 5px; /* Optional: Add rounded corners */
  box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1); /* Optional: Add shadow */
}

/* custom Header Text */
.custom-header {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
  color: #333;
}

/* Wrapper for Background and Text */
.custom-header-background {
  width: 100%;
  height: 100px; /* Adjust height as needed */
  background-image: url('../images/custom-header1.jpg'); /* Path to your image */
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column; /* Ensures elements are stacked vertically */
  align-items: center;
  justify-content: center;
  position: relative;
  margin-bottom: 20px;
  border-radius: 5px; /* Optional: Add rounded corners */
}

.custom-header-text {
  /* This means: minimum 1.5rem, scale to 5vw, up to a max of 3rem */
  font-size: clamp(0.5rem, 5vw, 2.3rem);
  font-weight: 600;
  color: #fff;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.custom-header-text1 {
  font-size: clamp(0.1rem, 4vw, 1.5rem);
  font-weight: 600;
  color: #fff;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  z-index: 1;
}


/* Input Fields */
.custom-input {
  margin-bottom: 20px;
  width: 100%;
}

/* Links */
.custom-links {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
  font-size: 14px;
}

  .custom-links a {
    color: #007bff;
    text-decoration: none;
  }

    .custom-links a:hover {
      text-decoration: underline;
    }

/* Submit Button */
.custom-button {
  font-size: 16px;
  padding: 12px 16px;
  margin-top: 20px;
}

/* Animation */
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

/* Example: Full-page blue gradient with a subtle “blurry” look */
/*.full-bg-blue  {*/
  /* Make it fill the whole screen (or a container) */
  /*position: relative;
  width: 100%;
  min-height: 100vh;
  margin: 0;
  padding: 0;*/
  /* Semi-transparent blue gradient */
  /*background: linear-gradient( to bottom right, rgba(59, 126, 203, 0.4) 0%,*/ /* lighter blue with partial alpha */
  /*rgba(27, 76, 147, 0.4) 100%*/ /* darker blue with partial alpha */
  /*);*/
  /* The blur effect “frosts” whatever is behind this element */
  /*backdrop-filter: blur(10px);*/ /* for modern browsers */
  /*-webkit-backdrop-filter: blur(10px);*/ /* for Safari/older webkit */
  /* Optional: ensure no scrollbars if content overflows. 
     Remove if you do want scrolling. */
  /*overflow: hidden;
}*/



