html {
  width: 100%;
}

body {
  overflow-x: hidden !important;
}

body.show-spinner > main {
  overflow: hidden !important;
}

/* Hide everything under body tag */
body.show-spinner > *{
  opacity: 0;
}

/* Spinner */
body.show-spinner::after{
  content: " ";
  display: inline-block;
  width: 30px;
  height: 30px;
  border: 2px solid rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  border-top-color: rgba(0, 0, 0, 0.3);
  animation: spin 1s ease-in-out infinite;
  -webkit-animation: spin 1s ease-in-out infinite;
  left: calc(50% - 15px);
  top: calc(50% - 15px);
  position: fixed;
  z-index: 1;
}

.icon-button .icon-Close{
  color: red;
}
.icon-button .icon-Pencil{
  color: #1a73e8;
}

.table-header-bg{
  background-color: #1a73e83b;
}
.table-row-bg{
  background-color: #1a73e80f;
}

.table-footer-bg{
  background-color: #e7e73126;
}

.table-basic tr{
  border-bottom: 2px solid rgb(32 156 215 / 8%);
}

.table-td-highlighter{
  background-color: #d9d94247;
}
.table-row-highlighter{
  background-color: #d9d94247;
}
.table-basic {
  width: 100%;
  border-collapse: collapse;
}

th, td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: left;
}

.table-basic .action-botton{
  color: white;
  border: none;
  padding: 7px;
  border-radius: 7px;
  margin-left: 5px;
}

.table-basic .action-botton i{
  font-weight: 999;
  font-size: 15px;
}

.table-row-clickable:hover{
  cursor: pointer;
  /* background-color: #1a73e814 !important; */
}


.add-icon-button{
  position: relative;
  /* bottom: 15px;
  right: 15px; */
  background-color: #1a73e8;
  color: white;
  border: none;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  transition: background-color 0.3s ease;
  font-weight: 900;
}


.add-icon-button i{
  font-size: 25px;
  font-weight: 999;
}


/* Highlight the input field border in red on validation error */
.is-invalid {
  border-color: #dc3545 !important; /* Bootstrap's red for invalid input */
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important; /* Optional shadow effect */
}

/* Style for the help block */
.form-text.text-danger {
  color: #dc3545; /* Same red color as input border for consistency */
  font-size: 0.875rem; /* Adjust size as needed */
}

/* Optional: Add padding to the help block for better spacing */
.form-group.position-relative {
  margin-bottom: 1rem;
}

.modal-medium{
  min-width: 500px;
}

@media (min-width: 992px) {
  .modal-large {
    min-width: 1000px;
  }
}


.modal-extra-large{
  min-width: 80%;
}
.button-group {
  display: flex;
  gap: 0.5rem; /* Adjust spacing between buttons if needed */
}

.table-filter-input {
  height: 25px !important;
  min-width: auto;
}

.custom-fieldset {
  border: 1px solid #ccc;
  padding: 10px;
  margin: 10px 0;
}

.custom-fieldset legend {
  padding: 0 10px;
  width: auto;
  font-size: 15px;
}

@media (max-width: 767px) {
  .table-filter-input {
    min-width: 100px;
  }
}

.button-modal-submit{
  width: 100%;
  border-radius: 5px !important;
  background-color: #1a73e8;
  border-color: #1a73e8;
  color: #fff;
}

.category-name{
  color: #1a73e8;
  font-weight: 600;
}

.btn-toolbar-action {
  font-size: 20px !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 12px !important;
  padding: 10px !important;
}

.btn-toolbar-action i {
  font-weight: 900;
}

@media (max-width: 768px) {
  .table-container {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      width: 100%;
  }

  .table-basic {
      min-width: 600px;
  }

  .logo-mobile{
    margin-left: 15px;
  }
}

@media (min-width: 769px) {
  .table-container {
      overflow-x: hidden;
      width: 100%;
  }
}


@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
  }
}
.data-count{
  text-align: left !important;
font-size: 12px !important;
font-weight: 500 !important;
color: black !important;
background-color: #f8f8f8 !important;
border: none !important;

}

