h3,
h2,
h4 {
  font-family: auto !important;
}

.head {
  flex-basis: 33%;
  border: 1px solid #e0e0e0;
}

.service_head {
  display: flex;
  justify-content: space-between;
  gap: 2px;
  background-color: #e0e0e0;
  padding: 24px;
}

section {
  background-color: #5f5d5d36;
  padding: 10px;
  height: 100vh;
  display: flex !important;
  flex-direction: column;
}

.body-container {
  display: flex;
  border-radius: 5px;
  overflow: hidden;
  height: 100%;
  background: white;
}

.container-fluid {
  height: 100vh;
}

.header-screen_item {
  width: 50%;
  display: flex;
  justify-content: space-between;
  height: 100%;
}

#currentTimeDisplay {
  font-weight: 800;
  color: #1c365b;
  margin: 0;
  font-size: 35px;
}

#currentDateDisplay {
  text-transform: capitalize;
  color: #6c88b3;
  margin: 0;
  font-size: 20px;
}

.header-screen_item-right {
  display: flex;
  flex-direction: column;
  align-items: end;
  justify-content: center;
  padding: 20px;
  gap: 5px;
}

.left_side {
  display: flex;
  flex-direction: column;
  flex-basis: 40%;
  padding: 25px;

  height: 100vh;
  /* prend toute la hauteur de l’écran */
  position: relative;
}

div#sample_details {
  /* flex: 1;
  min-height: 0; */
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
}

.product-wrapper {
  flex: 1;
  /* 🔑 prend l’espace restant */
  min-height: 0;
  /* 🔑 autorise le scroll */
  margin-top: 10px;
}

div#product_list {
  /* max-height: 300px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 5; */
  height: 75%;
  overflow-y: auto;
  padding: 4px;
}

.right_side {
  display: flex;
  flex-direction: column;
  padding: 25px;
  flex-basis: 60%;
  border-left: 0.1px solid #ccc;
  overflow-y: scroll;
}

.right_side::-webkit-scrollbar,
.items::-webkit-scrollbar {
  width: 10px;
}

.right_side::-webkit-scrollbar-track {
  background: #f5f3f3;
  border-radius: 10px;
}

.right_side::-webkit-scrollbar-thumb,
.items::-webkit-scrollbar-thumb {
  background-color: #08467f;
  border-radius: 10px;
}

.right_side::-webkit-scrollbar-thumb:hover,
.items::-webkit-scrollbar-thumb:hover {
  background: #08467f;
}

.sample {
  display: flex;
  gap: 10px;
}

#loading-spinner {
  display: none;
  text-align: center;
  padding: 20px;
}

/* HTML: <div class="loader"></div> */
#loading-spinner {
  width: 50px;
  padding: 8px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #08467f;
  --_m: conic-gradient(#0000 10%, #000), linear-gradient(#000 0 0) content-box;
  -webkit-mask: var(--_m);
  mask: var(--_m);
  -webkit-mask-composite: source-out;
  mask-composite: subtract;
  animation: l3 1s infinite linear;
}

div#loading_element {
  position: absolute;
  background: #000000a3;
  height: 100%;
  width: 100%;
  z-index: 1000;
  justify-content: center;
  align-items: center;
  display: none;
}

div#customModal {
  position: absolute;
  background: #000000a3;
  height: 100%;
  width: 100%;
  z-index: 1000;
  display: none;
  justify-content: center;
  align-items: center;
}

@keyframes l3 {
  to {
    transform: rotate(1turn);
  }
}

.sample_item {
  padding: 10px;
  border: 1px solid #ccc;
  margin-bottom: 10px;
  cursor: pointer;
  width: 16vw;
  height: 16vh;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 25px;
  font-weight: bold;
  background: white;
}

.sample_item.active {
  background-color: #f0f0f0;
  box-shadow: rgba(0, 0, 0, 0.3) 0px 19px 38px,
    rgba(0, 0, 0, 0.22) 0px 15px 12px;
  border-color: #08467f;
  scale: 104%;
}

