/* Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Typographie */
body {
  font-family: 'Segoe UI', sans-serif;
  background-color: #f4f6f9;
  color: #333;
}

/* Sidebar */
.sidebar {
  background-color: #1e1e2f;
  color: #fff;
      position: fixed;
    z-index: 10; /* pas plus haut que nécessaire */
}

.sidebar .nav-link {
  padding: 10px 15px;
  border-radius: 4px;
  transition: background 0.2s ease;
}

.sidebar .nav-link:hover {
  background-color: #343a40;
  text-decoration: none;
}

/* Header */
header {
  background-color: #ffffff;
  padding: 15px 20px;
  border-bottom: 1px solid #ddd;
}

/* Boutons */
.btn {
  padding: 8px 16px;
  border: none;
  border-radius: 4px;
  font-weight: 500;
  cursor: pointer;
}

.btn-primary {
  /* background-color: #007bff; */
  background-color: #198754 !important;
  color: white;
}

.btn-danger {
  background-color: #dc3545;
  color: white;
}

.btn-secondary {
  background-color: #6c757d;
  color: white;
}

.btn:hover {
  opacity: 0.9;
}

/* Tableaux */
table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

table th, table td {
  padding: 10px;
  border: 1px solid #ccc;
}

table th {
  background-color: #007bff;
  color: white;
}

/* Responsive */
@media (max-width: 768px) {
  .sidebar {
    position: static;
    width: 100%;
    height: auto;
  }

  .main-content {
    margin-left: 0;
  }
}

/* --------------survol effect and actif link ---- */

.nav-link {
  padding: 10px 15px;
  border-radius: 80px 10px !important;
  transition: background-color 0.2s ease;
  
}

.nav-link:hover {
  background-color: #343a40;
  text-decoration: none;
  
}

.bg-primary.fw-bold {
  background-color: #0d6efd !important;
  color: #fff !important;
  font-weight: bold;
}
.nav-link.text-danger {
  color: #dc3545 !important;
}

.nav-link.bg-danger {
  background-color: #dc3545 !important;
  color: #fff !important;
}
/* #deconnect {
  margin-top: 30px;
} */

.alert-success-fixed {
    position: relative; /* ou static si possible */
    margin: 20px auto;
    padding: 10px 20px;
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
    border-radius: 5px;
    max-width: 600px;
    z-index: 1; /* inférieur au sidebar si besoin */
}

.main-content {
    padding-top: 60px; /* ajuste selon la hauteur du message */
    overflow: auto;
    position: relative;
    z-index: 0;
}

/* --------- */
  .modal-lg {
    max-width: 900px;
  }
  body.modal-open {
    overflow: auto !important;
  }
  .modal {
  z-index: 1055 !important;
}
.modal-backdrop {
  z-index: 1050 !important;
}

/* message fade alert */

.fade-message {
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}

.fade-message.fade-out {
  opacity: 0;
  transform: translateY(-10px);
}

/*---- fade in table */
#eleveTableBody tr {
  animation: fadeIn 0.3s ease-in;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

/* .bg-dark.text-white.vh-100.p-3{
  background-color: yellow !important; 
} */
.bg-dark.text-white.vh-100.p-3{
  height:fit-content !important; /* sidebar content height fit */
}

/* bulletin style */
/* @media print {
  body { margin: 0; padding: 0; }
  form, .btn, .print-button { display: none !important; }
  .card { page-break-after: always !important; }
}
.bulletin-table {
  background-image: url('../assets/imgs/fond_bulletin.png')!important;
  background-size: cover;
  background-repeat: no-repeat !important;
} */

/* .bulletin-table {
  background-image: url('../assets/imgs/fond_bulletin.png') !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}
.bulletin-table tbody tr:nth-child(even) {
  background-color: #f9f9f9 !important;
}
.bulletin-table tbody tr:nth-child(odd) {
  background-color: #ffffff !important;
}
.bulletin-table thead {
  background-color: #e0e0e0 !important;
  font-weight: bold !important;
}
.bulletin-table tfoot {
  background-color: #f0f0f0 !important;
  font-weight: bold !important;
} */

/* --- */

    @media print {
  canvas {
    max-width: 100% !important;
    max-height: 200px !important;
  }
}

/* modify css print preview dimension */
@page {
  size: 8.5in 11in; /* format Letter */
  margin: 0.5in;    /* marges imprimante */
}

@media print {
  html, body {
    width: 100%;
    height: 100%;
    zoom: 1 !important; /* éviter le rétrécissement */
  }

  body {
    -webkit-print-color-adjust: exact; /* conserver couleurs */
    print-color-adjust: exact;
  }
}

button.btn.btn-primary {
  /* background-color: #007bff; */
  background-color: #198754 !important;
  color: white;
}




/* *** ------------------------- new  */
