* { box-sizing: border-box; }
html {
  min-height: 100%;
  background: #161616;
  background-image: linear-gradient(-54.77deg, rgba(128,186,39,.31), rgba(0,157,154,.28) 21%, rgba(0,142,181,.27) 29%, rgba(0,109,190,.23) 49%, #00389e 62%, #001689 69%);
}
body {
  margin: 0;
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: 88px 20px 40px;
  color: #404040;
  font: 14px/1.7 "Open Sans", sans-serif;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  background: url("/img/login.lt/big/books.jpg") center / cover;
  opacity: .3;
  pointer-events: none;
}
.card {
  position: relative;
  width: 100%;
  max-width: 360px;
  padding: 55px 25px 28px;
  border-radius: 8px;
  background: white;
  text-align: center;
  box-shadow: 0 2px 2px #00000024, 0 3px 1px -2px #0000001f, 0 1px 5px #0003;
}
.logo {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -60%);
  border-radius: 18px;
  box-shadow: 0 2px 4px #00000024, 0 0 65px 12px #ffffff80;
}
.brand { font-size: 16px; margin: 0 0 12px; }
h1 { color: #0a1479; font-size: 25px; line-height: 1.3; margin: 0 0 16px; }
p { margin: 0; }
a { color: #0a1479; font-weight: 600; text-underline-offset: 3px; overflow-wrap: anywhere; }
a:hover { color: #006dbe; }
a:focus-visible { outline: 3px solid #0a1479; outline-offset: 4px; border-radius: 2px; }
