/* Standalone account confirmation, using the site's shared theme and components. */
.email-confirm-page { margin: 0; min-height: 100vh; min-height: 100svh; display: grid; align-items: start; justify-items: center; padding: 72px 16px 32px; box-sizing: border-box; }
.email-confirm-page *, .email-confirm-page *::before, .email-confirm-page *::after { box-sizing: border-box; }
.email-confirm-shell { width: 100%; max-width: 440px; }
.email-confirm-brand { display: flex; justify-content: center; width: fit-content; margin: 0 auto 32px; border-radius: var(--oz-radius-sm); }
.email-confirm-brand img { display: block; width: 160px; height: 44px; object-fit: contain; }
.email-confirm-card { padding: 32px; text-align: center; background: rgb(var(--oz-surface)); }
.email-confirm-icon { display: grid; place-items: center; width: 56px; height: 56px; margin: 0 auto 24px; border-radius: var(--oz-radius-lg); background: rgb(var(--oz-raised)); color: rgb(var(--oz-muted)); border: 1px solid rgb(var(--oz-border)); }
.email-confirm-icon--success { color: rgb(var(--oz-positive)); }
.email-confirm-card h1 { font-size: 24px; line-height: 1.25; text-wrap: balance; }
.email-confirm-copy { margin: 14px 0 28px; color: rgb(var(--oz-muted)); font-size: 14px; line-height: 1.65; overflow-wrap: anywhere; }
.email-confirm-action { width: 100%; min-height: 44px; }
.email-confirm-note { margin: 20px 0 0; color: rgb(var(--oz-muted)); font-size: 12px; line-height: 1.65; }
.email-confirm-footer { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 24px; color: rgb(var(--oz-subtle)); font-size: 12px; line-height: 1.6; }
.email-confirm-footer a { color: rgb(var(--oz-muted)); text-decoration: none; }
.email-confirm-footer a:hover { color: rgb(var(--oz-ink)); text-decoration: underline; text-underline-offset: 4px; }
.email-confirm-footer a:focus-visible, .email-confirm-brand:focus-visible { outline: 2px solid rgb(var(--oz-accent-text)); outline-offset: 5px; }
@media (max-width: 480px) {
  .email-confirm-card { padding: 28px 22px; }
  .email-confirm-card h1 { font-size: 22px; }
}

/* Match /login: 48px layout offset plus responsive account spacing. */
@media (min-width: 640px) {
  .email-confirm-page { padding-top: 88px; }
}
@media (min-width: 768px) {
  .email-confirm-page { padding-top: 104px; }
}
