/* ==========================================================================
   kdo-card — Conteneur fiche
   ========================================================================== */

.kdo-card {
  background: var(--kdo-bg);
  border: var(--kdo-border-width) solid var(--kdo-border);
  border-radius: var(--kdo-radius-md);
  box-shadow: var(--kdo-shadow-sm);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  font-family: var(--kdo-font-family);
  font-size: var(--kdo-text-base);
  color: var(--kdo-text);
  position: relative;
  transition: box-shadow var(--kdo-transition-base);
}
.kdo-card:hover { box-shadow: var(--kdo-shadow-md); }

.kdo-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--kdo-space-sm) var(--kdo-space-md);
  border-bottom: var(--kdo-border-width) solid var(--kdo-border);
  background: var(--kdo-bg);
  gap: var(--kdo-space-sm);
}
.kdo-card-titre {
  display: flex;
  align-items: center;
  gap: var(--kdo-space-sm);
  font-size: var(--kdo-text-base);
  font-weight: var(--kdo-weight-semi);
  color: var(--kdo-gray-900);
  flex: 1;
  min-width: 0;
}
.kdo-card-titre i {
  color: var(--kdo-primary);
  background: var(--kdo-primary-light);
  width: 26px;
  height: 26px;
  border-radius: var(--kdo-radius-full);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: var(--kdo-text-xs);
  flex-shrink: 0;
}
.kdo-card-actions {
  display: flex;
  align-items: center;
  gap: var(--kdo-space-xs);
}
.kdo-card-action {
  background: none;
  border: none;
  color: var(--kdo-gray-500);
  cursor: pointer;
  padding: 4px 8px;
  border-radius: var(--kdo-radius-sm);
  font-size: var(--kdo-text-base);
  transition: all var(--kdo-transition-fast);
  line-height: 1;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.kdo-card-action:hover { background: var(--kdo-gray-200); color: var(--kdo-text); }

.kdo-card-body {
  padding: var(--kdo-space-md);
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
}

.kdo-card--collapsed .kdo-card-body,
.kdo-card--collapsed .kdo-card-footer { display: none; }

/* ── Mode compact ─────────────────────────────────────── */
.kdo-card--compact .kdo-card-header { padding: var(--kdo-space-xs) var(--kdo-space-sm); }
.kdo-card--compact .kdo-card-body   { padding: var(--kdo-space-xs) var(--kdo-space-sm); }
.kdo-card--compact .kdo-card-footer { padding: var(--kdo-space-xs) var(--kdo-space-sm); }
.kdo-card--compact .kdo-card-titre  { font-size: var(--kdo-text-sm); }
.kdo-card--compact .kdo-card-titre i {
  width: 22px;
  height: 22px;
  font-size: 11px;
  background: transparent;
  color: var(--kdo-primary);
}
.kdo-card--compact .kdo-th,
.kdo-card--compact .kdo-td { padding: 6px var(--kdo-space-sm); }
.kdo-card--compact .kdo-list-header { padding: 0; }

.kdo-card-footer {
  padding: var(--kdo-space-sm) var(--kdo-space-md);
  border-top: var(--kdo-border-width) solid var(--kdo-border);
  background: var(--kdo-bg-alt);
  font-size: var(--kdo-text-sm);
  color: var(--kdo-text-mute);
}
