/* Practical organisation and one-time setup share the invitation's design. */
.admin-login { max-width: 520px; }
.admin-actions form { margin: 0; }
.admin table { width: 100%; text-align: left; }
.admin td { border-top: 1px solid var(--border); }
.admin tbody tr:nth-child(even) { background: var(--background); }
.admin-setup { max-width: 820px; }
.admin-setup h2 { font-size: 24px; letter-spacing: -.03em; margin-bottom: 22px; }
.admin-setup fieldset + fieldset { margin-top: 32px; padding-top: 32px; border-top: 1px solid var(--border); }
.admin-setup legend { padding: 0 0 20px; font-size: 21px; font-weight: 600; letter-spacing: -.03em; }
.admin-setup select { width: 100%; min-height: 50px; padding: 12px 13px; border: 1px solid var(--input); border-radius: 3px; background: var(--card); color: var(--foreground); font: inherit; }
.admin-setup .small { margin: 0 0 24px; }
.admin-login .button { min-width: 160px; }
.admin-mail-notice { color: var(--link); font-size: 14px; }
.admin-testmail { margin: 0 0 28px; padding: 20px 0; border-block: 1px solid var(--border); }
.admin-testmail .small { margin: 15px 0; }
@media (max-width: 767px) {
  .admin-login { margin-inline: 0; }
  .admin-login .button, .admin-setup .button { width: 100%; }
  .admin-actions form { display: flex; flex: 1; }
  .admin-actions form .button { width: 100%; }
}
