body { font-family: -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; margin: 0; background: #f6f7f9; color: #1a1a1a; }
.nav { background: #1a1a2e; padding: 12px 20px; }
.nav a { color: #fff; text-decoration: none; margin-right: 16px; }
.nav a.right { float: right; margin-right: 0; opacity: 0.8; }
main { max-width: 1000px; margin: 24px auto; padding: 0 16px; }
.card { background: #fff; border-radius: 8px; padding: 16px 20px; margin-bottom: 16px; box-shadow: 0 1px 3px rgba(0,0,0,0.08); }
.card.narrow { max-width: 420px; }
table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 8px; overflow: hidden; }
th, td { text-align: left; padding: 8px 12px; border-bottom: 1px solid #eee; font-size: 14px; }
th { background: #eee; }
tr.status-ambiguous { background: #fff3cd; }
tr.status-failed { background: #fde2e1; }
tr.status-unmatched { color: #777; }
label { display: block; margin-bottom: 12px; font-size: 14px; }
label input, label textarea { display: block; width: 100%; padding: 8px; margin-top: 4px; box-sizing: border-box; }
label.checkbox { display: flex; align-items: center; gap: 8px; }
label.checkbox input { width: auto; }
button { background: #1a1a2e; color: #fff; border: none; padding: 8px 16px; border-radius: 6px; cursor: pointer; }
button.secondary { background: #999; }
.inline-form { display: inline; }
.muted { color: #777; font-size: 13px; margin: 0 12px; }
.flash { padding: 10px 14px; border-radius: 6px; margin-bottom: 12px; }
.flash-info { background: #d7f0d9; }
.flash-error { background: #fde2e1; }
h1 { font-size: 22px; }
h2 { font-size: 18px; margin-top: 28px; }
