.p2p-flow{width:100%;min-width:0;color:var(--p2p-text);font-family:var(--p2p-sans);line-height:1.6;container-type:inline-size}.p2p-flow .flow-card{background:var(--p2p-surface);border:1px solid #c084fc33;border-radius:25px;margin:0;overflow:hidden;box-shadow:0 26px 70px #0000004d}.p2p-flow .flow-header{border-bottom:1px solid var(--p2p-line);background:linear-gradient(110deg,#a855f70a,#0000);justify-content:space-between;align-items:center;gap:12px;padding:20px 22px 18px;display:flex}.p2p-flow .flow-overline,.p2p-flow .flow-node-label,.p2p-flow .flow-badge,.p2p-flow .flow-context{font-family:var(--p2p-mono);font-size:10px;font-weight:500;line-height:1.5}.p2p-flow .flow-overline{color:var(--p2p-accent-light);letter-spacing:.035em;margin:0}.p2p-flow .flow-header :is(h2,.flow-title){color:var(--p2p-text);font:600 15px/1.5 var(--p2p-sans);letter-spacing:-.03em;text-wrap:initial;border:0;margin:6px 0 0;padding:0}.p2p-flow .flow-badge{border:1px solid var(--p2p-line-accent);color:var(--p2p-accent-light);text-transform:uppercase;background:#a855f70f;border-radius:999px;flex-shrink:0;padding:5px 9px;font-size:9px}.p2p-flow .flow-context{border-bottom:1px solid var(--p2p-line);color:var(--p2p-muted);background:#a855f709;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 22px;display:flex}.p2p-flow .flow-context>span:last-child{color:var(--p2p-accent-light);font-size:9px}.p2p-flow .flow-node{z-index:1;background:var(--p2p-raised);overflow-wrap:anywhere;border:1px solid #ffffff1f;border-radius:14px;min-width:0;margin:0;padding:15px 12px;position:relative;box-shadow:0 8px 20px #0000001f}.p2p-flow .flow-node-label{color:var(--p2p-muted);letter-spacing:.035em;text-transform:uppercase;font-size:9px;display:block}.p2p-flow .flow-node strong{color:var(--p2p-text);font:600 13px/1.5 var(--p2p-sans);letter-spacing:-.025em;margin-top:7px;display:block}.p2p-flow .flow-detail{color:var(--p2p-muted);font:400 11px/1.6 var(--p2p-sans);margin-top:6px;display:block}.p2p-flow .flow-core{background:#1b1322;border-color:#c084fc80;box-shadow:0 0 0 4px #a855f70f,0 12px 26px #a855f714}.p2p-flow .flow-brand{background:var(--p2p-accent);color:#12082a;width:32px;height:32px;font:800 15px/1 var(--p2p-mono);border-radius:11px;place-items:center;margin-block:14px 18px;display:grid;box-shadow:0 6px 18px #a855f733}.p2p-flow .flow-accent,.p2p-flow .flow-core .flow-detail{color:var(--p2p-accent-light)}.p2p-flow .flow-result{border-top:1px solid var(--p2p-line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.p2p-flow .flow-result>div{overflow-wrap:anywhere;min-width:0;min-height:74px;padding:15px 18px}.p2p-flow .flow-result>div+div{border-left:1px solid var(--p2p-line)}.p2p-flow .flow-result strong{font:500 11px/1.6 var(--p2p-mono);margin-top:5px;display:block}.p2p-flow .flow-description{max-width:480px;color:var(--p2p-muted);font:400 12px/1.75 var(--p2p-sans);text-align:center;margin:14px auto 0}.p2p-flow .flow-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.traffic-flow{padding-top:32px;position:relative}.traffic-flow .flow-card{transform:rotate(-.6deg)}.flow-floating{background:var(--p2p-raised);width:fit-content;max-width:calc(100% - 16px);font:400 10px/1.5 var(--p2p-mono);border:1px solid #c084fc2e;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;display:flex;box-shadow:0 8px 20px #0003}.flow-floating-top{z-index:2;position:absolute;top:7px;left:24px;transform:rotate(-3deg)}.flow-floating-bottom{margin:14px 0 0 auto}.flow-dot{background:var(--p2p-accent-light);border-radius:50%;flex:0 0 5px;width:5px;height:5px}.traffic-map{grid-template-columns:.95fr .95fr 1.18fr;align-items:center;gap:16px;min-height:320px;padding:22px 18px;display:grid;position:relative}.traffic-map .flow-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.flow-line{fill:none;stroke:#3d3344;stroke-width:1.5px;vector-effect:non-scaling-stroke}.flow-line-active{stroke:var(--p2p-accent-light);stroke-width:2px;stroke-dasharray:5 6;animation:12s linear infinite p2p-traffic-flow}.flow-line-paused{stroke:#96879e;stroke-dasharray:3 5}.traffic-outcomes{grid-auto-rows:1fr;gap:10px;min-width:0;display:grid}.traffic-outcome{min-height:82px}.traffic-map .traffic-outcome{padding:12px 10px;transition:border-color .18s,box-shadow .18s}.traffic-map .traffic-outcome strong{margin-top:5px;font-size:12px}.traffic-map .traffic-outcome .flow-detail{margin-top:4px;font-size:10px}.flow-capacity{background:#353039;border-radius:4px;height:4px;margin-top:16px}.flow-capacity:before{content:"";border-radius:inherit;background:#776782;width:70%;height:100%;display:block}.flow-check{color:var(--p2p-accent-light);font-size:10px;display:none;position:absolute;top:9px;right:9px}.traffic-flow [data-flow-state]{display:none}.traffic-flow:has(input[value=pending]:checked) [data-flow-state=pending],.traffic-flow:has(input[value=sharing]:checked) [data-flow-state=sharing],.traffic-flow:has(input[value=off]:checked) [data-flow-state=off]{display:inline}.traffic-flow:has(input[value=pending]:checked) [data-flow-outcome=pending],.traffic-flow:has(input[value=off]:checked) [data-flow-outcome=off]{border-color:#96879e;box-shadow:0 0 0 2px #c084fc0d}.traffic-flow:has(input[value=sharing]:checked) [data-flow-outcome=sharing]{border-color:#34d97b8c;box-shadow:0 0 0 2px #34d97b0f}.traffic-flow:has(input[value=sharing]:checked) [data-flow-outcome=sharing] .flow-detail,.traffic-flow:has(input[value=sharing]:checked) [data-flow-outcome=sharing] .flow-check{color:var(--p2p-success)}.traffic-flow:has(input[value=sharing]:checked) .flow-capacity:before{background:var(--p2p-accent)}.traffic-flow:has(input[value=pending]:checked) [data-flow-outcome=pending] .flow-check,.traffic-flow:has(input[value=sharing]:checked) [data-flow-outcome=sharing] .flow-check,.traffic-flow:has(input[value=off]:checked) [data-flow-outcome=off] .flow-check{display:block}.flow-scenarios{border:1px solid var(--p2p-line);background:#17121d;border-radius:999px;gap:3px;width:fit-content;min-width:0;max-width:100%;margin:22px auto 0;padding:4px;display:flex}.flow-scenarios label{min-width:0;position:relative}.flow-scenarios input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.flow-scenarios label>span{min-height:44px;color:var(--p2p-muted);border-radius:999px;justify-content:center;align-items:center;padding:8px 13px;font-size:12px;font-weight:500;display:flex}.flow-scenarios input:checked+span{color:var(--p2p-accent-light);background:#2c1c3a;box-shadow:0 2px 8px #0003}.flow-scenarios input:focus-visible+span{outline:2px solid var(--p2p-accent-light);outline-offset:3px}.traffic-flow .flow-description{min-height:64px;padding-inline:8px}.lifecycle-flow{margin-block:24px 32px}.lifecycle-map{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:16px;margin:0;padding:26px 20px;list-style:none;display:grid}.lifecycle-map .flow-node{padding:14px 10px}.lifecycle-map .flow-node+.flow-node:before{content:"";border-top:1.5px dashed #78518f;width:18px;position:absolute;top:50%;right:100%}.lifecycle-map .flow-node-label{font-size:8px}.lifecycle-map .flow-brand{border-radius:9px;width:28px;height:28px;margin-block:12px;font-size:13px}.lifecycle-icon{border:1px solid var(--p2p-line);width:28px;height:28px;color:var(--p2p-accent-light);font:500 14px/1 var(--p2p-mono);border-radius:9px;place-items:center;margin-block:12px;display:grid}.lifecycle-map .lifecycle-online{border-color:#34d97b80;box-shadow:0 0 0 2px #34d97b0f}.lifecycle-online .lifecycle-icon{color:var(--p2p-success);border-color:#34d97b4d}.lifecycle-map .flow-detail{font-size:10px}@container (width<=460px){.p2p-flow .flow-header{padding:18px 14px}.p2p-flow .flow-header :is(h2,.flow-title){font-size:13px}.p2p-flow .flow-context{padding:12px 14px;font-size:9px}.p2p-flow .flow-context>span:last-child{display:none}.traffic-map{gap:12px;padding:18px 12px}.traffic-map .flow-node{border-radius:12px;padding:12px 8px}.traffic-map .flow-node strong{font-size:11px}.traffic-map .flow-node-label{font-size:8px}.traffic-map .flow-detail{font-size:10px}.traffic-map .flow-core .flow-brand{border-radius:9px;width:28px;height:28px}.flow-check{font-size:8px;top:5px;right:6px}.flow-floating-top{left:12px}.flow-floating{font-size:9px}.p2p-flow .flow-result>div{padding:13px 10px}.p2p-flow .flow-result strong{font-size:10px}.p2p-flow .flow-result .flow-node-label{font-size:8px}}@container (width<=340px){.traffic-map{gap:9px;padding-inline:9px}.traffic-map .flow-node{padding-inline:7px}.flow-scenarios label>span{padding-inline:9px;font-size:11px}.p2p-flow .flow-header{gap:8px}.p2p-flow .flow-overline{font-size:9px}.p2p-flow .flow-badge{padding-inline:7px;font-size:8px}}@container (width<=620px){.lifecycle-map{grid-template-columns:1fr;gap:20px;padding:22px}.lifecycle-map .flow-node{grid-template-columns:32px 1fr;column-gap:14px;padding:16px;display:grid}.lifecycle-map .flow-node-label{grid-column:2;font-size:9px}.lifecycle-map :is(.flow-brand,.lifecycle-icon){grid-area:1/1/4;align-self:center;margin:0}.lifecycle-map .flow-node strong{grid-column:2;margin-top:3px}.lifecycle-map .flow-detail{grid-column:2;margin-top:3px;font-size:11px}.lifecycle-map .flow-node+.flow-node:before{border-top:0;border-left:1.5px dashed #78518f;width:0;height:20px;top:-22px;left:50%;right:auto}}@keyframes p2p-traffic-flow{to{stroke-dashoffset:-132px}}@media (prefers-reduced-motion:reduce){.p2p-flow .flow-line-active{animation:none}.traffic-map .traffic-outcome{transition:none}}
