body { min-height: 100vh; display: grid; place-items: center; padding: var(--vayen-space-4); background: var(--vayen-color-canvas); }
main { width: min(28rem, 100%); padding: clamp(var(--vayen-space-6), 6vw, var(--vayen-space-10)); border: 1px solid var(--vayen-color-border); border-radius: var(--vayen-radius-xl); background: var(--vayen-color-surface); box-shadow: var(--vayen-shadow-md); }
.auth-brand { display: grid; margin-bottom: var(--vayen-space-10); }
.tenant-platform-logo { display: block; width: min(11rem, 58vw); height: auto; }
.auth-brand small, .auth-intro { color: var(--vayen-color-text-muted); }
h1 { margin: 0; font-size: clamp(1.65rem, 5vw, 2.15rem); letter-spacing: -.04em; }
h2 { margin: var(--vayen-space-6) 0 0; }
.auth-intro { margin: var(--vayen-space-2) 0 var(--vayen-space-6); }
form, label { display: grid; gap: var(--vayen-space-2); }
form { gap: var(--vayen-space-4); }
input { width: 100%; min-height: 2.75rem; padding: var(--vayen-space-3); }
.check { display: flex; align-items: center; font-weight: 400; }
.check input { width: 1rem; min-height: 1rem; accent-color: var(--vayen-color-accent); }
.link { margin-top: var(--vayen-space-4); padding: var(--vayen-space-2) 0; border: 0; background: none; color: var(--vayen-color-accent); cursor: pointer; }
#melding { min-height: 1.25rem; color: var(--vayen-color-danger); font-size: var(--vayen-font-size-sm); }
