body::before {
  content: "";
  position: fixed; /* Use fixed positioning to keep the image in place */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../image/camera-image.png");
  background-position: center;
  background-size: cover;
  filter: blur(1px) brightness(0.3);
  z-index: -100; /* Ensure the background image stays behind other content */
}

* {
  font-family: Arial, Helvetica, sans-serif;
}

.container {
  position: absolute;
  top: 28vh;
  max-width: 1140px;
  margin: auto;
  padding: 15px;
}

.mt-5 {
  margin-top: 5rem;
}

.mb-4 {
  margin-bottom: 4rem;
}

.text-center {
  text-align: center;
}

.modal,
.form-container {
  display: none;
  position: fixed;
  z-index: 20;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
}

.modal-content,
.form-content {
  background-color: #1e1e1e;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  width: 80%;
  max-width: 600px;
  margin: auto;
  color: #e0e0e0;
}

.form-content {
  padding: 30px;
  border-radius: 12px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
  text-align: left;
  display: flex;
  flex-direction: column;
  max-height: 90vh;
  overflow-y: auto;
}

.modal-buttons {
  text-align: center;
  margin-top: 20px;
}
.default-button {
  background-color: #248f99;
  z-index: 15;
  color: white;
  border: none;
  padding: 10px;
  cursor: pointer;
  border-radius: 5px;
  font-size: 18px;
  margin-bottom: 15px;
  white-space: nowrap;
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */
}

.default-button:hover {
  transform: translateY(-4px); /* Lift the button more on hover */
  box-shadow: 0 6px 8px rgba(0, 0, 0, 1); /* Increase shadow on hover */
}

.default-button:active {
  transform: translateY(0); /* Remove lift on click */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Reduce shadow on click */
}

.buttons-container {
  display: flex;
  gap: 10px; /* Space between buttons */
  margin-bottom: 20px;
}

.form-content h1 {
  margin-bottom: 20px;
  font-size: 1.5rem;
  color: #f0f0f0;
}

.form-content label {
  margin-bottom: 10px;
  font-weight: bold;
  color: #cccccc;
}

.form-content input,
.form-content select {
  margin-bottom: 20px;
  padding: 12px;
  font-size: 1rem;
  border: 1px solid #555;
  border-radius: 4px;
  width: 100%;
  box-sizing: border-box;
  background-color: #333;
  color: #e0e0e0;
}

.duration-input,
.fraction-input {
  display: flex;
  align-items: center;
  justify-content: center;
}

.duration-input button,
.fraction-input button {
  width: 40px;
  height: 40px;
  margin: 0 10px;
  background-color: #007bff;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s;
}

.duration-input button:hover,
.fraction-input button:hover {
  background-color: #0056b3;
}

.duration-input input {
  width: 60px;
  text-align: center;
}

.frequency-control {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.frequency-control label {
  margin-right: 10px;
  color: #e0e0e0;
}

.frequency-control input[type="number"] {
  width: 10vw;
  text-align: center;
  background-color: #333;
  border: 1px solid #555;
  color: #e0e0e0;
}

.hiddenTable {
  max-height: 50vh;
  overflow-y: hidden;
}

.full-view {
  max-height: none;
  overflow-y: visible;
}

footer {
  text-align: center;
  position: fixed;
  bottom: 0;
  width: 100%;
  background-color: #1e1e1e;
  padding: 1vh;
  border-top: 1px solid #333;
  color: #e0e0e0;
  font-size: 2vh;
}

#metric_viewer {
  margin-left: 3vw;
  background-color: #444;
  font-size: bold;
  opacity: 0.79;
}

.default-access-button {
  background-color: #182b3f;
  z-index: 15;
  color: white;
  border: 1px solid yellow;
  padding: 10px;
  cursor: pointer;
  border-radius: 5px;
  font-size: 18px;
  margin-bottom: 15px;
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */
}

.default-access-button:hover {
  transform: translateY(-4px); /* Lift the button more on hover */
  box-shadow: 0 6px 8px rgba(0, 0, 0, 0.8); /* Increase shadow on hover */
}

.default-access-button:active {
  transform: translateY(0); /* Remove lift on click */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Reduce shadow on click */
}

.default-delete-button {
  background-color: #7e2416;
  z-index: 15;
  color: white;
  border: none;
  padding: 10px;
  cursor: pointer;
  border-radius: 5px;
  font-size: 18px;
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth transition */
}

.default-delete-button:hover {
  transform: translateY(-4px); /* Lift the button more on hover */
  box-shadow: 0 6px 8px rgba(0, 0, 0, 1); /* Increase shadow on hover */
}

.default-delete-button:active {
  transform: translateY(0); /* Remove lift on click */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); /* Reduce shadow on click */
}

