/* Pow8386 login: use the same pink sky as the home and download pages. */
body {
  background:
    linear-gradient(145deg, rgba(255, 248, 252, .55), rgba(255, 232, 243, .72)),
    url('/assets/img/pow8386-pink-sky.svg?v=20261106a') center / cover fixed,
    #fff2f8;
}

body::before {
  background-image: none;
}

.auth-card {
  border-color: rgba(255, 255, 255, .9);
  box-shadow: 0 28px 85px rgba(153, 35, 88, .18);
}

.visual {
  background:
    radial-gradient(circle at 90% 10%, rgba(255, 220, 237, .25), transparent 45%),
    linear-gradient(155deg, rgba(169, 28, 88, .97), rgba(223, 54, 122, .94) 52%, rgba(246, 142, 185, .92)),
    url('/assets/img/pow8386-pink-sky.svg?v=20261106a') center / cover;
}

.brand-chip {
  color: #fff;
}

.brand-mark {
  color: #c12565;
}

.pow-logo {
  padding: 16px 0 20px;
  filter: none;
  text-align: center;
}

.pow-logo-name {
  display: block;
  color: #fff;
  font-size: clamp(46px, 4.9vw, 64px);
  font-weight: 900;
  line-height: 1.12;
  letter-spacing: -.065em;
  text-shadow: 0 4px 0 rgba(133, 18, 67, .2), 0 12px 28px rgba(113, 17, 60, .18);
}

.pow-logo-server {
  display: inline-block;
  margin-top: 14px;
  padding: 7px 15px;
  border: 1px solid rgba(255, 255, 255, .35);
  border-radius: 999px;
  color: #fff;
  background: rgba(104, 10, 47, .18);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
}

.visual h1 span {
  color: #ffe1ed;
}

.visual-kicker::before {
  background: #ffc0da;
}

.visual-copy,
.server-live {
  color: rgba(255, 255, 255, .9);
}

.panel {
  background: radial-gradient(circle at 100% 0%, #fff0f6, transparent 38%), #fff;
}

.login-btn {
  background: linear-gradient(135deg, #f75091, #d5226d 55%, #b01e5d);
}

@media (max-width: 840px) {
  .pow-logo {
    padding: 5px 0;
  }

  .pow-logo-name {
    font-size: 42px;
  }

  .pow-logo-server {
    margin-top: 8px;
    padding: 5px 12px;
    font-size: 11px;
  }
}

@media (max-width: 520px) {
  body {
    background-attachment: scroll;
  }

  .auth-card {
    box-shadow: none;
  }

  .visual {
    min-height: 188px;
  }

  .visual-content {
    inset: 63px 100px 34px 18px;
    justify-content: flex-start;
  }

  .pow-logo {
    width: min(235px, 100%);
    margin: 0;
    text-align: left;
  }

  .pow-logo-name {
    font-size: clamp(32px, 9.2vw, 42px);
  }

  .pow-logo-server {
    margin-top: 7px;
    font-size: 10px;
  }

  .visual-bottom {
    right: 12px;
    bottom: 35px;
  }

  .chibi-pair img {
    width: 52px;
    height: 52px;
  }

  .panel {
    min-height: calc(100dvh - 164px);
  }

  #gun2-lang-switch {
    position: relative !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 2 !important;
    width: fit-content;
    margin: 0 auto max(18px, env(safe-area-inset-bottom));
    box-shadow: 0 4px 16px rgba(153, 35, 88, .15) !important;
  }
}
