body {
      overflow-x: hidden;
    }

.hide-from-page { display:none; } /* hide at normal page view */
@media print {
  .hide-from-page { display:inline; } /* make it visible during print */
}
h3
{
  /*font-size: 14px;*/
  font-weight: bold;
}

    .content {
      padding: 20px;
      margin-left: 0;
      font-size: 1rem !important;
    }
    .table
    {
      font-size: 12px !important;
    }

    h3,h2
    {
      font-size: 14px !important;
    }

    a
    {
      text-decoration: none;
    }

    @media (min-width: 768px) {
      .sidebar-desktop {
        position: fixed !important;
        top: 0;
        left: 0;
        width: 250px !important; /* 👈 Forcé ici */
        height: 100vh;
        z-index: 1045;
        display: flex !important;
        flex-direction: column;
        background-color: #212529 !important;
        color: white;
        visibility: visible !important;
        transform: none !important;
        border-right: 1px solid #444;
        font-size: 1rem !important; /* Texte de la sidebar plus grand */
      }

      .content {
        margin-left: 250px;
      }

      .sidebar-desktop .offcanvas-header {
        display: none;
      }
    }

    .accordion-button {
      background-color: #212529;
      color: white;
      font-size: 1rem;
      font-weight: bold;
      padding: 0.5rem 1rem;
    }

    .accordion-button:not(.collapsed) {
      background-color: #343a40;
      color: #f8f9fa;
    }

    .accordion-body a {
      color: #ced4da;
      text-decoration: none;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 5px 0 5px 15px;
      font-size: 0.8rem;
      font-weight: bold;
    }

    .accordion-body a:hover {
      color: #ffffff;
    }

    .accordion-body .collapse a {
      padding-left: 25px;
      font-size: 0.8rem;
    }

    .sidebar-footer {
      background-color: #121416;
      color: #ccc;
      text-align: center;
      padding: 10px;
      font-size: 1.5rem;
      font-weight: bolder;
    }

    .user-profile {
      display: flex;
      align-items: center;
      gap: 20px;
      padding: 15px;
      background-color: #1a1d20;
      border-bottom: 1px solid #444;
    }

    .user-profile img {
      width: 120px;
      height: 60px;
      object-fit: cover;
    }

    .user-profile .info {
      line-height: 1.2;
    }

    .user-profile .info small {
      color: #aaa;
      font-size: 0.75rem;
    }

    .badge-notif {
      background-color: #dc3545;
      font-size: 0.65rem;
      padding: 3px 6px;
    }

    .menu-divider {
  border: none;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.15); /* ligne claire et subtile */
  margin: 0.5rem 0;
}

.cancelled-facture::after,
.cancelled-facture::before {
  position: absolute;
  content: "";
  pointer-events: none;
}

.cancelled-facture::after {
  top: 50%;
  left: 0;
  width: 100%;
  border-top: 4px solid red;
  transform: rotate(-20deg);
  transform-origin: center;
}

.cancelled-facture::before {
  content: "ANNULÉ";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-20deg);
  font-size: 3rem;
  color: rgba(255, 0, 0, 0.2); /* Rouge pâle */
  font-weight: bold;
  white-space: nowrap;
  user-select: none;
}
.toggle-children{
    color:#0d6efd;
    margin-right:5px;
}

/* Accordion vert */
.accordion .accordion-button {
    background-color: #198754; /* vert Bootstrap "success" */
    color: #fff;               /* texte blanc */
}

.accordion .accordion-button:not(.collapsed) {
    background-color: #145c32; /* vert plus foncé quand ouvert */
    color: #fff;
}

.accordion .accordion-button:focus {
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5); /* halo vert clair */
}

.accordion .accordion-body {
    background-color: #198754; /* vert foncé pour le corps */
    color: #fff;               /* texte blanc */
    padding-left: 1rem;
}

/* Liens des sous-menus */
.accordion .accordion-body a {
    color: #fff !important; /* texte blanc pour tous les liens */
    text-decoration: none;
}

.accordion .accordion-body a:hover {
    text-decoration: underline; /* optionnel : souligné au hover */
}

.menu-divider {
    border-top: 1px solid #fff; /* séparateur blanc */
}