.data-count-right{
  text-align: right !important;
font-size: 12px !important;
font-weight: 500 !important;
color: black !important;
background-color: #f8f8f8 !important;
border: none !important;

}
/* Table and Toolbar Container */
.table-container {
border-radius: 6px;
overflow: hidden;
}

.excel-toolbar-container {
background-color: #f9f9f9;
padding: 0px 0px 10px;
}

.datepicker{
  z-index: 9999 !important;
}

.input-daterange input {
  border: 1px;
    border-style: solid;
    border-color: #858585;
    padding: 2px;
  width: 80px;
}

.search-input{
  width: 105px;
}

.excel-table {
border-collapse: collapse;
width: auto;
table-layout: fixed;
}

.excel-table th,
.excel-table td {
border: 1px solid #d0d0d0;
padding: 8px;
text-align: left;
vertical-align: middle;
}

/* Serial Number Column */
.excel-table th:first-child,
.excel-table td:first-child {
width: 40px; /* Ensures enough space for 2 digits */
min-width: 40px; /* Minimum width for serial number */
text-align: center;
}

/* Other Columns */
.excel-table th,
.excel-table td {
min-width: 100px; /* Minimum width for other columns */
}

.excel-table th {
background-color: #f3f3f3;
color: #1a73e8;
font-weight: bold;
}

.excel-table tr {
background-color: #fff;
}

/* Toolbar Buttons */
.excel-btn {
background-color: #ffffff;
border: 1px solid #cccccc;
height: 58px;
border-radius: 4px;
font-size: 12px;
font-weight: 500;
color: #333;
text-transform: none;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
transition: all 0.3s ease;
}

.excel-btn:hover {
background-color: #e6e6e6;
border-color: #b3b3b3;
}
/* Disabled button styles */
.excel-btn:disabled {
background-color: #e0e0e0; /* Light grey background for disabled */
border-color: #d0d0d0; /* Slightly darker grey border */
color: #9e9e9e; /* Light grey text */
cursor: not-allowed; /* Shows a "not allowed" cursor */
opacity: 0.6; /* Reduces opacity to indicate disabled state */
box-shadow: none; /* Removes shadow from disabled buttons */
}

.excel-btn:disabled:hover {
background-color: #e0e0e0; /* Keep same background on hover for disabled state */
border-color: #d0d0d0; /* Keep same border on hover for disabled state */
}

.excel-btn i {
font-size: 20px;
font-weight: 500;
}

.btn-toolbar .btn-group {
width: 75px;
}

.btn-group-justified {
display: flex;
justify-content: space-around;
}

.selected-row {
background-color: #e0f7fa !important;
}

@media (max-width: 768px) {
/* Keep buttons aligned horizontally in mobile */
.excel-toolbar-container {
display: flex;
flex-wrap: wrap;
}

.btn-group-justified {
flex-wrap: nowrap;
justify-content: space-around;
}

.btn-toolbar {
padding: 0;
}

.excel-btn {
margin-bottom: 0;
width: auto;
}

/* Ensure the table scrolls horizontally */
.table-wrapper {
overflow-x: auto;
}

.excel-table th:first-child,
.excel-table td:first-child {
width: 40px;
min-width: 40px;
text-align: center;
}

.excel-table th,
.excel-table td {
min-width: 200px;
}
}

@media (max-width: 600px) {
/* Maintain horizontal scroll for small screens */
.table-wrapper {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}

/* Maintain button alignment */
.excel-toolbar-container {
display: flex;
flex-wrap: nowrap;
overflow-x: auto;
}

/* Serial number column remains small */
.excel-table th:first-child,
.excel-table td:first-child {
width: 40px;
min-width: 40px;
}

/* Columns in mobile have minimum width */
.excel-table th,
.excel-table td {
min-width: 200px;
}
}


.status-success{
  color: white;
  padding: 5px;
  border-radius: 13px;
  background-color: #28a745;
}

.status-warning{
  color: white;
  padding: 5px;
  border-radius: 13px;
  background-color: #eeb20e;
}

.status-danger{
  color: white;
  padding: 5px;
  border-radius: 13px;
  background-color: red;
}

.status-info{
  color: white;
  padding: 5px;
  border-radius: 13px;
  background-color: skyblue;
}