/* IDN-005 / GOV-011: public-safe drawing tokens. Text and business state are untouched. */
:root{--neon-violet:#783192;--neon-aqua:#59bcc8;--neon-bright:#6ff3ff;--neon-violet-bright:#b04be0;--neon-panel:#111116;--neon-label:#f3f1ed;--neon-muted:#c4bfcb;--neon-edge:rgba(89,188,200,.48);--neon-halo:0 0 4px rgba(111,243,255,.36),0 0 12px rgba(89,188,200,.19),0 0 24px rgba(120,49,146,.16)}
.vb-neon-svg{overflow:visible;isolation:isolate;stroke:var(--diagram-accent,var(--neon-bright,#6ff3ff))}
.vb-neon-ink{stroke-width:1.7px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
/* Straight SVG strokes have a zero-area object box. Paint-bound CSS halos preserve their cores. */
.vb-neon-svg :is(path,line,polyline).vb-neon-ink{filter:drop-shadow(0 0 2px #59bcc880) drop-shadow(0 0 6px #78319266)}
.vb-neon-svg text{filter:none!important;text-shadow:none;stroke:none}
.vb-neon-svg marker path{fill:context-stroke}
.vb-neon-trace{stroke:var(--diagram-accent,#c48ee6);stroke-width:1.5px;fill:none!important;stroke-dasharray:2 19;stroke-linecap:round;animation:vb-neon-travel 12s linear infinite;pointer-events:none;opacity:.7}
@keyframes vb-neon-travel{to{stroke-dashoffset:-168}}
@keyframes vb-neon-current{to{background-position:calc(100% + 36px) 0,0 0}}
@keyframes vb-neon-breathe{0%,100%{box-shadow:0 0 4px #59bcc84d,0 0 12px #78319226}50%{box-shadow:0 0 6px #6ff3ff6b,0 0 20px #7831923d}}
/* Frames contain the drawing. Only compact geometry receives blur. */
:is(.vb-topology,.flagship-map,.case-journey-diagram,.topology-section,.calm-route-map details,.journey-picture,.pm-flow,.delivery-model,.delivery-flow,.growth-path,.gp-track,.cs-project,.cs-stats){border-color:var(--neon-edge);background-color:var(--neon-panel)}
.vb-topology{background:linear-gradient(130deg,#17101c 0%,#111116 48%,#0c181c 100%)}
.vb-topology-orbit{border:1.5px solid #59bcc8;background:#111116;box-shadow:var(--neon-halo)}
.vb-topology-orbit svg{stroke:var(--diagram-accent,var(--neon-bright))}
.vb-topology-orbit[data-scene-role]{border-color:var(--diagram-accent);box-shadow:0 0 4px color-mix(in srgb,var(--diagram-accent) 36%,transparent),0 0 12px color-mix(in srgb,var(--diagram-accent) 19%,transparent)}
.vb-topology-orbit[data-scene-role] .vb-topology-number{color:var(--diagram-accent);border-color:var(--diagram-accent)}
.vb-topology-number{color:#d4f8fc;background:#111116;border-color:#59bcc8}
.vb-topology-detail{border-color:#78548c;background:#111116}
.vb-topology-detail strong{color:#d5f9fc}
.vb-topology-node[aria-pressed=true] .vb-topology-orbit,.vb-topology-node:hover .vb-topology-orbit{border-color:#6ff3ff;box-shadow:var(--neon-halo)}
.vb-topology-node[aria-pressed=true] .vb-topology-orbit{animation:vb-neon-breathe 5.5s ease-in-out infinite}
.vb-topology-node[aria-pressed=true] svg{stroke:#6ff3ff}
.vb-topology-rail>li:not(:last-child):after{background:linear-gradient(90deg,#b04be0,#6ff3ff);color:#b5f7fc;box-shadow:0 0 4px #59bcc880,0 0 10px #78319266}
.vb-topology-rail>li:not(:last-child):after{background-image:linear-gradient(90deg,transparent,#e7fdff,transparent),linear-gradient(90deg,#783192,#59bcc8);background-size:36px 100%,100% 100%;background-position:-36px 0,0 0;background-repeat:no-repeat;animation:vb-neon-current 12s linear infinite}
.vb-topology-label,.vb-topology-preview{color:var(--neon-label)}
:is(.flagship-map,.case-journey-diagram,.topology-section) svg text{fill:var(--neon-label)!important}
:is(.flagship-map,.case-journey-diagram) :is(.fu-node,.diagram-node):focus-visible{outline:2px solid #bdfbff;outline-offset:4px}
:is(.calm-route-map,.calm-three-scenes) img{filter:none}
.calm-route-map details{border-width:1.5px;border-color:#536d7d;background:#111116;transition:border-color .2s}
.calm-route-map details[open]{border-color:#6ff3ff;box-shadow:var(--neon-halo)}
.calm-route-map details[open]>summary img{filter:drop-shadow(0 0 3px #59bcc84d)}
.calm-route-map>li{position:relative}
.calm-route-map>li:not(:last-child):after{content:'';position:absolute;top:48px;left:calc(100% - 2px);width:18px;height:2px;background:linear-gradient(90deg,#b04be0,#6ff3ff);box-shadow:0 0 6px #59bcc866;pointer-events:none;z-index:1}
.calm-route-map :is(small,summary span){font-size:max(.75rem,12px);color:#d1cad9}
:is(.journey-bubbles,.journey-strip,.vb-flow,.delivery-flow,.pm-steps,.gp-track,.gr-stages) :is(li,article){border-color:#536d7d}
:is(.jb-sketch,.gp-ic,.journey-icon,.cc-ic,.pm-n,.f-n){border-color:#59bcc8;color:#d9f9fc;box-shadow:var(--neon-halo)}
:is(.jb-number,.journey-number,.gp-s,.fzf-n){background:#111116;border-color:#59bcc8;color:#d4f8fc;box-shadow:0 0 5px #59bcc84d}
.journey-strip>span{background:#111116;border:1px solid #536d7d;border-radius:12px;padding:12px 16px}
.journey-strip>span>b,.vb-flow>li>b{color:#d4f8fc;border-color:#59bcc8;box-shadow:var(--neon-halo)}
.journey-strip>i{color:#6ff3ff;text-shadow:0 0 4px #59bcc880,0 0 10px #78319266}
.pc-wrap{border-color:#536d7d}.pc-table th{border-bottom-color:#59bcc8}
.wrap a,.wrap .eyebrow{color:#c4f7fc}
.wrap h1,.wrap h2{font-family:Georgia,serif;font-weight:400}
:is(.journey-bubbles,.journey-strip,.vb-flow,.delivery-flow,.gp-track) li:after{color:#92e8f1;border-color:#59bcc8}
:is(.journey-bubbles,.vb-flow,.delivery-flow,.gp-track) :is(a,button,summary):focus-visible,:is(.cs-project,.cs-step) :is(a,button,summary,input):focus-visible{outline:2px solid #bdfbff;outline-offset:5px}
:is(.cs-step,.cs-stat,.cs-next-item,.delivery-offer){background:#111116;border-color:#4d4859}
.cs-step.cs-open{border-color:#6ff3ff;box-shadow:var(--neon-halo)}
.cs-step.cs-open .cs-chip{animation:vb-neon-breathe 5.5s ease-in-out infinite}
.cs-step.cs-submitted{border-color:#af75cd}
.cs-step.cs-approved,.cs-chip-approved,.cs-chip-completed{border-color:#d8c48a;color:#f2e5bd}
.cs-stat b{color:#e4fafd}
.cs-score-head img{filter:drop-shadow(0 0 4px #59bcc859)}
.cs-meta{color:#c4bfcb}
/* Existing guide routes and orbital service drawings share the same quiet core. */
:is(.startup-orbit,.golden-orbit,.compare-orbit,.profile-diagram){background:#111116;border-color:var(--neon-edge)}
:is(.startup-orbit,.golden-orbit,.compare-orbit):before,:is(.startup-orbit,.golden-orbit,.compare-orbit):after{border-color:#59bcc880;box-shadow:0 0 4px #59bcc833,0 0 12px #78319222}
.startup-core,.golden-core,.compare-core{background:#111116;border:1.7px solid #59bcc8;box-shadow:var(--neon-halo);color:#f3f1ed}
.so,.go,.co,.profile-diagram i{border-color:#59bcc8;box-shadow:0 0 4px #59bcc84d,0 0 12px #78319222}
:is(.planning-flow,.ex-flow ol,.hub-flow ol)>li,:is(.premises-flow,.authority-workflow,.ml-flow,.ownership-law-flow,.liquidation-flow,.bank-prep-flow)>:is(article,div),.phone-flow .phone-card,.diagram .track>li{border-color:#59bcc8;background-color:#111116;box-shadow:0 0 4px #59bcc84d,0 0 12px #78319222}
:is(.premises-flow,.authority-workflow,.ml-flow,.ownership-law-flow,.liquidation-flow,.bank-prep-flow,.phone-flow)>i{color:#a4f3fa;text-shadow:0 0 4px #59bcc84d}
.profile-diagram b,.profile-diagram small,.diagram .dlabel{color:#f3f1ed}
.fz-compass,.fz-compass:before,.fz-compass:after{border-color:#59bcc880;box-shadow:0 0 4px #59bcc833,0 0 12px #78319222}
.fz-center,.fz-orbit,.flow .qnode,.flow .exit{border-color:#59bcc8;background-color:#111116;box-shadow:0 0 4px #59bcc84d,0 0 12px #78319222;color:#f3f1ed}
.fz-orbit{font-size:12px}.flow .branch,.flow .down{color:#a4f3fa}
/* Background orbits are static outlines, never a large blurred or moving surface. */
.hero-orbit,.hero-orbit:before,.hero-orbit:after{border-color:#59bcc833;animation:none;filter:none;box-shadow:0 0 3px #78319222}.hero-orbit:after{background:none}
/* Server-rendered map and scorecards: no browser script or external stylesheet required. */
.ms .dot,.route .dot,.org .o-box,.org .o-head,.org .o-gm,.org .o-board,.flow .f-n,.funnel .fn{border-color:#59bcc8;background-color:#111116;box-shadow:var(--neon-halo)}
.roadmap .ms-next .dot,.road .ms-next .dot{animation:vb-neon-breathe 5.5s ease-in-out infinite}
.ms-reached .dot{border-color:#d8c48a;box-shadow:0 0 4px #d8c48a66,0 0 12px #d8c48a22}
.g-bar,.p-bar,.bar{box-shadow:0 0 4px #59bcc84d;border-color:#59bcc8}
.g-bar span,.g-bar i,.p-bar span,.p-bar i{box-shadow:0 0 5px #59bcc84d}
.org .o-line,.org .o-depts:before,.roadmap:before{background:linear-gradient(90deg,#783192,#59bcc8)}
.ladder li,.branches li,.career li{border-color:#51435d}
.ladder .k-us,.o-head,.o-gm,.o-board,.f-n,.fn b{color:#d6f9fc}
.funnel .fn{background:#111116}
.p-num{background:#111116;color:#f3f1ed;border:1.7px solid #59bcc8;box-shadow:var(--neon-halo)}
.org .o-gm b{color:#d4f8fc}.org .d-consultants{--c:#59bcc8}
.lv,.lvl-minimum,.levels .card{border-color:#676077;box-shadow:0 0 4px #59bcc833,0 0 12px #78319222}
.levels .lvl-target,.levels .lvl-over,.lv-target,.lv-over{border-color:#d8c48a;box-shadow:0 0 4px #d8c48a44,0 0 12px #d8c48a22}
.phases .card,.route>li,.ladder>li,.org .o-dept,.flow>li,.tiers .card,.levels .card,details.role{background-color:#111116;border-color:#51435d}
.ms-next .dot{animation:vb-neon-breathe 5.5s ease-in-out infinite}
.route .b-year,.org .o-head,.org .o-gm,.org .o-board,.flow .f-n,.eyebrow:where(.wrap *){color:#d4f8fc}
.route>li:before,.org .o-line{box-shadow:0 0 4px #59bcc866}
@media(max-width:760px){.calm-route-map>li:after{display:none}.vb-neon-ink{filter:drop-shadow(0 0 2px #59bcc859)!important}.vb-neon-trace{animation:none;opacity:.35}.vb-topology-orbit,.cs-step.cs-open{box-shadow:0 0 4px #59bcc859,0 0 9px #78319226}.vb-topology-rail>li:not(:last-child):after{background:linear-gradient(#b04be0,#6ff3ff);animation:none}.vb-topology :is(small,.vb-topology-number),[data-neon-diagram] small{font-size:max(.75rem,12px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}[data-neon-diagram] *,[data-neon-diagram] *:before,[data-neon-diagram] *:after,.vb-neon-trace,.vb-topology-node[aria-pressed=true] .vb-topology-orbit,.cs-step.cs-open .cs-chip,.ms-next .dot,.roadmap .ms-next .dot,.road .ms-next .dot{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.vb-neon-ink,.cs-score-head img,.calm-route-map details[open]>summary img{filter:none!important}.vb-neon-trace{display:none}.vb-topology-orbit,.cs-step,.o-box,.f-n,.fn{box-shadow:none!important;animation:none!important}}
