:root{
  --color-enterprice: #0055b9
}

.truncated-text{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.truncated-text:hover {
  white-space: normal; 
  overflow: visible; 
  max-width: none; 
  background-color: #fffffff1; 
  z-index: 1; 
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  scale: 1.1;
  position: absolute;
}

* {
  font-family: 'Roboto Condensed', sans-serif;
}

a{
  text-decoration: none;
  text-decoration: none;
  color: none;
}

.form-sm select, .form-sm input, .form-sm span, .form-sm textarea, .form-sm label, .form-sm button, .form-sm option, .form-sm card-body, .form-sm card-header, .form-sm card-footer{
  font-size: 0.8rem;
  padding: 2px 2px;

}

.chat-bubble {
  position: absolute;
  bottom: 10px;
  left: -100px;
  transform: translateX(50%);
  background-color: #e4e4e4;
  color: #fff;
  border: none;
  border-radius: 20px 0px 0px 20px;
  width: 100px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  z-index: 500;
  overflow: hidden;
  transition: all 0.3s ease;
  padding: 0px;
  gap: 2px;
  background: linear-gradient(90deg, #46fca77a 0%, #3fa6fb88 100%);
  backdrop-filter: opacity(0.5);
  padding: 2px;
}

.chat-bubble-icon{
  width: 80px;
  height: 48px;
  margin-left: 2px;
  object-fit: contain;
  filter: brightness(1.5);
  border-radius: 50px;
  background-image: url('../img/FenciBot.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
  lazy-load: true;
}

.chat-bubble span{
  font-weight: bold;
  color: #111111;
  line-height: 0.8em;
}

.chat-buble.close{
  background-image: none;
}


.chat-bubble:hover{
  transform: translateX(0%);
}

.chat-box-container{
  background-color: #fff;
  border-radius: 10px;
  width: 100%;
  height: 100vh;
  z-index: 1000;
  padding: 0px;
  background: linear-gradient(90deg, #46fca77a 0%, #3fa6fb88 100%);
}

.chat-box {
  position: fixed;
  right: 0px;
  top: 0px;
  display: flex;
  width: 400px;
  height: 100vh;
  flex-direction: column;
  padding: 0;
  transition: opacity 0.4s ease, transform 0.4s ease;
  z-index: 1000;
  margin: 0px;
  transform: translateX(100%);
  padding: 0px;
}


.chat-box-header {
  background: linear-gradient(90deg, #1a1a1ad3 0%, #356972a8 50%, #1a1a1ad3 100%);
  color: #ffffff;
  padding: 10px;
  font-weight: bold;
  height: 60px;
  backdrop-filter: blur(5px);
  user-select: none;
}
.chat-box-body {
  display: flex;
  flex-direction: column;
  height: calc(85vh - 60px);
  overflow-y: auto;
  padding: 10px;
  background-color: #dadadad7;
  backdrop-filter: blur(5px);
}
.chat-box-footer {
  display: flex;
  height: 15vh;
  padding: 10px;
  border-top: 1px solid #ddd;
  z-index: 1000;
  background-color: #e9e6e6cb;
  backdrop-filter: blur(5px);
}
.chat-box-footer textarea {
  flex: 1;
  padding: 5px;
  border: 1px solid #ddd;
  border-radius: 5px;
  resize: none;
  height: 100%;
  width: 100%;
  font-size: 0.8rem;
  font-weight: bold;
  color: #1d1d1d;
}
.chat-box-footer textarea:focus {
  outline: none;
  box-shadow: none;
  border: 2px solid #03db8f;
}
.chat-box-footer button {
  background-color: #03db8f;
  color: #fff;
  border: none;
  padding: 5px 10px;
  border-radius: 50px;
  cursor: pointer;
}
.chat-box-footer button:hover {
  background-color: #03ad72;
}



.message-bubble {
  display: flex;
  flex-direction: column;
  max-width: 80%;
  border-radius: 12px;
  padding: 10px;
  gap: 5px;
}

/* Burbuja de la IA */
.bubble-ia {
  align-self: flex-end;
  background: linear-gradient(90deg, #91ffccab 0%, #87c5f8b4 100%);
  color: #363636;
  border-radius: 12px 12px 0px 12px;
  padding: 10px;
  max-width: 90%;
  word-wrap: break-word;
  font-size: small;
  font-weight: bold;
  backdrop-filter: blur(10px);
  border: 2px solid #858282;
}


/* Burbuja del usuario */
.bubble-user {
  align-self: flex-start;
  background-color: #303030;
  color: #f8f8f8;
  border-radius: 12px 12px 12px 0px;
  padding: 10px;
  max-width: 90%;
  word-wrap: break-word;
  font-size: small;
  font-weight: bold;
}


/* Mensajes dentro de la burbuja */
.message {
  word-wrap: break-word;
}

.message-container {
  display: flex;
  flex-direction: column;
  gap: 5px;
}


:root{
  --color-status-in-progress: #007bff;  /* Azul para en progreso */
  --color-status-completed: #28a745;  /* Verde para completado */
  --color-status-error: #dc3545; /* Rojo para errores */
  --color-status-in-progress-bg: #bedaf8;  /* Azul para en progreso */
  --color-status-completed-bg: #78f896;  /* Verde para completado */
  --color-status-error-bg: #ff7b88; /* Rojo para errores */
  --color-status-customer1: #9900fff1;  /* Azul para en progreso */
  --color-status-customer2: #00ccff;  /* Azul para en progreso */
  --color-status-customer3: #1e8100;  /* Azul para en progreso */
  --color-status-customer1-bg: #9900ff1e;
  --color-status-customer2-bg: #0088ff1c;
  --color-status-customer3-bg: #1e81001f; 
  --color-status-up: #00ff1a19;
  --color-status-down: #ff00002c;
  --color--status-pending: #ff9100;
}


.drownIcon.bi {
  transition: transform 0.2s ease; /* Suaviza la animación */
  background-color: #747474 ;
  display: inline-block; /* Necesario para aplicar transformaciones */
  transform: rotate(90deg); /* Posición inicial */
  transform-origin: center; /* Punto de referencia para la rotación */
}

.drownIcon.collapsed.bi {
  transform: rotate(0deg); /* Rotación al colapsar */
  background-color: #007bff; /* Cambia el color al expandirse */
  cursor: pointer;
}



.customer-avatar {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background-color: #f0f0f0;
  font-weight: bold;
  font-size: 24px;
  color: #fff;
  margin-right: 8px;
}
.status{
  padding: 1px 8px;
  margin-left: 4px;
  border-radius: 22px;
  border-radius: 22px;
  }

span.status-empty, select.status-empty {
  padding: 1px 2px;
  margin-left: 4px;
  border-radius: 22px;
  border: 2px solid;
  font-size: small;
  }
  
span.title_individual{
  background-color: var(--color-status-customer2-bg);
  color: black;
}

span.title_budgetUp{
  background-color: var(--color-status-up);
  color: rgb(4, 51, 8);
}
span.title_budgetDown{
  background-color: var(--color-status-down);
  color: rgb(88, 0, 0);
}
span.title_contractor{
  background-color: var(--color-status-customer3-bg);
  color: black;
}
span.title_company{
  background-color: var(--color-status-customer1-bg);
  color: black;
}
span.status_company{
  background-color: var(--color-status-customer1-bg);
  color: var(--color-status-customer1); ;
}
span.status_individual{
  background-color: var(--color-status-customer2-bg);
  color: var(--color-status-customer2); ;
}
span.status_contractor{
  background-color: var(--color-status-customer3-bg);
  color: var(--color-status-customer3); ;
}
span.status_new, span.status_Completed, span.status-saved, span.status_new select {
  border-color: #0091ff; /* Blue */
  color: #0091ff;;
  background-color: #d9eefd;
}
.status_first_project {
  border-color: #020608; /* Blue */
  color: white;
}

span.status_contacted {
  border-color: #00B5AD; /* Teal */
  color:#00B5AD;
}

span.status_quote_sent, span.status_sent, span.status_sent select {
  border-color: #FBBD08; /* Yellow */
  color:#FBBD08;
  background: #f5ebce;
}

span.status_in-negotiation, .status_pending, span.status_pending select {
  border-color: #F2711C; /* Orange */
  color:#F2711C;
  background-color: #f7d9c6;
}
span.status_approved, span.status-completed, span.status_approved select {
  border-color: #21BA45; /* Green */
  color:#21BA45;
  background-color: #b4f5c3;
}
span.status_not_approved, span.status_rejected, span.status_rejected select{
  border-color: #ba2121; /* Green */
  color:#ba2121;
  background-color: #f5c6c6;
}
span.status_in_production {
  border-color: #5718cc; /* Olive */
  color:#5718cc;
  background-color: #e9ddff;
}

span.status_pending_payment {
  border-color: #DB2828; /* Red */
  color:#faf3f3;
  background-color: rgb(255, 104, 104);
}

span.status_inactive {
  border-color: #767676; /* Grey */
  color:#767676;
}

span.status_cancelled {
  border-color: #1B1C1D; /* Black */
  color:#1B1C1D
}


.card-header {
  font-weight: bold;
  background-color: #f8f9fa;
}

.card-body p {
  margin-bottom: 0.5rem;
  color: #6c757d;
}

.table-hover tbody tr:hover {
  background-color: #f0f0f0;
}

.table-borderless th, .table-borderless td {
  border: none;
}

.text-muted {
  color: #6c757d !important;
}

.text-uppercase {
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 0.9rem;
}

/* Avatar */
.customer-avatar {
  font-size: 1.5rem;
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  background-color: #007bff;
  color: white;
}

/* Buttons */
.btn-outline-primary, .btn-outline-danger {
  border-radius: 50px;
  padding-left: 1rem;
  padding-right: 1rem;
}

.btn-outline-primary:hover, .btn-outline-danger:hover {
  background-color: #f8f9fa;
}

/* Status Tags */
.status {
  font-size: 0.8rem;
  color: #6c757d;
  margin-right: 0.5rem;
}

.status-new {
  color: #28a796;
  border: 2px solid #2898a7;
  background: #e9feff;
}
.status-sent {
  color: #2a28a7;
  border: 2px solid #2a28a7;
  background: #ededff;
}
.status-pending {
  color: #ff9100;
  border: 2px solid #ff9100;
  background: #fff1df;
}
.status-approved {
  color: #28a745;
  border: 2px solid #28a745;
  background: #eafcee;
}
.status-rejected {
  color: #a72828;
  border: 2px solid #a72828;
  background: #ffeeee;
}

.status-first_project {
  color: #d3e7fc;
}



/*aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa */
.sidebar {
  height: 100vh;
  width: 250px;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #343a40;
  padding: 15px;
  color: white;
}
.sidebar a {
  color: white;
  text-decoration: none;
}
.sidebar a:hover {
  text-decoration: underline;
}
.main-content {
  margin-left: 250px;
  padding: 20px;
}

.custom-tooltip {
  --bs-tooltip-bg: #343a40; /* Fondo oscuro */
  --bs-tooltip-color: #fff; /* Texto blanco */
  --bs-tooltip-arrow-width: 1rem; /* Flecha más grande */
  --bs-tooltip-arrow-height: 0.5rem;
  --bs-tooltip-arrow-color: #343a40; /* Coincide con el fondo */
  --bs-tooltip-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); /* Sombra */
  --bs-tooltip-border-radius: 0.5rem; /* Bordes redondeados */
  --bs-tooltip-font-size: 0.875rem; /* Tamaño de texto */
  --bs-tooltip-font-weight: 500; /* Grosor de texto */
}
.nav-link{
  transition: all ease-in 0.2s;
}

.central:hover{
  background: #eaedf5;
  border-radius: 24px;
}

.central.active-nav{
  background: #d1d7e2;
  border-radius: 24px;
}

.settings{
  transition: transform 0.6s ease;
}


.settings:hover{
  transform: rotate(60deg);
}

.offcanvas-form {
  position: fixed;
  right: -100%; /* Oculta el formulario fuera de la vista */
  top: 0;
  width: 550px;
  height: 100%;
  background-color: #ff000000;
  transition: all 3s ease;
  
}
.offcanvas-form form{
  background-color: none;
  height: 100%;
}
#customer-form {
  display: none;

}

#customer-form.visible {
  display: block;
  right:0;
  -webkit-box-shadow: -800px 127px 600px 200px rgba(0,0,0,0.2);
  -moz-box-shadow: -800px 127px 600px 200px rgba(0,0,0,0.2);
  box-shadow: -800px 127px 600px 200px rgba(0,0,0,0.2);
  transition: all 3s ease;
  z-index: 50;

}


#id_customer{
  width: 400px;
  display: block;
}


/* progress-project */

.timeline-container {
  background-color: white;
  border-radius: 20px;
  padding: 30px;
  width: 100%;
  margin-right: 0px;
}
.timeline {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin-bottom: 20px;
  margin-left: 0px;
}
.timeline::before {
  content: '';
  position: absolute;
  top: 15px;
  left: 0;
  right: 0;
  height: 3px;
  background-color: #a6c5ff;
  z-index: 1;
} 

#selectManager:focus{
  border: none !important;
  box-shadow: none !important;
}
  
.step {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 2;
  width: 30px;
  max-width: 30px;
}

.step:last-child {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 2;
}
.modal-header{
  background-image: url('../img/logoPatron.png'); /* Cambiar a la ruta correcta de la imagen */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  color: #161616;
  border-bottom: 1px solid #ffffff;
  border-radius: 8px 8px 0 0;
  padding: 10px;
}

.step-circle {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
}

.step-circle:last-child{
  margin: 0px;
  justify-items: end;
}
.step-circle::after {
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: white;
}


.step-title {
  font-weight: bold;
  margin-bottom: 5px;
  text-align: center;
}
.step-description {
  font-size: 0.9em;
  color: #666;
  text-align: center;
  max-width: 150px;
}

.step-True{
  background-color: var(--bs-primary);
  border: 4px solid white;
  
}

.step-False{
  background-color: #7d7d7d;
  border: 4px solid rgb(229, 228, 228);
}

.step-text-False{
  color: #a4a3a3;
  font-size: 0.8rem;
}

.step-text-True{
  color: var(--bs-primary);
  font-size: 0.8rem;

  border-radius: 8px;
  opacity: 70%;
}

.step-current-True{
  box-shadow:  0 0rem 0.5rem  var(--bs-primary);;
  border: 2px solid white;
  
}

.step-text-current-True{
  background-color: var(--bs-primary);
  color: white;
  border: 2px solid var(--bs-primary);
  font-size: 1rem;
  padding: 2px 8px;
  border-radius: 8px;
  opacity: 100%;
  
}


.step-current-Danger{
  box-shadow:  0 0rem 0.5rem  var(--color-status-error-bg);;
  border: 2px solid white;
  background-color: var(--color-status-error);
  
}

.step-text-current-Danger{
  background-color: var(--color-status-error);
  color: white;
  font-size: 1rem;
  padding: 2px 8px;
  border-radius: 8px;
  opacity: 100%;
  
}

.btn-form{
  opacity: 50%;
  border: none;
  border-radius: 8px;
}

.btn-form:hover{
  opacity: 100%;

}

.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  text-align: justify;
}

