
/* Base mobile-first styles (mobile default) */
.btn-primary {
  background-color: #ED1C24;
  color: #FFFFFF;
  border: 1px solid #ED1C24;
  box-shadow: none;
}
.btn-secondary {
  background-color: #FFFFFF !important;
  color: #ED1C24 !important;
  border: 1px solid #ED1C24 !important;
  border-radius: 0 !important;
}
.btn-close {
    background-color: transparent !important;
}
.form-control {
    width: 100% !important;
    padding: .375rem .75rem !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: var(--bs-border-width) solid var(--bs-border-color) !important;
    border-radius: var(--bs-border-radius) !important;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !important;
}
.collapse a {
  color: #ED1C24;
  text-decoration: none;
}
thead {
  display: none;
}

thead th{
    border:none !important;
}

table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th {
     background-color: #FFFFFF !important;
}
    table tbody tr:hover>td, table tbody tr:hover>th {
        background-color: #FFFFFF !important;
    }

tbody tr {
  display: block;
  margin-bottom: 1rem;
  border: 1px solid #dee2e6;
  border-radius: 0.5rem;
  padding: 1rem;
}

tbody tr td {
  display: flex;
  justify-content: space-between;
  padding: 0.5rem 0;
  border: none;
}

tbody tr td::before {
  content: attr(data-label);
  font-weight: bold;
  flex: 1;
  text-align: left;
}

.input-group-text{
  color: #000;
}
.bi-search {
  color: #000 !important;
  width: 16px;
  height: 16px;
}

/* Accordion Section */
.truncated-text {
  overflow: hidden;
  display: -webkit-box;
  /* Required for -webkit-line-clamp */
  -webkit-line-clamp: 2;
  /* Number of lines to show initially */
  -webkit-box-orient: vertical;
}

.truncated-text.expanded {
  -webkit-line-clamp: unset;
  /* Show full text when expanded */
}
.supporting-img {
  width: 150px;
  height: auto;
}
.toggle-button {
  border: none;
  background-color: transparent;
  color: #ED1C24;
  padding-left: 0px;
  text-decoration: underline;
}
.toggle-button:focus {
  border: none;
  background-color: transparent;
  color: #ED1C24;
  padding-left: 0px;
  text-decoration: none;
}
.toggle-button:hover {
  border: none;
  background-color: transparent;
  color: #ED1C24;
  padding-left: 0px;
  text-decoration: none;
}

.table-hover>tbody>tr:hover>* {
   --bs-table-bg-state: #ffffff;
}

.collapse .btn {
  font-size: 12px;
}

 .search-results-left-col h5 {
    font-size: 18px;
    font-weight: bolder;
  }
 .search-results-left-col h6 {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 4px !important;
  }
 .search-results-left-col label {
    font-size: 14px;
  }

.offcanvas .btn {
  font-size: 14px;
}

@media (max-width: 767px) {
  .hide-table-padding {
      display: none !important;
    }
}

/* Desktop and tablet layout - from 768px up */
@media (min-width: 768px) {
  table {
    width: 100%;
  }
  thead {
    display: table-header-group;
    font-size: 14px;
  }
  thead .table-light {
      background-color: #efefef;
  }

  tbody tr {
    display: table-row;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
  }

  tbody tr td {
    display: table-cell;/* 
    border-bottom: 1px solid #dee2e6; */
    font-size: 14px;
  }
  tbody .hide-table-padding {
    border-bottom: 1px solid #dee2e6;
  }

  tbody tr td::before {
    content: none;
  }
  .img-thumbnail {
    border: none;
    padding: 0px;
    background-color: transparent;
  }

  tr.hide-table-padding td {
    padding: 0;
  }

  .expand-button {
    position: relative;
  }

  .accordion-toggle .expand-button:after {
    position: absolute;
    top: 50%;
    left:0;
    transform: translate(0, -50%);
    content: "-";
    font-size:20px;
  }

  .accordion-toggle.collapsed .expand-button:after {
    content: "+";
  }
}

.collapse label {
  font-size: 14px;
  font-weight: 700;
}

 /* Flyout animation and visibility */
  .flyout-panel {
   max-height: 0;
   overflow: hidden;
   transition: max-height 0.4s ease, opacity 0.4s ease;
   opacity: 0;
 }

 .flyout-panel.show {
   max-height: 300px;
   opacity: 1;
 }


/* Desktop (≥992px): override offcanvas positioning */
@media (min-width: 992px) {
  .offcanvas-lg-inline {
    position: relative !important;
    transform: none !important;
    visibility: visible !important;
    display: block !important;
    height: auto !important;
    top: auto !important;
    left: auto !important;
    z-index: auto !important;
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    padding: 1rem;
  }

  #offcanvasToggle {
    display: none;
  }

  .offcanvas-backdrop {
    display: none !important;
  }
  
  .search-results-left-col .form-label {
      font-size:12px;
  }
}