body { font-family: system-ui, sans-serif; background:#f6f7fb; margin:0; }
.card { max-width:900px; margin:40px auto; background:#fff; padding:24px; border-radius:12px; box-shadow:0 6px 24px rgba(0,0,0,.08); }
label { display:block; margin:12px 0; }
input, select { width:100%; padding:10px; border:1px solid #ccc; border-radius:8px; box-sizing:border-box; }
button { padding:10px 14px; border:0; border-radius:10px; background:#2563eb; color:#fff; font-weight:600; cursor:pointer; }
button.secondary { background:#111827; }
button:disabled { opacity:.7; cursor:not-allowed; }
.hidden { display:none; }
.muted { color:#6b7280; }
.error { color:#b91c1c; margin-top:12px; }
.ok { color:#166534; margin-top:12px; }
code { background:#f3f4f6; padding:2px 6px; border-radius:6px; }
.row { display:flex; gap:12px; flex-wrap:wrap; }
.col { flex:1 1 240px; }
hr { border:0; border-top:1px solid #e5e7eb; margin:18px 0; }
.table { width:100%; border-collapse: collapse; }
.table th, .table td { border-bottom:1px solid #e5e7eb; padding:8px; text-align:left; font-size:14px; }
.badge { padding:2px 8px; border-radius:999px; font-size:12px; display:inline-block; }
.badge.pending { background:#fef3c7; }
.badge.accepted { background:#dcfce7; }
.badge.rejected { background:#fee2e2; }
.badge.cancelled { background:#e5e7eb; }
.small { font-size:12px; }
