.storefront-auth {
  min-height: calc(100svh - 68px);
  display: grid;
  align-items: center;
  justify-items: center;
  padding: clamp(36px, 8vh, 84px) 0;
  color: #242321;
}
.storefront-auth-card {
  width: min(448px, 100%);
  padding: clamp(24px, 5vw, 40px);
  background: #fff;
  border: 1px solid #e9e7e4;
  box-shadow: 0 10px 35px #27221c08;
}
.storefront-auth h1 {
  margin: 4px 0 20px;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.storefront-auth .auth-tabs { display: grid; grid-template-columns: repeat(2, 1fr); margin-bottom: 22px; }
.storefront-auth .auth-tabs button {
  min-height: 44px;
  border-bottom: 2px solid #eceae7;
  color: #67625d;
  font-size: 13px;
  letter-spacing: .08em;
}
.storefront-auth .auth-tabs [aria-selected="true"] { color: #242321; border-color: #242321; }
.storefront-auth label { display: block; margin: 16px 0; font-size: 12px; }
.storefront-auth label > input:not([type="checkbox"]) {
  display: block;
  width: 100%;
  min-height: 44px;
  border: 0;
  border-bottom: 1px solid #d8d5d2;
  background: #fff;
  color: inherit;
  font-size: 16px;
  padding: 6px 2px;
}
.storefront-auth input:focus-visible { outline: 2px solid #92532e; outline-offset: 2px; }
.storefront-auth .primary {
  width: 100%;
  min-height: 48px;
  margin-top: 10px;
  background: #242321;
  border-color: #242321;
  border-radius: 0;
  color: #fff;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.storefront-auth .primary:disabled { opacity: .6; }
.storefront-auth .note, .storefront-auth details p { font-size: 12px; line-height: 1.6; color: #625d57; }
.storefront-auth .consent { display: flex; align-items: flex-start; gap: 9px; line-height: 1.5; }
.storefront-auth .consent input { margin: 2px 0 0; flex: none; }
.storefront-auth .consent a { color: #814825; text-decoration: underline; }
.storefront-password-help { margin-top: 18px; text-align: center; font-size: 12px; color: #625d57; }
.storefront-password-help summary { cursor: pointer; padding: 8px; }
.storefront-auth .message { margin-top: 16px; font-size: 13px; line-height: 1.5; }
.storefront-auth .message.error { color: #9b3024; }
@media (max-width: 820px) {
  .storefront-auth { min-height: calc(100svh - 115px - env(safe-area-inset-bottom)); }
}
