1 line
43 KiB
XML
1 line
43 KiB
XML
<svg id="my-svg" width="100%" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="flowchart" style="max-width: 2531.77px; background-color: transparent;" viewBox="0 0 2531.76953125 1540" role="graphics-document document" aria-roledescription="flowchart-v2"><style>#my-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#ccc;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#my-svg .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#my-svg .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#my-svg .error-icon{fill:#a44141;}#my-svg .error-text{fill:#ddd;stroke:#ddd;}#my-svg .edge-thickness-normal{stroke-width:1px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-thickness-invisible{stroke-width:0;fill:none;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:lightgrey;stroke:lightgrey;}#my-svg .marker.cross{stroke:lightgrey;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg p{margin:0;}#my-svg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#ccc;}#my-svg .cluster-label text{fill:#F9FFFE;}#my-svg .cluster-label span{color:#F9FFFE;}#my-svg .cluster-label span p{background-color:transparent;}#my-svg .label text,#my-svg span{fill:#ccc;color:#ccc;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#my-svg .rough-node .label text,#my-svg .node .label text,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-anchor:middle;}#my-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#my-svg .rough-node .label,#my-svg .node .label,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-align:center;}#my-svg .node.clickable{cursor:pointer;}#my-svg .root .anchor path{fill:lightgrey!important;stroke-width:0;stroke:lightgrey;}#my-svg .arrowheadPath{fill:lightgrey;}#my-svg .edgePath .path{stroke:lightgrey;stroke-width:1px;}#my-svg .flowchart-link{stroke:lightgrey;fill:none;}#my-svg .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#my-svg .edgeLabel p{background-color:hsl(0, 0%, 34.4117647059%);}#my-svg .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#my-svg .labelBkg{background-color:rgba(87.75, 87.75, 87.75, 0.5);}#my-svg .cluster rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:rgba(255, 255, 255, 0.25);stroke-width:1px;}#my-svg .cluster text{fill:#F9FFFE;}#my-svg .cluster span{color:#F9FFFE;}#my-svg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(20, 1.5873015873%, 12.3529411765%);border:1px solid rgba(255, 255, 255, 0.25);border-radius:2px;pointer-events:none;z-index:100;}#my-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#my-svg rect.text{fill:none;stroke-width:0;}#my-svg .icon-shape,#my-svg .image-shape{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#my-svg .icon-shape p,#my-svg .image-shape p{background-color:hsl(0, 0%, 34.4117647059%);padding:2px;}#my-svg .icon-shape .label rect,#my-svg .image-shape .label rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#my-svg .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#my-svg .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#my-svg .node .neo-node{stroke:#ccc;}#my-svg [data-look="neo"].node rect,#my-svg [data-look="neo"].cluster rect,#my-svg [data-look="neo"].node polygon{stroke:url(#my-svg-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#my-svg [data-look="neo"].node path{stroke:url(#my-svg-gradient);stroke-width:1px;}#my-svg [data-look="neo"].node .outer-path{filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#my-svg [data-look="neo"].node .neo-line path{stroke:#ccc;filter:none;}#my-svg [data-look="neo"].node circle{stroke:url(#my-svg-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#my-svg [data-look="neo"].node circle .state-start{fill:#000000;}#my-svg [data-look="neo"].icon-shape .icon{fill:url(#my-svg-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#my-svg [data-look="neo"].icon-shape .icon-neo path{stroke:url(#my-svg-gradient);filter:drop-shadow( 1px 2px 2px rgba(185,185,185,1));}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker id="my-svg_flowchart-v2-pointEnd" class="marker flowchart-v2" viewBox="0 0 10 10" refX="5" refY="5" markerUnits="userSpaceOnUse" markerWidth="8" markerHeight="8" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-pointStart" class="marker flowchart-v2" viewBox="0 0 10 10" refX="4.5" refY="5" markerUnits="userSpaceOnUse" markerWidth="8" markerHeight="8" orient="auto"><path d="M 0 5 L 10 10 L 10 0 z" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-pointEnd-margin" class="marker flowchart-v2" viewBox="0 0 11.5 14" refX="11.5" refY="7" markerUnits="userSpaceOnUse" markerWidth="10.5" markerHeight="14" orient="auto"><path d="M 0 0 L 11.5 7 L 0 14 z" class="arrowMarkerPath" style="stroke-width: 0; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-pointStart-margin" class="marker flowchart-v2" viewBox="0 0 11.5 14" refX="1" refY="7" markerUnits="userSpaceOnUse" markerWidth="11.5" markerHeight="14" orient="auto"><polygon points="0,7 11.5,14 11.5,0" class="arrowMarkerPath" style="stroke-width: 0; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleEnd" class="marker flowchart-v2" viewBox="0 0 10 10" refX="11" refY="5" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleStart" class="marker flowchart-v2" viewBox="0 0 10 10" refX="-1" refY="5" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleEnd-margin" class="marker flowchart-v2" viewBox="0 0 10 10" refY="5" refX="12.25" markerUnits="userSpaceOnUse" markerWidth="14" markerHeight="14" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 0; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-circleStart-margin" class="marker flowchart-v2" viewBox="0 0 10 10" refX="-2" refY="5" markerUnits="userSpaceOnUse" markerWidth="14" markerHeight="14" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 0; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-crossEnd" class="marker cross flowchart-v2" viewBox="0 0 11 11" refX="12" refY="5.2" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><path d="M 1,1 l 9,9 M 10,1 l -9,9" class="arrowMarkerPath" style="stroke-width: 2; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-crossStart" class="marker cross flowchart-v2" viewBox="0 0 11 11" refX="-1" refY="5.2" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><path d="M 1,1 l 9,9 M 10,1 l -9,9" class="arrowMarkerPath" style="stroke-width: 2; stroke-dasharray: 1, 0;"/></marker><marker id="my-svg_flowchart-v2-crossEnd-margin" class="marker cross flowchart-v2" viewBox="0 0 15 15" refX="17.7" refY="7.5" markerUnits="userSpaceOnUse" markerWidth="12" markerHeight="12" orient="auto"><path d="M 1,1 L 14,14 M 1,14 L 14,1" class="arrowMarkerPath" style="stroke-width: 2.5;"/></marker><marker id="my-svg_flowchart-v2-crossStart-margin" class="marker cross flowchart-v2" viewBox="0 0 15 15" refX="-3.5" refY="7.5" markerUnits="userSpaceOnUse" markerWidth="12" markerHeight="12" orient="auto"><path d="M 1,1 L 14,14 M 1,14 L 14,1" class="arrowMarkerPath" style="stroke-width: 2.5; stroke-dasharray: 1, 0;"/></marker><g class="root"><g class="clusters"><g class="cluster" id="my-svg-LAN" data-look="classic"><rect style="" x="8" y="883" width="459.0703125" height="649"/><g class="cluster-label" transform="translate(66.74609375, 883)"><foreignObject width="341.578125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5;"><span class="nodeLabel"><p>🏠 LAN BACKBONE — Beryl Router (OpenWrt)</p></span></div></foreignObject></g></g><g class="cluster" id="my-svg-NETBIRD" data-look="classic"><rect style="" x="1418.8828125" y="433" width="1104.88671875" height="602"/><g class="cluster-label" transform="translate(1768.091796875, 433)"><foreignObject width="406.46875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5;"><span class="nodeLabel"><p>🕊️ NETBIRD OVERLAY — WireTrustee SA (User-facing)</p></span></div></foreignObject></g></g><g class="cluster" id="my-svg-TAILSCALE" data-look="classic"><rect style="" x="41.1640625" y="8" width="1357.71875" height="577"/><g class="cluster-label" transform="translate(488.890625, 8)"><foreignObject width="462.265625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5;"><span class="nodeLabel"><p>🛡️ TAILSCALE OVERLAY — Tailscale Inc. (Admin/Management)</p></span></div></foreignObject></g></g></g><g class="edgePaths"><path d="M931.986,135L947.873,143.167C963.759,151.333,995.532,167.667,1011.418,184C1027.305,200.333,1027.305,216.667,1027.305,224.833L1027.305,233" id="my-svg-L_TSCOORD_TSART_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSCOORD_TSART_0" data-points="W3sieCI6OTMxLjk4NjI4OTA2MjUsInkiOjEzNX0seyJ4IjoxMDI3LjMwNDY4NzUsInkiOjE4NH0seyJ4IjoxMDI3LjMwNDY4NzUsInkiOjIzM31d" data-look="classic"/><path d="M702.777,120.314L664.779,130.928C626.781,141.543,550.785,162.771,512.787,181.552C474.789,200.333,474.789,216.667,474.789,224.833L474.789,233" id="my-svg-L_TSCOORD_TSM44_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSCOORD_TSM44_0" data-points="W3sieCI6NzAyLjc3NzM0Mzc1LCJ5IjoxMjAuMzE0MDM3ODYzNDk1fSx7IngiOjQ3NC43ODkwNjI1LCJ5IjoxODR9LHsieCI6NDc0Ljc4OTA2MjUsInkiOjIzM31d" data-look="classic"/><path d="M781.799,135L773.636,143.167C765.473,151.333,749.147,167.667,740.983,184C732.82,200.333,732.82,216.667,732.82,224.833L732.82,233" id="my-svg-L_TSCOORD_TSM5_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSCOORD_TSM5_0" data-points="W3sieCI6NzgxLjc5OTI1NzgxMjUsInkiOjEzNX0seyJ4Ijo3MzIuODIwMzEyNSwieSI6MTg0fSx7IngiOjczMi44MjAzMTI1LCJ5IjoyMzN9XQ==" data-look="classic"/><path d="M702.777,108.148L634.718,120.79C566.659,133.432,430.54,158.716,362.481,186.025C294.422,213.333,294.422,242.667,294.422,274C294.422,305.333,294.422,338.667,294.422,365.5C294.422,392.333,294.422,412.667,294.422,429C294.422,445.333,294.422,457.667,294.422,463.833L294.422,470" id="my-svg-L_TSCOORD_TSM7_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSCOORD_TSM7_0" data-points="W3sieCI6NzAyLjc3NzM0Mzc1LCJ5IjoxMDguMTQ3NjEzODk5Mzg5Nzh9LHsieCI6Mjk0LjQyMTg3NSwieSI6MTg0fSx7IngiOjI5NC40MjE4NzUsInkiOjI3Mn0seyJ4IjoyOTQuNDIxODc1LCJ5IjozNzJ9LHsieCI6Mjk0LjQyMTg3NSwieSI6NDMzfSx7IngiOjI5NC40MjE4NzUsInkiOjQ3MH1d" data-look="classic"/><path d="M962.777,112.773L1016.413,124.644C1070.049,136.515,1177.322,160.258,1230.958,186.795C1284.594,213.333,1284.594,242.667,1284.594,274C1284.594,305.333,1284.594,338.667,1284.594,365.5C1284.594,392.333,1284.594,412.667,1281.814,427C1279.033,441.333,1273.473,449.667,1270.693,453.833L1267.913,458" id="my-svg-L_TSCOORD_TSNEO_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSCOORD_TSNEO_0" data-points="W3sieCI6OTYyLjc3NzM0Mzc1LCJ5IjoxMTIuNzcyNzQ4ODg2ODcxNTd9LHsieCI6MTI4NC41OTM3NSwieSI6MTg0fSx7IngiOjEyODQuNTkzNzUsInkiOjI3Mn0seyJ4IjoxMjg0LjU5Mzc1LCJ5IjozNzJ9LHsieCI6MTI4NC41OTM3NSwieSI6NDMzfSx7IngiOjEyNjcuOTEyNTIwNTU5MjEwNiwieSI6NDU4fV0=" data-look="classic"/><path d="M2358.77,560L2358.77,564.167C2358.77,568.333,2358.77,576.667,2358.77,589C2358.77,601.333,2358.77,617.667,2315.796,635.804C2272.823,653.941,2186.876,673.882,2143.903,683.852L2100.93,693.823" id="my-svg-L_NBCOORD_NBNEO_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_NBCOORD_NBNEO_0" data-points="W3sieCI6MjM1OC43Njk1MzEyNSwieSI6NTYwfSx7IngiOjIzNTguNzY5NTMxMjUsInkiOjU4NX0seyJ4IjoyMzU4Ljc2OTUzMTI1LCJ5Ijo2MzR9LHsieCI6MjEwMC45Mjk2ODc1LCJ5Ijo2OTMuODIyODE2MzU4ODk4OX1d" data-look="classic"/><path d="M1885.66,761L1861.202,771.167C1836.744,781.333,1787.827,801.667,1763.369,822C1738.91,842.333,1738.91,862.667,1738.91,881C1738.91,899.333,1738.91,915.667,1738.91,923.833L1738.91,932" id="my-svg-L_NBNEO_NBNC_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_NBNEO_NBNC_0" data-points="W3sieCI6MTg4NS42NjA0Mjk2ODc1LCJ5Ijo3NjF9LHsieCI6MTczOC45MTAxNTYyNSwieSI6ODIyfSx7IngiOjE3MzguOTEwMTU2MjUsInkiOjg4M30seyJ4IjoxNzM4LjkxMDE1NjI1LCJ5Ijo5MzJ9XQ==" data-look="classic"/><path d="M1975.15,761L1974.02,771.167C1972.89,781.333,1970.631,801.667,1969.501,822C1968.371,842.333,1968.371,862.667,1968.371,881C1968.371,899.333,1968.371,915.667,1968.371,923.833L1968.371,932" id="my-svg-L_NBNEO_NBVW_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_NBNEO_NBVW_0" data-points="W3sieCI6MTk3NS4xNTAxOTUzMTI1LCJ5Ijo3NjF9LHsieCI6MTk2OC4zNzEwOTM3NSwieSI6ODIyfSx7IngiOjE5NjguMzcxMDkzNzUsInkiOjg4M30seyJ4IjoxOTY4LjM3MTA5Mzc1LCJ5Ijo5MzJ9XQ==" data-look="classic"/><path d="M2058.747,761L2079.41,771.167C2100.072,781.333,2141.398,801.667,2162.06,822C2182.723,842.333,2182.723,862.667,2182.723,881C2182.723,899.333,2182.723,915.667,2182.723,923.833L2182.723,932" id="my-svg-L_NBNEO_NBDOCK_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_NBNEO_NBDOCK_0" data-points="W3sieCI6MjA1OC43NDczMDQ2ODc1LCJ5Ijo3NjF9LHsieCI6MjE4Mi43MjI2NTYyNSwieSI6ODIyfSx7IngiOjIxODIuNzIyNjU2MjUsInkiOjg4M30seyJ4IjoyMTgyLjcyMjY1NjI1LCJ5Ijo5MzJ9XQ==" data-look="classic"/><path d="M2100.93,750.889L2150.753,762.741C2200.577,774.593,2300.224,798.296,2350.048,820.315C2399.871,842.333,2399.871,862.667,2399.871,881C2399.871,899.333,2399.871,915.667,2399.871,923.833L2399.871,932" id="my-svg-L_NBNEO_NBTRIL_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_NBNEO_NBTRIL_0" data-points="W3sieCI6MjEwMC45Mjk2ODc1LCJ5Ijo3NTAuODg4OTUwODM1ODE5fSx7IngiOjIzOTkuODcxMDkzNzUsInkiOjgyMn0seyJ4IjoyMzk5Ljg3MTA5Mzc1LCJ5Ijo4ODN9LHsieCI6MjM5OS44NzEwOTM3NSwieSI6OTMyfV0=" data-look="classic"/><path d="M275.957,1010L270.83,1014.167C265.703,1018.333,255.449,1026.667,250.322,1037C245.195,1047.333,245.195,1059.667,242.234,1071.411C239.273,1083.156,233.351,1094.311,230.39,1099.889L227.429,1105.467" id="my-svg-L_BERYL_MK7LAN_0" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_BERYL_MK7LAN_0" data-points="W3sieCI6Mjc1Ljk1NzAzMTI1LCJ5IjoxMDEwfSx7IngiOjI0NS4xOTUzMTI1LCJ5IjoxMDM1fSx7IngiOjI0NS4xOTUzMTI1LCJ5IjoxMDcyfSx7IngiOjIyNS41NTM5NDA3MTY5MTE3NywieSI6MTEwOX1d" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M367.676,1010L370.043,1014.167C372.409,1018.333,377.142,1026.667,379.509,1037C381.875,1047.333,381.875,1059.667,381.875,1088.5C381.875,1117.333,381.875,1162.667,381.875,1208C381.875,1253.333,381.875,1298.667,369.33,1327.339C356.786,1356.012,331.697,1368.023,319.152,1374.029L306.608,1380.035" id="my-svg-L_BERYL_WORKERS_0" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_BERYL_WORKERS_0" data-points="W3sieCI6MzY3LjY3NjI5NTIzMDI2MzIsInkiOjEwMTB9LHsieCI6MzgxLjg3NSwieSI6MTAzNX0seyJ4IjozODEuODc1LCJ5IjoxMDcyfSx7IngiOjM4MS44NzUsInkiOjEyMDh9LHsieCI6MzgxLjg3NSwieSI6MTM0NH0seyJ4IjozMDMsInkiOjEzODEuNzYxODE5MjY5ODk4M31d" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M173,1307L173,1313.167C173,1319.333,173,1331.667,173,1344C173,1356.333,173,1368.667,173,1374.833L173,1381" id="my-svg-L_MK7LAN_WORKERS_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_MK7LAN_WORKERS_0" data-points="W3sieCI6MTczLCJ5IjoxMzA3fSx7IngiOjE3MywieSI6MTM0NH0seyJ4IjoxNzMsInkiOjEzODF9XQ==" data-look="classic"/><path d="M909.063,285.324L780.858,299.77C652.654,314.216,396.245,343.108,268.04,367.721C139.836,392.333,139.836,412.667,139.836,435.5C139.836,458.333,139.836,483.667,139.836,509C139.836,534.333,139.836,559.667,139.836,580.5C139.836,601.333,139.836,617.667,139.836,640.5C139.836,663.333,139.836,692.667,139.836,724C139.836,755.333,139.836,788.667,139.836,815.5C139.836,842.333,139.836,862.667,139.836,885.5C139.836,908.333,139.836,933.667,139.836,959C139.836,984.333,139.836,1009.667,139.836,1028.5C139.836,1047.333,139.836,1059.667,141.182,1071.352C142.528,1083.038,145.219,1094.076,146.565,1099.595L147.911,1105.114" id="my-svg-L_TSART_MK7LAN_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSART_MK7LAN_0" data-points="W3sieCI6OTA5LjA2MjUsInkiOjI4NS4zMjM1MzI1MTg3NTA2NX0seyJ4IjoxMzkuODM1OTM3NSwieSI6MzcyfSx7IngiOjEzOS44MzU5Mzc1LCJ5Ijo0MzN9LHsieCI6MTM5LjgzNTkzNzUsInkiOjUwOX0seyJ4IjoxMzkuODM1OTM3NSwieSI6NTg1fSx7IngiOjEzOS44MzU5Mzc1LCJ5Ijo2MzR9LHsieCI6MTM5LjgzNTkzNzUsInkiOjcyMn0seyJ4IjoxMzkuODM1OTM3NSwieSI6ODIyfSx7IngiOjEzOS44MzU5Mzc1LCJ5Ijo4ODN9LHsieCI6MTM5LjgzNTkzNzUsInkiOjk1OX0seyJ4IjoxMzkuODM1OTM3NSwieSI6MTAzNX0seyJ4IjoxMzkuODM1OTM3NSwieSI6MTA3Mn0seyJ4IjoxNDguODU4NTEzMzI3MjA1ODgsInkiOjExMDl9XQ==" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1079.028,311L1092.512,321.167C1105.996,331.333,1132.963,351.667,1146.446,372C1159.93,392.333,1159.93,412.667,1163.519,426.522C1167.109,440.378,1174.288,447.755,1177.877,451.444L1181.467,455.133" id="my-svg-L_TSART_TSNEO_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSART_TSNEO_0" data-points="W3sieCI6MTA3OS4wMjg0Mzc1LCJ5IjozMTF9LHsieCI6MTE1OS45Mjk2ODc1LCJ5IjozNzJ9LHsieCI6MTE1OS45Mjk2ODc1LCJ5Ijo0MzN9LHsieCI6MTE4NC4yNTYzNzMzNTUyNjMxLCJ5Ijo0NTh9XQ==" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M184.987,548L167.683,554.167C150.379,560.333,115.772,572.667,98.468,587C81.164,601.333,81.164,617.667,81.164,640.5C81.164,663.333,81.164,692.667,81.164,724C81.164,755.333,81.164,788.667,81.164,815.5C81.164,842.333,81.164,862.667,81.164,885.5C81.164,908.333,81.164,933.667,81.164,959C81.164,984.333,81.164,1009.667,81.164,1028.5C81.164,1047.333,81.164,1059.667,84.955,1071.448C88.746,1083.228,96.328,1094.457,100.119,1100.071L103.91,1105.685" id="my-svg-L_TSM7_MK7LAN_0" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSM7_MK7LAN_0" data-points="W3sieCI6MTg0Ljk4Njk0NDkwMTMxNTc4LCJ5Ijo1NDh9LHsieCI6ODEuMTY0MDYyNSwieSI6NTg1fSx7IngiOjgxLjE2NDA2MjUsInkiOjYzNH0seyJ4Ijo4MS4xNjQwNjI1LCJ5Ijo3MjJ9LHsieCI6ODEuMTY0MDYyNSwieSI6ODIyfSx7IngiOjgxLjE2NDA2MjUsInkiOjg4M30seyJ4Ijo4MS4xNjQwNjI1LCJ5Ijo5NTl9LHsieCI6ODEuMTY0MDYyNSwieSI6MTAzNX0seyJ4Ijo4MS4xNjQwNjI1LCJ5IjoxMDcyfSx7IngiOjEwNi4xNDg4Mzk2MTM5NzA2LCJ5IjoxMTA5fV0=" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1233.883,560L1233.883,564.167C1233.883,568.333,1233.883,576.667,1396.243,589C1558.603,601.333,1883.323,617.667,2025.094,633.76C2166.865,649.854,2125.688,665.709,2105.099,673.636L2084.51,681.563" id="my-svg-L_TSNEO_NBNEO_0" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSNEO_NBNEO_0" data-points="W3sieCI6MTIzMy44ODI4MTI1LCJ5Ijo1NjB9LHsieCI6MTIzMy44ODI4MTI1LCJ5Ijo1ODV9LHsieCI6MjIwOC4wNDI5Njg3NSwieSI6NjM0fSx7IngiOjIwODAuNzc3Mzg4MTM5MjA0NSwieSI6NjgzfV0=" data-look="classic" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1027.305,311L1027.305,321.167C1027.305,331.333,1027.305,351.667,1027.305,372C1027.305,392.333,1027.305,412.667,1027.305,435.5C1027.305,458.333,1027.305,483.667,1027.305,509C1027.305,534.333,1027.305,559.667,1162.514,580.5C1297.723,601.333,1568.141,617.667,1716.428,634C1864.715,650.333,1890.872,666.667,1903.95,674.833L1917.029,683" id="my-svg-L_TSART_NBNEO_0" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSART_NBNEO_0" data-points="W3sieCI6MTAyNy4zMDQ2ODc1LCJ5IjozMTF9LHsieCI6MTAyNy4zMDQ2ODc1LCJ5IjozNzJ9LHsieCI6MTAyNy4zMDQ2ODc1LCJ5Ijo0MzN9LHsieCI6MTAyNy4zMDQ2ODc1LCJ5Ijo1MDl9LHsieCI6MTAyNy4zMDQ2ODc1LCJ5Ijo1ODV9LHsieCI6MTgzOC41NTg1OTM3NSwieSI6NjM0fSx7IngiOjE5MTcuMDI4NjMxMDM2OTMxOCwieSI6NjgzfV0=" data-look="classic" marker-end="url(#my-svg_flowchart-v2-crossEnd)"/><path d="M414.008,522.849L503.454,533.207C592.9,543.566,771.792,564.283,953.975,582.808C1136.158,601.333,1321.632,617.667,1472.857,636.729C1624.083,655.792,1741.061,677.584,1799.55,688.48L1858.039,699.376" id="my-svg-L_TSM7_NBNEO_0" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_TSM7_NBNEO_0" data-points="W3sieCI6NDE0LjAwNzgxMjUsInkiOjUyMi44NDg5NDMxNzM2MzM4fSx7IngiOjk1MC42ODM1OTM3NSwieSI6NTg1fSx7IngiOjE1MDcuMTA1NDY4NzUsInkiOjYzNH0seyJ4IjoxODU4LjAzOTA2MjUsInkiOjY5OS4zNzU4MTU1NjExOTcxfV0=" data-look="classic" marker-end="url(#my-svg_flowchart-v2-crossEnd)"/><path d="M1858.039,750.753L1807.883,762.627C1757.728,774.502,1657.417,798.251,1607.261,820.292C1557.105,842.333,1557.105,862.667,1375.433,873.197C1193.76,883.728,830.415,884.455,648.743,884.819L467.07,885.183" id="my-svg-L_NBNEO_LAN_0" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_NBNEO_LAN_0" data-points="W3sieCI6MTg1OC4wMzkwNjI1LCJ5Ijo3NTAuNzUyNjkzNTQxOTczfSx7IngiOjE1NTcuMTA1NDY4NzUsInkiOjgyMn0seyJ4IjoxNTU3LjEwNTQ2ODc1LCJ5Ijo4ODN9LHsieCI6NDMyLjA3MDMxMjUsInkiOjk1My4xNzY1MDY2MDkyOTk1fV0=" data-look="classic" marker-end="url(#my-svg_flowchart-v2-crossEnd)"/><path d="M1858.039,701.985L1789.287,690.654C1720.535,679.323,1583.031,656.662,1419.035,637.164C1255.039,617.667,1064.551,601.333,969.307,593.167L874.063,585" id="my-svg-L_NBNEO_TAILSCALE_0" class="edge-thickness-normal edge-pattern-dotted edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_NBNEO_TAILSCALE_0" data-points="W3sieCI6MTg1OC4wMzkwNjI1LCJ5Ijo3MDEuOTg0OTI5NzMzMDUxNH0seyJ4IjoxNDQ1LjUyNzM0Mzc1LCJ5Ijo2MzR9LHsieCI6ODc0LjA2MjUsInkiOjU4NX0seyJ4Ijo4NzQuMDYyNSwieSI6NTA5fSx7IngiOjg3NC4wNjI1LCJ5Ijo0MzN9LHsieCI6ODc0LjA2MjUsInkiOjM3Mn0seyJ4Ijo4NzQuMDYyNSwieSI6MjcyfSx7IngiOjg3NC4wNjI1LCJ5IjoxODR9LHsieCI6ODUzLjgzMjc3MzQzNzUsInkiOjEzNX1d" data-look="classic" marker-end="url(#my-svg_flowchart-v2-crossEnd)"/></g><g class="edgeLabels"><g class="edgeLabel" transform="translate(1027.3046875, 184)"><g class="label" data-id="L_TSCOORD_TSART_0" transform="translate(-62.6953125, -24)"><foreignObject width="125.390625" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>admin mesh<br />WireGuard tunnel</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(474.7890625, 184)"><g class="label" data-id="L_TSCOORD_TSM44_0" transform="translate(-43.578125, -12)"><foreignObject width="87.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>admin mesh</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(732.8203125, 184)"><g class="label" data-id="L_TSCOORD_TSM5_0" transform="translate(-43.578125, -12)"><foreignObject width="87.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>admin mesh</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(294.421875, 272)"><g class="label" data-id="L_TSCOORD_TSM7_0" transform="translate(-43.578125, -12)"><foreignObject width="87.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>admin mesh</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1284.59375, 272)"><g class="label" data-id="L_TSCOORD_TSNEO_0" transform="translate(-43.578125, -12)"><foreignObject width="87.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>admin mesh</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(2358.76953125, 634)"><g class="label" data-id="L_NBCOORD_NBNEO_0" transform="translate(-62.6953125, -24)"><foreignObject width="125.390625" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>user mesh<br />WireGuard tunnel</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1738.91015625, 822)"><g class="label" data-id="L_NBNEO_NBNC_0" transform="translate(-61.8046875, -12)"><foreignObject width="123.609375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>Docker Compose</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1968.37109375, 822)"><g class="label" data-id="L_NBNEO_NBVW_0" transform="translate(-61.8046875, -12)"><foreignObject width="123.609375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>Docker Compose</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(2182.72265625, 822)"><g class="label" data-id="L_NBNEO_NBDOCK_0" transform="translate(-61.8046875, -12)"><foreignObject width="123.609375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>Docker Compose</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(2399.87109375, 822)"><g class="label" data-id="L_NBNEO_NBTRIL_0" transform="translate(-61.8046875, -12)"><foreignObject width="123.609375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>Docker Compose</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(245.1953125, 1072)"><g class="label" data-id="L_BERYL_MK7LAN_0" transform="translate(-43.875, -12)"><foreignObject width="87.75" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>DHCP lease</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(381.875, 1208)"><g class="label" data-id="L_BERYL_WORKERS_0" transform="translate(-43.875, -12)"><foreignObject width="87.75" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>DHCP lease</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(173, 1344)"><g class="label" data-id="L_MK7LAN_WORKERS_0" transform="translate(-51.5703125, -12)"><foreignObject width="103.140625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>swarm overlay</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(139.8359375, 722)"><g class="label" data-id="L_TSART_MK7LAN_0" transform="translate(-38.671875, -12)"><foreignObject width="77.34375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>SSH mgmt</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1159.9296875, 372)"><g class="label" data-id="L_TSART_TSNEO_0" transform="translate(-38.671875, -12)"><foreignObject width="77.34375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>SSH mgmt</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(81.1640625, 822)"><g class="label" data-id="L_TSM7_MK7LAN_0" transform="translate(-38.671875, -12)"><foreignObject width="77.34375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>SSH mgmt</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(2208.04296875, 634)"><g class="label" data-id="L_TSNEO_NBNEO_0" transform="translate(-68.03125, -12)"><foreignObject width="136.0625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>same physical host</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1027.3046875, 509)"><g class="label" data-id="L_TSART_NBNEO_0" transform="translate(-41.578125, -12)"><foreignObject width="83.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>🔒 no route</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1137.60211, 601.46055)"><g class="label" data-id="L_TSM7_NBNEO_0" transform="translate(-41.578125, -12)"><foreignObject width="83.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel"><p>🔒 no route</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1197.21385, 883.72082)"><g class="label" data-id="L_NBNEO_LAN_0" transform="translate(-100, -36)"><foreignObject width="200" height="72"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="edgeLabel"><p>🔒 INTENTIONAL ISOLATION<br />services NOT on Tailscale</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1368.06889, 627.35836)"><g class="label" data-id="L_NBNEO_TAILSCALE_0" transform="translate(-100, -36)"><foreignObject width="200" height="72"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="edgeLabel"><p>🔒 INTENTIONAL ISOLATION<br />services NOT on Tailscale</p></span></div></foreignObject></g></g></g><g class="nodes"><g class="node default" id="my-svg-flowchart-TSCOORD-0" data-look="classic" transform="translate(832.77734375, 84)"><rect class="basic label-container" style="" x="-130" y="-51" width="260" height="102"/><g class="label" style="" transform="translate(-100, -36)"><rect/><foreignObject width="200" height="72"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>Tailscale Coordination Server<br />(proprietary SaaS)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-TSART-1" data-look="classic" transform="translate(1027.3046875, 272)"><rect class="basic label-container" style="" x="-118.2421875" y="-39" width="236.484375" height="78"/><g class="label" style="" transform="translate(-88.2421875, -24)"><rect/><foreignObject width="176.484375" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>🤖 Artemis (AI Foreman)<br />100.100.97.18</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-TSM44-2" data-look="classic" transform="translate(474.7890625, 272)"><rect class="basic label-container" style="" x="-101.7890625" y="-39" width="203.578125" height="78"/><g class="label" style="" transform="translate(-71.7890625, -24)"><rect/><foreignObject width="143.578125" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>🔧 Mark44 (Ollama)<br />100.75.26.83</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-TSM5-3" data-look="classic" transform="translate(732.8203125, 272)"><rect class="basic label-container" style="" x="-106.2421875" y="-39" width="212.484375" height="78"/><g class="label" style="" transform="translate(-76.2421875, -24)"><rect/><foreignObject width="152.484375" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>📚 Mark5 (Research)<br />100.118.67.105</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-TSM7-4" data-look="classic" transform="translate(294.421875, 509)"><rect class="basic label-container" style="" x="-119.5859375" y="-39" width="239.171875" height="78"/><g class="label" style="" transform="translate(-89.5859375, -24)"><rect/><foreignObject width="179.171875" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>⚡ MK7 Swarm Manager<br />100.66.70.51</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-TSNEO-5" data-look="classic" transform="translate(1233.8828125, 509)"><rect class="basic label-container" style="fill:#2d3748 !important;stroke:#63b3ed !important;stroke-width:2px !important;stroke-dasharray:5 5 !important" x="-130" y="-51" width="260" height="102"/><g class="label" style="" transform="translate(-100, -36)"><rect/><foreignObject width="200" height="72"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>🖥️ Neo (SSH mgmt only)<br />Tailscale IP — admin access</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-NBCOORD-6" data-look="classic" transform="translate(2358.76953125, 509)"><rect class="basic label-container" style="" x="-130" y="-51" width="260" height="102"/><g class="label" style="" transform="translate(-100, -36)"><rect/><foreignObject width="200" height="72"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>NetBird Coordination Server<br />(cloud or self-hosted)</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-NBNEO-7" data-look="classic" transform="translate(1979.484375, 722)"><rect class="basic label-container" style="fill:#2d3748 !important;stroke:#f6ad55 !important;stroke-width:2px !important;stroke-dasharray:5 5 !important" x="-121.4453125" y="-39" width="242.890625" height="78"/><g class="label" style="" transform="translate(-91.4453125, -24)"><rect/><foreignObject width="182.890625" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>🖥️ Neo (Service host)<br />NetBird IP — user access</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-NBNC-8" data-look="classic" transform="translate(1738.91015625, 959)"><rect class="basic label-container" style="" x="-93.359375" y="-27" width="186.71875" height="54"/><g class="label" style="" transform="translate(-63.359375, -12)"><rect/><foreignObject width="126.71875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>☁️ Nextcloud AIO</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-NBVW-9" data-look="classic" transform="translate(1968.37109375, 959)"><rect class="basic label-container" style="" x="-86.1015625" y="-27" width="172.203125" height="54"/><g class="label" style="" transform="translate(-56.1015625, -12)"><rect/><foreignObject width="112.203125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>🔐 Vaultwarden</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-NBDOCK-10" data-look="classic" transform="translate(2182.72265625, 959)"><rect class="basic label-container" style="" x="-78.25" y="-27" width="156.5" height="54"/><g class="label" style="" transform="translate(-48.25, -12)"><rect/><foreignObject width="96.5" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>🐳 Dockhand</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-NBTRIL-11" data-look="classic" transform="translate(2399.87109375, 959)"><rect class="basic label-container" style="" x="-88.8984375" y="-27" width="177.796875" height="54"/><g class="label" style="" transform="translate(-58.8984375, -12)"><rect/><foreignObject width="117.796875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>📝 Trilium Notes</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-BERYL-12" data-look="classic" transform="translate(338.7109375, 959)"><rect class="basic label-container" style="" x="-93.359375" y="-51" width="186.71875" height="102"/><g class="label" style="" transform="translate(-63.359375, -36)"><rect/><foreignObject width="126.71875" height="72"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel"><p>🌐 Beryl 7<br />Gateway + DHCP<br />192.168.0.0/18</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-MK7LAN-13" data-look="classic" transform="translate(173, 1208)"><rect class="basic label-container" style="" x="-130" y="-99" width="260" height="198"/><g class="label" style="" transform="translate(-100, -84)"><rect/><foreignObject width="200" height="168"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>⚡ MK7<br />Traefik · Technitium · Prometheus<br />Beszel Hub · Portainer CE · Dozzle · Homepage<br />Node Exporter (global)<br />192.168.7.7</p></span></div></foreignObject></g></g><g class="node default" id="my-svg-flowchart-WORKERS-14" data-look="classic" transform="translate(173, 1444)"><rect class="basic label-container" style="" x="-130" y="-63" width="260" height="126"/><g class="label" style="" transform="translate(-100, -48)"><rect/><foreignObject width="200" height="96"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>🔩 MK33 · MK34 · MK39 · MK42<br />Swarm Workers (G9 nodes)<br />192.168.0.x</p></span></div></foreignObject></g></g></g></g></g><defs><filter id="my-svg-drop-shadow" height="130%" width="130%"><feDropShadow dx="4" dy="4" stdDeviation="0" flood-opacity="0.06" flood-color="#FFFFFF"/></filter></defs><defs><filter id="my-svg-drop-shadow-small" height="150%" width="150%"><feDropShadow dx="2" dy="2" stdDeviation="0" flood-opacity="0.06" flood-color="#FFFFFF"/></filter></defs><linearGradient id="my-svg-gradient" gradientUnits="objectBoundingBox" x1="0%" y1="0%" x2="100%" y2="0%"><stop offset="0%" stop-color="#cccccc" stop-opacity="1"/><stop offset="100%" stop-color="hsl(180, 0%, 18.3529411765%)" stop-opacity="1"/></linearGradient></svg> |