html {
  width: 100%;
}

body {
  overflow-x: hidden !important;
}

body.show-spinner>main {
  overflow: hidden !important;
}

/* Hide everything under body tag */
body.show-spinner>* {
  opacity: 0;
}

/* Spinner */
body.show-spinner::after {
  content: " ";
  display: inline-block;
  width: 30px;
  height: 30px;
  border: 2px solid rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  border-top-color: rgba(0, 0, 0, 0.3);
  animation: spin 1s ease-in-out infinite;
  -webkit-animation: spin 1s ease-in-out infinite;
  left: calc(50% - 15px);
  top: calc(50% - 15px);
  position: fixed;
  z-index: 1;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@-webkit-keyframes spin {
  to {
    -webkit-transform: rotate(360deg);
  }
}
.navbar .search {
	width:70% !important;
}
.modal-backdrop {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100vw;
	height: 100vh;
	background-color: #000;
	
}
.modal-content {
	padding-right: 15px;
	/*background-color:#f4f4f4 !important;*/
}
.modal .modal-body, .modal .modal-footer, .modal .modal-header {
	padding: 1.75rem;
	/*background-color:#f4f4f4;*/
}

/* Rotation en 3D */
.flippable {
     /* width: 200px;
      height: 300px;*/
      perspective: 1000px;
	  transform-style: preserve-3d;
	  transform-origin: center right;
	  transition: transform 1s;
    }

    .front,
    .back {
      width: 100%;
      height: 100%;
      position: absolute;
      display: flex;
      justify-content: center;
      align-items: center;
      backface-visibility: hidden;
    }

    .front {
      background-color: #3498db;
      transform: rotateY(0deg);
    }

    .back {
      background-color: #e74c3c;
      transform: rotateY(180deg);
    }
	.flippable.flipped {
	 transform: translateX(-100%) rotateY(-180deg);
}
.img-front-back {
	background: url(../img/login/portrait-back.jpg) no-repeat center top !important; 
	background-size: cover !important;
}
.align-bas {
	position: absolute;  
	bottom: 0;  
	right: 0;  
	margin: 10px;
}
.btn-tertiary {
	background-color: #3e3e3e;
	border-color: #000000;
	color: #fff;
}

.wide-column {
  position: -webkit-sticky; /* Pour Safari */
  position: sticky;
  left: 0;
  background-color: white; /* Pour rendre la colonne lisible pendant le scroll */
  z-index: 10; /* S'assurer que la colonne est au-dessus du contenu qui défile */
  border-right: 1px solid #dee2e6; /* Optionnel : bordure pour bien délimiter */
  box-shadow: 2px 0px 5px rgba(0,0,0,0.1); /* Ajoute une légère ombre pour séparer visuellement */
  padding: 10px; /* Pour s'assurer que toute la cellule est bien visible */
}

thead .wide-column {
  z-index: 11; /* Pour que l'entête de la colonne reste au-dessus */
  background-color: #f8f9fa; /* Assurer que l'arrière-plan de l'en-tête soit également sticky */
}

tbody .wide-column {
  z-index: 9; /* Légèrement plus bas pour le contenu */
  background-color: white; /* Assurer que le fond reste blanc et sticky */
}
.table-responsive {
  padding:0px !important;
  border-left: #fff;
}