@import url('https://fonts.googleapis.com/css2?family=Newsreader:opsz,wght@6..72,500;6..72,600&family=Manrope:wght@400;500;600;700&display=swap');

body.login {
  --hfs-bg: #faf6ef;
  --hfs-paper: #fff;
  --hfs-ink: #3a2a28;
  --hfs-muted: #6e5b57;
  --hfs-border: #d4c3b6;
  --hfs-berry: #b4285a;
  --hfs-berry-hover: #8f1e47;
  min-height: 100vh;
  background: var(--hfs-bg);
  color: var(--hfs-ink);
  font-family: Manrope, sans-serif;
}

body.login.hfs-login-dark {
  --hfs-bg: #241a19;
  --hfs-paper: #2e2323;
  --hfs-ink: #f0e4dc;
  --hfs-muted: #deccc4;
  --hfs-border: #8c726b;
  --hfs-berry: #d97c9e;
  --hfs-berry-hover: #e39cb6;
  color-scheme: dark;
}

body.login #login {
  width: min(360px, calc(100% - 40px));
  margin: 0 auto;
  padding: clamp(44px, 9vh, 84px) 0 48px;
}

body.login > h1.screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.login #login h1 a {
  display: block;
  width: 104px;
  height: 104px;
  margin: 0 auto 12px;
  overflow: hidden;
  color: transparent;
  font-size: 0;
  text-indent: -9999px;
  background-image: url('https://hallofromsuiza.ch/assets/logo/logo.png');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

body.login #login h1::after {
  content: 'Hallo From Suiza';
  display: block;
  margin: 0 0 28px;
  color: var(--hfs-ink);
  font: 600 29px/1.1 Newsreader, Georgia, serif;
  text-align: center;
}

body.login .hfs-login-intro {
  margin: 0 0 14px;
  color: var(--hfs-muted);
  font: 600 11px/1.5 Manrope, sans-serif;
  letter-spacing: .12em;
  text-align: center;
  text-transform: uppercase;
}

body.login #loginform,
body.login #lostpasswordform,
body.login #resetpassform,
body.login #registerform {
  margin: 0;
  padding: 28px;
  border: 1px solid var(--hfs-border);
  border-radius: 8px;
  background: var(--hfs-paper);
  box-shadow: none;
}

body.login #login form label,
body.login #login form .forgetmenot label {
  color: var(--hfs-ink);
  font: 600 13px/1.5 Manrope, sans-serif;
}

body.login #login form .input,
body.login #login form input[type='text'],
body.login #login form input[type='password'] {
  box-sizing: border-box;
  width: 100%;
  min-height: 46px;
  margin: 8px 0 18px;
  border: 1px solid var(--hfs-border);
  border-radius: 4px;
  background: var(--hfs-bg);
  color: var(--hfs-ink);
  font: 500 16px/1.4 Manrope, sans-serif;
  box-shadow: none;
}

body.login #login form .wp-pwd { position: relative; width: 100%; }
body.login #login form .wp-pwd input { padding-right: 50px; }
body.login #login form .wp-hide-pw {
  position: absolute;
  top: 8px;
  right: 2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 46px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--hfs-muted);
  box-shadow: none;
}
body.login #login form .submit { display: flex; justify-content: flex-end; }

body.login #login form .input:focus {
  border-color: var(--hfs-berry);
  outline: 2px solid var(--hfs-berry);
  outline-offset: 1px;
}

body.login .button-primary {
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid var(--hfs-berry);
  border-radius: 4px;
  background: var(--hfs-berry);
  color: #fff7f1;
  font: 700 13px Manrope, sans-serif;
  box-shadow: none;
  text-shadow: none;
}

body.login.hfs-login-dark .button-primary { color: #2b161e; }
body.login .button-primary:hover,
body.login .button-primary:focus { background: var(--hfs-berry-hover); border-color: var(--hfs-berry-hover); }

body.login #nav,
body.login #backtoblog,
body.login .privacy-policy-page-link { margin: 18px 0 0; padding: 0; text-align: center; }
body.login #nav a,
body.login #backtoblog a,
body.login .privacy-policy-page-link a { color: var(--hfs-muted); font: 600 12px Manrope, sans-serif; }
body.login #nav a:hover,
body.login #backtoblog a:hover,
body.login .privacy-policy-page-link a:hover { color: var(--hfs-berry); }
body.login .message,
body.login #login_error { border-left-color: var(--hfs-berry); background: var(--hfs-paper); color: var(--hfs-ink); }
body.login .wp-hide-pw { color: var(--hfs-muted); }
body.login .language-switcher { display: none; }

@media (max-width: 480px) {
  body.login #login { padding-top: 40px; }
  body.login #loginform,
  body.login #lostpasswordform,
  body.login #resetpassform,
  body.login #registerform { padding: 22px; }
}
