:root{--bg:#f3f1ea;--panel:#ffffff;--ink:#2a2d24;--soft:#6d705f;--rule:#d9d5c4;--leaf:#3d4a2b;--leaf-ink:#f7f4e6;--gold:#c9b458;--warn:#8a3b1f;--warn-bg:#f6e8df}
@media (prefers-color-scheme:dark){:root{--bg:#1b1d17;--panel:#23261e;--ink:#ecebe2;--soft:#a3a592;--rule:#3a3e31;--leaf:#a9bb7f;--leaf-ink:#1b1d17;--gold:#c9b458;--warn:#f0b79c;--warn-bg:#3b261d}}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font:15px/1.6 "Iowan Old Style","Palatino Linotype",Georgia,serif}
.page{max-width:440px;margin:0 auto;padding:40px 16px 32px;min-height:100vh;display:flex;flex-direction:column}
header{margin-bottom:48px}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:18px;letter-spacing:.02em}
main{flex:1}
h1{font-weight:400;font-size:30px;line-height:1.2;margin:0 0 8px}
.lead{color:var(--soft);margin:0 0 28px}
.lead a{color:var(--leaf)}
.notice{background:var(--warn-bg);color:var(--warn);border-left:3px solid var(--warn);padding:10px 12px;margin:0 0 20px;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
form{background:var(--panel);border:1px solid var(--rule);padding:24px 22px}
.field{margin-bottom:18px}
label{display:block;font:600 12px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--soft);margin-bottom:6px}
input{width:100%;font:16px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--rule);padding:8px 0;border-radius:0}
input:focus{outline:none;border-bottom:2px solid var(--leaf);padding-bottom:7px}
button{font:600 15px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--leaf-ink);background:var(--leaf);border:0;padding:12px 22px;cursor:pointer;margin-top:6px}
button:hover{filter:brightness(1.1)}
.help{color:var(--soft);font-size:13px;margin-top:16px}
footer{color:var(--soft);font-size:12px;border-top:1px solid var(--rule);padding-top:12px;margin-top:40px}
