/* ============================================================
   RJ Patrimoine — Thème CookieConsent v3
   Charte : bleu nuit #0A1A2F, fond blanc, sobre et professionnel.
   ============================================================ */

#cc-main {
  --cc-font-family: 'DM Sans', Inter, system-ui, -apple-system, sans-serif;

  --cc-bg: #ffffff;
  --cc-primary-color: #0A1A2F;
  --cc-secondary-color: #4A5568;

  /* Boutons principaux — Accepter / Refuser (même poids visuel) */
  --cc-btn-primary-bg: #0A1A2F;
  --cc-btn-primary-color: #ffffff;
  --cc-btn-primary-border-color: #0A1A2F;
  --cc-btn-primary-hover-bg: #16263f;
  --cc-btn-primary-hover-color: #ffffff;
  --cc-btn-primary-hover-border-color: #16263f;

  /* Boutons secondaires — Personnaliser */
  --cc-btn-secondary-bg: #eef1f5;
  --cc-btn-secondary-color: #0A1A2F;
  --cc-btn-secondary-border-color: #d9dee5;
  --cc-btn-secondary-hover-bg: #e2e6ec;
  --cc-btn-secondary-hover-color: #0A1A2F;
  --cc-btn-secondary-hover-border-color: #c9d0d9;

  --cc-separator-border-color: #e6e8ec;

  /* Interrupteurs */
  --cc-toggle-on-bg: #0A1A2F;
  --cc-toggle-off-bg: #9aa3af;
  --cc-toggle-on-knob-bg: #ffffff;
  --cc-toggle-off-knob-bg: #ffffff;
  --cc-toggle-readonly-bg: #cfd4da;
  --cc-toggle-readonly-knob-bg: #ffffff;

  /* Blocs de catégories */
  --cc-cookie-category-block-bg: #f6f7f9;
  --cc-cookie-category-block-border: #f1f2f5;
  --cc-cookie-category-block-hover-bg: #eef1f5;
  --cc-cookie-category-block-hover-border: #e4e7ec;
  --cc-cookie-category-expanded-block-bg: #ffffff;

  --cc-overlay-bg: rgba(10, 26, 47, .55);
  --cc-link-color: #0A1A2F;
  --cc-link-hover-color: #4A6FA5;

  --cc-modal-border-radius: 14px;
  --cc-btn-border-radius: 8px;
}

/* Titres un peu plus affirmés */
#cc-main .cm__title,
#cc-main .pm__title { font-weight: 700; letter-spacing: -.01em; }

/* Boutons : confort tactile (>=44px) + lisibilité */
#cc-main .cm__btn,
#cc-main .pm__btn {
  font-weight: 600;
  min-height: 44px;
  border-radius: 8px;
}

/* RGPD : « Refuser » strictement aussi visible que « Accepter ».
   equalWeightButtons:true les rend identiques ; on verrouille ici
   leur rendu (même fond bleu nuit plein, même taille). */
#cc-main .cm__btn[data-role="all"],
#cc-main .cm__btn[data-role="necessary"] {
  background: #0A1A2F;
  color: #ffffff;
  border-color: #0A1A2F;
}
#cc-main .cm__btn[data-role="all"]:hover,
#cc-main .cm__btn[data-role="necessary"]:hover {
  background: #16263f;
  border-color: #16263f;
}

/* ============================================================
   Bouton flottant permanent « Préférences cookies » (bas-gauche)
   ============================================================ */
.rj-cookie-fab {
  position: fixed;
  left: max(1rem, env(safe-area-inset-left));
  bottom: max(1rem, env(safe-area-inset-bottom));
  z-index: 1000;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin: 0;
  padding: .6rem .9rem;
  border: 1px solid #0A1A2F;
  border-radius: 999px;
  background: #0A1A2F;
  color: #ffffff;
  font: 600 .78rem/1 'DM Sans', Inter, system-ui, sans-serif;
  cursor: pointer;
  box-shadow: 0 6px 20px rgba(10, 26, 47, .28);
  transition: transform .2s cubic-bezier(.22, 1, .36, 1), box-shadow .2s ease;
}
.rj-cookie-fab:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 26px rgba(10, 26, 47, .36);
}
.rj-cookie-fab:focus-visible {
  outline: 2px solid #4A6FA5;
  outline-offset: 2px;
}
.rj-cookie-fab i { font-size: .95rem; }

/* Masqué quand une fenêtre cookies ou le menu mobile est ouvert */
html.show--consent .rj-cookie-fab,
html.show--preferences .rj-cookie-fab,
body.menu-open .rj-cookie-fab { display: none; }

@media (max-width: 480px) {
  .rj-cookie-fab { padding: .55rem .7rem; font-size: 0; gap: 0; }
  .rj-cookie-fab i { font-size: 1.05rem; }
}

@media (prefers-reduced-motion: reduce) {
  .rj-cookie-fab { transition: none; }
}

/* ============================================================
   Espace réservé pour les intégrations différées (Cal.com…)
   ============================================================ */
[data-cc-embed] { position: relative; }
.rj-embed-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  text-align: center;
  padding: 2.5rem 1.5rem;
  min-height: 320px;
  background: #f6f7f9;
  border: 1px dashed #c9d0d9;
  border-radius: 8px;
  color: #4A5568;
  font-size: .9rem;
  line-height: 1.6;
}
.rj-embed-placeholder strong { color: #0A1A2F; }
.rj-embed-placeholder button {
  padding: .7rem 1.25rem;
  border: 1px solid #0A1A2F;
  border-radius: 8px;
  background: #0A1A2F;
  color: #fff;
  font: 600 .8rem 'DM Sans', sans-serif;
  cursor: pointer;
}
.rj-embed-placeholder button:hover { background: #16263f; }
