:root{--brand:#2563eb;--muted:#6b7280;--bg:#f8fafc}
*{box-sizing:border-box}
body{font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:#111;margin:0;font-size: 1rem;}
/*.container{max-width:640px;margin:32px auto;padding:20px}*/
.card{max-width:600px;margin:0 auto;background:#fff;border-radius:10px;box-shadow:0 6px 18px rgba(15,23,42,0.08);padding:24px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.form-group{margin-bottom:14px}
label{display:block;margin-bottom:6px;font-weight:600}
input[type="text"],input[type="email"],input[type="password"]{width:100%;padding:10px 12px;border:1px solid #e6eef8;border-radius:6px;font-size: .95rem;}
.btn{display:inline-block;background:var(--brand);color:#fff;padding:10px 14px;border-radius:6px;border:0;cursor:pointer;font-size: 1rem;}
.btn.secondary{background:#fff;color:var(--brand);border:1px solid var(--brand)}
.btn:hover{opacity:0.9}
.top-messages{margin-bottom:12px;padding:10px;border-radius:6px}
.error{background:#fff1f2;color:#7f1d1d;border:1px solid #fecaca}
.success{background:#ecfdf5;color:#065f46;border:1px solid #bbf7d0}
.muted{color:var(--muted);font-size:0.95rem}
.switch-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.account{display:flex;justify-content:space-between;align-items:center}
.site-footer{margin-top:18px;text-align:center;color:var(--muted);font-size:0.9rem}

/* utility */
.hidden{display:none !important}
.form-group .muted{
    display: flex;
    justify-content: flex-end;
    font-size: .9rem;
}
a.btn{
    text-decoration: none;
    text-align: center;
    padding: 8px 12px;
}

@media (max-width:800px){
  .grid{grid-template-columns:1fr}
}
