:root { --ink:#1c1c1c; --acid:#cdec5a; --line:#e6e6e2; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, sans-serif; color: var(--ink); background:#f6f6f3; }
.auth { display:flex; min-height:100vh; align-items:center; justify-content:center; }
.auth-card { display:flex; flex-direction:column; gap:12px; width:320px; padding:32px;
  background:#fff; border:1px solid var(--line); border-radius:16px; }
.auth-card h1 { margin:0 0 8px; font-size:20px; }
.auth-card input { padding:11px 13px; border:1px solid var(--line); border-radius:10px; font-size:15px; }
.auth-card button { padding:12px; border:0; border-radius:10px; background:var(--ink); color:#fff;
  font-weight:700; cursor:pointer; }
.auth-err { color:#c0392b; font-size:14px; margin:0; }
.dash-top { display:flex; justify-content:space-between; align-items:center;
  padding:16px 24px; background:#fff; border-bottom:1px solid var(--line); }
.dash-top button { border:1px solid var(--line); background:#fff; border-radius:8px;
  padding:7px 14px; cursor:pointer; }
.dash-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:18px; padding:28px; max-width:900px; }
.dash-card { display:block; padding:24px; background:#fff; border:1px solid var(--line);
  border-radius:14px; text-decoration:none; color:inherit; transition:border-color .2s; }
.dash-card:hover { border-color: var(--acid); }
.dash-card h2 { margin:0 0 6px; font-size:18px; }
.dash-card p { margin:0; color:#999; font-size:13px; }