@keyframes glitch { 
  0% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  1% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  2% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  3% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  4% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  5% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  6% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  7% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  8% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  9% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  10% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  11% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
  12% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
  13% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
  14% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
  15% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
  16% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  17% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  18% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  19% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  20% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  21% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  22% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  23% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  24% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  25% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  26% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0.5px);}
  27% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0.5px);}
  28% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  29% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  30% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  31% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  32% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  33% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  34% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  35% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0.5px);}
  36% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0.5px);}
  37% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0.5px);}
  38% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  39% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  40% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  41% { text-shadow: 45px 0 0 #0c33f5, -45px 0 0 lime; filter: blur(0);}
  42% { text-shadow: 0 0 0 #0c33f5, 0 0 0 lime; filter: blur(0);}
  43% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
  44% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
  45% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
  46% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
  47% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0.5px);}
  48% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  49% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  50% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  51% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  52% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  53% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  54% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  55% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0.5px);}
  56% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0.5px);}
  57% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0.5px);}
  58% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  59% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  60% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  61% { text-shadow: 30px 0 0 red, -30px 0 0 lime; filter: blur(0);}
  62% { text-shadow: 0 0 0 red, 0 0 0 lime; filter: blur(0);}
  63% { text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5; filter: blur(0);}
  64% { text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5; filter: blur(0);}
  65% { text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5; filter: blur(0);}
  66% { text-shadow: 1px 0 0 red, -1px 0 0 #0c33f5; filter: blur(0.5px);}
  67% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0.5px);}
  68% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  69% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  70% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  71% { text-shadow: 50px 0 0 red, -50px 0 0 #0c33f5; filter: blur(0);}
  72% { text-shadow: 0 0 0 red, 0 0 0 #0c33f5; filter: blur(0);}
  73% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  74% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  75% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  76% { text-shadow: 3px 0 0 red, -3px 0 0 #0c33f5; filter: blur(0);}
  77% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  78% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  79% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  80% { text-shadow: -3px 0 0 red, 3px 0 0 #0c33f5; filter: blur(0);}
  81% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
  82% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0);}
  83% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
  84% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
  85% { text-shadow: 1px 0 0 red, -1px 0 0 lime; filter: blur(0.5px);}
  86% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0.5px);}
  87% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0.5px);}
  88% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  89% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  90% { text-shadow: -3px 0 0 red, 3px 0 0 lime; filter: blur(0);}
  91% { text-shadow: 60px 0 0 lime, -60px 0 0 #0c33f5; filter: blur(0);}
  92% { text-shadow: 0 0 0 lime, 0 0 0 #0c33f5; filter: blur(0);}
  92% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  93% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  94% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  95% { text-shadow: 0.8px 0 0 #0c33f5, -0.8px 0 0 lime; filter: blur(0);}
  96% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  97% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  98% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  99% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);}
  100% { text-shadow: -3px 0 0 #0c33f5, 3px 0 0 lime; filter: blur(0);} 
}

.form-header {
  display: flex;
  justify-content: right; /* Aligns items with space between them */
}

#close-form-button-project, #close-form-button-{
  width: 35px;
}

.container-title {
  text-align: center;
  position: absolute;
  top:5vh
}
.container-title #xyz {
  left: 29vw;
  font-family: 'Cabin Condensed', sans-serif;
  position: relative;
  white-space: nowrap;
  font-size: 4.5vw;
  max-width: 40vw;
  font-weight: bold;
  overflow: hidden;
  color: #f6f6f6;
  animation: textreveal 4s infinite alternate;
}
.container-title #ball {
  top: 4vh;
  position: absolute;
  height: 10vw;
  width: 10vw;
  white-space: nowrap;
  overflow: hidden;
  background-color: #f57724;
  border-radius: 50%;
  animation: ballmove 4s infinite alternate;
  z-index: 1;
  box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.3);
}
@keyframes ballmove {
  0% {
    transform: translate(25vw, 5vh) scale(0.1);
  }
  10% {
    transform: translateX(25vw) scale(0.5);
  }
  40% {
    transform: translateX(70vw) scale(0.5);
  }
  60% {
    transform: translate(66vw, 5vh) scale(0.1);
  }
  70% {
    transform: translate(66vw, 5vh) scale(0.15);
  }
  80% {
    transform: translate(66vw, 5vh) scale(0.1);
  }
  90% {
    transform: translate(66vw, 5vh) scale(0.15);
  }
  100% {
    transform: translate(66vw, 5vh) scale(0.1);
  }
}
@keyframes textreveal {
  0% {
    width: 0;
  }
  10% {
    width: 0;
  }
  40% {
    width: 40vw;
  }
  100% {
    width: 40vw;
  }
}

.global_title_h1 {
  color: white;
  font-size: 10vh;
}

/* Styles pour les statuts des projets dans le carrousel */
.status-draft {
  color: #6B8E23; /* Vert haricot/marron pour les brouillons */
  font-weight: bold;
}

.status-capturing {
  color: #87CEEB; /* Bleu ciel pour les projets en capture/en cours */
  font-weight: bold;
}

.status-idle {
  color: #32CD32; /* Vert vif pour les projets terminés */
  font-weight: bold;
}

.status-stopping {
  color: #FF4500; /* Orange rougeâtre pour les projets arrêtés */
  font-weight: bold;
}

.status-unknown {
  color: #cccccc; /* Gris pour les statuts inconnus */
  font-style: italic;
}