/* ═══════════════════════════════════════════════════
   LRZ77 RGPD — CSS adapté au thème du site
   Fond bannière : vert foncé du site (#4a5e42)
   Police        : Manrope, sans-serif
   Vert nav      : #7d9b76
   Marron        : #5c3d20
   Texte clair   : #f0ede6
═══════════════════════════════════════════════════ */

/* ── BANNIÈRE ── */
#lrz-rgpd-banniere {
  position      : fixed;
  left          : 0;
  right         : 0;
  z-index       : 99990;
  background    : #3d5238;   /* vert foncé naturel, cohérent avec le header */
  color         : #f0ede6;
  font-family   : 'Manrope', sans-serif;
  font-size     : 14px;
  line-height   : 1.6;
  border-top    : 3px solid #7d9b76;
  box-shadow    : 0 -3px 16px rgba(0,0,0,.3);
}

#lrz-rgpd-banniere.lrz-rgpd-bas  { bottom: 0; border-top: 3px solid #7d9b76; border-bottom: none; }
#lrz-rgpd-banniere.lrz-rgpd-haut { top: 0;    border-bottom: 3px solid #7d9b76; border-top: none; }

/* ── Conteneur interne avec marges ── */
.lrz-rgpd-inner {
  display        : flex;
  flex-wrap      : wrap;
  align-items    : center;
  gap            : 12px;
  padding        : 14px 40px;   /* ← marges gauche/droite de 40px */
  max-width      : 1400px;
  margin         : 0 auto;
  box-sizing     : border-box;
}

/* ── Texte ── */
.lrz-rgpd-texte {
  flex           : 1 1 300px;
}
.lrz-rgpd-texte p {
  margin         : 0;
  font-size      : 13.5px;
  color          : #ffffff;
  padding-left   : 0;
}

/* ── Options checkboxes ── */
.lrz-rgpd-options {
  display        : flex;
  flex-wrap      : wrap;
  gap            : 12px;
  align-items    : center;
}
.lrz-rgpd-label {
  display        : flex;
  align-items    : center;
  gap            : 6px;
  cursor         : pointer;
  font-size      : 13px;
  color          : #ffffff;
  user-select    : none;
}
.lrz-rgpd-label input[type="checkbox"] {
  accent-color   : #a8c59e;
  width          : 15px;
  height         : 15px;
  cursor         : pointer;
}
.lrz-rgpd-label small {
  font-size      : 11px;
  color          : #9fa89b;
}

/* ── Boutons ── */
.lrz-rgpd-actions {
  display        : flex;
  flex-wrap      : wrap;
  gap            : 8px;
  align-items    : center;
}

.lrz-btn {
  display        : inline-block;
  padding        : 8px 18px;
  border         : none;
  border-radius  : 3px;
  font-family    : 'Manrope', sans-serif;
  font-size      : 13px;
  font-weight    : 700;
  letter-spacing : 0.4px;
  cursor         : pointer;
  text-decoration: none;
  transition     : opacity .2s, transform .15s;
  white-space    : nowrap;
  line-height    : 1.4;
}
.lrz-btn:hover {
  opacity        : 0.85;
  transform      : translateY(-1px);
  text-decoration: none;
}

/* Vert = tout accepter */
.lrz-btn-accepter {
  background     : #7d9b76;
  color          : #fff;
}

/* Marron = ma sélection */
.lrz-btn-selection {
  background     : #5c3d20;
  color          : #fff;
}

/* Transparent discret = refuser */
.lrz-btn-refuser {
  background     : transparent;
  color          : #ffffff;   /* ← blanc au lieu de #c8c4bc */
  border         : 1px solid #ffffff;
}
.lrz-btn-refuser:hover {
  color          : #3d5238;
  background     : #ffffff;
  border-color   : #ffffff;
}

/* Beige/crème = bouton politique RGPD */
.lrz-btn-politique {
  background     : #326410;
  color          : #ffffff;         /* ← blanc */
  border         : 1px solid rgba(255,255,255,0.6);
  font-weight    : 600;
  font-size      : 12px;
}
.lrz-btn-politique:hover {
  background     : #3a631f;
  color          : #ffffff;
  border-color   : #ffffff;
  text-decoration: none;
}

