	.reaction-bar {
	  margin-top: 1.25rem;
	  padding-top: 1rem;
	  border-top: 1px solid rgba(148, 163, 184, 0.18);
	}

	.reaction-grid {
	  display: flex;
	  justify-content: space-between;
	  gap: 0.45rem;
	  flex-wrap: wrap;
	}

	.reaction-item {
	  display: flex;
	  flex-direction: column;
	  align-items: center;
	  min-width: 48px;
	}

	.reaction-btn {
	  width: 42px;
	  height: 42px;
	  border-radius: 9999px;
	  border: 1px solid rgba(148, 163, 184, 0.18);
	  background: rgba(30, 41, 59, 0.72);
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  font-size: 1.25rem;
	  transition: transform 0.15s ease, background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
	  cursor: pointer;
	}

	.reaction-btn:hover {
	  transform: translateY(-1px) scale(1.05);
	  background: rgba(51, 65, 85, 0.92);
	  border-color: rgba(148, 163, 184, 0.35);
	}

	.reaction-btn.active {
	  background: rgba(59, 130, 246, 0.18);
	  border-color: rgba(96, 165, 250, 0.55);
	  box-shadow: 0 0 14px rgba(59, 130, 246, 0.18);
	}

	.reaction-btn:disabled {
	  opacity: 0.95;
	  cursor: default;
	}

	.reaction-count {
	  margin-top: 0.35rem;
	  font-size: 0.8rem;
	  color: #cbd5e1;
	  font-variant-numeric: tabular-nums;
	}

	.reaction-message {
	  margin-top: 0.7rem;
	  font-size: 0.8rem;
	  color: #93c5fd;
	}

	@media (min-width: 768px) {
	  .reaction-grid {
	    justify-content: center; /* au lieu de space-between */
	    gap: 0.8rem; /* espace contrôlé */
	  }
	}

	.no-copy {
	  user-select: none;
	  -webkit-user-select: none;
	  -ms-user-select: none;
	}