/* Scoped style; no dependencies on the active WordPress theme. */
#ect-flow-explorer { --ect-blue:#9dd1ff;--ect-dim:#a4b2c5; --ect-white:#f3f5f8; --ect-stroke:rgba(183,205,229,.15); --ect-surface:#07111e; box-sizing:border-box; width:100%; max-width:1480px; margin:24px auto; color:var(--ect-white); font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif; letter-spacing:0; line-height:1.48; }
#ect-flow-explorer * {box-sizing:border-box}
#ect-flow-explorer button {font-family:inherit;cursor:pointer;}
#ect-flow-explorer .ect-shell {overflow:hidden;border:1px solid #263849;border-radius:18px;background:#07111e;box-shadow:0 18px 75px rgba(12,24,40,.12)}
#ect-flow-explorer .ect-top {padding:25px 27px 18px;border-bottom:1px solid var(--ect-stroke);background:linear-gradient(125deg,#111f32,#07111e 74%)}
#ect-flow-explorer .ect-kicker{font-size:10px;font-weight:800;color:#96bee7;letter-spacing:.22em;text-transform:uppercase;margin:0 0 11px}
#ect-flow-explorer .ect-headerline{display:flex;align-items:flex-start;gap:20px;justify-content:space-between}
#ect-flow-explorer .ect-title{color:#fff; font-size:clamp(24px,3.1vw,39px);font-weight:660;line-height:1.12;letter-spacing:-.055em;margin:0 0 9px}
#ect-flow-explorer .ect-subtitle {max-width:790px;color:#a6b7ca;font-size:13px;margin:0}
#ect-flow-explorer .ect-number{color:#517293;font-size:clamp(26px,4vw,56px);font-weight:300;letter-spacing:-.06em;flex:none}
#ect-flow-explorer .ect-main{display:grid;grid-template-columns:minmax(0,1fr) 292px;min-height:570px}
#ect-flow-explorer .ect-left{display:flex;flex-direction:column;min-width:0}
#ect-flow-explorer .ect-toolbar{display:flex;align-items:center;gap:7px;padding:12px 18px;border-bottom:1px solid var(--ect-stroke);flex-wrap:wrap}
#ect-flow-explorer .ect-chip{border:1px solid #294057;background:transparent;color:#a8b9c9;padding:7px 11px;font-size:11px;font-weight:650;border-radius:7px;transition:background .18s,border-color .18s,color .18s}
#ect-flow-explorer .ect-chip:hover, #ect-flow-explorer .ect-chip:focus-visible{border-color:#8cbcea;color:white;outline:none}
#ect-flow-explorer .ect-chip.active{border-color:#6eacdf;background:#143352;color:white}
#ect-flow-explorer .ect-spacer{flex:1}
#ect-flow-explorer .ect-reset{font-size:11px;background:transparent;border:0;color:#91badd;padding:8px 2px}
#ect-flow-explorer .ect-reset:hover{text-decoration:underline}
#ect-flow-explorer .ect-world{height:454px; position:relative;overflow:hidden; background:radial-gradient(ellipse 50% 65% at 53% 40%,#122e44 0%,#091727 65%,#06111d 100%);touch-action:pan-y;}
#ect-flow-explorer .ect-world:after{position:absolute;content:"";inset:0;pointer-events:none;opacity:.17;background-image:linear-gradient(#8bacce18 1px,transparent 1px),linear-gradient(90deg,#8bacce18 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,black,transparent 90%)}
#ect-flow-explorer canvas.ect-webgl{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:grab}
#ect-flow-explorer canvas.ect-webgl:active {cursor:grabbing}
#ect-flow-explorer .ect-label-layer{position:absolute;inset:0;pointer-events:none;z-index:2}
#ect-flow-explorer .ect-graph-label{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:0;background:transparent;border:0;text-align:center;padding:4px;min-width:94px;max-width:137px;color:#e9f2ff;transition:opacity .18s;}
#ect-flow-explorer .ect-graph-label .ect-graph-num{font-size:9px;font-weight:800;letter-spacing:.13em;color:#8ba4be}
#ect-flow-explorer .ect-graph-label .ect-graph-name{font-size:11px;line-height:1.15;font-weight:700;text-shadow:0 2px 4px #001222}
#ect-flow-explorer .ect-graph-label.active .ect-graph-name{color:#fff}
#ect-flow-explorer .ect-graph-label.dimmed{opacity:.25}
#ect-flow-explorer .ect-graph-label:focus-visible {outline:1px solid #8bc6ff;background:#132e47;border-radius:4px}
#ect-flow-explorer .ect-corner-label{position:absolute;z-index:2;font-size:9px;letter-spacing:.16em;left:19px;bottom:14px;color:#57738d;pointer-events:none;text-transform:uppercase}
#ect-flow-explorer .ect-world-help{position:absolute;z-index:2;right:19px;bottom:13px;font-size:10px;color:#7e95ae;pointer-events:none}
#ect-flow-explorer .ect-footer{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--ect-stroke);color:#93a9bd;font-size:11px}
#ect-flow-explorer .ect-legend{display:flex;gap:13px;flex-wrap:wrap;align-items:center}
#ect-flow-explorer .ect-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px;vertical-align:middle}
#ect-flow-explorer .ect-detail{background:#0c1929;border-left:1px solid var(--ect-stroke);padding:23px 22px 19px;display:flex;flex-direction:column;min-width:0}
#ect-flow-explorer .ect-side-eyebrow{font-size:10px;letter-spacing:.16em;color:#88b9ea;font-weight:800;text-transform:uppercase;margin:0 0 13px}
#ect-flow-explorer .ect-side-title{font-size:24px;line-height:1.18;letter-spacing:-.035em;color:#fff;font-weight:650;margin:0 0 10px}
#ect-flow-explorer .ect-side-summary{font-size:13px;color:#b4c4d5;margin:0 0 17px}
#ect-flow-explorer .ect-detail-section{padding:13px 0;border-top:1px solid #203248}
#ect-flow-explorer .ect-detail-section h4{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#87b8e6;margin:0 0 6px}
#ect-flow-explorer .ect-detail-section p{font-size:12px;line-height:1.48;color:#c2cddd;margin:0}
#ect-flow-explorer .ect-stage-index{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:18px}
#ect-flow-explorer .ect-stage-btn{width:29px;height:28px;border-radius:6px;color:#9db7cb;border:1px solid #2c4055;background:#10253a;font-size:10px;font-weight:700}
#ect-flow-explorer .ect-stage-btn.active{border-color:#95cdfb;color:#fff;background:#21507a}
#ect-flow-explorer .ect-stage-btn:hover{border-color:#95cdfb}
#ect-flow-explorer .ect-disclaimer{color:#657f99;font-size:10px;margin-top:12px}
#ect-flow-explorer .ect-fallback-svg{display:block;width:100%;height:100%;}
#ect-flow-explorer .ect-fallback-node{cursor:pointer;outline:none}
#ect-flow-explorer .ect-fallback-node circle{transition:fill .2s,opacity .2s}
#ect-flow-explorer .ect-fallback-node:focus circle{stroke:white;stroke-width:3}
#ect-flow-explorer .ect-fallback-line{fill:none;stroke:#50728a;stroke-width:2}
#ect-flow-explorer .ect-fallback-text{fill:#f0f5fc;font:700 13px system-ui;pointer-events:none}
#ect-flow-explorer .ect-fallback-num{fill:#8dabbf;font:600 10px system-ui;pointer-events:none}
#ect-flow-explorer .ect-fallback-hint{position:absolute;left:18px;top:17px;font-size:10px;color:#7f9bb2;z-index:1}
@media(max-width:900px){#ect-flow-explorer .ect-main{grid-template-columns:minmax(0,1fr)}#ect-flow-explorer .ect-detail{border-left:0;border-top:1px solid var(--ect-stroke)}#ect-flow-explorer .ect-world{height:390px}}
@media(max-width:520px){#ect-flow-explorer .ect-top{padding:20px}#ect-flow-explorer .ect-title{font-size:26px}#ect-flow-explorer .ect-number{display:none}#ect-flow-explorer .ect-world{height:330px}#ect-flow-explorer .ect-toolbar{padding:10px}#ect-flow-explorer .ect-chip{padding:6px 8px;font-size:10px}#ect-flow-explorer .ect-world-help{display:none}}
@media(prefers-reduced-motion:reduce){#ect-flow-explorer *{transition:none!important}}
