/* EXDEV V1.6.0 — catalogue complet dans la sidebar client */
.module-side-section .side-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.module-side-section .side-section-title small {
  font-size: 9px;
  color: #7890b0;
  border: 1px solid rgba(91, 191, 235, .13);
  border-radius: 999px;
  padding: 2px 6px;
}

.side-item.module-nav-item {
  grid-template-columns: 25px minmax(0, 1fr) auto !important;
  min-height: 42px !important;
}

.module-nav-state {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  max-width: 82px;
  font-size: 8.5px !important;
  font-weight: 800;
  letter-spacing: .01em;
  line-height: 1;
  text-transform: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #8294b0;
}
.module-nav-state i { font-style: normal; font-size: 9px; }

.side-item.module-unconfigured {
  opacity: .58;
  filter: saturate(.45);
  background: rgba(255,255,255,.012);
}
.side-item.module-unconfigured:hover,
.side-item.module-unconfigured.active {
  opacity: 1;
  filter: none;
}
.side-item.module-unconfigured .module-nav-state { color: #71819b; }

.side-item.module-configured .module-nav-state { color: #66e6c3; }
.side-item.module-configured .module-nav-state i { color: #22d3a8; }
.side-item.module-panel-ready .module-nav-state { color: #c6a7ff; }
.side-item.module-panel-ready .module-nav-state i { color: #a855f7; }
.side-item.module-disabled .module-nav-state { color: #e9b85f; }
.side-item.module-incomplete .module-nav-state { color: #f5c663; }
.side-item.module-error .module-nav-state { color: #fb7185; }

.side-item.module-locked,
.side-item.module-locked:hover {
  opacity: .35 !important;
  filter: grayscale(.75) saturate(.25) !important;
  cursor: not-allowed !important;
  background: rgba(255,255,255,.008) !important;
  color: #78849a !important;
}
.side-item.module-locked .module-nav-state { color: #7f8797; }

.side-item.module-nav-item.active {
  opacity: 1 !important;
  filter: none !important;
}
.side-item.module-nav-item.active .module-nav-state { color: #9ff4ff; }

.client-dashboard .workspace-nav {
  padding-bottom: 18px;
}

@media (max-width: 1180px) {
  .module-nav-state { max-width: 72px; font-size: 8px !important; }
}

/* Étape 5.2 — états stables pendant la synchronisation */
.side-item.module-loading {
  opacity: .72;
  filter: saturate(.65);
  cursor: progress;
}
.side-item.module-loading .module-nav-state { color: #89a9c7; }
.side-item.module-loading .module-nav-state i { animation: exdevModulePulse 1s ease-in-out infinite; }
.side-item.module-unavailable .module-nav-state { color: #93a1b7; }
.side-item.module-unavailable { opacity: .7; }
@keyframes exdevModulePulse { 50% { opacity: .35; } }