.product_item {
  display: flex;
  align-items: center;
  margin: 10px 0;
  gap: 4px;
  display: flex;
  flex-direction: column;
}

.product-qty {
  width: 50px;
  text-align: center;
}

.increment-btn,
.decrement-btn {
  color: #ffffff !important;
  /* texte blanc */
  text-decoration: none !important;
  /* pas de underline */
  align-items: center;
  justify-content: center;
  background: none;
  cursor: pointer;
}


.material-symbols-outlined {
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

.quantity {
  width: 50px !important;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
  padding: 5px;
}

.css_quantity.input-group {
  display: flex;
}

.input-group-prepend {
  background-color: #08467f;
  border-color: #08467f;
  display: flex;
  align-items: center;
  border-radius: 5px 0 0 5px;
}

.input-group-append {
  background-color: #08467f;
  border-color: #08467f;
  display: flex;
  align-items: center;
  border-radius: 0 5px 5px 0;
}

.product-item {
  box-shadow: rgba(14, 30, 37, 0.12) 0px 2px 4px 0px,
    rgba(14, 30, 37, 0.32) 0px 2px 16px 0px;
  padding: 5px;
  border-radius: 5px;
  margin-bottom: 5px;
}

i.fa {
  color: white;
  font-size: 19px;
  font-weight: 800;
}

button#collect {
  position: sticky;
  bottom: 20px;

  display: flex;
  gap: 9px;
  border: none;
  color: #ffffff;
  background-color: #08467f;
  border-color: #08467f;
  justify-content: center;
  align-items: center;

}

h3 {
  font-size: 16px;
  /* Adjusts the font size */
  font-weight: bold !important;
  /* Semi-bold weight */
  color: #504f4f !important;
  /* Dark gray color for better readability */
  margin: 0 0 10px 0;
  /* Adds margin below the heading */
  padding: 0;
  /* Removes default padding */
  text-align: left;
  /* Aligns text to the left, can be changed to center or right */
  line-height: 1.4;
  /* Adjusts the line height for readability */
  text-align: center !important;
}

h3 {
  margin: 0 !important;
}

.search_head {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}

.form-group {
  margin-bottom: 0 !important;
  display: flex;
  align-items: center;
}

input#search_input {
  width: 25vw;
}

div#rendered_sample {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #ccc;
  gap: 10px;
}

.sample-header {
  padding-bottom: 5px;
  border-bottom: 1px solid #eaeaea;
}

.details-info {
  /* width: 100%;
  display: flex;
  justify-content: space-between; */
  display: flex;
  justify-content: space-between;
  padding: 0px;
}

h4 {
  font-size: 16px;
  font-weight: bold !important;
  text-align: center;
  margin-top: 50px;
}

.details-info .label {
  font-size: 14px;
  color: #6c757d;
  /* Bootstrap gray or adjust to your preferred gray */
}

.details-info .value {
  color: #9f9e9e;
  /* Black */
  /* font-weight: bold; */
  font-weight: 600;
  /* Bold text */
  font-size: 14px;
}

.search-icon {
  height: 34px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #08467f;
  border-radius: 0px 5px 5px 0;
  color: white;
  margin: -3px;
  padding: 4px;
}

.right_title {
  margin-bottom: 10px !important;
}

/* User profile container styling */
.user_profile {
  float: left;
  display: flex;
  align-items: center;
  padding: 7px;
  border: 1px solid #ddd;
  border-radius: 5px;
  background-color: #bad3e6;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  margin: 5px 0;
  margin-top: 0;
}

/* Avatar styling */
.user_avatar {
  margin-right: 15px;
}

.user_avatar img {
  width: 45px;
  /* or any size you prefer */
  height: 45px;
  border-radius: 50%;
  /* Makes the image circular */
  object-fit: cover;
  /* Ensures the image covers the circle without distortion */
  border: 2px solid #ddd;
  /* Optional: Adds a border around the image */
}