input:disabled[readonly] {
  background-color: transparent; /* Cambia el color de fondo */
  color: inherit; /* Mantiene el color del texto del elemento padre */
}



.dropdown-item{
  font-size: 0.8rem;
  padding: 2px;

}

.dropdown-menu{
  padding: 0px;
}

/* view_budget */
.tag {
  background-color: var(--color-enterprice);
  color: #ffffff;
  padding: 0.25rem 0.75rem;
  font-size: 0.875rem;
  font-weight: bold;
  transition: box-shadow 0.2s ease-in-out;
}

.tag:hover {
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}


.bg-company{
  background-color: var(--color-enterprice);
}

.form-control-budget{
  width: 100%;
  border: none;
  background-color: transparent;
}

.money_simbol_input{
  position: absolute;
  border: none;

}

.form-control-budget:focus {
  outline: 1px; /* Asegura que no haya borde al enfocar */
  border: 1px; /* Asegura que no aparezca ningún borde al enfocar */
  background-color: #007bff15;
}

.add-btn{
  padding: 0px 2px;
  font-size: 0.8rem;
  position: relative;
  top: -6px;
  background-color: rgba(245, 245, 191, 0.575);
  border: none;
  color: gray;
  opacity: 0.5;
}

.add-btn:hover{
  top: -5px;
  opacity: 1;
}

