#hour_modal_backdrop {
   position: fixed;
   inset: 0;
   background: rgba(0, 0, 0, 0.4);
   display: none;
   justify-content: center;
   align-items: center;
   z-index: 9999;
 }

 #hour_modal {
   background: white;
   padding: 20px;
   border-radius: 14px;
   width: 340px;
   box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
   font-family: Arial, sans-serif;
 }

 #hour_modal table {
   width: 100%;
   border-collapse: collapse;
 }

 #hour_modal th,
 #hour_modal td {
   border: none;
   padding: 4px 0;
 }

 #hour_modal select {
   width: 100%;
   padding: 5px;
   border-radius: 6px;
   border: 1px solid #ccc;
 }

 #hour_modal_buttons {
   display: flex;
   justify-content: flex-end;
   margin-top: 15px;
   gap: 10px;
 }

 #hour_modal_buttons button {
   padding: 6px 14px;
   border-radius: 6px;
   border: 1px solid #444;
   cursor: pointer;
 }

#modal_message, #reassign_modal{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;

  display: none;
  justify-content: center;
  align-items: center;
}

#modal_message[style*='display: block'] {
  display: flex !important;
}

#reassign_modal[style*='display: block'] {
  display: flex !important;
}

#add_modal{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;

  display: none;
  justify-content: center;
  align-items: center;
}

#add_modal[style*='display: block'] {
  display: flex !important;
}

.modal_content {
  background-color: #fff;
  padding: 20px 25px;
  border-radius: 10px;
  width: 400px;
  max-width: 90%;
  text-align: center;
  box-shadow: 0 4px 10px rgba(0,0,0,0.3);
  position: relative;
}

.close {
  position: absolute;
  top: 10px;
  right: 15px;
  color: #888;
  font-size: 24px;
  font-weight: bold;
  cursor: pointer;
  transition: color 0.2s ease;
}

.close:hover {
  color: #000;
}

.reassign_info {
  text-align: left;
  margin-bottom: 15px;
  font-size: 14px;
  line-height: 1.4;
}

.reassign_info div {
  display: grid;
  grid-template-columns: 120px auto; /* <-- label width */
  margin-bottom: 6px;
  text-align: left;
}

.reassign_info strong {
  font-weight: bold;
}

#material_modal {
  display: none; /* hidden by default */
  position: fixed;
  inset: 0;
  background-color: rgba(0,0,0,0.5);
  z-index: 9999;
  justify-content: center;
  align-items: center;
}

#material_modal.show {
  display: flex;
}

#material_modal .modal_content {
  background-color: #fff;
  padding: 20px;
  border-radius: 10px;
  width: 400px;
  max-width: 90%;
  text-align: left;
  box-shadow: 0 10px 25px rgba(0,0,0,0.25);
  position: relative;
  font-family: Arial, sans-serif;
}

.search_container {
  display: flex;
  width: 100%;
  margin-bottom: 10px;
}

#material_modal_input {
  flex: 1;
  padding: 6px 8px;
  font-size: 15px;
  box-sizing: border-box;
  border-radius: 4px 0 0 4px;
  border: 1px solid #ccc;
}

#material_modal_search {
  padding: 6px 12px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-left: none;
  border-radius: 0 4px 4px 0;
  cursor: pointer;
  background-color: #f0f0f0;
}

#material_modal_list {
  list-style: none;
  padding: 0;
  margin: 0;
  max-height: 200px;
  overflow-y: auto;
  border: 1px solid #ccc;
}

#material_modal_list li {
  padding: 6px 8px;
  cursor: pointer;
}

#material_modal_list li:hover {
  background-color: #e0e0e0;
}

#material_modal_cancel {
  margin-top: 10px;
  padding: 6px 14px;
  border-radius: 6px;
  border: 1px solid #444;
  cursor: pointer;
}