/* User content styling */
.user_content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.user_content span {
  color: #08467f;
  font-size: 12px !important;
  font-weight: 600;
}

/* Logout button styling */
#logout-button,
.save_collection_btn,
#show_modal_prel {
  background-color: #08467f;
  color: #fff;
  border: none;
  outline: none;
  border-radius: 4px;
  padding: 7px 15px;
  font-size: 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  align-items: center;
  transition: background-color 0.3s ease;
}

#show_modal_prel {
  color: #fff;
  border: none;
  outline: none;
  border-radius: 4px;
  padding: 7px 15px;
  font-size: 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5px;
}

#show_modal_prel .material-symbols-outlined {
  font-size: 18px;
}

#logout-button:hover {
  background-color: #2e4c66;
}

#logout-button .material-symbols-outlined {
  font-size: 20px;
  margin-right: 8px;
}

.custom_btn_group {
  display: flex;
  justify-content: end;
  gap: 20px;
  align-items: center;
}

.lot-value {
  border: none;
  font-weight: bold;
  outline: none;
}

label {
  margin-bottom: 0 !important;
}

.label-lot {
  color: #989898bf;
  font-size: 12px !important;
  font-weight: 600;
}

.lot-selection {
  display: flex;
  align-items: center;
  justify-content: space-around;
  margin-top: 7px;
}

.lot-section-info {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 14px !important;
  flex-basis: 40%;
}

.lot-selection-input {
  margin-top: 5px;
}

.btn-primary-custom {
  color: #fff;
  background-color: #08467f;
  border-color: #08467f;
}

.items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  overflow-y: scroll;
  overflow-x: hidden;
  max-height: 97%;
  padding-right: 21px;
  padding: 10px;
}

.modal-header {
  background-color: #08467f;
  color: white;
  border-bottom: 1px solid #ddd;
  display: flex;
  justify-content: space-between;
}

.modal-body {
  padding: 20px;
}

.modal-footer {
  border-top: 1px solid #ddd;
}

select option {
  margin: 40px;
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.4);
}


/* Begin Tahiry*/
#customModal .modal-header {
  display: flex;
  justify-content: center;
}

#customModal .modal-footer {
  display: flex;
  justify-content: end;
}

#save_collection_btn.btn {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

#save_collection_btn.btn .material-symbols-outlined {
  margin-right: 5px !important;
}

.custom-select {
  position: relative;
  font-family: Arial;
}

.custom-select select {
  display: none;
}

.select-selected {
  background-color: DodgerBlue;
}

.select-selected:after {
  position: absolute;
  content: "";
  top: 14px;
  right: 10px;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-color: #fff transparent transparent transparent;
}

.select-selected.select-arrow-active:after {
  border-color: transparent transparent #fff transparent;
  top: 7px;
}

.select-items div,
.select-selected {
  color: #ffffff;
  padding: 8px 16px;
  border: 1px solid transparent;
  border-color: transparent transparent rgba(0, 0, 0, 0.1) transparent;
  cursor: pointer;
  user-select: none;
}

.select-items {
  position: absolute;
  background-color: #08467f;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 99;
}

.select-hide {
  display: none;
}

.select-items div:hover,
.same-as-selected {
  background-color: rgba(0, 0, 0, 0.1);
}

/* CheckBox */
.checkbox-wrapper-19 {
  display: flex;
  gap: 5px;
  align-items: center;
  justify-content: start;
  margin-bottom: 15px;
}

.checkbox-wrapper-19 {
  box-sizing: border-box;
  --background-color: #fff;
  --checkbox-height: 25px;
}

.checkbox_label {
  margin-left: 15px;
  font-size: 14px;
  color: #797474;
  font-weight: 600;
  cursor: pointer;
  display: inline-block;
}

