/* Correctifs d'interface communs à toutes les pages FaitMinute. */

.account-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  margin-top: 22px;
}

.account-actions .btn {
  width: 100%;
  white-space: nowrap;
}

/* Le menu desktop reste compact et chaque libellé tient sur une ligne. */
@media (min-width: 961px) {
  .topbar {
    height: 76px;
    min-height: 76px;
    padding: 0 clamp(16px, 2vw, 32px);
    gap: clamp(12px, 1.5vw, 22px);
    flex-wrap: nowrap;
  }

  .logo img {
    width: clamp(166px, 16vw, 190px);
  }

  .menu-toggle {
    display: none;
  }

  .topbar nav {
    display: flex;
    width: auto;
    flex-direction: row;
    align-items: center;
    flex-wrap: nowrap;
    gap: clamp(8px, 1vw, 14px);
    margin-left: auto;
  }

  .topbar nav a {
    padding: 0;
    font-size: clamp(.74rem, .9vw, .84rem);
    line-height: 1.2;
    white-space: nowrap;
  }

  .topbar .actions {
    display: flex;
    width: auto;
    flex-direction: row;
    align-items: center;
    flex-wrap: nowrap;
    gap: 7px;
  }

  .topbar .actions .btn {
    width: auto;
    padding: 9px 12px;
    font-size: .79rem;
    line-height: 1.2;
    white-space: nowrap;
  }
}

/* En dessous de 960 px, le menu passe proprement dans le bouton mobile. */
@media (max-width: 960px) {
  .topbar {
    height: auto;
    min-height: 72px;
    padding: 12px 18px;
    flex-wrap: wrap;
  }

  .logo img {
    width: 185px;
  }

  .menu-toggle {
    display: block;
    margin-left: auto;
  }

  .topbar nav,
  .topbar .actions {
    display: none;
    width: 100%;
    flex-direction: column;
    gap: 8px;
  }

  .topbar.open nav,
  .topbar.open .actions {
    display: flex;
  }

  .topbar nav a {
    padding: 8px 0;
    font-size: .9rem;
  }

  .topbar .actions .btn {
    width: 100%;
    padding: 11px 14px;
  }
}
