/* ------- Sidebar ------- */
.sidebar {
  background: var(--mint);
  padding: 2rem 0;
  border-right: 1px solid #e2e8f0;
 /* prend toute la hauteur    position: fixed; */
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;         /* prend toute la hauteur */
  overflow-y: auto;      /* permet de scroller si trop de contenu */
  width: 280px;          /* largeur fixe pour éviter que ça bouge */
}

/* Séparateur après Send An Invitation */
.sidebar .separator {
  border-top: 1px solid #cbd5e0;
  margin: 1rem 1.5rem;   /* petit espace autour */
}

  .sidebar-header {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0 2rem 2rem;
    margin-bottom: 1rem;
  }

  .logo {
    width: 40px;
    height: 40px;
    background: var(--teal);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .logo svg {
    width: 24px;
    height: 24px;
    fill: white;
  }

  .brand {
    font-weight: 700;
    font-size: 1.1rem;
    color: var(--black);
  }

  .nav-menu {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .nav-item {
    margin: 0.25rem 1.5rem;
  }

  .nav-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    text-decoration: none;
    color: var(--grey);
    border-radius: var(--radius);
    transition: all 0.2s ease;
    font-weight: 500;
  }

  .nav-link:hover {
    background: rgba(26, 109, 85, 0.1);
    color: var(--green);
  }

  .nav-link.active {
    background: var(--green);
    color: white;
  }

  .nav-icon {
    width: 20px;
    height: 20px;
  }

  .notification-badge {
    background: var(--teal);
    color: white;
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
    border-radius: 12px;
    font-weight: 600;
    margin-left: auto;
  }

        /* Main Content */



        .welcome-text {
            font-size: 24px;
            color: #333;
        }

        .user-info {
            display: flex;
            align-items: center;
        }

        .user-avatar {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
        }

  .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #e8f4f8;
    padding: 20px 30px;
    margin-bottom: 2rem;
    margin-top: 2rem;
    border-radius: 25px;
  }


  .welcome-title {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--black);
    margin: 0;
  }

  .user-profile {
    display: flex;
    align-items: center;
    gap: 0.75rem;
  }


  .user-info h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--black);
  }

  .user-info p {
    margin: 0;
    font-size: 0.875rem;
    color: var(--grey);
  }
  .close-btn {
  position: absolute;
  top: 15px;
  right: 15px;
  background: none;
  border: none;
  font-size: 2rem;
  color: var(--black);
  cursor: pointer;
  z-index: 1100;
}

  /*responsive*/

    @media (max-width: 1024px) {
      .header{
        border-radius: 0px;
        margin: 0px;
      }
}