/* Auth pages — Subnautica2.fr */
.s2-auth-page{width:min(1180px,calc(100% - 32px));margin:34px auto 54px;position:relative;z-index:2}.s2-auth-shell{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(390px,.72fr);gap:22px;align-items:stretch}.s2-auth-hero,.s2-auth-card{border:1px solid rgba(89,229,255,.18);background:linear-gradient(180deg,rgba(4,32,48,.78),rgba(0,12,22,.92));box-shadow:0 24px 70px rgba(0,0,0,.34);border-radius:30px;overflow:hidden;position:relative;backdrop-filter:blur(14px)}.s2-auth-hero{min-height:610px;padding:34px;display:flex;flex-direction:column;justify-content:space-between}.s2-auth-hero:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 22% 18%,rgba(41,232,255,.30),transparent 30%),radial-gradient(circle at 78% 12%,rgba(50,108,255,.20),transparent 24%),radial-gradient(circle at 55% 84%,rgba(0,255,187,.12),transparent 30%);pointer-events:none}.s2-auth-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(4,10,18,.28),rgba(2,10,18,.84)),url('/assets/img/auth-ocean.svg');background-size:cover;background-position:center;opacity:.9}.s2-auth-hero>*{position:relative;z-index:1}.s2-auth-kicker{display:inline-flex;align-items:center;width:max-content;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(38,229,255,.11);border:1px solid rgba(91,231,255,.24);color:#99f7ff;font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.09em}.s2-auth-title{margin:18px 0 14px;font-size:clamp(2.4rem,5vw,5rem);line-height:.92;letter-spacing:-.07em;color:#fff;text-shadow:0 16px 46px rgba(0,0,0,.40)}.s2-auth-title span{display:block;color:#8df8ff}.s2-auth-lead{max-width:650px;margin:0;color:#c6e2eb;line-height:1.72;font-size:1.04rem}.s2-auth-benefits{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}.s2-auth-benefit{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding:14px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(91,231,255,.13)}.s2-auth-benefit i{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:rgba(41,229,255,.12);font-style:normal;font-size:1.2rem}.s2-auth-benefit strong{display:block;color:#fff;font-size:.96rem}.s2-auth-benefit small{display:block;color:#a8cad4;line-height:1.35;margin-top:2px}.s2-auth-card{padding:30px}.s2-auth-card-header{margin-bottom:22px}.s2-auth-card h1{margin:0 0 8px;color:#fff;font-size:clamp(1.8rem,3vw,2.55rem);letter-spacing:-.045em}.s2-auth-card .muted{color:#aecad4;line-height:1.55}.s2-auth-form{display:grid;gap:15px}.s2-auth-field{display:grid;gap:8px}.s2-auth-field label{display:flex;justify-content:space-between;gap:12px;color:#dffaff;font-weight:950;font-size:.9rem}.s2-auth-field label small{color:#7fcbd8;font-weight:800}.s2-auth-input-wrap{position:relative}.s2-auth-field input{width:100%;height:50px;border-radius:16px;border:1px solid rgba(106,231,255,.18);background:rgba(0,11,20,.72);color:#efffff;padding:0 15px;font-weight:800;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.s2-auth-field input:focus{border-color:rgba(65,235,255,.72);box-shadow:0 0 0 4px rgba(39,226,255,.10);background:rgba(0,18,30,.84)}.s2-auth-field input::placeholder{color:#6b98a4}.s2-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);height:36px;padding:0 10px;border:0;border-radius:12px;background:rgba(83,228,255,.10);color:#9ff8ff;font-weight:950;cursor:pointer}.s2-password-toggle:hover{background:rgba(83,228,255,.18);color:#fff}.s2-auth-options{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:-2px}.s2-auth-options label{display:inline-flex;align-items:center;gap:9px;color:#c5e3eb;font-weight:850}.s2-auth-options input{accent-color:#22e4ff}.s2-auth-link{color:#8af5ff;font-weight:950;text-decoration:none}.s2-auth-link:hover{text-decoration:underline}.s2-auth-submit{width:100%;min-height:52px;font-size:1rem;justify-content:center}.s2-auth-switch{margin-top:4px;padding:14px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(100,231,255,.12);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:#bdd8e1;font-weight:850}.s2-auth-switch .btn{min-height:40px}.s2-auth-note{margin:0;padding:14px;border-radius:18px;border:1px solid rgba(100,231,255,.14);background:rgba(36,229,255,.06);color:#bfe3eb;line-height:1.55}.s2-password-meter{height:8px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.07);margin-top:-2px}.s2-password-meter span{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff6b8b,#ffd166,#46f5d4,#20e7ff);transition:width .2s ease}.s2-password-hints{display:grid;gap:6px;margin:0;padding:0;list-style:none;color:#9fbdc6;font-size:.84rem}.s2-password-hints li{display:flex;gap:8px;align-items:center}.s2-password-hints li:before{content:"•";color:#4eefff}.s2-auth-trust{display:grid;gap:9px;margin-top:18px}.s2-auth-trust span{display:flex;align-items:center;gap:9px;color:#aecdd7;font-size:.88rem}.s2-auth-trust span:before{content:"✓";width:22px;height:22px;border-radius:999px;background:rgba(34,229,255,.12);border:1px solid rgba(84,229,255,.22);display:grid;place-items:center;color:#85f8ff;font-weight:950}.s2-auth-error{padding:13px 14px;border-radius:16px;background:rgba(255,86,117,.12);border:1px solid rgba(255,107,139,.28);color:#ffdce3;font-weight:850;line-height:1.45}.s2-auth-success{padding:13px 14px;border-radius:16px;background:rgba(50,245,201,.10);border:1px solid rgba(50,245,201,.22);color:#d9fff8;font-weight:850;line-height:1.45}.s2-auth-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.s2-auth-legal{font-size:.82rem;color:#8fb0ba;line-height:1.5;margin:0}.s2-auth-legal a{color:#8af5ff}.s2-auth-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.s2-auth-mini{padding:13px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(96,230,255,.12)}.s2-auth-mini strong{display:block;color:#fff}.s2-auth-mini small{display:block;margin-top:3px;color:#9fc3cc;line-height:1.35}@media(max-width:960px){.s2-auth-shell{grid-template-columns:1fr}.s2-auth-hero{min-height:470px}.s2-auth-card{padding:24px}.s2-auth-benefits{grid-template-columns:1fr 1fr}}@media(max-width:640px){.s2-auth-page{width:min(100% - 22px,1180px);margin-top:20px}.s2-auth-hero{padding:22px;min-height:auto}.s2-auth-title{font-size:clamp(2.15rem,16vw,3.6rem)}.s2-auth-benefits,.s2-auth-mini-grid{grid-template-columns:1fr}.s2-auth-card{padding:18px;border-radius:24px}.s2-auth-switch,.s2-auth-options{align-items:flex-start;flex-direction:column}.s2-auth-switch .btn{width:100%;justify-content:center}}


/* Auth V2 — finitions UI demandées */
.s2-auth-page .site-header,
.s2-auth-page .site-header *{box-sizing:border-box}
body:has(.s2-auth-page) .site-header .auth-menu .auth-link,
body:has(.s2-auth-page) .site-header .auth-menu a.auth-link,
body:has(.s2-auth-page) .site-header .auth-menu button.auth-link{
  width:auto!important;
  min-width:138px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0 22px!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:999px!important;
  line-height:1!important;
  letter-spacing:.09em!important;
  box-sizing:border-box!important;
}
body:has(.s2-auth-page) .site-header .auth-menu .auth-login,
body:has(.s2-auth-page) .site-header .auth-menu .auth-register{
  flex:0 0 auto!important;
}
.s2-auth-card .muted{font-size:1rem;color:#c5e2ea}
.s2-auth-options{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px 16px!important;
  margin-top:0!important;
}
.s2-auth-check{
  min-width:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  color:#d6edf3!important;
  font-weight:900!important;
  line-height:1.25!important;
  cursor:pointer!important;
}
.s2-auth-check span{display:block;min-width:0;white-space:normal}
.s2-auth-check input{
  appearance:none;
  -webkit-appearance:none;
  flex:0 0 20px;
  width:20px!important;
  height:20px!important;
  margin:0!important;
  border-radius:6px!important;
  border:1px solid rgba(108,236,255,.45)!important;
  background:rgba(0,16,28,.75)!important;
  display:grid!important;
  place-items:center!important;
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.15);
}
.s2-auth-check input:checked{
  background:linear-gradient(135deg,#20e7ff,#20f0c4)!important;
  border-color:rgba(151,252,255,.9)!important;
}
.s2-auth-check input:checked:after{
  content:"";
  width:9px;
  height:5px;
  border-left:2px solid #00212d;
  border-bottom:2px solid #00212d;
  transform:rotate(-45deg) translateY(-1px);
}
.s2-auth-field input:-webkit-autofill,
.s2-auth-field input:-webkit-autofill:hover,
.s2-auth-field input:-webkit-autofill:focus{
  -webkit-text-fill-color:#efffff!important;
  caret-color:#efffff!important;
  transition:background-color 9999s ease-in-out 0s!important;
  box-shadow:0 0 0 1000px rgba(0,18,30,.95) inset,0 0 0 4px rgba(39,226,255,.06)!important;
  border-color:rgba(106,231,255,.28)!important;
}
.s2-auth-field input,
.s2-auth-input-wrap input{
  font-size:1rem!important;
  line-height:50px!important;
}
.s2-auth-switch .btn.secondary,
.s2-auth-switch a.btn.secondary{
  padding:0 18px!important;
  min-width:160px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
.s2-auth-trust span{font-size:.92rem;color:#c3dce4}
@media(max-width:760px){
  .s2-auth-options{grid-template-columns:1fr!important;align-items:flex-start!important}
  .s2-auth-link{display:inline-flex;margin-top:2px}
  body:has(.s2-auth-page) .site-header .auth-menu .auth-link,
  body:has(.s2-auth-page) .site-header .auth-menu a.auth-link,
  body:has(.s2-auth-page) .site-header .auth-menu button.auth-link{width:100%!important;min-width:0!important}
}


/* ==========================================================================
   V22 direct — retire les backgrounds/voiles des heroes de cette page.
   Le seul wallpaper autorisé est le calque global .s2-wallpaper-v22.
   ========================================================================== */

/* Fonds de page/wrappers transparents */
.s2-home-revamp,
.s2-forum-revamp,
.s2-forum-page,
.forum-page,
.topic-page,
.s2-guides-page,
.s2-guide-page,
.s2-guide-view-v5,
.s2-videos-page,
.s2v-page,
.s2v-index-page,
.s2-vocaux-page,
.s2-vocaux-bg,
.s2-intl-guides-bg,
.auth-page,
.auth-shell{
  background:transparent!important;
  background-image:none!important;
}

/* Heroes / bandeaux : aucun background, aucune image, aucun gros voile */
.s2hr-hero-wrap,
.s2fr-hero,
.s2-guides-hero,
.s2g-hero,
.s2g-hero-main,
.s2v-hero,
.s2-videos-hero,
.s2-video-hero-compact,
.s2vocal-hero,
.vocaux-hero,
.s2intl-hero,
.s2intl-article-hero,
.article-hero,
.guide-hero,
.hero,
.forum-hero{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
  box-shadow:none!important;
  border:0!important;
  border-bottom:0!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Pseudos responsables du voile sombre/doublage */
.s2hr-hero-wrap:before,
.s2hr-hero-wrap:after,
.s2hr-hero-wrap::before,
.s2hr-hero-wrap::after,
.s2fr-hero:before,
.s2fr-hero:after,
.s2fr-hero::before,
.s2fr-hero::after,
.s2-guides-hero:before,
.s2-guides-hero:after,
.s2-guides-hero::before,
.s2-guides-hero::after,
.s2g-hero:before,
.s2g-hero:after,
.s2g-hero::before,
.s2g-hero::after,
.s2g-hero-main:before,
.s2g-hero-main:after,
.s2g-hero-main::before,
.s2g-hero-main::after,
.s2v-hero:before,
.s2v-hero:after,
.s2v-hero::before,
.s2v-hero::after,
.s2-videos-hero:before,
.s2-videos-hero:after,
.s2-videos-hero::before,
.s2-videos-hero::after,
.s2-video-hero-compact:before,
.s2-video-hero-compact:after,
.s2-video-hero-compact::before,
.s2-video-hero-compact::after,
.s2vocal-hero:before,
.s2vocal-hero:after,
.s2vocal-hero::before,
.s2vocal-hero::after,
.vocaux-hero:before,
.vocaux-hero:after,
.vocaux-hero::before,
.vocaux-hero::after,
.s2intl-hero:before,
.s2intl-hero:after,
.s2intl-hero::before,
.s2intl-hero::after,
.s2intl-article-hero:before,
.s2intl-article-hero:after,
.s2intl-article-hero::before,
.s2intl-article-hero::after,
.article-hero:before,
.article-hero:after,
.article-hero::before,
.article-hero::after,
.guide-hero:before,
.guide-hero:after,
.guide-hero::before,
.guide-hero::after,
.hero:before,
.hero:after,
.hero::before,
.hero::after,
.forum-hero:before,
.forum-hero:after,
.forum-hero::before,
.forum-hero::after{
  display:none!important;
  content:none!important;
  background:none!important;
  background-image:none!important;
  opacity:0!important;
  filter:none!important;
}

/* Grilles internes : surtout pas de carte globale */
.s2hr-hero-grid,
.s2fr-hero,
.s2g-hero-grid,
.s2v-hero-grid,
.s2vocal-hero-grid,
.hero-grid,
.hero-inner{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* Espacement plus propre */
.s2hr-hero-wrap,
.s2fr-hero,
.s2-guides-hero,
.s2v-hero,
.s2vocal-hero,
.vocaux-hero,
.forum-hero,
.hero{
  min-height:auto!important;
  padding-top:clamp(26px,4vw,54px)!important;
  padding-bottom:clamp(24px,3.5vw,48px)!important;
}

/* Voile discret uniquement derrière texte */
.s2hr-hero-copy,
.s2fr-hero-copy,
.s2g-hero-copy,
.s2v-hero-copy,
.s2vocal-hero-copy,
.vocaux-hero-content,
.s2g-hero-main,
.article-hero > div:first-child,
.s2intl-hero > div:first-child,
.s2intl-article-hero > div:first-child,
.hero-content,
.hero-copy,
.forum-hero > div:first-child{
  width:max-content!important;
  max-width:min(940px,100%)!important;
  padding:clamp(13px,1.45vw,20px) clamp(16px,2vw,28px)!important;
  border-radius:20px!important;
  background:linear-gradient(90deg,rgba(0,10,18,.58),rgba(0,10,18,.34) 62%,rgba(0,10,18,.08))!important;
  box-shadow:0 12px 34px rgba(0,0,0,.18)!important;
}

/* Les cartes/panneaux restent lisibles */
.s2fr-panel,
.s2fr-value-strip,
.s2hr-start-panel,
.s2g-rubriques-card,
.s2g-panel,
.s2v-discover-card,
.s2v-panel,
.s2vocal-start-card,
.s2vocal-panel,
.s2vocal-live-panel,
.s2vocal-faq,
.s2vocal-final-cta,
.glass,
.card,
.panel,
.forum-card,
.topic-card,
.guide-card,
.video-card{
  background:
    radial-gradient(circle at 14% -18%,rgba(36,232,255,.075),transparent 34%),
    linear-gradient(180deg,rgba(4,40,56,.72),rgba(0,18,31,.84))!important;
  border-color:rgba(87,232,255,.18)!important;
}

@media(max-width:760px){
  .s2hr-hero-copy,
  .s2fr-hero-copy,
  .s2g-hero-copy,
  .s2v-hero-copy,
  .s2vocal-hero-copy,
  .vocaux-hero-content,
  .s2g-hero-main,
  .article-hero > div:first-child,
  .s2intl-hero > div:first-child,
  .s2intl-article-hero > div:first-child,
  .hero-content,
  .hero-copy,
  .forum-hero > div:first-child{
    width:100%!important;
    padding:14px 15px!important;
    border-radius:18px!important;
  }
}

