.page { max-width: 960px; margin: 0 auto; padding: 16px; font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial; }
.topbar { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.topbar h1 { font-size: 20px; margin: 0; }
.btn { padding:8px 12px; border-radius:10px; border:0; cursor:pointer; text-decoration:none; background:#111827; color:#fff; }
.btn.primary { background:#0f766e; }
.card { background:#fff; border:1px solid #eee; border-radius:12px; padding:14px; margin-bottom:14px; box-shadow:0 6px 18px rgba(0,0,0,.06); }
.card h3 { margin:0 0 10px; font-size:16px; }
.tabs { display:flex; gap:8px; margin-bottom:10px; }
.tab { padding:8px 12px; border-radius:10px; border:1px solid #e5e7eb; background:#f9fafb; cursor:pointer; }
.tab.active { background:#eef2ff; border-color:#c7d2fe; }
.toolbar { margin-bottom:8px; }
.toolbar input { padding:8px 10px; border:1px solid #ddd; border-radius:10px; min-width:260px; }
.row { display:flex; gap:8px; flex-wrap:wrap; }
input[type="text"], input[type="number"] { padding:9px 10px; border:1px solid #ddd; border-radius:9px; }
.error { color:#b91c1c; font-size:13px; margin-top:8px; }
.hint { color:#6b7280; font-size:12px; margin-top:8px; }
.table-wrap { overflow:auto; }
table.table { width:100%; border-collapse: collapse; }
table.table th, table.table td { padding:10px; border-bottom:1px solid #f0f0f0; text-align:left; }
.pager { display:flex; gap:6px; justify-content:flex-end; padding-top:8px; }
.pager button { padding:6px 10px; border-radius:8px; border:1px solid #e5e7eb; background:#f9fafb; cursor:pointer; }
.pager button.active { background:#eef2ff; border-color:#c7d2fe; }
.badge { display:inline-block; padding:4px 8px; border-radius:999px; font-size:12px; }
.badge.pending { background:#fef3c7; color:#92400e; }
.badge.eligible { background:#dcfce7; color:#14532d; }