.remove_btn{
  opacity: 0.5;
  font-size: 0.8rem;
  border-radius: 0px;
}
.remove_btn:hover{
  opacity: 1;
  
}

.innerSelect{
  border:  none;
  background-color: var(--color-status-in-progress-bg);
  border-radius: 18px;
  font-size: 0.6rem;
  padding: 1px;
  margin: 2px;
  opacity: 0.5;

}



/* Estilos para la línea de tiempo */

.timeline-item {
  position: relative;
  margin-bottom: 20px;
}
.timeline-item::before {
  content: '';
  position: absolute;
  left: -8px;
  top: 0;
  width: 16px;
  height: 16px;
  background-color: #0d6efd;
  border-radius: 50%;
}

.scope-section:hover #add-materials {
  display: inline-block;
  opacity: 1;
}

#add-materials {
  opacity: 0;
  transition: all 0.5s ease;
}

.containerLoading {
  position: fixed;
  width: 100%;
  height:100hv ;
  background-color: #4747475c;
  height: -webkit-fill-available;
  top: 0px;
  display: flex;
  align-content: center;
  align-items: center;
  justify-content: center;
  z-index: 1030;}

.folderSvg{
  max-width: 60px;
}

.fileSvg{
  max-width: 30px;
}

.modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(79 79 79 / 50%);
  z-index: 10;
  justify-content: center;
  align-items: center;
  backdrop-filter: blur(1px);
}

