:root{
  --paper:#F1ECE1;
  --paper-2:#FBF8F1;
  --paper-line:#E2DACA;
  --ink:#20293B;
  --ink-soft:#4B5468;
  --ink-faint:#8A8676;
  --seal:#B4362A;
  --seal-deep:#8E2A20;
}
*{box-sizing:border-box;}
body{
  margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;
  background:var(--paper);color:var(--ink);
  font-family:"Golos Text",system-ui,sans-serif;font-size:16px;line-height:1.5;
}
.auth-wrap{width:100%;padding:24px;}
.auth-card{
  max-width:380px;margin:0 auto;background:var(--paper-2);border:1px solid var(--paper-line);
  border-radius:14px;padding:32px 28px;display:flex;flex-direction:column;gap:4px;
  box-shadow:0 10px 30px -18px rgba(32,41,59,.35);
}
.auth-eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--seal);font-weight:600;margin-bottom:10px;}
h1{font-size:22px;margin:0 0 6px;}
.auth-sub{color:var(--ink-soft);font-size:13.5px;margin:0 0 18px;}
label{font-size:12.5px;font-weight:600;color:var(--ink-soft);margin-top:12px;}
input{
  margin-top:6px;padding:10px 12px;border:1px solid var(--paper-line);border-radius:8px;
  background:var(--paper);color:var(--ink);font-size:15px;font-family:inherit;
}
input:focus-visible{outline:2px solid var(--seal);outline-offset:1px;}
button{
  margin-top:20px;padding:11px 14px;border:none;border-radius:8px;background:var(--seal);
  color:#fff;font-weight:600;font-size:15px;cursor:pointer;transition:background .15s;
}
button:hover{background:var(--seal-deep);}
button:disabled{opacity:.6;cursor:not-allowed;}
.auth-error{color:var(--seal-deep);font-size:13.5px;margin:10px 0 0;}
.auth-switch{font-size:13.5px;color:var(--ink-soft);margin:16px 0 0;text-align:center;}
.auth-switch a{color:var(--seal-deep);}
