/*!
 * RNF Core — Front global styles
 * Version : 1.0.0-phase1
 *
 * Variables DA Rose&Fly (publiques, utilisables par tous les modules)
 */

:root {
  /* ── Couleurs DA ── */
  --rf-burgundy:    #8B2252;
  --rf-rose:        #a14b68;
  --rf-rose-hover:  #8a3f58;
  --rf-rose-light:  #eab0c0;
  --rf-rose-bg:     #fff7fa;
  --rf-gold:        #B8956A;
  --rf-gold-dark:   #d4af37;
  --rf-nude:        #F9F1EE;
  --rf-nude-dark:   #F3E1E1;
  --rf-ink:         #2B1B20;
  --rf-ink-light:   #6B5660;
  --rf-muted:       #888888;
  --rf-border:      rgba(0, 0, 0, .08);
  --rf-card:        #ffffff;

  /* ── Radius & spacing ── */
  --rf-radius:      18px;
  --rf-radius-sm:   12px;
  --rf-radius-lg:   22px;

  /* ── Shadows ── */
  --rf-shadow:       0 4px 14px rgba(0, 0, 0, .06);
  --rf-shadow-md:    0 8px 22px rgba(0, 0, 0, .08);
  --rf-shadow-hover: 0 14px 28px rgba(0, 0, 0, .12);
  --rf-shadow-rose:  0 8px 24px rgba(161, 75, 104, .12);

  /* ── Typo ── */
  --rf-font:        'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --rf-font-serif:  'Playfair Display', Georgia, serif;

  /* ── Transitions ── */
  --rf-transition:  all .25s ease;
}

/* ─── Boutons partagés ─── */
.rnf-btn {
  display: inline-block;
  padding: 12px 24px;
  border-radius: 100px;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  text-align: center;
  transition: var(--rf-transition);
  cursor: pointer;
  border: 2px solid transparent;
  line-height: 1.3;
}
.rnf-btn--primary {
  background: var(--rf-rose);
  color: #fff !important;
  box-shadow: 0 6px 18px rgba(161, 75, 104, .25);
}
.rnf-btn--primary:hover {
  background: var(--rf-rose-hover);
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(161, 75, 104, .35);
}
.rnf-btn--secondary {
  background: transparent;
  color: var(--rf-rose) !important;
  border-color: var(--rf-rose);
}
.rnf-btn--secondary:hover {
  background: var(--rf-rose);
  color: #fff !important;
}
.rnf-btn--ghost {
  background: transparent;
  color: var(--rf-rose) !important;
}
.rnf-btn--ghost:hover { background: var(--rf-rose-bg); }

/* ─── Badges partagés ─── */
.rnf-badge {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 100px;
  letter-spacing: .04em;
}
.rnf-badge--rose   { background: var(--rf-rose);    color: #fff; }
.rnf-badge--gold   { background: var(--rf-gold);    color: #fff; }
.rnf-badge--nude   { background: var(--rf-nude);    color: var(--rf-rose); }
.rnf-badge--soft   { background: var(--rf-rose-bg); color: var(--rf-rose); }

/* ─── Bulle Rosy partagée ─── */
.rnf-rosy-bubble {
  display: flex;
  gap: 18px;
  align-items: center;
  background: #fff;
  border: 1px solid var(--rf-border);
  border-radius: var(--rf-radius);
  padding: 20px 24px;
  box-shadow: var(--rf-shadow);
  margin: 20px 0;
}
.rnf-rosy-bubble--highlight {
  background: linear-gradient(135deg, var(--rf-rose-bg) 0%, #fff 100%);
  border: 2px solid var(--rf-rose-light);
  box-shadow: var(--rf-shadow-rose);
}
.rnf-rosy-bubble__img { flex-shrink: 0; width: 90px; }
.rnf-rosy-bubble__img img {
  width: 100%;
  height: auto;
  border-radius: 50%;
  background: var(--rf-rose-bg);
  padding: 6px;
}
.rnf-rosy-bubble__content {
  flex: 1;
  font-size: 15px;
  line-height: 1.65;
  color: var(--rf-ink);
}
.rnf-rosy-bubble__content p { margin: 0; }