/* Estilo para el contenido de la ventana modal */
.modal-content {
  background-color: white;
  padding: 20px;
  border-radius: 8px;
  width: 400px;
  text-align: center;
}

.file-drop-area{
  border: 4px dashed #007bff;
  border-radius: 10px;
  padding: 40px;
  text-align: center;
  background-color: #f8f9fa;
  position: relative;
  cursor: pointer;
  transition: background-color 0.3s ease-in-out;
}


.choose-file-button {
  flex-shrink: 0;
  background-color: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 3px;
  padding: 8px 15px;
  margin-right: 10px;
  font-size: 12px;
  text-transform: uppercase;
}

.file-message {
  font-size: small;
  font-weight: 300;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.file-input {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  cursor: pointer;
  opacity: 0;
  
}

.folder-action {
  opacity: 0.2; 
  position: absolute;
  margin-left: 10px;
  font-size: 0.8rem;
}

.folder-container:hover .folder-action {
  opacity: 0.8;
}

#alert-container {
  position: fixed;
  bottom: 20px; 
  right: 20px; 
  z-index: 1050
}

#buttonCheckName{
  margin-left: -5px;
  height:20px;
  font-size:8px;
  color:white;
  text-decoration:none;
  background-color: #1e8100;
  border-radius: 4px;
}


