* {
  font-family: 'Geometria';
}
html, body {
  padding: 0;
  margin: 0;
}
body {
  background-color: #010C2A;
}

.liquid-glass {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 0px;
  height: 0px;
}

.login-page {
  width: 100vw;
  height: 100svh;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0px 12px;
  box-sizing: border-box;
}

/* контейнер для three.js canvas */
.particles-3d {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  filter: blur(1px);
}
.particles-3d::after {
  position: absolute;
  content: '';
  top: 0px;
  left: 0px;
  width: 25%;
  height: 100%;
  background: linear-gradient(90deg, rgba(1,12,42, 75%), transparent);
  mix-blend-mode: color;
}

/* canvas внутри контейнера */
.particles-3d canvas {
  display: block;
  width: 100% !important;
  height: 100% !important;
}

/* если форма логина будет — подними её выше частиц */
.login-page > form,
.login-page > .log {
  position: relative;
  z-index: 2;
}

.login-card {
  width: 500px;
  background-color: rgba(16,17,36,70%);
  border-radius: 36px;
  padding: 48px 35px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 32px;
  /* backdrop-filter: blur(3px); */

  backdrop-filter: url(#displacementFilter) blur(3px);
}
.login-card .logo {
  width: 198px;
  height: auto;
  margin: 0px auto;
}
.login-form {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin: 0px;
}
.input-wrap {
  position: relative;
}
.input-wrap svg {
  position: absolute;
  top: 50%;
  right: 24px;
  transform: translate(0px, -50%);
  width: 24px;
  height: auto;
  fill: none;
  stroke: #ffffff;
  pointer-events: none;
}
.input-wrap label {
  position: absolute;
  left: 24px;
  top: 50%;
  color: #CACACA;
  transform: translate(0, -50%);
  font-size: 16px;
  font-weight: 300;
  padding: 0 5px;
  transition: 0.3s;
  pointer-events: none;
}
.input-wrap input:focus ~ label,
.input-wrap input:not(:placeholder-shown) ~ label {
  top: 0;
  font-size: 14px;
  transform: translate(0, -100%);
}

.input-wrap input {
  width: 100%;
  height: 56px;
  background-color: #080D1B;
  border: 1px solid #1B1A20CC;
  padding: 0px 48px 0px 24px;
  color: #ffffff;
  font-size: 16px;
  line-height: normal;
  border-radius: 24px;
  outline: none;
  transition: 0.25s ease-in-out;
}
.input-wrap input:focus {
  border: 1px solid #4172F4;
}

.default-btn {
  width: 100%;
  height: 46px;
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background-color: #4172F4;
  font-size: 16px;
  color: #ffffff;
  line-height: normal;
  border: 0px;
  cursor: pointer;
}
.default-btn svg {
  width: 19px;
  height: auto;
  fill: #ffffff;
  transition: 0.25s;
}
.default-btn:hover svg {
  transform: translate(5px, 0%);
}

@media (max-width: 800px) {
  .login-card {
    padding: 36px 12px;
    border-radius: 24px;
  }
}



/* ========================================================================== */
