body { font-family: system-ui, sans-serif; color: #1a1b23; margin: 0; }
main { max-width: 56rem; margin: 2rem auto; padding: 0 1rem; }
a { color: #2f5dff; }
.urlform { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.urlform label { width: 100%; font-weight: 600; }
.urlform input { flex: 1; min-width: 14rem; padding: .6rem; font-size: 1rem; }
button { padding: .6rem 1.2rem; font-size: 1rem; background: #2f5dff; color: #fff; border: 0; border-radius: 4px; cursor: pointer; }
.error { color: #b00020; }
.note { background: #fff7e0; padding: .75rem; border-radius: 4px; }
.score { display: flex; gap: 1rem; align-items: center; background: #f2f4fa; padding: 1rem; border-radius: 6px; }
.score strong { font-size: 2.5rem; }
table { width: 100%; border-collapse: collapse; margin-bottom: 1rem; }
th, td { text-align: left; padding: .5rem; border-bottom: 1px solid #ddd; vertical-align: top; }
td:last-child { width: 9rem; }
tr.ok { background: #e8f6ea; }
tr.warn { background: #fff4d6; }
tr.fail { background: #fde8e8; }
tr.manual { background: #f1f1f1; }
.badge { font-weight: 600; }
.badge.ok { color: #14692a; }
.badge.warn { color: #8a5a00; }
.badge.fail { color: #b00020; }
.badge.manual { color: #555; }
@media print { .urlform, .noprint { display: none; } }