.table-transparent th,
.table-transparent td {
  border-bottom:  solid 4px transparent !important;
}

#grid-bottom-bar{
  opacity: 0 !important;
}

.info-tooltip {
  --bs-tooltip-bg: rgb(218, 218, 218);
  --bs-tooltip-color: black;
  font-size: 0.7rem;
  padding: 1px;
}

.tooltip-info{
  background-color: #afafaf;
  color: black;
  padding: 0px 1px;
  border-radius: 18px;
  font-size: 0.7rem;
  border: none;
  width: 15px;
  height: 15px;
}

.formula-tooltip {
  --bs-tooltip-bg: rgb(218, 218, 218);
  --bs-tooltip-color: black;
  font-size: 0.7rem;
  padding: 1px;
}


.tooltip-formula{
  background-color: #7ad800;
  color: black;
  padding: 0px 1px;
  border-radius: 18px;
  font-size: 0.7rem;
  border: none;
  width: 15px;
  height: 15px;
}

.items_tag{
  font-size: 0.8rem;
  
}

#itemInput:focus {
  outline: none; 
  box-shadow: none;
}

.modal {
    z-index: 1050;
}

.modal-backdrop {
    z-index: 1040;
}

.modal.modal-secondary {
    z-index: 1060;
}

.modal.modal-secondary + .modal-backdrop {
    z-index: 1055;
}

