
    .diagram-flow { align-items: stretch; }
    .diagram-flow > [data-diagram-role="card"] { min-width: 0; }
    .diagram-flow [data-diagram-role="tag"] { justify-self: start; }
    .return-line {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      gap: 12px;
      color: var(--track-strong, var(--track));
      font-size: 12px;
      font-weight: 800;
      text-align: center;
    }
    .return-line::before, .return-line::after {
      content: "";
      height: 1px;
      background: var(--diagram-line);
    }
    .support-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }
    .support-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .branch-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }
    .branch-path {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 8px;
      align-items: stretch;
    }
    .branch-path > [data-diagram-role="card"] { padding: 12px !important; }
    .branch-label {
      display: inline-flex;
      width: fit-content;
      padding: 4px 8px;
      border-radius: 6px;
      background: var(--diagram-accent-bg);
      color: var(--track-strong, var(--track));
      font-size: 12px;
      font-weight: 800;
    }
    @media (max-width: 720px) {
      .return-line { grid-template-columns: 1fr; }
      .return-line::before, .return-line::after { display: none; }
      .support-grid, .support-grid.two, .branch-grid { grid-template-columns: 1fr; }
      .branch-path { grid-template-columns: 1fr; }
    }
