
* { box-sizing: border-box; }
.card { --dm-cut: var(--dm-cut-lg); --dm-fill: var(--card); padding: 1rem; margin-bottom: 1rem; }
label { display: block; font-weight: 600; margin: 0.75rem 0 0.25rem; }
input { width: 100%; font: inherit; padding: 0.6rem 0.7rem; color: inherit; border-radius: 0;
  --dm-cut: var(--dm-cut-sm); --dm-fill: var(--dm-surface); --dm-edge: var(--dm-border-strong); }
a:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
button { font: inherit; font-weight: 600; margin-top: 1rem; padding: 0.65rem 1rem; cursor: pointer;
  color: var(--accent-text); border-radius: 0; --dm-cut: var(--dm-cut-sm); --dm-fill: var(--accent);
  --dm-edge: var(--accent); }
button.secondary { color: var(--text); --dm-fill: transparent; --dm-edge: var(--dm-border-strong); }
button.danger { color: var(--dm-on-danger); --dm-fill: var(--danger); --dm-edge: var(--danger); }
button[disabled] { opacity: 0.6; cursor: progress; }
a { color: var(--accent); }
label.check { display: flex; align-items: center; gap: 0.5rem; font-weight: 400; margin-top: 1rem; cursor: pointer; }
label.check input { width: auto; margin: 0; }
.returning p { margin: 0 0 0.5rem; } .returning p:last-child { margin-bottom: 0; }
.welcome h2 { margin-top: 0; }
.welcome-actions { display: flex; flex-wrap: wrap; gap: 0 0.75rem; align-items: flex-start; }
.welcome-actions form button { margin-top: 0.25rem; }
.welcome-actions .status:empty { display: none; }
.status .link-button { margin: 0.5rem 0 0; display: block; }
.social-button { display: flex; align-items: center; justify-content: center; gap: 0.6rem; width: 100%;
  margin-top: 0; color: var(--dm-text); --dm-fill: var(--dm-surface-raised); --dm-edge: var(--dm-border-strong); }
.social-button + .social-button { margin-top: 0.6rem; }
.google-g, .discord-mark { flex: none; }
.social .status { margin-top: 0.5rem; min-height: 0; }
.divider { display: flex; align-items: center; gap: 0.75rem; color: var(--muted); margin: 1rem 0 0; }
.divider::before, .divider::after { content: ''; flex: 1; border-top: 1px solid var(--border); }
ul.methods { padding-left: 1.2rem; margin: 0.5rem 0; }
.hint, .muted { color: var(--muted); font-size: 0.9rem; }
.status { margin-top: 0.75rem; min-height: 1.5rem; }
.status:empty { min-height: 0; margin-top: 0; }
.status.error { color: var(--danger); }
.status.ok { color: var(--ok); }
ul.links { padding-left: 1.2rem; }
dl { margin: 0; } dt { font-weight: 600; } dd { margin: 0 0 0.6rem; overflow-wrap: anywhere; }
