.wanderbird-auth {
  margin: 0;
  background: var(--ui-color-bg);
  color: var(--ui-color-text);
  font-family: var(--ui-font-family);
  font-size: 1rem;
  line-height: 1.5;
  color-scheme: light;
}
:root[data-theme="dark"] .wanderbird-auth,
body.wanderbird-auth.dark-mode { color-scheme: dark; }
.wanderbird-auth *, .wanderbird-auth *::before, .wanderbird-auth *::after { box-sizing: border-box; }
.wanderbird-auth__main { width: min(100%, 36rem); margin: 0 auto; padding: 32px 16px 0; }
.wanderbird-auth__brand { width: min(100%, 340px); margin: 0 auto 24px; padding: 16px; border-radius: 6px; background: #fff; }
.wanderbird-auth__brand img { display: block; width: 100%; height: auto; }
.wanderbird-auth .auth-page { padding: 0; }
.wanderbird-auth .auth-card { flex-basis: auto; padding: 24px; border-radius: 8px; }
.wanderbird-auth .auth-card h2 { font-size: 28px; }
.wanderbird-auth .auth-form__group { font-size: 1rem; }
.wanderbird-auth input:not([type="hidden"]):not([type="checkbox"]),
.wanderbird-auth select, .wanderbird-auth textarea { min-height: 44px; width: 100%; font: inherit; color: var(--ui-color-text); background: var(--ui-color-surface); border: 1px solid var(--ui-color-border); border-radius: 6px; padding: 8px 12px; }
.wanderbird-auth button { min-height: 44px; font: inherit; }
.wanderbird-auth a { color: var(--ui-color-primary-strong); text-underline-offset: 3px; }
.wanderbird-auth :focus-visible { outline: 2px solid var(--ui-color-primary); outline-offset: 3px; }
.wanderbird-auth ::selection { background: var(--ui-color-primary-strong); color: var(--ui-color-on-primary); }
.wanderbird-auth__footer { width: min(100%, 36rem); padding: 16px; margin: 0 auto; }
.wanderbird-auth__powered { display: flex; align-items: center; justify-content: center; min-height: 44px; color: var(--ui-color-text); }
.wanderbird-auth__powered svg { max-width: 100%; }
.wanderbird-auth__legal, .wanderbird-auth__actions { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.wanderbird-auth__legal { justify-content: center; }
.wanderbird-auth__legal a, .wanderbird-auth__logout { display: inline-flex; min-height: 44px; align-items: center; }
.wanderbird-admission { padding: 24px; border: 1px solid var(--ui-color-border); border-radius: 8px; background: var(--ui-color-surface); overflow-wrap: anywhere; }
.wanderbird-admission h1 { margin: 0 0 16px; font-size: 28px; line-height: 1.2; }
.wanderbird-admission p { margin: 0 0 16px; }
.wanderbird-auth a.wanderbird-auth__button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 16px; border: 1px solid var(--ui-color-primary-strong); border-radius: 6px; background: var(--ui-color-primary-strong); color: var(--ui-color-on-primary); text-decoration: none; }
.wanderbird-auth__button:hover { background: var(--ui-color-primary); }
.wanderbird-auth a.wanderbird-auth__button--secondary { color: var(--ui-color-primary-strong); background: transparent; }
.wanderbird-auth__button--secondary:hover { background: var(--ui-color-surface-hover); }
@media (max-width: 480px) {
  .wanderbird-auth__main { padding-top: 16px; }
  .wanderbird-auth .auth-card, .wanderbird-admission { padding: 16px; }
}
