.ab-form label { display: block; margin: 14px 0 6px; font-family: var(--font-sans); font-size: 0.9rem; font-weight: 600; }
.ab-form select, .ab-form input[type="text"], .ab-form input[type="number"] { width: 100%; box-sizing: border-box; padding: 9px 10px; border: 1px solid var(--rule); border-radius: 8px; background: var(--surface); color: var(--text); font: inherit; }
.ab-form input[type="number"] { width: 6rem; }
.ab-type { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 14px 0 0; }
.ab-type label { display: inline-flex; align-items: center; gap: 6px; margin: 0; font-weight: 400; }
.ab-rules { margin-top: 10px; font-size: 0.92rem; }
.ab-rules .facts { margin-top: 6px; }
.ab-note, .ab-src { margin: 8px 0 0; font-size: 0.85rem; color: var(--muted); }
.ab-count { margin: 6px 0 0; font-family: var(--font-sans); font-size: 0.85rem; color: var(--muted); text-align: right; }
.ab-count.near { color: var(--warning); }
.ab-count.over { color: var(--critical); font-weight: 600; }
.ab-row { display: flex; align-items: center; gap: 12px; }
.ab-row label { flex: 1; }
.ab-result { margin-top: 28px; }
.ab-summary { font-weight: 600; }
.ab-findings { padding-left: 1.2rem; }
.ab-findings li { margin: 0 0 12px; }
.ab-findings blockquote { margin: 6px 0; padding: 4px 10px; border-left: 3px solid var(--rule); color: var(--text-2); font-size: 0.9rem; }
.ab-kind { display: inline-block; margin-right: 6px; padding: 1px 8px; border-radius: 999px; background: var(--surface-alt); font-family: var(--font-sans); font-size: 0.78rem; }
.ab-marked { padding: 14px 16px; border: 1px solid var(--rule); border-radius: 10px; line-height: 1.65; overflow-wrap: anywhere; }
.ab-marked mark { padding: 0 2px; border-radius: 3px; background: rgba(255, 196, 0, 0.45); color: inherit; }
@media (max-width: 600px) { .ab-row { flex-direction: column; align-items: flex-start; gap: 4px; } }
.ab-rules .facts { display: grid; grid-template-columns: max-content 1fr; gap: 4px 16px; font-size: 0.92rem; }
.ab-rules .facts dt { color: var(--muted); }
.ab-rules .facts dd { margin: 0; }
.ab-row[hidden], #ab-tabletext-row[hidden] { display: none; }
.ab-type { border: 0; padding: 0; }
