:root { --bg:#0f1115; --card:#181b22; --line:#262a33; --text:#e8e9ec; --muted:#8b909c; --accent:#f2a33a; --err:#ff6b6b; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, -apple-system, "Segoe UI", sans-serif; background:var(--bg); color:var(--text); }
.muted { color:var(--muted); }
.card { background:var(--card); border:1px solid var(--line); border-radius:12px; padding:24px; }
.login { min-height:100vh; display:grid; place-items:center; padding:16px; }
.login form { width:100%; max-width:360px; display:flex; flex-direction:column; gap:14px; }
.login h1 { margin:0; color:var(--accent); }
label { display:flex; flex-direction:column; gap:6px; font-size:14px; }
input { padding:10px 12px; border-radius:8px; border:1px solid var(--line); background:#0c0e12; color:var(--text); font-size:15px; }
button { padding:11px; border:0; border-radius:8px; background:var(--accent); color:#111; font-weight:600; cursor:pointer; }
button.link { background:none; color:var(--muted); padding:0; font-weight:400; }
.error { color:var(--err); margin:0; }
.topbar { display:flex; align-items:center; gap:16px; padding:16px 24px; border-bottom:1px solid var(--line); }
.topbar strong { color:var(--accent); font-size:18px; }
.topbar form { margin-left:auto; }
.grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:16px; padding:24px; }
.grid h2 { margin:0 0 6px; font-size:18px; }
.soon { display:inline-block; margin:8px 0 0; padding:4px 10px; border-radius:99px; background:#2a2416; color:var(--accent); font-size:12px; }
