.consistency-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(300px, .8fr); gap: 18px; }
.consistency-hero { grid-column: 1 / -1; }
.consistency-hero .dochead { align-items: center; }
.consistency-primary-action { flex: none; display: grid; justify-items: stretch; gap: 6px; min-width: min(350px, 100%); }
.consistency-primary-action > span { color: var(--accent-deep); font-size: 10.5px; font-weight: 850; letter-spacing: .12em; text-align: center; }
#consistencyRunButton {
  min-height: 58px;
  padding: 14px 24px;
  border: 2px solid var(--accent-deep);
  border-radius: 12px;
  background: linear-gradient(135deg, var(--accent-deep), var(--accent));
  color: #fff;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--accent) 30%, transparent);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.25;
  cursor: pointer;
  transition: transform .16s ease, box-shadow .16s ease, filter .16s ease;
}
#consistencyRunButton:not(:disabled):hover {
  transform: translateY(-2px);
  box-shadow: 0 11px 26px color-mix(in srgb, var(--accent) 38%, transparent);
  filter: saturate(1.12);
}
#consistencyRunButton:not(:disabled):focus-visible {
  outline: 4px solid color-mix(in srgb, var(--accent) 28%, transparent);
  outline-offset: 3px;
}
#consistencyRunButton:disabled {
  border-color: var(--border);
  background: var(--surface-2);
  color: var(--muted);
  box-shadow: none;
  cursor: not-allowed;
}
.consistency-explainer { margin-top: 14px; padding: 12px 14px; border-left: 4px solid var(--accent); border-radius: 8px; background: var(--accent-soft); display: grid; gap: 3px; }
.consistency-explainer span { color: var(--muted); font-size: 13px; }
.consistency-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 10px; margin-top: 16px; }
.consistency-summary > div { padding: 13px; border: 1px solid var(--border-soft); border-radius: 10px; background: var(--surface); display: grid; gap: 3px; }
.consistency-summary strong { color: var(--accent-deep); font-size: 24px; }
.consistency-summary span { color: var(--muted); font-size: 12px; }
.consistency-stages { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.consistency-stages li { display: flex; gap: 10px; align-items: center; padding: 10px; border: 1px solid var(--border-soft); border-radius: 9px; }
.consistency-stages li > span { width: 28px; height: 28px; border-radius: 50%; background: var(--surface-2); display: grid; place-items: center; font-weight: 800; }
.consistency-stages li > div { display: grid; gap: 2px; }
.consistency-stages small { color: var(--muted); }
.consistency-stages li.running { border-color: var(--accent); background: var(--accent-soft); }
.consistency-stages li.running > span { background: var(--accent); color: white; }
.consistency-stages li.completed > span { background: var(--success); color: white; }
.consistency-inventory { display: grid; gap: 9px; }
.consistency-inventory details { border: 1px solid var(--border-soft); border-radius: 9px; overflow: hidden; }
.consistency-inventory summary { padding: 11px 13px; cursor: pointer; font-weight: 750; display: flex; justify-content: space-between; }
.consistency-inventory details > div { border-top: 1px solid var(--border-soft); max-height: 330px; overflow: auto; }
.consistency-inventory-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 3px 10px; padding: 9px 13px; border-bottom: 1px solid var(--border-soft); }
.consistency-inventory-row:last-child { border-bottom: 0; }
.consistency-inventory-row strong { overflow-wrap: anywhere; }
.consistency-inventory-row span, .consistency-inventory-row small { color: var(--muted); font-size: 12px; }
.consistency-inventory-row small { grid-column: 1 / -1; }
.consistency-filters { display: flex; flex-wrap: wrap; gap: 7px; }
.consistency-filters button.active { border-color: var(--accent); background: var(--accent-soft); color: var(--accent-deep); }
.consistency-filters button span { margin-left: 5px; opacity: .7; }
.consistency-results { margin-top: 14px; display: grid; gap: 12px; }
.consistency-inventory-section > summary { align-items: center; gap: 12px; background: var(--surface); }
.consistency-inventory-section > summary > span { display: grid; gap: 3px; min-width: 0; }
.consistency-inventory-section > summary small { color: var(--muted); font-size: 11px; font-weight: 500; }
.consistency-inventory-section > summary > b { min-width: 30px; padding: 4px 8px; border-radius: 999px; background: var(--surface-2); color: var(--accent-deep); text-align: center; }
.consistency-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 10px; max-height: 520px !important; padding: 10px; background: var(--surface-2); }
.consistency-data-card { min-width: 0; padding: 13px; border: 1px solid var(--border-soft); border-radius: 10px; background: var(--surface); display: grid; align-content: start; gap: 9px; }
.consistency-data-card h4, .consistency-data-card p, .consistency-data-card blockquote { margin: 0; overflow-wrap: anywhere; }
.consistency-data-card h4 { font-size: 16px; }
.consistency-data-card p { color: var(--muted); font-size: 12px; line-height: 1.45; }
.consistency-data-card-head { display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 10px; font-weight: 750; text-transform: uppercase; letter-spacing: .05em; }
.consistency-form-list { display: flex; flex-wrap: wrap; gap: 5px; }
.consistency-form-list > span { padding: 4px 7px; border: 1px solid var(--border-soft); border-radius: 999px; background: var(--surface-2); font-size: 11px; }
.consistency-form-list > span.inflected { border-color: color-mix(in srgb, var(--accent) 30%, var(--border-soft)); background: var(--accent-soft); }
.consistency-form-list small { color: var(--muted); }
.consistency-card-evidence { border-top: 1px solid var(--border-soft); padding-top: 7px; }
.consistency-card-evidence > summary { padding: 0; color: var(--accent-deep); font-size: 11px; }
.consistency-card-evidence > div { max-height: 260px !important; margin-top: 8px; border: 0 !important; }
.consistency-claim { color: var(--text) !important; font-size: 13px !important; }
.consistency-qualifiers { padding: 6px 8px; border-radius: 7px; background: var(--surface-2); color: var(--muted); font-size: 11px; }
.consistency-data-card blockquote { padding: 8px 10px; border-left: 3px solid var(--accent); background: var(--accent-soft); color: var(--text); font-size: 12px; line-height: 1.45; }
.consistency-contradiction, .consistency-editorial-action, .consistency-editorial-question { margin-top: 10px; padding: 11px 12px; border-radius: 9px; display: grid; gap: 4px; }
.consistency-contradiction { border: 1px solid color-mix(in srgb, var(--danger) 35%, var(--border-soft)); background: color-mix(in srgb, var(--danger) 7%, var(--surface)); }
.consistency-editorial-action { border-left: 4px solid var(--accent); background: var(--accent-soft); }
.consistency-editorial-question { border: 1px solid var(--border-soft); background: var(--surface-2); }
.consistency-contradiction p, .consistency-editorial-action p, .consistency-editorial-question p { margin: 0; line-height: 1.5; }
.consistency-evidence-warning { margin-top: 10px; padding: 9px 11px; border-radius: 8px; background: color-mix(in srgb, var(--warn) 10%, var(--surface)); color: var(--muted); font-size: 12px; }
.consistency-reference { padding: 0; overflow: hidden; }
.consistency-reference > summary { padding: 18px 20px; cursor: pointer; display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.consistency-reference > summary > span { display: grid; gap: 4px; }
.consistency-reference > summary small { color: var(--muted); font-weight: 500; }
.consistency-reference > summary b { color: var(--accent-deep); }
.consistency-reference[open] > summary { border-bottom: 1px solid var(--border-soft); }
.consistency-reference > .hint, .consistency-reference > .consistency-inventory { margin-left: 20px; margin-right: 20px; }
.consistency-reference > .consistency-inventory { margin-bottom: 20px; }
.consistency-load-evidence { justify-self: start; margin-top: 7px; }
.consistency-evidence-status { color: var(--muted); line-height: 1.4; }
@media (max-width: 980px) {
  .consistency-layout { grid-template-columns: 1fr; }
  .consistency-summary { grid-template-columns: repeat(2, 1fr); }
  .consistency-hero .dochead { align-items: stretch; }
  .consistency-primary-action { width: 100%; min-width: 0; }
  #consistencyRunButton { width: 100%; }
}
