.dg{--dg-canvas:var(--color-surface);--dg-mono:var(--font-diagram-mono), ui-monospace, SFMono-Regular, Menlo, monospace;--dg-ink:hsl(var(--foreground));--dg-ink-soft:hsl(var(--foreground) / .72);--dg-ink-2:hsl(var(--muted-foreground));--dg-line:hsl(var(--foreground) / .36);--dg-line-quiet:hsl(var(--foreground) / .22);--dg-edge:hsl(var(--foreground) / .14);--dg-well:color-mix(in srgb, hsl(var(--foreground)) 4%, var(--color-surface));--dg-raised:color-mix(in srgb, hsl(var(--foreground)) 7%, var(--color-surface));--dg-accent:var(--brand-primary-mark,var(--color-primary-light));--dg-accent-wash:color-mix(in srgb, var(--dg-accent) 14%, var(--dg-canvas));--dg-caution:var(--color-amber);--dg-danger:var(--color-red);width:100%;height:100%;color:var(--dg-ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:block;overflow:visible}[data-theme=light] .dg{--dg-accent:var(--brand-primary-mark,var(--color-primary));--dg-accent-wash:color-mix(in srgb, var(--dg-accent) 10%, var(--dg-canvas));--dg-caution:color-mix(in srgb, var(--color-amber) 82%, black);--dg-danger:var(--color-red)}[data-theme=light] .dg .dg-tone-sky{--dg-tone:var(--color-sky);--dg-tone-wash:color-mix(in srgb, var(--color-sky) 8%, var(--dg-canvas))}[data-theme=light] .dg .dg-tone-teal{--dg-tone:color-mix(in srgb, var(--color-teal) 68%, black);--dg-tone-wash:color-mix(in srgb, var(--color-teal) 8%, var(--dg-canvas))}[data-theme=light] .dg .dg-tone-purple{--dg-tone:var(--color-purple);--dg-tone-wash:color-mix(in srgb, var(--color-purple) 8%, var(--dg-canvas))}[data-theme=light] .dg .dg-tone-emerald{--dg-tone:color-mix(in srgb, var(--color-emerald) 72%, black);--dg-tone-wash:color-mix(in srgb, var(--color-emerald) 8%, var(--dg-canvas))}[data-theme=light] .dg .dg-card{fill:var(--dg-canvas)}.dg text{fill:var(--dg-ink);font-family:inherit}.dg .dg-headline{font-family:var(--font-slide-headline), var(--font-inter), sans-serif;letter-spacing:-.045em;font-size:27px;font-weight:900}.dg .dg-display{letter-spacing:-.03em;font-size:30px;font-weight:600}.dg .dg-title{letter-spacing:-.025em;font-size:21px;font-weight:600}.dg .dg-label{letter-spacing:-.011em;font-size:16px;font-weight:500}.dg .dg-metric{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:500}.dg .dg-label.is-kicker{font-family:var(--dg-mono);letter-spacing:.1em;text-transform:uppercase;fill:var(--dg-tone,var(--dg-ink));font-size:13px;font-weight:500}.dg .dg-label.is-kicker.is-ink{fill:var(--dg-ink)}.dg .dg-text{fill:var(--dg-ink-soft);font-size:15px}.dg .dg-edge-label.is-haloed{paint-order:stroke;stroke:var(--dg-canvas);stroke-width:5px;stroke-linejoin:round}.dg .dg-frame.dg-planned-frame{stroke-dasharray:6 5}.dg .dg-text.is-haloed{paint-order:stroke;stroke:var(--dg-raised);stroke-width:5px;stroke-linejoin:round}.dg .dg-text.is-ink{fill:var(--dg-ink)}.dg .dg-meta{fill:var(--dg-ink-2);font-size:14px}.dg .dg-body{fill:var(--dg-ink-2);font-size:13px}.dg .dg-body.is-ink{fill:var(--dg-ink)}.dg .dg-code,.dg .dg-group{font-family:var(--dg-mono);fill:var(--dg-ink-2);font-variant-numeric:tabular-nums;font-size:13px}.dg .dg-group{letter-spacing:.1em;text-transform:uppercase;font-weight:500}.dg .dg-edge-label{fill:var(--dg-ink-2);paint-order:stroke;stroke:var(--dg-canvas);stroke-width:6px;stroke-linejoin:round;font-size:14px}.dg .is-quiet,.dg .is-kicker.is-quiet{fill:var(--dg-ink-2)}.dg .is-on-line{paint-order:stroke;stroke:var(--dg-canvas);stroke-width:6px;stroke-linejoin:round}.dg .dg-node{fill:var(--dg-canvas);stroke:var(--dg-edge);stroke-width:1px}.dg .dg-node.is-key{stroke:var(--dg-accent);stroke-width:1.25px}.dg .dg-node.is-pending{fill:none;stroke:var(--dg-edge)}.dg .dg-region{fill:var(--dg-well);stroke:var(--dg-edge);stroke-width:1px}.dg .dg-region.is-key{stroke:var(--dg-accent);stroke-width:1.25px}.dg .dg-region.is-planned{fill:none;stroke:var(--dg-line);stroke-dasharray:7 6}.dg .dg-region.is-pending{fill:none;stroke:var(--dg-line-quiet);stroke-dasharray:none}.dg .dg-tone-sky{--dg-tone:var(--color-sky-light);--dg-tone-ink:var(--color-sky);--dg-tone-wash:color-mix(in srgb, var(--color-sky) 7%, var(--dg-canvas))}.dg .dg-tone-teal{--dg-tone:var(--color-teal-light);--dg-tone-ink:var(--color-teal);--dg-tone-wash:color-mix(in srgb, var(--color-teal) 7%, var(--dg-canvas))}.dg .dg-tone-purple{--dg-tone:var(--color-purple-light);--dg-tone-ink:var(--color-purple);--dg-tone-wash:color-mix(in srgb, var(--color-purple) 8%, var(--dg-canvas))}.dg .dg-tone-emerald{--dg-tone:var(--color-emerald-light);--dg-tone-ink:var(--color-emerald);--dg-tone-wash:color-mix(in srgb, var(--color-emerald) 7%, var(--dg-canvas))}.dg .dg-tone-amber{--dg-tone:var(--dg-caution);--dg-tone-ink:var(--dg-caution);--dg-tone-wash:color-mix(in srgb, var(--dg-caution) 8%, var(--dg-canvas))}.dg .dg-team-bar{fill:color-mix(in srgb, var(--dg-tone,var(--dg-accent)) 30%, var(--dg-canvas));stroke:var(--dg-tone,var(--dg-accent));stroke-width:1px}.dg .dg-team-bar.is-moved{stroke-dasharray:3 2;fill:color-mix(in srgb, var(--dg-tone,var(--dg-accent)) 12%, var(--dg-canvas))}.dg .dg-track{fill:color-mix(in srgb, hsl(var(--foreground)) 4%, var(--dg-canvas))}.dg .dg-tone-wash{fill:var(--dg-tone-wash,var(--dg-well));stroke:none}.dg .dg-tone-mark{fill:var(--dg-tone-ink,var(--dg-ink-2))}.dg .dg-frame{fill:none;stroke:var(--dg-edge);stroke-width:1px}.dg .dg-frame.is-key,.dg .dg-card.is-key{stroke:var(--dg-accent);stroke-width:1.25px}.dg .dg-card{fill:color-mix(in srgb, hsl(var(--foreground)) 6%, var(--dg-canvas));stroke:var(--dg-edge);stroke-width:1px}.dg .dg-card.is-planned{stroke:var(--dg-line);stroke-dasharray:7 6}.dg .dg-boundary.is-panel{fill:color-mix(in srgb, hsl(var(--foreground)) 4%, var(--dg-canvas));stroke:var(--dg-edge);stroke-width:1px}.dg .is-dim{opacity:.38}@media (prefers-reduced-motion:no-preference){.dg .is-dimmable{transition:opacity .32s}}.dg .dg-plane{fill:var(--dg-raised);stroke:var(--dg-edge);stroke-width:1px}.dg .dg-plane-edge{fill:var(--dg-canvas);stroke:var(--dg-edge);stroke-width:1px}.dg .dg-boundary{fill:none;stroke:var(--dg-line-quiet);stroke-width:1px}.dg .dg-well{fill:var(--dg-well)}.dg .dg-rule{fill:none;stroke:var(--dg-edge);stroke-width:1px}.dg .dg-raised{fill:var(--dg-raised)}.dg .dg-icon{color:var(--dg-ink)}.dg .dg-icon.is-quiet{color:var(--dg-ink-2)}.dg foreignObject.dg-badge{pointer-events:none;overflow:visible}.dg .dg-badge-wrap{justify-content:flex-start;align-items:center;width:100%;height:100%;display:flex}.dg .dg-badge-wrap.is-center{justify-content:center}.dg .dg-badge-wrap.is-end{justify-content:flex-end}.dg .dg-badge-flow{flex-wrap:wrap;align-content:flex-start;gap:8px;width:100%;height:100%;display:flex}.dg .dg-badge.is-large .pill{padding:.25rem .75rem;font-size:15px}.dg .dg-badge.is-medium .pill{gap:.25rem;padding:.125rem .5rem;font-size:13.5px}.dg .dg-tile-plate{fill:color-mix(in srgb, hsl(var(--foreground)) 4%, var(--dg-canvas));stroke:var(--dg-edge);stroke-width:1px}[data-theme=light] .dg .dg-tile-plate{fill:var(--dg-canvas)}.dg .dg-tile-plate.is-key{stroke:var(--dg-accent);stroke-width:1.25px}.dg .dg-tone-icon{color:var(--dg-tone-ink,var(--dg-ink))}.dg .dg-flow,.dg .dg-assoc,.dg .dg-manual,.dg .dg-planned{fill:none;stroke:var(--dg-line);stroke-width:1px;stroke-linecap:round;stroke-linejoin:round}.dg .dg-flow.is-main,.dg .dg-manual.is-main,.dg .dg-planned.is-main{stroke:var(--dg-accent);stroke-width:1.5px}.dg .dg-assoc{stroke:var(--dg-line-quiet)}.dg .dg-assoc.is-main{stroke:var(--dg-accent);stroke-width:1.25px}.dg .dg-manual{stroke-dasharray:0 4.5;stroke-width:1.5px}.dg .dg-planned{stroke-dasharray:6 5;stroke-linecap:butt}.dg .dg-team-bar.is-soft.is-moved{stroke-width:1.75px}.dg .dg-caution-text{fill:var(--dg-caution)}.dg .dg-planned.is-move{stroke:var(--dg-caution);stroke-width:1.5px}.dg .dg-ring{stroke-width:1px}.dg .dg-ring.is-band-1{fill:color-mix(in srgb, var(--dg-accent) 7%, var(--dg-canvas));stroke:hsl(var(--foreground) / .14)}.dg .dg-ring.is-band-2{fill:color-mix(in srgb, var(--dg-accent) 4%, var(--dg-canvas));stroke:hsl(var(--foreground) / .1)}.dg .dg-ring.is-band-3{fill:color-mix(in srgb, var(--dg-accent) 2%, var(--dg-canvas));stroke:hsl(var(--foreground) / .06)}.dg .dg-planet{fill:var(--dg-raised);stroke:hsl(var(--foreground) / .22);stroke-width:1px;filter:drop-shadow(0 2px 6px #00000059)}[data-theme=light] .dg .dg-planet{filter:drop-shadow(0 2px 6px #1018281f)}.dg .dg-signal{fill:none;stroke:hsl(var(--foreground) / .55);stroke-width:2.5px;stroke-linecap:round}.dg .dg-knockout{fill:none;stroke:var(--dg-canvas);stroke-width:6px;stroke-linecap:round}.dg .dg-halo{fill:none;stroke:var(--dg-accent);stroke-opacity:.16;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.dg .dg-comet{fill:none;stroke:var(--dg-accent);stroke-width:2px;stroke-linecap:round}.dg .dg-arrow{fill:var(--dg-line)}.dg .dg-arrow.is-main{fill:var(--dg-accent)}.dg .dg-arrow.is-caution{fill:var(--dg-caution)}.dg .dg-port{fill:var(--dg-line)}.dg .dg-port.is-ring{fill:var(--dg-canvas);stroke:var(--dg-line);stroke-width:1px}.dg .dg-port.is-main{fill:var(--dg-accent)}.dg .dg-port.is-ring.is-main{fill:var(--dg-canvas);stroke:var(--dg-accent)}.dg .dg-port.is-danger{fill:var(--dg-danger)}.dg .dg-shadow{fill:hsl(var(--foreground) / .08)}.explain-studio,.dg{--ai-1:var(--color-purple-light);--ai-2:var(--color-pink);--ai-3:var(--color-teal);--ai-4:var(--color-amber);--ai-5:var(--color-green);--ai-6:var(--color-blue);--ai-bleed:.55;--ai-edge:.95;--ai-glyph:var(--color-purple-light)}[data-theme=light] .explain-studio,[data-theme=light] .dg,.explain-studio.light,[data-theme=light] .dg{--ai-bleed:.35;--ai-glyph:var(--color-purple)}.dg .dg-intel-glyph{color:var(--ai-glyph)}.ai-glow-bleed{opacity:var(--ai-bleed,.55)}.ai-glow-edge{opacity:var(--ai-edge,.95)}.ai-glow-orbit{transform-origin:0 0;animation:20s linear infinite ai-glow-orbit}.ai-glow-blob{transform-box:fill-box;transform-origin:50%;animation:8s ease-in-out infinite ai-glow-breathe}.ai-glow[data-paused=true] .ai-glow-orbit,.ai-glow[data-paused=true] .ai-glow-blob{animation-play-state:paused}@keyframes ai-glow-orbit{to{transform:rotate(360deg)}}@keyframes ai-glow-breathe{0%,to{opacity:.18;transform:translate(.1px)scale(.7)}35%{opacity:.95;transform:translate(-.1px,.04px)scale(1.2)}70%{opacity:.55;transform:translate(-.02px,-.06px)scale(.95)}}.dg .dg-accent-stroke{stroke:var(--dg-accent)}.dg .dg-accent{color:var(--dg-accent)}.dg .dg-accent-fill{fill:var(--dg-accent)}.dg .dg-accent-wash{fill:var(--dg-accent-wash)}.dg .dg-caution{color:var(--dg-caution)}.dg .dg-caution-stroke{stroke:var(--dg-caution)}.dg .dg-danger{color:var(--dg-danger)}.dg .dg-frame.is-strong{stroke-width:2px}.dg .dg-danger-wash{fill:color-mix(in srgb, var(--dg-danger) 18%, var(--dg-canvas))}.dg .dg-danger-stroke{stroke:var(--dg-danger)}.dg .dg-strike{fill:none;stroke:var(--dg-danger);stroke-width:1.75px;stroke-linecap:round}.dg .dg-hatch-caution{stroke:var(--dg-caution);stroke-opacity:.45;stroke-width:1px}.dg .dg-hatch-danger{stroke:var(--dg-danger);stroke-opacity:.7;stroke-width:1.25px}.dg .dg-hatch{stroke:hsl(var(--foreground) / .24);stroke-width:1px}.dg .dg-bar{fill:color-mix(in srgb, hsl(var(--foreground)) 7%, var(--dg-canvas));stroke:var(--dg-edge);stroke-width:1px;filter:drop-shadow(0 1px 1px #0000004d)}[data-theme=light] .dg .dg-bar{fill:var(--dg-canvas);filter:drop-shadow(0 1px 1px #10182814)}.dg .dg-bar.is-blocked{stroke:var(--dg-danger);stroke-width:1.5px}.dg .dg-bar.is-at-risk{stroke:var(--dg-caution);stroke-width:1.5px}.dg .dg-bar.is-revised{stroke:var(--dg-accent);stroke-width:1.5px}.dg .dg-end{fill:none;stroke:var(--dg-ink);stroke-width:1.5px}.dg .dg-end.is-moved{stroke:var(--dg-caution)}.dg .dg-ghost{fill:none;stroke:var(--dg-line);stroke-width:1px}.dg .dg-hit{cursor:pointer}.dg .dg-hit:hover :is(.dg-card,.dg-frame,.dg-node,.dg-region,.dg-tile-plate),.dg .dg-hit:focus-visible :is(.dg-card,.dg-frame,.dg-node,.dg-region,.dg-tile-plate){stroke:var(--dg-accent);stroke-width:1.25px}.dg .dg-hit:focus-visible{outline:1px solid var(--dg-accent);outline-offset:3px}.dg :is(rect,path,circle,ellipse,line,polyline,polygon){vector-effect:non-scaling-stroke}.dg .dg-surface{fill:color-mix(in srgb, hsl(var(--foreground)) 5%, var(--dg-canvas));stroke:var(--dg-edge);stroke-width:1px;filter:drop-shadow(0 1px 1px #00000059)drop-shadow(0 4px 10px #0000002e)}[data-theme=light] .dg .dg-surface{fill:var(--dg-canvas);filter:drop-shadow(0 1px 1px #1018280f)drop-shadow(0 4px 10px #1018280d)}.dg .dg-surface.is-key{stroke:var(--dg-accent);stroke-width:1.25px}.dg .dg-surface.is-planned{fill:none;filter:none;stroke:var(--dg-line);stroke-dasharray:6 5}.dg .dg-sheen{fill:none;stroke:#ffffff12;stroke-width:1px}[data-theme=light] .dg .dg-sheen{stroke:none}.dg .dg-status{fill:var(--dg-line)}.dg .dg-status.is-accent{fill:var(--dg-accent)}.dg .dg-status.is-positive{fill:var(--brand-secondary-mark,var(--color-emerald))}.dg .dg-status.is-caution{fill:var(--dg-caution)}.dg .dg-status.is-danger{fill:var(--dg-danger)}.dg .dg-dot{fill:hsl(var(--foreground) / .12)}.dg .dg-gridline{fill:none;stroke:hsl(var(--foreground) / .045);stroke-width:1px}.dg .dg-gridline.is-major{stroke:hsl(var(--foreground) / .09)}.dg .dg-crop{fill:none;stroke:hsl(var(--foreground) / .32);stroke-width:1px}.dg .dg-spot-core{stop-color:var(--dg-accent);stop-opacity:.16}.dg .dg-spot-edge{stop-color:var(--dg-accent);stop-opacity:0}[data-theme=light] .dg .dg-spot-core{stop-opacity:.1}.dg .dg-stamp{font-family:var(--dg-mono);letter-spacing:.04em;fill:hsl(var(--foreground) / .38);font-size:11px}.dg .dg-stamp .is-strong{fill:var(--dg-ink-2)}.dg .dg-legend-text{fill:var(--dg-ink-2);font-size:12px}.dg .dg-link{fill:var(--dg-accent)}.dg .dg-cadence{font-family:var(--dg-mono);letter-spacing:.08em;text-transform:uppercase;fill:hsl(var(--foreground) / .42);font-size:11px}.dg .dg-strand{fill:none;stroke:hsl(var(--foreground) / .16);stroke-width:1px}.dg .dg-strand.is-danger{stroke:color-mix(in srgb, var(--dg-danger) 75%, transparent)}.dg .dg-strand.is-danger.is-traced{stroke:var(--dg-danger);stroke-width:1.75px}.dg .dg-team-bar.is-soft{fill:color-mix(in srgb, var(--dg-tone,var(--dg-accent)) 16%, var(--dg-canvas));stroke:color-mix(in srgb, var(--dg-tone,var(--dg-accent)) 70%, transparent)}.dg .dg-bar-label{fill:var(--dg-ink)}.dg .dg-danger-text{fill:var(--dg-danger)}.dg .dg-ribbon{fill:color-mix(in srgb, hsl(var(--foreground)) 7%, var(--dg-canvas));stroke:var(--dg-edge);stroke-width:1px}.dg .dg-ribbon.is-key{fill:var(--dg-accent-wash);stroke:var(--dg-accent)}.dg .dg-ribbon.is-caution{fill:color-mix(in srgb, var(--dg-caution) 18%, var(--dg-canvas));stroke:color-mix(in srgb, var(--dg-caution) 70%, transparent)}
