/* ETHNOS R799 — finition inscription ciblée.
   Base canonique : R798.
   Périmètre : corrections visuelles demandées sur les étapes 03, 04 et 05,
   standardisation des chevrons et des boutons orange, sans modifier les
   contrats métier, API, validations, données ni navigation du parcours. */
:root{
  --r799-charcoal:#1f1f1f;
  --r799-blue-deep:#071f2d;
  --r799-blue:#0a3448;
  --r799-blue-bright:#0b526d;
  --r799-orange:#ee8d55;
  --r799-orange-top:#ffad7a;
  --r799-orange-dark:#c96d3d;
  --r799-ink:#071826;
  --r799-light:#fffdf9;
  --r799-muted:#d5e0e5;
  --r799-green:#63d19a;
}

/* -------------------------------------------------------------------------- */
/* Standard orange officiel : compléter R798 pour les boutons encore blancs. */
/* -------------------------------------------------------------------------- */
body[data-etnos-build="r776"] .joinPage :is(
  .joinBack,
  .photoCharterTrigger,
  .customInterest [data-add-interest]
){
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:42px !important;
  padding:0 clamp(15px,1.35vw,26px) !important;
  border:1px solid rgba(255,211,183,.92) !important;
  border-radius:12px !important;
  background:linear-gradient(180deg,var(--r799-orange-top) 0%,var(--r799-orange) 100%) !important;
  color:var(--r799-ink) !important;
  box-shadow:0 1px 0 var(--r799-orange-dark),0 3px 5px rgba(0,0,0,.11) !important;
  filter:none !important;
  font-weight:750 !important;
  text-shadow:none !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  transition:transform .12s ease,filter .12s ease,box-shadow .12s ease !important;
}
body[data-etnos-build="r776"] .joinPage :is(.joinBack,.photoCharterTrigger,.customInterest [data-add-interest]):not(:disabled):hover{
  filter:brightness(1.025) !important;
  transform:translateY(-1px) !important;
  box-shadow:0 2px 0 var(--r799-orange-dark),0 4px 6px rgba(0,0,0,.12) !important;
}
body[data-etnos-build="r776"] .joinPage :is(.joinBack,.photoCharterTrigger,.customInterest [data-add-interest]):active{
  transform:translateY(1px) !important;
  box-shadow:0 0 0 var(--r799-orange-dark),0 2px 3px rgba(0,0,0,.09) !important;
}
body[data-etnos-build="r776"] .joinPage .photoCharterTrigger{
  min-width:220px !important;
  height:44px !important;
}
body[data-etnos-build="r776"] .joinPage .customInterest [data-add-interest]{
  height:44px !important;
  min-height:44px !important;
  min-width:112px !important;
}

/* -------------------------------------------------------------------------- */
/* Chevron ETHNOS standard : géométrie reprise du sélecteur actif du site.    */
/* -------------------------------------------------------------------------- */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] :is(
  #profileNationality,#profileResidence,#primaryLanguage
){
  appearance:none !important;
  -webkit-appearance:none !important;
  background-color:#fff !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.25 6 6.25 11 1.25' fill='none' stroke='%23ee8d55' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 16px center !important;
  background-size:12px 8px !important;
  padding-right:46px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] :is(
  .nicknameEmojiPicker,.avatarPicker,.profileEmojiPicker
)>summary,
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote summary{
  position:relative !important;
  padding-right:46px !important;
  list-style:none !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] :is(
  .nicknameEmojiPicker,.avatarPicker,.profileEmojiPicker
)>summary::-webkit-details-marker,
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote summary::-webkit-details-marker{
  display:none !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] :is(
  .nicknameEmojiPicker,.avatarPicker,.profileEmojiPicker
)>summary::after,
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote summary::after{
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  right:16px !important;
  width:9px !important;
  height:9px !important;
  border:0 !important;
  border-right:2px solid var(--r799-orange) !important;
  border-bottom:2px solid var(--r799-orange) !important;
  color:transparent !important;
  font-size:0 !important;
  transform:translateY(-6px) rotate(45deg) !important;
  transform-origin:center !important;
  transition:transform .14s ease !important;
  pointer-events:none !important;
  float:none !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] :is(
  .nicknameEmojiPicker[open],.avatarPicker[open],.profileEmojiPicker[open]
)>summary::after,
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote[open] summary::after{
  transform:translateY(1px) rotate(225deg) !important;
}

