
/* ============================================================
   v21 Profile/password form spacing fix
   Исправляет слипание полей в блоке "Сменить пароль"
   и выравнивает карточки профиля.
   ============================================================ */

#pageContent .grid:has(#passwordForm),
.profile-page-grid{
  align-items:start!important;
  gap:24px!important;
}

#passwordForm{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  padding:24px!important;
  min-width:0!important;
  max-width:100%!important;
}

#passwordForm .card-head{
  margin-bottom:22px!important;
  padding-bottom:16px!important;
  border-bottom:1px solid rgba(219,229,242,.85)!important;
}

#passwordForm .card-head h2{
  margin:0 0 7px!important;
  line-height:1.14!important;
}

#passwordForm .card-head p{
  margin:0!important;
  line-height:1.45!important;
}

#passwordForm .field{
  display:grid!important;
  gap:9px!important;
  margin:0 0 18px!important;
}

#passwordForm .field label{
  display:block!important;
  margin:0!important;
  color:#39465a!important;
  font-size:12.5px!important;
  line-height:1.2!important;
  font-weight:850!important;
}

#passwordForm .input{
  width:100%!important;
  min-height:54px!important;
  padding:14px 16px!important;
  border-radius:17px!important;
  line-height:1.25!important;
}

#passwordForm .btn{
  margin-top:4px!important;
  min-height:52px!important;
  border-radius:17px!important;
}

/* Левая карточка профиля тоже становится ровнее */
.profile-list{
  display:grid!important;
  gap:10px!important;
}

.profile-list > div{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:14px 0!important;
}

.profile-list > div > span:first-child{
  flex:0 0 auto!important;
  color:#7b8494!important;
  font-size:12.5px!important;
  font-weight:750!important;
}

.profile-list strong{
  min-width:0!important;
  max-width:70%!important;
  text-align:right!important;
  color:#1f2937!important;
  font-size:14px!important;
  line-height:1.35!important;
  word-break:break-word!important;
}

/* На мобильной версии карточки профиля идут одна под другой и не сжимаются */
@media(max-width:980px){
  #pageContent .grid:has(#passwordForm),
  .profile-page-grid{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }

  #passwordForm{
    padding:18px!important;
  }

  #passwordForm .card-head{
    margin-bottom:18px!important;
    padding-bottom:14px!important;
  }

  #passwordForm .field{
    margin-bottom:16px!important;
  }

  #passwordForm .input{
    min-height:52px!important;
  }

  .profile-list > div{
    flex-direction:column!important;
    gap:6px!important;
  }

  .profile-list strong{
    max-width:100%!important;
    text-align:left!important;
  }
}
