:root{
  --bg:#fbf8f3;--surface:#fff;--sand:#f3ece1;--ink:#1e2a32;--soft:#5d6b76;
  --line:#e4dacb;--accent:#b0512a;--accent-s:#f6e7de;--deep:#134b5f;
  --serif:Georgia,'Iowan Old Style','Times New Roman',serif;
  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font:16.5px/1.7 var(--sans);-webkit-font-smoothing:antialiased}
.wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;
  padding:34px 32px;width:100%;max-width:400px;box-shadow:0 8px 28px rgba(30,42,50,.08)}
.kicker{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);
  margin:0 0 6px}
h1{font:600 34px/1.1 var(--serif);margin:0 0 4px;letter-spacing:-.4px}
.auth{font:italic 15px var(--serif);color:var(--soft);margin:0 0 24px}
.fields{display:flex;flex-direction:column;gap:13px;margin-bottom:20px}
label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--soft)}
input{padding:10px 12px;border:1px solid var(--line);border-radius:8px;
  font:16px var(--sans);color:var(--ink);background:#fff}
input:focus{outline:2px solid var(--accent-s);border-color:var(--accent)}
button{width:100%;background:var(--accent);color:#fff;border:0;border-radius:8px;
  padding:12px;font:600 15px var(--sans);cursor:pointer}
button:hover{background:#9c4724}
button:disabled{opacity:.6;cursor:default}
.err{min-height:20px;margin:12px 0 0;color:#b0402a;font-size:14px}
.note{margin:14px 0 0;font-size:12.5px;color:var(--soft);line-height:1.55}
.note a{color:var(--accent)}
.ok{margin:12px 0 0;color:var(--deep);font-size:14px}
[hidden]{display:none!important}
