.dg{container-type:inline-size;display:grid;width:100%;min-width:0;gap:var(--space-4);color:var(--brand-ink)}.dg-title,.dg-caption,.dg-frame-label,.dg-frame-detail,.dg-choice-label,.dg-band-title,.dg-band-detail,.dg-node-title,.dg-node-detail{overflow-wrap:anywhere}.dg-title{margin:0;color:var(--dg-strong, var(--violet-700));font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-wide);text-align:center;text-transform:uppercase;text-wrap:balance}.dg-title--muted{color:var(--color-text-muted)}.dg-title--ink{color:var(--brand-ink)}.dg-caption{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-relaxed);text-align:center;text-wrap:balance}.dg-frame{min-width:0;padding:var(--space-3);border:1px solid var(--dg-strong, var(--violet-700));border-radius:var(--radius-md);background:color-mix(in srgb,var(--dg-soft, var(--violet-50)) 72%,var(--white))}.dg-frame-label,.dg-choice-label{display:block;color:var(--dg-strong, var(--violet-700));font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-wide);text-align:center;text-transform:uppercase}.dg-frame-detail{display:block;margin-top:var(--space-1);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-snug);text-align:center}.dg-frame-body{display:grid;min-width:0;gap:var(--space-3);margin-top:var(--space-3)}.dg-node{display:flex;min-width:0;min-height:calc(var(--space-6) * 2 + var(--space-2));padding:var(--space-2);flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);border:1px solid var(--border-control);border-radius:var(--radius-sm);background:var(--white);text-align:center}.dg-node-title{color:var(--brand-ink);font-family:var(--font-display);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:var(--leading-snug);hyphens:none;overflow-wrap:normal;text-wrap:balance}.dg--hyphenate [data-diagram-label]{hyphens:auto;overflow-wrap:break-word}.dg-node-detail{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-normal);line-height:var(--leading-snug);hyphens:auto;overflow-wrap:break-word}.dg-node--highlight{border-color:var(--dg-strong, var(--violet-700));background:var(--dg-soft, var(--violet-50))}.dg-node--highlight>.dg-node-title{color:var(--dg-strong, var(--violet-700))}.dg-node--terminal{border-color:var(--magenta-700);background:var(--magenta-50)}.dg-node--terminal>.dg-node-title,.dg-node--terminal>.dg-node-detail{color:var(--magenta-700)}.dg-node--secondary{border-style:dashed;color:var(--color-text-muted)}.dg-flow,.dg-sequence{display:flex;min-width:0;align-items:stretch;gap:var(--space-1)}.dg-flow>.dg-node,.dg-sequence>.dg-node,.dg-sequence>.dg-frame,.dg-sequence>.dg-choice{min-width:0;flex:1 1 0}.dg-flow--compact{gap:var(--space-1);margin-top:var(--space-2)}.dg-flow--compact>.dg-node{min-height:calc(var(--space-6) + var(--space-4));padding:var(--space-2)}.dg-flow--compact .dg-node-title{font-size:var(--text-xs)}.dg-connector{position:relative;display:block;width:var(--space-3);min-width:var(--space-3);min-height:var(--space-4);flex:0 0 var(--space-3);align-self:center}.dg-connector>span:before{content:"";position:absolute;top:50%;left:0;right:var(--space-1);border-top:2px solid var(--neutral-600);transform:translateY(-50%)}.dg-connector>span:after{content:"";position:absolute;top:50%;right:0;width:var(--space-2);height:var(--space-2);border-top:2px solid var(--neutral-600);border-right:2px solid var(--neutral-600);transform:translateY(-50%) rotate(45deg)}.dg-connector--bidirectional:before{content:"";position:absolute;top:50%;left:0;z-index:1;width:var(--space-2);height:var(--space-2);border-bottom:2px solid var(--neutral-600);border-left:2px solid var(--neutral-600);transform:translateY(-50%) rotate(45deg)}.dg-parallel{display:grid;min-width:0;gap:var(--space-3)}.dg-parallel>.dg-flow+.dg-flow{padding-top:var(--space-3);border-top:1px solid var(--border-strong)}.dg-band{display:flex;min-width:0;margin:0 var(--space-4);padding:var(--space-3) var(--space-3) 0;flex-direction:column;align-items:center;gap:var(--space-1);border-top:2px dashed var(--dg-strong, var(--violet-700));border-left:2px dashed var(--dg-strong, var(--violet-700));border-right:2px dashed var(--dg-strong, var(--violet-700));color:var(--color-text-muted);text-align:center}.dg-band-title,.dg-band-detail{font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--leading-snug);text-wrap:balance}.dg-band-title{color:var(--dg-strong, var(--violet-700));font-weight:var(--weight-semibold)}.dg-band-detail{color:var(--color-text-muted);font-weight:var(--weight-normal)}.dg-band--inside{margin-top:var(--space-2)}.dg-loop{display:grid;min-width:0;grid-template-columns:minmax(0,1fr) var(--space-4) minmax(0,1fr);align-items:stretch;gap:var(--space-2)}.dg-choice{display:flex;min-width:0;flex-direction:column;justify-content:center;gap:var(--space-2)}.dg-choice-options{display:grid;gap:var(--space-1)}.dg-choice-options .dg-node{min-height:calc(var(--space-6) + var(--space-2));padding:var(--space-1) var(--space-2)}.dg-branch{display:grid;min-width:0;grid-template-columns:minmax(0,.9fr) var(--space-3) minmax(0,1.35fr) var(--space-3) minmax(0,1.1fr);align-items:center;gap:var(--space-2)}.dg-branch-inputs{display:grid;min-width:0;gap:var(--space-2)}.dg-branch-core{min-height:100%}.dg-branch--content-core .dg-branch-core{min-height:calc(var(--space-6) * 2 + var(--space-2));align-self:center}.dg-feedback{position:relative;grid-column:1 / -1;height:calc(var(--space-6) + var(--space-2));margin:calc(var(--space-2) * -1) var(--space-6) 0;border-right:2px solid var(--neutral-600);border-bottom:2px solid var(--neutral-600);border-left:2px solid var(--neutral-600);border-radius:0 0 var(--radius-md) var(--radius-md)}.dg-feedback:before{content:"";position:absolute;top:calc(var(--space-2) * -1);left:calc(var(--space-2) * -1);width:var(--space-2);height:var(--space-2);border-top:2px solid var(--neutral-600);border-left:2px solid var(--neutral-600);transform:rotate(45deg)}.dg-stage-bars{display:flex;width:100%;min-height:calc(var(--space-6) + var(--space-2));margin-top:var(--space-2);align-items:flex-end;justify-content:center;gap:var(--space-1)}.dg-stage-bars i{display:grid;width:var(--space-6);min-height:var(--space-6);place-items:center;border:1px solid var(--border-control);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--white);color:var(--brand-ink);font-family:var(--font-mono);font-size:var(--text-xs);font-style:normal}.dg-stage-bars i:nth-child(2){min-height:calc(var(--space-6) + var(--space-2))}.dg-stage-bars i:nth-child(3){min-height:calc(var(--space-6) + var(--space-4))}.dg-sequence--ai>.dg-frame{flex-grow:2.4}.dg-sequence--ai>.dg-node{flex-grow:.9}.dg-sequence--strategy>.dg-choice{flex-grow:.82}.dg-sequence--strategy>.dg-node{flex-grow:1}.dg-sequence--strategy>.dg-staged-node{flex-grow:1.25}.dg-banking-top{width:min(100%,70%);margin:0 auto}.dg-banking-drop{width:100%;min-width:0;height:var(--space-5);min-height:var(--space-5);flex-basis:var(--space-5)}.dg-banking-drop>span:before{top:0;bottom:var(--space-1);left:50%;right:auto;border-top:0;border-left:2px solid var(--neutral-600);transform:translate(-50%)}.dg-banking-drop>span:after{inset:auto auto 0 50%;transform:translate(-50%) rotate(135deg)}@container (max-width: 56rem){.dg-sequence--stack-wide{flex-direction:column}.dg-sequence--stack-wide>.dg-node,.dg-sequence--stack-wide>.dg-frame,.dg-sequence--stack-wide>.dg-choice{width:100%;flex:0 0 auto}.dg-sequence--stack-wide>.dg-connector,.dg-branch--stack-wide>.dg-connector{width:100%;min-width:0;height:var(--space-5);min-height:var(--space-5);flex-basis:var(--space-5)}.dg-sequence--stack-wide>.dg-connector>span:before,.dg-branch--stack-wide>.dg-connector>span:before{top:0;right:auto;bottom:var(--space-1);left:50%;border-top:0;border-left:2px solid var(--neutral-600);transform:translate(-50%)}.dg-sequence--stack-wide>.dg-connector>span:after,.dg-branch--stack-wide>.dg-connector>span:after{inset:auto auto 0 50%;transform:translate(-50%) rotate(135deg)}.dg-sequence--stack-wide>.dg-connector--bidirectional:before,.dg-branch--stack-wide>.dg-connector--bidirectional:before{top:0;left:50%;transform:translate(-50%) rotate(135deg)}.dg-branch--stack-wide{grid-template-columns:minmax(0,1fr)}.dg-branch--stack-wide .dg-branch-inputs,.dg-branch--stack-wide .dg-branch-in,.dg-branch--stack-wide .dg-branch-core,.dg-branch--stack-wide .dg-branch-out,.dg-branch--stack-wide .dg-branch-outcome,.dg-branch--stack-wide .dg-feedback{grid-column:1}.dg-branch--stack-wide .dg-branch-inputs{grid-row:1}.dg-branch--stack-wide .dg-branch-in{grid-row:2}.dg-branch--stack-wide .dg-branch-core{grid-row:3}.dg-branch--stack-wide .dg-branch-out{grid-row:4}.dg-branch--stack-wide .dg-branch-outcome{grid-row:5}.dg-branch--stack-wide .dg-feedback{grid-row:6}.dg-branch--stack-wide .dg-branch-core{min-height:calc(var(--space-6) * 2 + var(--space-2))}}@container (max-width: 25rem){.dg{gap:var(--space-3)}.dg-flow,.dg-sequence{flex-direction:column}.dg-flow>.dg-node,.dg-sequence>.dg-node,.dg-sequence>.dg-frame,.dg-sequence>.dg-choice{width:100%;flex:0 0 auto}.dg-connector{width:100%;min-width:0;height:var(--space-5);min-height:var(--space-5);flex-basis:var(--space-5)}.dg-banking-top{width:100%}.dg-connector>span:before{top:0;bottom:var(--space-1);left:50%;right:auto;border-top:0;border-left:2px solid var(--neutral-600);transform:translate(-50%)}.dg-connector>span:after{inset:auto auto 0 50%;transform:translate(-50%) rotate(135deg)}.dg-connector--bidirectional:before{top:0;left:50%;transform:translate(-50%) rotate(135deg)}.dg-loop{grid-template-columns:minmax(0,1fr)}.dg-loop>.dg-connector{justify-self:stretch}.dg-branch{grid-template-columns:minmax(0,1fr)}.dg-branch-inputs,.dg-branch-in,.dg-branch-core,.dg-branch-out,.dg-branch-outcome,.dg-feedback{grid-column:1}.dg-branch-inputs{grid-row:1}.dg-branch-in{grid-row:2}.dg-branch-core{grid-row:3}.dg-branch-out{grid-row:4}.dg-branch-outcome{grid-row:5}.dg-feedback{grid-row:6}.dg-branch-core{min-height:calc(var(--space-6) * 2 + var(--space-2))}.dg-feedback{margin:calc(var(--space-2) * -1) var(--space-5) 0}.dg-frame{padding:var(--space-3)}.dg-band{margin-right:0;margin-left:0}}
