/* =====================================================================
   Kiteworks — Audit run detail (forensic view)
   ---------------------------------------------------------------------
   Polishes templates/audit_run.html: the tool-call accordion
   (.kw-runrow → a nested .kw-table of Kiteworks API calls, with a
   rotating chevron), the forensic raw-event disclosure (.kw-forensic +
   .kw-jsonblock + .kw-hashcell), and the "Chain verified" tamper-evidence
   note in the run-summary rail (.kw-chainverified).

   Repo BEM (kw-*) + --kw-* tokens, per the rebrand convention (NOT the
   mockup's bare .runrow/.jsonblock names). Admin page (light); dark variants
   kept for parity. The green glyphs sit inside status chips (a semantic
   indicator, allowed by the brand icon rule), like .kw-pill--ok.
   ===================================================================== */

/* ---- a few audit-scoped helpers (replace former inline styles) ---- */
.kw-audit__sec-title { padding: 1.25rem 1.25rem 0; }   /* flush-section heading */
.kw-audit__sec--gap { margin-top: 1rem; }
.kw-audit__cell { font-size: 0.75rem; }                 /* category / transport cells */
.kw-audit__empty { padding: 1.25rem; color: var(--kw-fg-muted); font-size: 0.8125rem; }
.kw-audit__events td { vertical-align: top; }
.kw-audit__time { font-family: var(--kw-font-mono); font-size: 0.75rem; white-space: nowrap; }

/* ---- tool-call accordion row ---- */
.kw-runrow { border-bottom: 1px solid var(--kw-border-soft); }
.kw-runrow:last-child { border-bottom: 0; }
.kw-runrow > summary {
  list-style: none; cursor: pointer; display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr; gap: 14px; align-items: center;
  padding: 13px 20px; transition: background 140ms;
}
.kw-runrow > summary::-webkit-details-marker { display: none; }
.kw-runrow > summary:hover { background: var(--kw-bg-subtle); }
.kw-runrow > summary:focus-visible { outline: 2px solid var(--kw-focus-ring); outline-offset: -2px; border-radius: var(--kw-radius-sm); }
.kw-runrow__chev { display: inline-flex; align-items: center; gap: 9px; font-family: var(--kw-font-mono); font-size: 13px; color: var(--kw-fg); white-space: nowrap; min-width: 0; }
.kw-runrow__chev [data-lucide], .kw-runrow__chev svg { width: 15px; height: 15px; color: var(--kw-fg-subtle); transition: transform 160ms; }
.kw-runrow[open] > summary .kw-runrow__chev [data-lucide],
.kw-runrow[open] > summary .kw-runrow__chev svg { transform: rotate(90deg); }
.kw-runrow__meta { font-family: var(--kw-font-mono-num); font-size: 12px; color: var(--kw-fg-subtle); white-space: nowrap; text-align: end; }
.kw-runrow__nested { background: var(--kw-bg-subtle); padding: 2px 0 6px; }
html.dark .kw-runrow__nested { background: rgba(5, 8, 33, 0.35); }
.kw-runrow__nested .kw-table { background: transparent; }
.kw-runrow__nested .kw-table th { background: transparent; font-size: 10px; padding: 8px 20px; }
.kw-runrow__nested .kw-table td { padding: 8px 20px; border-bottom-color: var(--kw-border-soft); }
.kw-runrow__nested .kw-table td:first-child { padding-inline-start: 44px; }

/* ---- per-section reconciling totals (tool calls + "other" group) ---- */
.kw-runrow__totals {
  font-family: var(--kw-font-mono-num); font-size: 12px; color: var(--kw-fg-subtle);
  text-align: end; padding: 11px 20px; margin: 0; border-top: 1px solid var(--kw-border-soft);
}
/* explanatory note under the "Other in-run API calls" heading */
.kw-audit__sec-note { padding: 4px 20px 0; margin: 0; font-size: 12px; line-height: 1.45; }
/* indented sub-rows that break the run total into its parts (rail summary) */
.kw-detail-row--sub { padding-inline-start: 0.85rem; font-size: 0.78rem; opacity: 0.9; }

/* ---- forensic raw-event disclosure ---- */
.kw-forensic > summary { list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; font-family: var(--kw-font-mono); font-size: 12px; color: var(--kw-fg-subtle); padding: 8px 0; }
.kw-forensic > summary::-webkit-details-marker { display: none; }
.kw-forensic > summary [data-lucide], .kw-forensic > summary svg { width: 14px; height: 14px; }
.kw-forensic > summary:hover { color: var(--kw-fg); }
.kw-hashcell { font-family: var(--kw-font-mono); font-size: 10.5px; color: var(--kw-fg-subtle); word-break: break-all; }
.kw-jsonblock { background: var(--kw-deep-space); border: 1px solid var(--kw-glass-stroke); color: var(--kw-soft-lavender); font-family: var(--kw-font-mono); font-size: 11.5px; line-height: 1.6; padding: 10px 12px; border-radius: var(--kw-radius-sm); white-space: pre-wrap; word-break: break-all; margin: 6px 0 0; }

/* ---- "Chain verified" tamper-evidence note (run-summary rail) ---- */
.kw-chainverified { display: flex; align-items: flex-start; gap: 11px; font-size: 13px; line-height: 1.45; color: var(--kw-fg-muted); }
.kw-chainverified__orb { width: 34px; height: 34px; border-radius: var(--kw-radius-sm); display: grid; place-items: center; flex-shrink: 0; background: rgba(43, 182, 115, 0.16); color: #1B8E5A; }
html.dark .kw-chainverified__orb { color: #43D693; }
.kw-chainverified__orb [data-lucide], .kw-chainverified__orb svg { width: 17px; height: 17px; }
.kw-chainverified strong { color: var(--kw-fg); font-weight: 600; }