.production-card:hover{
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  cursor: pointer;
  scale: 1.02;
  transition: all 0.3s ease;
}

/* Colores personalizados para la barra de progreso del Gantt */
.task-completed .gantt_task_progress {
    background-color: #198754 !important; /* Verde */
}
.task-in-progress .gantt_task_progress {
    background-color: #ffc107 !important; /* Amarillo */
}
.task-not-started .gantt_task_progress {
    background-color: #dc3545 !important; /* Rojo */
}

.gantt_task_progress {
    min-width: 4px !important;
}

div.gantt_task_progress.gantt-progress-in-progress {
  background-color: #00f !important;
}

.gantt-progress-completed {
  background-color: #198754 !important;
}

.gantt-progress-not-started {
  background-color: #dc3545 !important;
}

.gantt-progress-in-progress {
  background-color: #ffc107 !important;
}

/* Planning Table Styles */
.planning-table .badge {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
}

.planning-table .status-empty {
    font-size: 0.875rem;
}

.planning-table .text-truncate {
    max-width: 200px;
}

.planning-table .btn-sm {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
}

/* Placeholder loading animation */
.placeholder-glow .placeholder {
    animation: placeholder-glow 2s ease-in-out infinite alternate;
}

@keyframes placeholder-glow {
    0% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}

/* Filter styles */
.form-control-search {
    border-radius: 0.375rem;
    border: 1px solid #dee2e6;
}

.form-control-search:focus {
    border-color: #86b7fe;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

/* Table header styles */
.bg-gray {
    background-color: #f8f9fa;
}

/* Status badges */
.status_planning_and_documentation {
    color: #6c757d;
}

.status_in_production {
    color: #0d6efd;
}

.status_pending_payment {
    color: #fd7e14;
}

.status_completed {
    color: #198754;
}

/* Customer type styles */
.title_individual {
    color: #6f42c1;
}

.title_company {
    color: #0dcaf0;
}

/* Blur effect for costs when user doesn't have permission to view them */
.blur-costs {
    filter: blur(3px);
    transition: filter 0.3s ease;
    cursor: not-allowed;
    position: relative;
}

/* Project filter checkboxes styling */
.card-header label {
    margin-bottom: 0;
    font-size: 0.9rem;
    font-weight: 500;
    color: #495057;
    transition: color 0.2s ease;
}

.card-header label:hover {
    color: #007bff;
}

.card-header input[type="checkbox"] {
    margin-right: 0.3rem;
    cursor: pointer;
}

.card-header input[type="checkbox"]:checked + span {
    color: #007bff;
    font-weight: 600;
}


