.diagram{border:1px solid var(--color-line-strong);border-radius:var(--radius);background:var(--color-panel);padding:18px}@media (min-width:720px){.diagram{padding:22px}}.diagram-caption{color:var(--color-faint);margin-top:14px;font-size:.78rem;line-height:1.5}.dg{--dg-gap:22px;--dg-arrow:var(--color-faint)}.dg ol,.dg ul{margin:0;padding:0;list-style:none}.dg-step{border:1px solid var(--color-line-strong);border-radius:var(--radius);background:var(--color-panel-2);flex-direction:column;gap:6px;margin:0;padding:12px 14px;display:flex;position:relative}.dg-title{font-family:var(--font-display);color:var(--color-text);text-wrap:balance;font-size:.95rem;font-weight:600;line-height:1.3}.dg-body{color:var(--color-dim);font-size:.82rem;line-height:1.45}.dg-writes{font-family:var(--font-mono);color:var(--color-cyan);overflow-wrap:anywhere;margin-top:auto;padding-top:4px;font-size:.72rem;line-height:1.4}.dg-human{border:2px solid var(--color-amber)}.dg-human .dg-title{color:var(--color-amber)}.dg-flow{gap:var(--dg-gap);display:grid}.dg-flow>.dg-step+.dg-step:before{content:"";left:24px;top:calc(-1 * var(--dg-gap));height:calc(var(--dg-gap) - 4px);border-left:1px solid var(--dg-arrow);position:absolute}.dg-flow>.dg-step+.dg-step:after{content:"";border:4px solid #0000;border-bottom:0;border-top:5px solid var(--dg-arrow);position:absolute;top:-8px;left:20.5px}@media (min-width:1024px){.dg-flow{grid-template-columns:repeat(var(--dg-steps), minmax(0, 1fr));--dg-gap:18px;gap:18px}.dg-flow>.dg-step+.dg-step:before{left:calc(-1 * var(--dg-gap));width:calc(var(--dg-gap) - 4px);border-left:0;border-top:1px solid var(--dg-arrow);height:0;top:50%}.dg-flow>.dg-step+.dg-step:after{border:4px solid #0000;border-right:0;border-left:5px solid var(--dg-arrow);top:calc(50% - 3.5px);left:-8px}}.dg-base-row{margin-top:calc(var(--dg-gap) * 2)}.dg-base{border:1.2px dashed color-mix(in srgb, var(--color-cyan) 70%, transparent);border-radius:var(--radius);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;padding:12px 14px;display:flex}.dg-base .dg-title{font-family:var(--font-mono);color:var(--color-cyan);font-size:.78rem;font-weight:500}@media (min-width:1024px){.dg-base-row{grid-template-columns:repeat(var(--dg-steps), minmax(0, 1fr));gap:18px;margin-top:18px;display:grid}.dg-base{grid-column:var(--dg-from) / var(--dg-to)}}.dg-layers{gap:var(--dg-gap);display:grid}.dg-row{gap:14px;display:grid}.dg-core{border-color:var(--color-cyan)}.dg-core .dg-title{color:var(--color-cyan)}.dg-infra{background:0 0;border-style:dashed}@media (min-width:1024px){.dg-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.dg-layers>.dg-row:first-child>.dg-step:after,.dg-layers>.dg-row:last-child>.dg-step:before{content:"";height:var(--dg-gap);border-left:1px solid var(--color-line-strong);position:absolute;left:50%}.dg-layers>.dg-row:first-child>.dg-step:after{top:100%}.dg-layers>.dg-row:last-child>.dg-step:before{bottom:100%}}.dg-paths{gap:14px;display:grid}@media (min-width:1024px){.dg-paths{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}.dg-chain{border-top:1px solid var(--color-line);gap:5px;margin-top:6px;padding-top:10px;display:grid}.dg-chain>li{color:var(--color-text);grid-template-columns:7.2em minmax(0,1fr);align-items:baseline;gap:10px;font-size:.82rem;line-height:1.4;display:grid}.dg-role{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--color-faint);font-size:.72rem}.dg-model{white-space:nowrap;display:inline-block}@media (min-width:1024px){.dg-paths>.dg-step:before,.dg-paths>.dg-step:after{content:"";height:var(--dg-gap);border-left:1px solid var(--color-line-strong);position:absolute;left:50%}.dg-paths>.dg-step:before{bottom:100%}.dg-paths>.dg-step:after{top:100%}}
