.feature-ledger-surface{&{max-width:980px;color:var(--ink);background:var(--page);padding:16px}&{--page:#f4f0df;--surface:#fffdf3;--ink:#20382f;--muted:#587066;--line:#93a79e;--accent:#176047}button{font:inherit}.refresh{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);cursor:pointer;font-weight:800}.refresh:disabled{cursor:wait;opacity:.6}.page-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:8px}.page-head h1{margin:2px 0;font-size:clamp(27px,4vw,44px)}.page-head p{margin:0;color:var(--muted)}.eyebrow{color:var(--accent)!important;font:800 11px/1.2 ui-monospace,monospace;letter-spacing:.09em;text-transform:uppercase}.refresh-state{min-height:20px;margin-bottom:8px;color:var(--muted);font-size:12px}.ledger{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.ledger>p{margin-top:0;color:var(--muted)}.ledger-root{display:flex;justify-content:space-between;padding:12px;border:1px solid var(--line);border-radius:7px}@media(max-width:700px){.page-head{align-items:start}.refresh{flex:none}}:where(html[data-theme="dark"]) &{--page:#17231f;--surface:#22312b;--ink:#eef6ef;--muted:#b8c9c0;--line:#587066;--accent:#79cba9}}

/* Explicitly scoped tree rules keep console list and disclosure styles out. */
.feature-ledger-surface .ledger #ledger-tree,
.feature-ledger-surface .ledger #ledger-tree ol {
  display:block; margin:0; padding:0; border:0; background:transparent; list-style:none;
}
.feature-ledger-surface .ledger #ledger-tree { padding:8px 0 0; }
.feature-ledger-surface .ledger #ledger-tree ol {
  margin-left:13px; padding-left:23px; border-left:1px solid var(--line);
}
.feature-ledger-surface #ledger-tree li {
  position:relative; display:block; min-width:0; margin:2px 0; padding:0; border:0; background:transparent;
}
.feature-ledger-surface #ledger-tree ol > li::before {
  position:absolute; top:19px; left:-23px; width:18px; border-top:1px solid var(--line); content:'';
}
.feature-ledger-surface #ledger-tree details { display:block; margin:0; padding:0; border:0; background:transparent; }
.feature-ledger-surface #ledger-tree .ledger-row {
  display:grid; grid-template-columns:12px minmax(0,1fr) auto; align-items:start; gap:7px;
  min-height:38px; margin:0; padding:7px; border:0; border-radius:5px; list-style:none;
  color:var(--ink); background:transparent;
}
.feature-ledger-surface #ledger-tree summary { cursor:pointer; }
.feature-ledger-surface #ledger-tree summary::-webkit-details-marker { display:none; }
.feature-ledger-surface #ledger-tree .ledger-row::before {
  content:''; width:12px; color:var(--muted); font-size:11px; line-height:24px;
}
.feature-ledger-surface #ledger-tree summary::before { content:'▸'; }
.feature-ledger-surface #ledger-tree details[open] > summary::before { content:'▾'; }
.feature-ledger-surface #ledger-tree .ledger-row:hover { background:color-mix(in srgb,var(--accent) 9%,transparent); }
.feature-ledger-surface #ledger-tree summary:focus-visible { outline:2px solid var(--accent); outline-offset:1px; }
.feature-ledger-surface #ledger-tree .ledger-node-label { min-width:0; overflow-wrap:anywhere; }
.feature-ledger-surface #ledger-tree .ledger-node-label strong { display:block; line-height:24px; }
.feature-ledger-surface #ledger-tree .ledger-node-description { display:block; color:var(--muted); font-size:12px; line-height:1.4; }
.feature-ledger-surface .ledger .loc-count {
  padding:3px 6px; border:1px solid color-mix(in srgb,#b71937 var(--loc-heat),var(--line)); border-radius:5px;
  background:color-mix(in srgb,#d92f4e var(--loc-heat),var(--surface)); color:var(--ink);
  font:800 11px/1.3 ui-monospace,monospace; white-space:nowrap;
}

  :where(html[data-theme="dark"]) .feature-ledger-surface .ledger .loc-count{
    border-color:color-mix(in srgb,#ff8a9d var(--loc-heat),var(--line));
    background:color-mix(in srgb,#9f233b var(--loc-heat),var(--surface));
  }

@media(max-width:600px) {
  .feature-ledger-surface .ledger #ledger-tree ol { margin-left:10px; padding-left:13px; }
  .feature-ledger-surface #ledger-tree ol > li::before { left:-13px; width:9px; }
  .feature-ledger-surface #ledger-tree .ledger-row { column-gap:4px; padding-inline:3px; }
}

html[data-theme="dark"] .feature-ledger-surface{--page:#17231f;--surface:#22312b;--ink:#eef6ef;--muted:#b8c9c0;--line:#587066;--accent:#79cba9}