@-moz-keyframes dothabottomcheck-19 {
  0% {
    height: 0;
  }

  100% {
    height: calc(var(--checkbox-height) / 2);
  }
}

@-webkit-keyframes dothabottomcheck-19 {
  0% {
    height: 0;
  }

  100% {
    height: calc(var(--checkbox-height) / 2);
  }
}

@keyframes dothabottomcheck-19 {
  0% {
    height: 0;
  }

  100% {
    height: calc(var(--checkbox-height) / 2);
  }
}

@keyframes dothatopcheck-19 {
  0% {
    height: 0;
  }

  50% {
    height: 0;
  }

  100% {
    height: calc(var(--checkbox-height) * 1.2);
  }
}

@-webkit-keyframes dothatopcheck-19 {
  0% {
    height: 0;
  }

  50% {
    height: 0;
  }

  100% {
    height: calc(var(--checkbox-height) * 1.2);
  }
}

@-moz-keyframes dothatopcheck-19 {
  0% {
    height: 0;
  }

  50% {
    height: 0;
  }

  100% {
    height: calc(var(--checkbox-height) * 1.2);
  }
}

.checkbox-wrapper-19 input[type="checkbox"] {
  display: none;
}

.checkbox-wrapper-19 .check-box {
  height: var(--checkbox-height);
  width: var(--checkbox-height);
  background-color: transparent;
  border: calc(var(--checkbox-height) * 0.1) solid #08467f;
  border-radius: 5px;
  position: relative;
  display: inline-block;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -moz-transition: border-color ease 0.2s;
  -o-transition: border-color ease 0.2s;
  -webkit-transition: border-color ease 0.2s;
  transition: border-color ease 0.2s;
  cursor: pointer;
}

.checkbox-wrapper-19 .check-box::before,
.checkbox-wrapper-19 .check-box::after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  height: 0;
  width: calc(var(--checkbox-height) * 0.2);
  background-color: #08467f;
  display: inline-block;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  -webkit-transform-origin: left top;
  transform-origin: left top;
  border-radius: 5px;
  content: " ";
  -webkit-transition: opacity ease 0.5;
  -moz-transition: opacity ease 0.5;
  transition: opacity ease 0.5;
}

.checkbox-wrapper-19 .check-box::before {
  top: calc(var(--checkbox-height) * 0.72);
  left: calc(var(--checkbox-height) * 0.41);
  box-shadow: 0 0 0 calc(var(--checkbox-height) * 0.05) var(--background-color);
  -moz-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.checkbox-wrapper-19 .check-box::after {
  top: calc(var(--checkbox-height) * 0.37);
  left: calc(var(--checkbox-height) * 0.05);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.checkbox-wrapper-19 input[type="checkbox"]:checked+.check-box,
.checkbox-wrapper-19 .check-box.checked {
  border-color: #08467f;
}

.checkbox-wrapper-19 input[type="checkbox"]:checked+.check-box::after,
.checkbox-wrapper-19 .check-box.checked::after {
  height: calc(var(--checkbox-height) / 2);
  -moz-animation: dothabottomcheck-19 0.2s ease 0s forwards;
  -o-animation: dothabottomcheck-19 0.2s ease 0s forwards;
  -webkit-animation: dothabottomcheck-19 0.2s ease 0s forwards;
  animation: dothabottomcheck-19 0.2s ease 0s forwards;
}

.checkbox-wrapper-19 input[type="checkbox"]:checked+.check-box::before,
.checkbox-wrapper-19 .check-box.checked::before {
  height: calc(var(--checkbox-height) * 1.2);
  -moz-animation: dothatopcheck-19 0.4s ease 0s forwards;
  -o-animation: dothatopcheck-19 0.4s ease 0s forwards;
  -webkit-animation: dothatopcheck-19 0.4s ease 0s forwards;
  animation: dothatopcheck-19 0.4s ease 0s forwards;
}

/* End Tahiry */