:root { --bg:#0f1720; --card:#16212e; --fg:#e7eef6; --muted:#90a2b5; --accent:#2f9e6e; --err:#e25555; --line:#243240; }
* { box-sizing: border-box; }
body { margin:0; font-family: Vazirmatn, Tahoma, sans-serif; background:var(--bg); color:var(--fg); line-height:1.7; }
.container { width:min(820px,92%); margin-inline:auto; }
.topbar { background:var(--card); border-bottom:1px solid var(--line); padding:14px 0; }
.topbar .container { display:flex; justify-content:space-between; align-items:center; }
.brand { font-weight:700; }
nav a { color:var(--muted); margin-inline-start:16px; text-decoration:none; }
nav a:hover { color:var(--fg); }
.card { background:var(--card); border:1px solid var(--line); border-radius:14px; padding:22px; margin:20px 0; }
.card.narrow { max-width:420px; margin-inline:auto; }
h1 { font-size:1.5rem; margin-top:0; } h2 { font-size:1.15rem; }
.muted { color:var(--muted); }
.form { display:flex; flex-direction:column; gap:14px; max-width:420px; }
.form label { display:flex; flex-direction:column; gap:6px; font-size:.95rem; }
input[type=text], input[type=password], input:not([type]), input[name] {
  background:#0c141d; border:1px solid var(--line); color:var(--fg); padding:11px; border-radius:9px; font-size:1rem; }
button { background:var(--accent); color:#fff; border:0; padding:12px 18px; border-radius:9px; font-size:1rem; cursor:pointer; }
button:hover { filter:brightness(1.08); }
.alert { padding:12px 14px; border-radius:9px; margin:14px 0; }
.alert.error { background:rgba(226,85,85,.12); border:1px solid var(--err); color:#ffb4b4; }
.alert.info { background:rgba(47,158,110,.12); border:1px solid var(--accent); }
.badge { background:var(--accent); color:#fff; padding:2px 10px; border-radius:20px; font-size:.85rem; }
.table { width:100%; border-collapse:collapse; margin-top:10px; font-size:.92rem; }
.table th, .table td { text-align:right; padding:9px; border-bottom:1px solid var(--line); }
.sub-box { display:flex; gap:8px; align-items:center; background:#0c141d; border:1px solid var(--line);
  border-radius:9px; padding:10px; margin:12px 0; overflow:auto; }
.sub-box code { direction:ltr; white-space:nowrap; }
.qr { text-align:center; margin:16px 0; } .qr img { background:#fff; padding:8px; border-radius:8px; }
.guide { color:var(--muted); } .guide strong { color:var(--fg); }
.stats { display:flex; flex-wrap:wrap; gap:14px; }
.stat { background:#0c141d; border:1px solid var(--line); border-radius:11px; padding:14px 20px; text-align:center; }
.stat b { display:block; font-size:1.5rem; color:var(--accent); } .stat span { color:var(--muted); font-size:.85rem; }
.row-between { display:flex; justify-content:space-between; align-items:center; }
.check { flex-direction:row; align-items:center; gap:8px; }
footer { padding:24px 0; text-align:center; }
