* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; display: grid; place-items: center; background: #14171d; color: #e8e2d6;
       font-family: ui-sans-serif, system-ui, sans-serif; }
main { width: min(360px, 100% - 32px); text-align: center; }
.brand-icon { display: block; margin: 0 auto 20px; }
h1 { letter-spacing: .3em; color: #d4581f; }
form { display: flex; flex-direction: column; gap: 12px; margin-top: 16px; }
input, button { min-height: 48px; border-radius: 12px; font-size: 16px; padding: 0 14px; }
input { border: 1px solid #3a434f; background: #1f242c; color: inherit; }
button { border: 0; background: #d4581f; color: #fff; font-weight: 700; cursor: pointer; }
button:disabled { opacity: .5; }
#error { color: #ff8a80; min-height: 1.2em; }
