:root {
  --text-gray: #c4c4c4;
  --footer-height: 155px;
  --footer-height-sm: 139px;
  --footer-height-md: 85px;
}

body.body-login {
  background-image: url(../images/bg-main.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  background-attachment: fixed;
}

#content {
  min-height: calc(100% - var(--footer-height));
  gap: 10px;
  padding: 50px 20px;
}
#logo img {
  width: 196px;
}

footer {
  height: var(--footer-height);
}

@media (min-width: 449px) {
  #content {
    min-height: calc(100% - var(--footer-height-sm));
  }
  footer {
    height: var(--footer-height-sm);
  }
}

@media (min-width: 768px) {
  body.body-login {
    background-image: url(../images/bg-main-lg.webp);
  }

  #content {
    min-height: calc(100% - var(--footer-height-md));
    gap: 40px;
    padding: 74px 50px;
  }
  #logo img {
    width: 376px;
  }

  footer {
    height: var(--footer-height-md);
  }
}

@media (min-width: 1280px) {
  body.body-login {
    background-image: url(../images/bg-main-xl.webp);
  }

  #content {
    gap: 138px;
    padding: 50px;
  }
  #logo img {
    width: 406px;
  }
}

.form-control:focus {
  color: var(--text-gray);
}

.form-control-dark {
  height: 48px !important;
  padding: 0 10px !important;
  justify-content: center !important;
  align-items: center !important;

  border-radius: 12px !important;
  border: none !important;
  background: rgba(0, 0, 0, 0.7) !important;
  color: var(--text-gray);
}

.form-control-dark::placeholder {
  color: rgba(255, 255, 255, 0.2);

  /* Body/Bold */
  font-family: "Noto Sans Thai";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 19.2px; /* 120% */
}

.font-gray {
  color: var(--text-gray);
}

.f-header {
  color: var(--text-gray);
  text-align: center;

  /* H4/Regular */
  font-family: "Noto Sans Thai";
  font-size: 25px;
  font-style: normal;
  font-weight: 400;
  line-height: 30px; /* 120% */
}

.f-regular {
  color: var(--text-gray);
  text-align: center;

  /* Body/Regular */
  font-family: "Noto Sans Thai";
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 19.2px; /* 120% */
}

.f-regular-bold {
  color: var(--text-gray);

  /* Body/Bold */
  font-family: "Noto Sans Thai";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 19.2px; /* 120% */
}

.f-normal {
  color: var(--text-gray);
  font-family: "Noto Sans Thai";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.f-normal-light {
  color: var(--text-gray);
  text-align: center;

  /* Subtitle/Light */
  font-family: "Noto Sans Thai";
  font-size: 14px;
  font-style: normal;
  font-weight: 300;
  line-height: 16.8px; /* 120% */
}

.hof-footer {
  background: #000;
  position: relative;
  z-index: 30;

  padding: 15px 20px;
}

@media (min-width: 1280px) {
  .hof-footer {
    padding-left: 50px;
    padding-right: 50px;
  }
}

.hof-logo {
  width: 57px;
  height: 43px;
  object-fit: contain;
}
@media (min-width: 768px) {
  .hof-logo {
    width: 73px;
    height: 55px;
  }
}

.hof-gap-10-md-13 {
  gap: 10px;
  flex-direction: column;
}

@media (min-width: 768px) {
  .hof-gap-10-md-13 {
    gap: 13px;
    flex-direction: row;
  }
}

.hof-gap-10-md-5_5 {
  gap: 10px;
}

@media (min-width: 768px) {
  .hof-gap-10-md-5_5 {
    gap: 5.5px;
  }
}

.hof-links {
  font-family: "Noto Sans Thai";
  font-size: 12px;
  line-height: 16px;
  color: #c2c2c2;
}
.hof-link {
  color: #c2c2c2;
  text-decoration: none;
  white-space: nowrap;
}
.hof-link:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.hof-divider {
  display: inline-block;
  width: 1px;
  height: 16px;
  background: rgba(255, 255, 255, 0.2);
  margin: 0 12px;
}

.hof-copyright {
  font-family: "Noto Sans Thai";
  font-size: 10px;
  line-height: 14px;
  font-weight: 500;
  color: #929292;
}

.hof-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  user-select: none;
}
.hof-icon-btn:hover {
  opacity: 0.8;
}
.hof-icon-btn:active {
  filter: brightness(1.2);
  transform: scale(0.95);
}

.hof-icon {
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.hof-follow {
  font-family: "Noto Sans Thai";
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  color: #f4eded;
  white-space: nowrap;
}

.glass-card {
  display: flex;
  width: 100%;
  padding: 30px;
  flex-direction: column;
  gap: 15px;

  border-radius: 10px;
  background: rgba(255, 255, 255, 0.03);

  /* hof-container */
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(20px);
}

@media (min-width: 1280px) {
  .glass-card {
    max-width: 520px;
  }
}

.view-password i {
  color: rgba(255, 255, 255, 0.2);
}

.remember {
  user-select: none;
  cursor: pointer;
}

.forgot:hover {
  filter: brightness(1.25);
}

.button-submit {
  height: 48px;
  border-radius: 8px;
  border: 0 solid #e5e7eb;
  background: #00537d;

  color: #fff;
  text-align: center;

  /* Body/Bold */
  font-family: "Noto Sans Thai";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 19.2px; /* 120% */

  transition: background-color 0.3s ease;
}
.button-submit:hover {
  background: #006a9e;
}

.button-register {
  height: 48px;
  border-radius: 8px;
  border: 0 solid #e5e7eb;
  background: rgba(255, 255, 255, 0.1);

  color: #fff;
  text-align: center;

  /* Body/Bold */
  font-family: "Noto Sans Thai";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 19.2px; /* 120% */

  transition: background-color 0.3s ease;

  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
.button-register:hover {
  background: rgba(255, 255, 255, 0.2);
}

.form-check-input {
  border-color: rgba(0, 0, 0, 0.8) !important;
  background-color: rgba(0, 0, 0, 0.8) !important;
  margin-top: 0px !important;
}
.form-check-input:focus {
  box-shadow: none !important;
  outline: none !important;
}

hr {
  color: rgba(255, 255, 255, 0.1);
}