:root { font-family: system-ui, sans-serif; color: #182b36; background: #f3f6f8; line-height: 1.6; }
body { margin: 0; padding: 6vh 1.25rem; }
main { max-width: 30rem; margin: auto; background: white; padding: 2.5rem; border: 1px solid #dce4e9; border-radius: 1rem; }
h1 { font-size: 1.7rem; line-height: 1.25; }
.brand { font-size: .75rem; font-weight: 700; letter-spacing: .12em; color: #326777; }
label { display: block; margin-top: 1rem; font-weight: 600; }
input { box-sizing: border-box; width: 100%; padding: .7rem; border: 1px solid #8b9da9; border-radius: .4rem; font: inherit; }
input[type=submit], button { margin-top: 1.25rem; padding: .7rem 1.1rem; color: white; background: #205965; border: 0; border-radius: .4rem; font: inherit; cursor: pointer; }
.secondary { background: #e6edf0 !important; color: #182b36 !important; }
.muted { color: #536773; font-size: .88rem; }
[role=alert] { color: #9d2323; }
