/* ============================================================
   CARDS — Cartes génériques et spécialisées
   ============================================================ */

/* Carte de base */
.card-new {
  background-color: var(--color-white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  border: 1px solid var(--color-neutral-200);
}

.card-new__body   { padding: var(--space-6); }
.card-new__header {
  padding: var(--space-4) var(--space-6);
  border-bottom: 1px solid var(--color-neutral-200);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-lg);
  color: var(--color-neutral-900);
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.card-new__header i { color: var(--color-primary-600); }

.card-new__footer {
  padding: var(--space-4) var(--space-6);
  border-top: 1px solid var(--color-neutral-200);
  background-color: var(--color-neutral-50);
}

/* Carte service (page d'accueil) */
.service-card-new {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: var(--space-8) var(--space-6);
  background-color: var(--color-white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  border: 1px solid var(--color-neutral-200);
  transition: transform var(--transition-base), box-shadow var(--transition-base);
  text-decoration: none;
  color: inherit;
}

.service-card-new:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-lg);
  text-decoration: none;
  color: inherit;
}

.service-card-new__icon {
  width: 64px;
  height: 64px;
  background-color: var(--color-primary-100);
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.75rem;
  color: var(--color-primary-600);
  margin-bottom: var(--space-4);
  transition: background-color var(--transition-base), color var(--transition-fast);
}

.service-card-new:hover .service-card-new__icon {
  background-color: var(--color-primary-600);
  color: var(--color-white);
}

.service-card-new__title {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
  margin-bottom: var(--space-2);
}

.service-card-new__desc {
  font-size: var(--font-size-sm);
  color: var(--color-neutral-600);
  line-height: var(--line-height-relaxed);
  margin-bottom: var(--space-4);
  flex: 1;
}

/* Carte résultat examen */
.result-card-new {
  background-color: var(--color-white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  overflow: hidden;
  border: 1px solid var(--color-neutral-200);
}

.result-card-new.is-success { border-top: 4px solid var(--color-success); }
.result-card-new.is-danger  { border-top: 4px solid var(--color-danger); }

.result-card-new__header {
  padding: var(--space-6);
  text-align: center;
  background: linear-gradient(135deg, #fff 0%, var(--color-neutral-50) 100%);
}

.result-card-new__emoji {
  font-size: 3rem;
  display: block;
  margin-bottom: var(--space-3);
  line-height: 1;
}

.result-card-new__name {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
  margin-bottom: var(--space-2);
}

.result-card-new__centre {
  font-size: var(--font-size-sm);
  color: var(--color-neutral-600);
  margin-bottom: var(--space-3);
}

.result-card-new__stats {
  padding: var(--space-4) var(--space-6);
  border-top: 1px solid var(--color-neutral-200);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-4);
}

.result-card-new__stat { text-align: center; }

.result-card-new__stat-label {
  font-size: var(--font-size-xs);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-neutral-400);
  margin-bottom: var(--space-1);
}

.result-card-new__stat-value {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-900);
}

.result-card-new__actions {
  padding: var(--space-4) var(--space-6);
  border-top: 1px solid var(--color-neutral-200);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

/* Carte stat (chiffres clés accueil) */
.stat-card {
  text-align: center;
  padding: var(--space-6);
}

.stat-card__value {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  color: var(--color-white);
  line-height: 1;
  margin-bottom: var(--space-2);
}

.stat-card__label {
  font-size: var(--font-size-sm);
  color: rgba(255,255,255,0.75);
}
