/* Rules tab */
.krt-cols { display: grid; grid-template-columns: minmax(240px, 320px) 1fr; gap: 16px; align-items: start; }
@media (max-width: 760px) { .krt-cols { grid-template-columns: 1fr; } }
.krt-versionline { margin: 4px 0; font: 700 15px var(--spi-ui, Arial, sans-serif); }
.krt-dirty { margin-left: 8px; padding: 2px 8px; background: var(--k-lime, #c9d277); border: 1px solid var(--k-ink, #262326); border-radius: 4px; font-size: 13px; }
.krt-status { min-height: 1.5em; font: 14px var(--spi-ui, Arial, sans-serif); color: var(--k-ink, #262326); }
.krt-elapsed { font-variant-numeric: tabular-nums; color: var(--k-muted, #535353); }
.krt-hint { margin: 4px 0; }
.krt-list, .krt-history, .krt-flist { list-style: none; margin: 0; padding: 0; }
.krt-item { display: flex; flex-direction: column; gap: 4px; padding: 6px 8px; border: 1px solid var(--k-field, #dce1d8); border-radius: 4px; margin-bottom: 6px; background: #fff; }
.krt-item.is-selected { border-color: var(--k-teal, #066a7a); box-shadow: inset 4px 0 0 var(--k-teal, #066a7a); }
.krt-pick { display: block; width: 100%; min-height: 40px; text-align: left; padding: 6px 8px; font: 700 14px var(--spi-ui, Arial, sans-serif); color: var(--k-ink, #262326); background: transparent; border: 0; cursor: pointer; overflow-wrap: anywhere; }
.krt-pick:focus-visible, .krt-wrap button:focus-visible { outline: 3px solid var(--k-teal, #066a7a); outline-offset: 2px; }
.krt-tools { display: flex; flex-wrap: wrap; gap: 6px; }
.krt-mini { min-height: 40px; }
.krt-counter.krt-warn, .krt-bodycount.krt-warn { color: #8a1f11; font-weight: 700; }
.krt-limit { margin: 4px 0; color: #8a1f11; font: 700 13px var(--spi-ui, Arial, sans-serif); }
textarea.krt-body { font: 14px/1.45 ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace; min-height: 380px; resize: vertical; tab-size: 4; }
textarea.krt-desc { min-height: 96px; resize: vertical; }
.krt-sid { margin: 0; }
.krt-findings.krt-dim .krt-group, .krt-findings.krt-dim .krt-none { opacity: .55; }
.krt-stale { margin: 4px 0 8px; padding: 6px 10px; background: var(--k-warm, #ece5dd); border-left: 4px solid #8a1f11; font: 700 13px var(--spi-ui, Arial, sans-serif); }
.krt-group { margin: 10px 0; }
.krt-group h4 { margin: 0 0 4px; font: 800 14px var(--spi-ui, Arial, sans-serif); }
.krt-finding { padding: 6px 0; border-bottom: 1px solid var(--k-field, #dce1d8); font: 14px var(--spi-ui, Arial, sans-serif); }
.krt-kind { display: inline-block; padding: 1px 8px; margin-right: 4px; background: var(--k-ink, #262326); color: var(--k-bg, #f4f4f0); border-radius: 3px; font: 700 12px var(--spi-ui, Arial, sans-serif); }
.krt-goto { margin-left: 8px; }
.krt-none { font: 700 15px var(--spi-ui, Arial, sans-serif); }
.krt-hrow { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--k-field, #dce1d8); font: 14px var(--spi-ui, Arial, sans-serif); }
.krt-viewer { margin-top: 12px; padding: 12px; border: 1px solid var(--k-rule, #777); background: #fff; max-height: 520px; overflow: auto; }
.krt-viewer h4, .krt-vsec h5 { margin: 0 0 6px; font: 800 14px var(--spi-ui, Arial, sans-serif); }
.krt-vbody { margin: 0 0 12px; white-space: pre-wrap; font: 13px/1.4 ui-monospace, Menlo, Consolas, monospace; }
