.pillar-signin-body {
  --signin-paper: #f0ebdd;
  --signin-carbon: #191918;
  --signin-oxide: #a32622;
  --signin-line: rgba(240,235,221,.72);
  --signin-mono: SFMono-Regular, Consolas, "Liberation Mono", monospace;
  margin: 0;
  display: block;
  background: var(--signin-carbon);
  color: var(--signin-paper);
  font: 400 12px/20px var(--sans);
  font-synthesis: none;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}
.pillar-signin-body > .flash-stack { display: none; }
.pillar-signin {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  min-height: 100vh;
  min-height: 100dvh;
  padding: 48px 28px 24px;
  gap: 24px;
  background: var(--signin-carbon);
  color: var(--signin-paper);
}
.pillar-signin__slides,
.pillar-signin__slide,
.pillar-signin__scrim { position: absolute; inset: 0; }
.pillar-signin__slides { z-index: -2; overflow: hidden; }
.pillar-signin__slide { margin: 0; opacity: 0; transition: opacity 1200ms ease; }
.pillar-signin__slide.is-active { opacity: 1; }
.pillar-signin__slide img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }
.pillar-signin__scrim {
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 72% 48% at 50% 48%, rgba(25,25,24,.40), rgba(25,25,24,.24) 45%, transparent 85%),
    linear-gradient(0deg, rgba(25,25,24,.68), transparent 24%),
    linear-gradient(rgba(25,25,24,.12), rgba(25,25,24,.12));
}
/* Keep errors, consent, and long email states clear of the footer. */
.pillar-signin__stage { flex: 1; display: flex; align-items: center; justify-content: center; min-width: 0; padding-block: 24px; }
.pillar-signin__assembly { width: 520px; max-width: 100%; }
.pillar-signin__mark { width: 360px; max-width: 100%; margin: 0 auto 28px; color: var(--signin-paper); }
.pillar-signin__wordmark { display: block; width: 100%; height: auto; fill: currentColor; }
.pillar-signin__content { position: relative; border: 1px solid var(--signin-line); background: rgba(25,25,24,.38); }
.pillar-signin__content::before,
.pillar-signin__content::after {
  content: "";
  position: absolute;
  width: 13px;
  height: 13px;
  opacity: .8;
  pointer-events: none;
  background: linear-gradient(var(--signin-paper), var(--signin-paper)) center/1px 13px no-repeat,
    linear-gradient(var(--signin-paper), var(--signin-paper)) center/13px 1px no-repeat;
}
.pillar-signin__content::before { left: -7px; top: -7px; }
.pillar-signin__content::after { right: -7px; bottom: -7px; }
.pillar-signin__content h1 { margin: 0; padding: 10px 14px; border-bottom: 1px solid var(--signin-line); color: var(--signin-paper); font: 400 12px/18px var(--signin-mono); letter-spacing: .055em; text-transform: uppercase; }
.pillar-signin__description { margin: 0; padding: 14px; color: var(--signin-paper); font: 400 12px/20px var(--sans); }
.pillar-signin__description strong { color: inherit; font-weight: 600; overflow-wrap: anywhere; }
.pillar-signin__entry-row { display: grid; grid-template-columns: minmax(0, 1fr) 164px; }
.pillar-signin__field {
  width: 100%;
  min-width: 0;
  height: 48px;
  box-sizing: border-box;
  padding: 12px 14px;
  margin: 0;
  background: var(--signin-paper);
  color: var(--signin-carbon);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font: 400 16px/22px var(--sans);
  letter-spacing: 0;
  color-scheme: light;
}
.pillar-signin__field::placeholder { color: #6e6a63; opacity: 1; }
.pillar-signin__field[aria-invalid="true"] { outline: 2px solid var(--signin-oxide); outline-offset: -3px; }
/* Keep saved email addresses legible on the filled field. */
.pillar-signin__field:is(:autofill, :-webkit-autofill) {
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  -webkit-text-fill-color: var(--signin-carbon);
  caret-color: var(--signin-carbon);
  box-shadow: 0 0 0 1000px var(--signin-paper) inset;
}
.pillar-signin__error { display: flex; align-items: baseline; gap: 10px; margin: 0; padding: 10px 14px; border-top: 1px solid var(--signin-line); color: #ffb3a8; font: 400 12px/18px var(--sans); }
.pillar-signin__error[hidden] { display: none; }
.pillar-signin__error-tag { flex: 0 0 auto; color: #ffb3a8; font: 400 11px/18px var(--signin-mono); letter-spacing: .05em; }
.pillar-signin__button {
  width: 100%;
  max-width: 100%;
  min-height: 48px;
  box-sizing: border-box;
  padding: 12px 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  background: var(--signin-oxide);
  color: var(--signin-paper);
  border: 0;
  border-left: 1px solid var(--signin-line);
  border-radius: 0;
  font: 400 14px/20px var(--sans);
  letter-spacing: 0;
  cursor: pointer;
}
.pillar-signin__button:not(.pillar-signin__button--secondary):hover { background: #b32c27; }
.pillar-signin__button:not(.pillar-signin__button--secondary):active { background: #87201c; }
.pillar-signin__button--secondary { width: auto; min-width: 140px; background: transparent; border: 1px solid var(--signin-line); }
.pillar-signin__button--secondary:hover { background: rgba(240,235,221,.08); }
.pillar-signin__status-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; padding: 0 14px 14px; }
.pillar-signin__change-email { color: var(--signin-paper); font: 400 12px/20px var(--sans); text-decoration: underline; text-decoration-color: rgba(240,235,221,.5); text-underline-offset: 4px; }
.pillar-signin__message { margin: 0; padding: 10px 14px; border-bottom: 1px solid var(--signin-line); color: var(--signin-paper); font: inherit; }
.pillar-signin__message--error { color: #ffb3a8; }
.pillar-signin .login-legal-notice { margin: 0; padding: 10px 14px; border-top: 1px solid var(--signin-line); color: var(--signin-paper); font: 400 11px/18px var(--sans); }
.pillar-signin .login-legal-notice a { color: inherit; text-decoration-color: rgba(240,235,221,.5); }
.pillar-signin__footer { position: relative; display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 20px; font: 400 11px/17px var(--signin-mono); letter-spacing: .035em; text-transform: uppercase; }
.pillar-signin__studio { margin: 0; display: flex; flex-wrap: wrap; gap: 12px; overflow-wrap: anywhere; }
.pillar-signin__studio-label { color: rgba(240,235,221,.86); }
.pillar-signin__legal-links { display: flex; flex-wrap: wrap; gap: 22px; }
.pillar-signin__legal-links a { color: var(--signin-paper); text-decoration: underline; text-underline-offset: 4px; text-decoration-color: rgba(240,235,221,.5); }
.pillar-signin :where(button, input[type="submit"], a):focus-visible { outline: 2px solid var(--signin-paper); outline-offset: 3px; }
.pillar-signin .pillar-signin__button:focus-visible { outline-offset: -4px; }
.pillar-signin .pillar-signin__field:focus-visible { outline: 2px solid var(--signin-carbon); outline-offset: -3px; }
.pillar-signin .pillar-signin__field[aria-invalid="true"]:focus-visible { outline-color: var(--signin-oxide); }
@media (max-width: 680px) {
  .pillar-signin { padding: 24px 20px; gap: 32px; }
  .pillar-signin__stage { padding: 96px 0 24px; }
  .pillar-signin__footer { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 480px) {
  .pillar-signin__content h1 { padding-inline: 12px; letter-spacing: .02em; }
  .pillar-signin__entry-row { grid-template-columns: minmax(0, 1fr); }
  .pillar-signin__entry-row .pillar-signin__button { border-left: 0; border-top: 1px solid var(--signin-line); }
  .pillar-signin__legal-links { gap: 18px; }
}
@media (max-height: 600px) {
  .pillar-signin { padding-top: 24px; }
  .pillar-signin__stage { padding-block: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .pillar-signin__slide { transition: none; }
}
