/* R695 — Sécurité du compte, popup centrale isolée. */
.ethnosSecurityOverlay{position:fixed;inset:0;z-index:520;background:rgba(4,18,33,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:grid;place-items:center;padding:22px}.ethnosSecurityOverlay[hidden]{display:none}.ethnosSecurityModal{box-sizing:border-box;width:min(560px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 44px));overflow:auto;position:relative;color:#071a39;font-family:Inter,"Segoe UI",Arial,sans-serif;background:linear-gradient(180deg,#fffdf9,#fff7ed);border:1px solid rgba(242,103,34,.30);border-radius:24px;box-shadow:0 28px 80px rgba(5,22,39,.30);padding:30px}.ethnosSecurityClose{position:absolute;right:17px;top:17px;width:38px;height:38px;border-radius:50%;border:1px solid rgba(7,26,57,.16);background:#fffdf9;color:#071a39;font-size:1.45rem;cursor:pointer}.ethnosSecurityEyebrow{margin:0 48px 7px 0;font-size:.76rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase;color:#f26722}.ethnosSecurityModal h2{margin:0 48px 10px 0;font-size:1.9rem;line-height:1.05}.ethnosSecurityIntro{margin:0 0 23px;color:#536075;line-height:1.5}.ethnosSecurityForm{display:grid;gap:15px}.ethnosSecurityForm label{display:grid;gap:7px;font-size:.86rem;font-weight:750}.ethnosSecurityForm input{box-sizing:border-box;width:100%;height:49px;border:1px solid rgba(7,26,57,.18);border-radius:12px;background:#fff;padding:0 14px;font:inherit;color:#071a39;outline:none}.ethnosSecurityForm input:focus{border-color:rgba(242,103,34,.72);box-shadow:0 0 0 4px rgba(242,103,34,.10)}.ethnosSecurityAction{min-height:50px;border:1px solid rgba(207,83,20,.45);border-radius:13px;background:linear-gradient(180deg,#ffa56f,#f58b50);box-shadow:0 3px 0 rgba(180,72,17,.38);font-weight:800;color:#071a39;cursor:pointer;padding:0 18px}.ethnosSecurityAction:disabled{opacity:.6;cursor:wait}.ethnosSecuritySecondary{border:0;background:transparent;color:#0d4f82;text-decoration:underline;text-underline-offset:3px;font-weight:700;cursor:pointer;padding:3px 0}.ethnosSecurityMessage{min-height:20px;margin:3px 0 0;font-size:.88rem;line-height:1.4;color:#536075}.ethnosSecurityMessage.is-error{color:#a72d20}.ethnosSecurityMenu{display:grid;gap:12px}.ethnosSecurityMenu button{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:17px 18px;border:1px solid rgba(7,26,57,.14);border-radius:14px;background:rgba(255,255,255,.76);color:#071a39;cursor:pointer}.ethnosSecurityMenu button strong{display:block;font-size:1rem}.ethnosSecurityMenu button small{display:block;margin-top:3px;color:#647087}.memberProfileSecurityOpen{margin-top:10px;align-self:flex-start;border:1px solid rgba(207,83,20,.45);border-radius:11px;background:linear-gradient(180deg,#ffa56f,#f58b50);color:#071a39;font-weight:800;padding:11px 15px;cursor:pointer}.ethnosAuthForgot{justify-self:end;margin-top:-8px;border:0;background:transparent;color:#0d4f82;font-size:.82rem;font-weight:700;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:3px}@media(max-width:620px){.ethnosSecurityModal{padding:24px 20px;border-radius:19px}.ethnosSecurityOverlay{padding:12px}}

/* R696 — affichage optionnel des nouveaux mots de passe, sans exposer le mot de passe actuel. */
.ethnosSecurityPasswordField{
  position:relative;
  display:block;
}
.ethnosSecurityPasswordField > input{
  padding-right:92px;
}
.ethnosSecurityPasswordToggle{
  position:absolute;
  top:50%;
  right:8px;
  transform:translateY(-50%);
  min-width:76px;
  height:35px;
  padding:0 10px;
  border:1px solid rgba(7,26,57,.10);
  border-radius:9px;
  background:#edf2fa;
  color:#071a39;
  font:700 .78rem/1 Inter,"Segoe UI",Arial,sans-serif;
  cursor:pointer;
}
.ethnosSecurityPasswordToggle:hover{background:#e4ebf7}
.ethnosSecurityPasswordToggle:focus-visible{
  outline:2px solid rgba(242,103,34,.72);
  outline-offset:2px;
}

/* R699 — préférences d'e-mails d'activité depuis le profil. */
.memberProfileNotificationsOpen{
  margin-top:8px;
  align-self:flex-start;
  border:1px solid rgba(7,26,57,.18);
  border-radius:11px;
  background:#edf2fa;
  color:#071a39;
  font-weight:800;
  padding:11px 15px;
  cursor:pointer;
}
.memberProfileNotificationsOpen:hover{background:#e4ebf7}
.ethnosNotificationPreferences{gap:16px}
.ethnosNotificationPreferences > label,
.ethnosNotificationChoices > label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:58px;
  padding:12px 14px;
  box-sizing:border-box;
  border:1px solid rgba(7,26,57,.12);
  border-radius:13px;
  background:rgba(255,255,255,.74);
}
.ethnosNotificationPreferences label span{min-width:0}
.ethnosNotificationPreferences label strong{display:block;font-size:.91rem;line-height:1.25}
.ethnosNotificationPreferences label small{display:block;margin-top:3px;color:#647087;font-size:.76rem;line-height:1.35;font-weight:600}
.ethnosNotificationPreferences input[type="checkbox"]{
  flex:0 0 auto;
  width:22px;
  height:22px;
  accent-color:#f58b50;
  cursor:pointer;
}
.ethnosNotificationMaster{border-color:rgba(242,103,34,.28)!important}
.ethnosNotificationChoices{display:grid;gap:10px;transition:opacity .18s ease}
.ethnosNotificationChoices.is-disabled{opacity:.48}
@media(max-width:620px){
  .ethnosNotificationPreferences > label,
  .ethnosNotificationChoices > label{gap:12px;padding:11px 12px}
  .ethnosNotificationPreferences label strong{font-size:.87rem}
  .ethnosNotificationPreferences label small{font-size:.72rem}
}
