/* Sign-in and one-time link pages. Same type and palette as style.css. */
:root{
  --paper:#ffffff;
  --ink:#000000;
  --grey:#666666;
  --stone:#eeede9;
  --rule:#d4d4d4;
  --error:#a8201a;
  --serif:'Spectral', Georgia, serif;
  --sans:'Josefin Sans', 'Futura', system-ui, sans-serif;
}
*{box-sizing:border-box;}
body{
  margin:0; min-height:100vh; display:flex; align-items:center; justify-content:center;
  background:var(--stone); color:var(--ink); font-family:var(--serif); font-size:17px; line-height:1.5;
  padding:16px;
}
main{background:var(--paper); width:100%; max-width:420px; padding:36px 32px;}
h1{font-family:var(--sans); font-weight:600; font-size:15px; letter-spacing:.14em; text-transform:uppercase; margin:0 0 20px;}
p{margin:0 0 16px;}
.muted{color:var(--grey); font-size:15px;}
.error{color:var(--error);}
label{display:block; font-family:var(--sans); font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:var(--grey); margin-bottom:6px;}
input{width:100%; font:inherit; padding:10px 12px; border:1px solid var(--rule); border-radius:0; margin-bottom:16px; background:var(--paper);}
button{
  width:100%; font-family:var(--sans); font-weight:600; font-size:14px; letter-spacing:.12em; text-transform:uppercase;
  padding:14px; border:0; border-radius:0; background:var(--ink); color:var(--paper); cursor:pointer;
}
button:disabled{opacity:.4; cursor:default;}
button + .muted, form + .muted{margin-top:14px;}
#email-status{margin-top:12px;}
button:focus-visible, input:focus-visible{outline:2px solid var(--ink); outline-offset:2px;}
a{color:inherit;}
[hidden]{display:none !important;}
