:root{
  --bg:#f6f7fb;
  --card:#ffffff;
  --text:#111827;
  --muted:#6b7280;
  --border:#e5e7eb;
  --primary:#111827;
  --primaryText:#ffffff;
  --radius:14px;
}

*{ box-sizing:border-box; }
body{ margin:0; font-family:Arial, sans-serif; background:var(--bg); color:var(--text); }

a{ color:inherit; }
.container{ max-width:1100px; margin:0 auto; padding:18px; }

.topbar{
  background:var(--card);
  border-bottom:1px solid var(--border);
}
.nav{
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
}
.nav-left, .nav-right{ display:flex; gap:12px; align-items:center; flex-wrap:wrap; }

.brand{ font-weight:700; text-decoration:none; }
.link{ text-decoration:none; color:var(--text); opacity:.85; }
.link:hover{ opacity:1; }

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:10px;
  text-decoration:none;
  border:1px solid var(--border);
  background:var(--card);
  cursor:pointer;
}
.btn-primary{
  background:var(--primary);
  color:var(--primaryText);
  border-color:var(--primary);
}
.btn:hover{ filter:brightness(.98); }

.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:16px;
}
.card + .card{ margin-top:14px; }

.grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
}

.badge{
  display:inline-block;
  padding:4px 10px;
  border-radius:999px;
  background:#f3f4f6;
  border:1px solid var(--border);
  font-size:12px;
  color:var(--muted);
}

.muted{ color:var(--muted); font-size:14px; }

input, textarea, select{
  width:100%;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:10px;
  background:#fff;
  outline:none;
}
label{ display:block; margin:12px 0 6px; }

table{ width:100%; border-collapse:collapse; }
th, td{ padding:10px; border-bottom:1px solid var(--border); text-align:left; vertical-align:top; }

.footer{
  padding:24px 0;
  text-align:center;
  color:var(--muted);
  font-size:14px;
}
