@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-vietnamese-wght-normal.qRpaaN48.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-ext-wght-normal.DmpS2jIq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-wght-normal.eXO_dkmS.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--dg-bg:#06122a;--dg-panel:#0b1a38;--dg-card:#0f2147;--dg-line:#94a3b82e;--dg-text:#e8eefb;--dg-soft:#9fb0cf;--dg-green:#3fd16a;--dg-speed:1;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html,body{background:var(--dg-bg);height:100%;color:var(--dg-text);margin:0;font-family:Plus Jakarta Sans Variable,system-ui,sans-serif;overflow:hidden}.dg{background:radial-gradient(1200px 600px at 15% 0%, #0020608c, transparent), radial-gradient(900px 500px at 100% 100%, #006b0538, transparent), var(--dg-bg);flex-direction:column;height:100%;display:flex}.dg-bar{border-bottom:1px solid var(--dg-line);background:#06122ad9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:10px 16px;display:flex}.dg-title{flex-direction:column;flex:320px;min-width:0;display:flex}.dg-title strong{font-size:16px}.dg-title span{color:var(--dg-soft);font-size:15px}.dg-controls{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.dg-controls button,.dg-walk-nav button{font:inherit;color:var(--dg-text);background:var(--dg-panel);border:1px solid var(--dg-line);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:15px;font-weight:650}.dg-controls button:hover,.dg-walk-nav button:hover{border-color:var(--dg-green)}.dg-controls button[aria-pressed=true]{border-color:var(--dg-green);background:#0e4a1f}.dg-speed{background:var(--dg-panel);border:1px solid var(--dg-line);border-radius:999px;gap:2px;padding:2px;display:inline-flex}.dg-speed button{padding:4px 9px;border:0!important}button:focus-visible,.dg-node:focus-visible{outline:2px solid var(--dg-green);outline-offset:2px}.dg-stage{flex:1;min-height:0;position:relative}.dg-svg{width:100%;height:100%;display:block}.dg-hint{color:var(--dg-soft);pointer-events:none;flex:none;margin:0;padding:6px 16px 8px;font-size:15px;line-height:1.3}.dg-group-label{font-size:22px;font-weight:750}.dg-card{fill:var(--dg-card);stroke-width:1.5px;stroke-opacity:.55;transition:stroke-opacity .2s,fill .2s}.dg-label{fill:var(--dg-text);font-size:22px;font-weight:700}.dg-sub{fill:var(--dg-soft);font-size:21.5px}.dg-node{cursor:pointer;transition:opacity .25s}.dg-node:hover .dg-card,.dg-node.selected .dg-card{stroke-opacity:1;stroke-width:2.5px;fill:#132a5a}.dg-node.selected .dg-card{filter:drop-shadow(0 0 10px #3fd16a73)}.dg-edge,.dg-edge-label{transition:opacity .25s}.dg-edge-label text{font-size:21.5px;font-weight:650}.dg-flow{animation:dg-dash calc(1.6s / var(--dg-speed)) linear infinite;opacity:.55}.dg-paused .dg-flow{animation-play-state:paused}.dg-paused .dg-pulse{opacity:.5}@keyframes dg-dash{to{stroke-dashoffset:-32px}}.dim{opacity:.14}.dg-edge.hot .dg-flow{opacity:1}.dg-edge.hot path:first-child{stroke-opacity:.9}.dg-walk{border:1px solid var(--dg-green);background:#0b1a38f5;border-radius:14px;align-items:center;gap:16px;width:min(720px,100% - 32px);padding:14px 16px;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #00000073}.dg-walk-text{flex:1;min-width:0}.dg-walk-count{color:var(--dg-green);font-size:15px;font-weight:700;display:block}.dg-walk-text strong{margin:2px 0;font-size:17px;display:block}.dg-walk-text p{color:var(--dg-soft);margin:0;font-size:15px;line-height:1.45}.dg-walk-nav{flex:none;gap:6px;display:flex}.dg-drawer{border:1px solid var(--dg-line);background:#0b1a38f7;border-radius:14px;width:min(340px,100% - 24px);padding:18px;position:absolute;top:12px;bottom:12px;right:12px;overflow-y:auto;box-shadow:-12px 0 40px #0006}.dg-drawer h3{margin:8px 0 12px;font-size:20px}.dg-drawer h4{color:var(--dg-soft);margin:16px 0 6px;font-size:15px}.dg-drawer p,.dg-drawer li{margin:0;font-size:15px;line-height:1.5}.dg-drawer ul{gap:4px;margin:0;padding-left:18px;display:grid}.dg-chip{color:var(--c);font-size:15px;font-weight:700;display:inline-block}.dg-tags{flex-wrap:wrap;gap:6px;display:flex}.dg-tags span{background:var(--dg-card);border:1px solid var(--dg-line);border-radius:999px;padding:3px 9px;font-size:15px}.dg-close{border:1px solid var(--dg-line);background:var(--dg-card);width:32px;height:32px;color:var(--dg-text);cursor:pointer;border-radius:50%;font-size:18px;position:absolute;top:10px;right:10px}@media (width<=700px),(height<=420px){.dg-title span,.dg-hint{display:none}.dg-bar{padding:6px 10px}.dg-title strong{white-space:nowrap;text-overflow:ellipsis;max-width:60vw;font-size:15px;display:block;overflow:hidden}.dg-controls button,.dg-walk-nav button{padding:4px 9px;font-size:15px}.dg-walk{flex-direction:column;align-items:stretch;bottom:8px}.dg-drawer{width:auto;max-height:70%;top:auto;left:8px;right:8px}}