/* ═══════════════════════════════════════════════
   PAGE MES DROITS RGPD (Mon Compte)
═══════════════════════════════════════════════ */

.lrz-rgpd-account-link {
  display        : flex;
  flex-direction : column;
  align-items    : center;
  justify-content: center;
  padding        : 30px 20px;
  background     : #fff;
  border         : 1.5px solid #7a9c6e;
  text-align     : center;
  color          : #4a6741;
  font-family    : 'Manrope', sans-serif;
  font-size      : 13px;
  font-weight    : 700;
  letter-spacing : 1px;
  text-transform : uppercase;
  text-decoration: none;
  transition     : background .2s, color .2s;
}
.lrz-rgpd-account-link:hover {
  background     : #7d9b76;
  color          : #fff;
  border-color   : #7d9b76;
  text-decoration: none;
}
.lrz-rgpd-account-link .material-icons {
  font-size      : 36px;
  margin-bottom  : 10px;
}

/* Page complète droits */
.lrz-rgpd-demande-page {
  background     : #f0ede6;
  min-height     : 60vh;
  padding        : 40px 0;
  font-family    : 'Manrope', sans-serif;
}

.lrz-rgpd-titre {
  font-size      : 26px;
  font-weight    : 700;
  color          : #232323;
  margin-bottom  : 10px;
  border-bottom  : 2px solid #7d9b76;
  padding-bottom : 10px;
}

.lrz-rgpd-intro {
  font-size      : 14px;
  color          : #555;
  margin-bottom  : 28px;
}

.lrz-rgpd-alert-succes {
  background     : #eaf4e8;
  border-left    : 4px solid #7d9b76;
  color          : #3a6b35;
  padding        : 14px 18px;
  border-radius  : 3px;
  margin-bottom  : 24px;
}

.lrz-rgpd-form .form-group {
  margin-bottom  : 20px;
}
.lrz-rgpd-form .col-form-label {
  font-weight    : 600;
  font-size      : 14px;
  color          : #232323;
}
.lrz-rgpd-form .form-control {
  border         : 1.5px solid #c0bdb5;
  border-radius  : 3px;
  font-family    : 'Manrope', sans-serif;
  font-size      : 14px;
  background     : #fff;
  color          : #232323;
  padding        : 9px 12px;
}
.lrz-rgpd-form .form-control:focus {
  border-color   : #7d9b76;
  box-shadow     : 0 0 0 3px rgba(125,155,118,.2);
  outline        : none;
}

.lrz-required {
  color          : #c0392b;
  margin-left    : 2px;
}

.lrz-rgpd-btn-envoyer {
  background     : #5c3d20;
  color          : #fff;
  font-family    : 'Manrope', sans-serif;
  font-size      : 14px;
  font-weight    : 700;
  letter-spacing : 0.5px;
  padding        : 11px 30px;
  border         : none;
  border-radius  : 3px;
  cursor         : pointer;
  transition     : opacity .2s;
}
.lrz-rgpd-btn-envoyer:hover {
  opacity        : 0.87;
}

.lrz-rgpd-note-cnil {
  margin-top     : 32px;
  padding        : 14px 18px;
  background     : #eae7df;
  border-left    : 4px solid #7d9b76;
  border-radius  : 3px;
  font-size      : 13px;
  color          : #555;
}
.lrz-rgpd-note-cnil a {
  color          : #4a6741;
  font-weight    : 600;
}

/* ── RESPONSIVE ── */
@media (max-width: 767px) {
  .lrz-rgpd-inner {
    flex-direction : column;
    align-items    : flex-start;
    padding        : 14px 20px;   /* marges réduites mais toujours présentes sur mobile */
  }
  .lrz-rgpd-actions {
    width          : 100%;
    flex-direction : column;
  }
  .lrz-btn {
    width          : 100%;
    text-align     : center;
  }
  .lrz-rgpd-options {
    flex-direction : column;
    gap            : 8px;
  }
}