.login-container {
  display: flex;
  flex-direction: column;
  width: 100% !important;
  margin: auto;
  /* Fill visible viewport minus fixed navbar; avoid page scroll */
  padding-top: var(--navbar-height) !important;
  min-height: calc(100svh - var(--navbar-height)) !important;
  box-sizing: border-box;
}

.form-sub-container {
  margin: auto;
  vertical-align: middle;
  display: grid;
  width: 500px !important;
}

.form-components-container {
  /*padding-top: 10px !important;*/
  margin: auto;
  position: relative;
}

.loging-item-logo {
  margin: auto;
  padding-bottom: 50px;
}

.form-floating {
  width: 100%;
}

/* --- Login page: tighten floating labels to remove gap and avoid overlay --- */
/* Scope to login only so other pages keep their current tuning */
.login-container .form-floating {
  position: relative;
}

/* Make the label chip compact and never cover the input */
.login-container .form-floating>label {
  padding: 1.2rem !important;
  /* no vertical padding */
  padding-left: 1rem !important;
  /* extra left padding to center chip */
  line-height: 1.1 !important;
  height: auto !important;
  border-radius: 20px !important;
  background: transparent !important;
  /* Color and background are defined globally in zzz_glass.css */
  z-index: 1;
  /* float above the input border only */
  color: var(--text-primary) !important;
}

/* Remove Bootstrap's overlay that can span full input height */
.login-container .form-floating>label::after {
  content: none !important;
  display: none !important;
  background: transparent !important;
}

/* Adjust input padding to account for the slimmer floating label */
.login-container .form-floating>.form-control,
.login-container .form-floating>textarea.form-control,
.login-container .form-floating>select.form-select {
  padding-top: 1.60rem !important;
  /* extra space so label never overlaps top line */
  padding-bottom: 0.6rem !important;
  /* keep text visually centered */
}

/* Tighter float position so the label sits just above the text without a gap */
.login-container .form-floating>.form-control:focus~label,
.login-container .form-floating>.form-control:not(:placeholder-shown)~label,
.login-container .form-floating>.form-select~label {
  transform: translateY(-0.55rem) scale(0.90) !important;
  top: 0.20rem !important;
  left: 0.80rem !important;
  /* slight right shift */
  padding: 0 0.35rem !important;
  /* base horizontal padding */
  padding-right: calc(0.35rem + 3px) !important;
  /* +3px right to clear the corner */
  padding-left: calc(0.35rem + 3px) !important;
  /* +3px left to better center the chip */
  /* Background/color handled globally in zzz_glass.css */
}

.alert {
  margin-top: 10px;
  border-radius: 15px;
}