/* PRATINIUM v248 — Authentication : réparation géométrique réelle du formulaire
   Objectif : annuler la régression v246/v247 où les champs étaient repoussés
   hors du cadran gauche puis coupés par overflow:hidden.

   Principe : on ne dépend plus du calcul Bootstrap/flex du thème parent pour les
   deux lignes E-mail / Mot de passe. Chaque .form-group.row devient un repère
   positionné ; le label reste à gauche et la colonne du champ est placée à une
   coordonnée fixe maîtrisée à l'intérieur du cadran. */

@media (min-width: 992px){
  /* Alignement du bandeau titre + cadran sur la même largeur que le header */
  body#authentication #wrapper{
    padding-top: 24px!important;
  }

  body#authentication #wrapper > .container,
  body#authentication main > .container,
  body#authentication #content-wrapper,
  body#authentication #main{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:22px!important;
    padding-right:22px!important;
    box-sizing:border-box!important;
  }

  body#authentication .page-header,
  body#authentication #content{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }

  body#authentication .page-header{
    margin-top:0!important;
    margin-bottom:0!important;
    padding-left:46px!important;
    padding-right:46px!important;
    overflow:hidden!important;
  }

  body#authentication #content{
    margin-top:0!important;
    padding:72px 54px 56px!important;
    display:grid!important;
    grid-template-columns:minmax(690px, 1.45fr) minmax(340px, .85fr)!important;
    column-gap:44px!important;
    align-items:center!important;
    overflow:hidden!important;
  }

  /* Colonne gauche élargie, colonne droite resserrée */
  body#authentication .login-form,
  body#authentication form#login-form,
  body#authentication #login-form{
    grid-column:1!important;
    width:100%!important;
    max-width:760px!important;
    justify-self:start!important;
    padding:40px 54px 34px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body#authentication .login-form .page-content,
  body#authentication form#login-form .page-content,
  body#authentication #login-form .page-content{
    overflow:visible!important;
  }

  /* Placement absolu maîtrisé : plus aucun champ ne peut partir à droite */
  body#authentication .login-form .form-group.row,
  body#authentication form#login-form .form-group.row,
  body#authentication #login-form .form-group.row,
  body#authentication .login-form .form-group,
  body#authentication form#login-form .form-group,
  body#authentication #login-form .form-group{
    position:relative!important;
    display:block!important;
    width:560px!important;
    max-width:560px!important;
    height:54px!important;
    min-height:54px!important;
    margin:0 auto 22px!important;
    padding:0!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body#authentication .login-form .form-group.row > label.form-control-label,
  body#authentication form#login-form .form-group.row > label.form-control-label,
  body#authentication #login-form .form-group.row > label.form-control-label,
  body#authentication .login-form .form-control-label,
  body#authentication form#login-form .form-control-label,
  body#authentication #login-form .form-control-label,
  body#authentication .login-form label,
  body#authentication form#login-form label,
  body#authentication #login-form label{
    position:absolute!important;
    left:0!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    display:block!important;
    width:142px!important;
    max-width:142px!important;
    min-width:142px!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
    white-space:nowrap!important;
    z-index:2!important;
  }

  body#authentication .login-form .form-group.row > .js-input-column,
  body#authentication form#login-form .form-group.row > .js-input-column,
  body#authentication #login-form .form-group.row > .js-input-column,
  body#authentication .login-form .form-group.row > .col-md-6,
  body#authentication form#login-form .form-group.row > .col-md-6,
  body#authentication #login-form .form-group.row > .col-md-6,
  body#authentication .login-form .form-group.row > .col-md-9,
  body#authentication form#login-form .form-group.row > .col-md-9,
  body#authentication #login-form .form-group.row > .col-md-9{
    position:absolute!important;
    left:158px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    display:block!important;
    width:360px!important;
    max-width:360px!important;
    min-width:0!important;
    height:38px!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    overflow:visible!important;
    z-index:1!important;
  }

  body#authentication .login-form .form-group.row > .form-control-comment,
  body#authentication form#login-form .form-group.row > .form-control-comment,
  body#authentication #login-form .form-group.row > .form-control-comment{
    display:none!important;
  }

  body#authentication .login-form input.form-control,
  body#authentication form#login-form input.form-control,
  body#authentication #login-form input.form-control,
  body#authentication .login-form input[type=email],
  body#authentication .login-form input[type=password],
  body#authentication form#login-form input[type=email],
  body#authentication form#login-form input[type=password],
  body#authentication #login-form input[type=email],
  body#authentication #login-form input[type=password],
  body#authentication .login-form .input-group,
  body#authentication form#login-form .input-group,
  body#authentication #login-form .input-group{
    display:block!important;
    width:360px!important;
    max-width:360px!important;
    min-width:0!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  body#authentication .input-group{
    display:flex!important;
    align-items:center!important;
    width:360px!important;
    max-width:360px!important;
    overflow:hidden!important;
  }

  body#authentication .input-group .form-control{
    flex:1 1 auto!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    padding-right:52px!important;
  }

  body#authentication .input-group .input-group-btn,
  body#authentication .input-group .input-group-append,
  body#authentication .input-group .btn,
  body#authentication button[data-action="show-password"]{
    flex:0 0 52px!important;
    width:52px!important;
    max-width:52px!important;
    min-width:52px!important;
    height:38px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  body#authentication .forgot-password,
  body#authentication .form-footer,
  body#authentication footer.form-footer,
  body#authentication .submit{
    width:560px!important;
    max-width:560px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  body#authentication .register-form,
  body#authentication #content > .register-form,
  body#authentication #content > .pratinium-auth-side,
  body#authentication #content > .auth-side,
  body#authentication #content > section:not(.login-form):not(#login-form),
  body#authentication #content > div:not(.login-form):not(#login-form):not(.page-content){
    grid-column:2!important;
    width:100%!important;
    max-width:430px!important;
    justify-self:center!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }
}

@media (max-width: 991.98px){
  body#authentication #wrapper{padding-top:18px!important;}
  body#authentication #content{overflow:hidden!important;}
  body#authentication .login-form,
  body#authentication form#login-form,
  body#authentication #login-form{overflow:visible!important;}
}