/* -------------------------------------------------------------------------- */
/* 03 — Vos accès privés : titre sur une ligne, bloc remonté et détails nets. */
/* -------------------------------------------------------------------------- */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .joinView[data-view="access"]{
  box-sizing:border-box !important;
  padding:14px 0 18px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessWorkspace{
  margin:0 auto !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro{
  grid-template-columns:minmax(0,1fr) auto !important;
  column-gap:28px !important;
  row-gap:8px !important;
  align-items:center !important;
  margin-bottom:14px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro h2{
  white-space:nowrap !important;
  max-width:none !important;
  font-size:clamp(26px,1.85vw,36px) !important;
  line-height:1 !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessPrivateSummary{
  box-sizing:border-box !important;
  padding:14px 16px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-bottom:2px solid var(--r799-orange) !important;
  border-radius:0 !important;
  background:rgba(255,255,255,.08) !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessPrivateSummary :is(span,strong){
  line-height:1.25 !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .passwordControl input{
  padding-right:82px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .passwordControl button{
  right:8px !important;
  min-width:0 !important;
  width:62px !important;
  height:30px !important;
  min-height:30px !important;
  padding:0 8px !important;
  border-radius:7px !important;
  font-size:9px !important;
  letter-spacing:.01em !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessRequirements span.isComplete,
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessRequirements span.isValid{
  color:var(--r799-green) !important;
  font-weight:400 !important;
}

/* -------------------------------------------------------------------------- */
/* 04 — Votre profil : moins de vide, lisibilité et couleurs cohérentes.       */
/* -------------------------------------------------------------------------- */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .joinView[data-view="profile-identity"]{
  box-sizing:border-box !important;
  padding:14px 0 18px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .profileWorkspaceCombined{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  margin:0 auto !important;
  align-self:start !important;
  overflow:visible !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .profileEditorCombined{
  height:auto !important;
  min-height:0 !important;
  grid-template-rows:auto auto auto auto auto !important;
  overflow:visible !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .profileCombinedColumns{
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .profileCombinedColumn.isActive{
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .profileActionsR776{
  position:static !important;
  inset:auto !important;
  margin:12px 0 0 !important;
  padding:10px 0 0 !important;
  min-height:0 !important;
  border-top:1px solid rgba(255,255,255,.18) !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Story / origine : tous les libellés sombres deviennent lisibles sur bleu. */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] :is(
  .originHeading strong,
  .originSectionTitle,
  .nationalityField>label,
  .residenceField>span,
  .residenceCityField>span,
  .primaryLanguageChoice>span,
  .languageSection .interestHeading strong,
  .interestSection .interestHeading strong
){
  color:#fff !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] :is(
  .originHeading small,
  .nationalityPlaceholder,
  .primaryLanguageChoice>small,
  .languageSection .interestHeading small,
  .interestSection .interestHeading small,
  .profileSaveHintR776
){
  color:var(--r799-muted) !important;
  opacity:1 !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote{
  margin-top:16px !important;
  padding:12px 14px 12px 18px !important;
  border-left:4px solid var(--r799-orange) !important;
  color:#f4f7f8 !important;
  font-size:14px !important;
  line-height:1.5 !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote>strong{
  color:var(--r799-orange-top) !important;
  font-size:14px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote>span{
  color:#f4f7f8 !important;
  font-size:14px !important;
  line-height:1.5 !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote details{
  margin-top:8px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote summary{
  color:#fff !important;
  font-size:14px !important;
  line-height:1.4 !important;
  font-weight:650 !important;
  cursor:pointer !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .originTrustNote p{
  margin:8px 0 0 !important;
  color:#dfe9ed !important;
  font-size:13.5px !important;
  line-height:1.55 !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .primaryLanguageChoice{
  color:#fff !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .primaryLanguageChoice>span{
  font-size:15px !important;
  line-height:1.35 !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .primaryLanguageChoice>small{
  font-size:13.5px !important;
  line-height:1.5 !important;
}

/* Les boutons secondaires dans les zones claires gardent leur contraste. */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] :is(
  .countrySelectControl select,.residenceCityField input,#primaryLanguage
){
  color:var(--r799-ink) !important;
}

/* -------------------------------------------------------------------------- */
/* 05 — Nos valeurs : bloc compact, standard de distance et alignements.       */
/* -------------------------------------------------------------------------- */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinView[data-view="values"]{
  box-sizing:border-box !important;
  padding:14px 0 18px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesWorkspaceR775{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  margin:0 auto !important;
  grid-template-rows:auto auto auto !important;
  gap:12px !important;
  overflow:visible !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactHeader{
  grid-template-rows:auto minmax(0,1fr) !important;
  align-items:center !important;
  padding:8px 0 14px !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactHeader h2{
  align-self:center !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactHeader p{
  align-self:center !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] :is(.valueSlidesR775,.valueSlideR775){
  height:auto !important;
  min-height:0 !important;
  overflow:visible !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valueSlideR775{
  grid-template-rows:auto auto !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesPillarsR775{
  align-self:start !important;
  align-content:start !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesCompactCommit{
  box-sizing:border-box !important;
  width:min(1080px,92%) !important;
  max-width:1080px !important;
  margin:0 auto !important;
  justify-self:center !important;
}
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesFooterR775{
  margin-top:4px !important;
}

/* -------------------------------------------------------------------------- */
/* Responsive : aucune hauteur rigide ; le corps reste scrollable.             */
/* -------------------------------------------------------------------------- */
@media (max-width:1100px){
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro{
    grid-template-columns:1fr !important;
  }
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .accessIntro h2{
    white-space:normal !important;
  }
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .profileWorkspaceCombined,
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .valuesWorkspaceR775{
    height:auto !important;
  }
}
@media (max-height:850px){
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .joinCardBody,
  body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinCardBody{
    overflow-y:auto !important;
    overflow-x:hidden !important;
    overscroll-behavior:contain !important;
  }
}

/* R799 — verrou géométrique final : même départ sous la navigation que 01. */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .joinView[data-view="access"],
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .joinView[data-view="profile-identity"],
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinView[data-view="values"]{
  padding-top:0 !important;
}
/* L'ancien `gap` de la grille Identité s'appliquait aussi aux lignes et créait
   deux grands vides verticaux. On conserve l'écart horizontal, mais pas ce vide. */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .profileCombinedIdentity.isActive{
  column-gap:clamp(34px,4vw,72px) !important;
  row-gap:14px !important;
}

/* Même distance nav -> bloc que l'étape 01 : neutraliser le padding haut
   historique spécifique aux étapes 03, 04 et 05. */
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="access"] .joinCardBody,
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="profile-identity"] .joinCardBody,
body[data-etnos-build="r776"] .joinPage .joinCard[data-current-view="values"] .joinCardBody{
  padding-top:0 !important;
}
