/* У Elastic на входе прокрутка запрещена — с капчей форма выше экрана, поэтому разрешаем
   и делаем шапку компактнее. Так же на страницах регистрации (они в том же скине). */
body.task-login #layout-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow-y: auto;
  padding: 24px 12px 32px;
}
/* по центру, пока помещается; если нет — с прокруткой от верха (margin:auto не уводит за край) */
body.task-login #layout-content > :first-child { margin-top: auto; }
body.task-login #layout-content > #login-form { margin-bottom: auto; }
body.task-login #logo {
  position: static;
  top: auto;
  display: block;
  /* логотип — SVG без своего размера: в колонке flex без явной высоты он схлопывается в 0 */
  height: 72px;
  width: auto;
  max-height: none;
  margin: 0 auto 1rem;
}
body.task-login #login-form {
  position: static;
  top: auto;
  flex: none;
  margin-left: 0;
  margin-right: 0;
}
.bsslat-captcha {
  display: flex;
  justify-content: center;
  margin: .25rem 0 1rem;
}
.bsslat-captcha-error {
  margin: 0 0 1rem;
  color: #ec3b3b;
  font-size: .9rem;
  text-align: center;
}

/* ---------- Настройки → Лимиты ---------- */
.listing.iconized li.bsslat-limits > a:before { content: "\f3fd"; }
.bsslat-limits { max-width: 640px; }
.bsslat-section { margin: 0 0 1.75rem; }
.bsslat-section h3 { margin: 0 0 .6rem; font-size: 1.05rem; font-weight: 700; }
.bsslat-section p { margin: .35rem 0; }
.bsslat-section label { display: block; margin: .9rem 0 .35rem; font-weight: 600; }
.bsslat-section .formbuttons { margin-top: 1rem; }
.bsslat-hint { color: #737677; font-size: .875rem; }
html.dark-mode .bsslat-hint { color: #a3abae; }
.bsslat-meter { height: 10px; margin: .4rem 0 .5rem; overflow: hidden; border-radius: 99px; background: rgba(128, 128, 128, .2); }
.bsslat-meter > span { display: block; height: 100%; border-radius: 99px; background: #37beff; transition: width .4s; }
.bsslat-meter.warn > span { background: #f0ad4e; }
.bsslat-meter.full > span { background: #ec3b3b; }
.bsslat-reqs { margin: 0; padding: 0; list-style: none; }
.bsslat-reqs li { display: flex; flex-wrap: wrap; gap: .25rem 1rem; padding: .6rem 0; border-bottom: 1px solid rgba(128, 128, 128, .2); }
.bsslat-reqs li:last-child { border-bottom: 0; }
.bsslat-req-what { flex: 1; min-width: 200px; }
.bsslat-req-status { font-weight: 700; }
.bsslat-req-approved .bsslat-req-status { color: #41b849; }
.bsslat-req-rejected .bsslat-req-status { color: #ec3b3b; }
.bsslat-req-pending .bsslat-req-status { color: #f0ad4e; }
.bsslat-req-date { color: #737677; font-size: .875rem; }
.bsslat-req-comment { flex-basis: 100%; color: #737677; font-size: .875rem; font-style: italic; }

.bsslat-links {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .9rem;
  margin-top: 1rem;
}
#login-form .bsslat-links .bsslat-register {
  display: block;
  width: 100%;
  padding: .45rem 1rem;
  text-align: center;
  text-transform: uppercase;
  font-weight: 600;
  border: 1px solid #37beff;
  border-radius: .25rem;
  color: #37beff;
  background: transparent;
}
#login-form .bsslat-links .bsslat-register:hover {
  background: #37beff;
  color: #fff;
  text-decoration: none;
}
.bsslat-links .bsslat-reset {
  font-size: .9rem;
}
.bsslat-theme {
  position: fixed;
  top: 1rem;
  right: 1rem;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 1px solid #d4dbde;
  border-radius: .4rem;
  background: #fff;
  color: #2c363a;
  cursor: pointer;
}
.bsslat-theme:hover {
  border-color: #37beff;
  color: #37beff;
}
html.dark-mode .bsslat-theme {
  border-color: #4d5b61;
  background: #21292c;
  color: #c5d1d3;
}
