/* Декорации страницы входа: независимы от формы и не перехватывают нажатия. */
body.page-login {
  background:#e3eedf url('/assets/login/login-farm-bg.webp') center bottom / cover no-repeat fixed;
  isolation:isolate;
}
.page-login .login-leaves {
  position:fixed; inset:0; z-index:-1; overflow:hidden; pointer-events:none;
}
.page-login .login-leaf {
  position:absolute; width:clamp(160px,24vw,430px); height:auto;
  pointer-events:none; user-select:none; will-change:transform;
  animation:loginLeafWind 5.5s ease-in-out infinite alternate;
  --leaf-angle:3deg;
}
.page-login .login-leaf--top-left { top:-30px; left:-45px; transform-origin:0 0; }
.page-login .login-leaf--top-right { top:-30px; right:-45px; transform-origin:100% 0; animation-duration:7s; animation-delay:-3s; --leaf-angle:2.5deg; }
.page-login .login-leaf--bottom-left { bottom:-45px; left:-40px; transform-origin:0 100%; animation-duration:6.5s; animation-delay:-2s; --leaf-angle:2deg; }
.page-login .login-leaf--bottom-right { bottom:-50px; right:-45px; transform-origin:100% 100%; animation-duration:8s; animation-delay:-5s; }
@keyframes loginLeafWind {
  from { transform:rotate(calc(-1 * var(--leaf-angle))); }
  to { transform:rotate(var(--leaf-angle)); }
}
@media(max-width:1023px) {
  .page-login .login-leaf { width:clamp(110px,19vw,220px); opacity:.8; }
}
@media(max-width:767px) {
  .page-login .login-leaf { width:125px; opacity:.65; }
  .page-login .login-leaf--bottom-left,.page-login .login-leaf--bottom-right { display:none; }
  body.page-login { background-attachment:scroll; }
}
@media(prefers-reduced-motion:reduce) {
  .page-login .login-leaf { animation:none; will-change:auto; }
}
