/*
 * .backtrace — a stack trace, newest call first. One row per frame:
 * method, then file:line. App frames are full ink; library frames are muted
 * and hidden behind "show all frames" (a <details>).
 * Structure: ol.backtrace > li.backtrace__frame(--app) > .backtrace__method
 *            + .backtrace__file
 */
@layer components {
  .backtrace {
    list-style: none;
    margin: 0;
    padding: 0;
    font-family: var(--font-mono);
    font-size: var(--font-size-0);
    border: var(--border-size-1) solid var(--line);
    border-radius: var(--radius-ui);
    overflow: hidden;
  }
  .backtrace__frame {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: calc(var(--u-pad) / 4) var(--u-pad);
    padding-block: calc(var(--u-pad) / 3);
    padding-inline: calc(var(--u-pad) / 1.5);
    color: var(--ink-muted);
    border-block-start: var(--border-size-1) solid var(--line);
  }
  .backtrace__frame:first-child { border-block-start: none; }
  .backtrace__frame--app {
    color: var(--ink);
    background: var(--fill-subtle);
  }
  .backtrace__method { overflow-wrap: anywhere; }
  .backtrace__frame--app .backtrace__method { font-weight: var(--font-weight-6); }
  .backtrace__file { color: var(--ink-muted); overflow-wrap: anywhere; }
}
