/* Narrative refinement: bounded sections, gentle motion and continuous diagrams. */
body>header,body>footer,main>.hero,main>.sovereign-section,main>.products,main>.delivery-section{padding-inline:max(5%,calc((100% - 1200px)/2))}
main>.hero{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);min-height:640px;padding-top:34px;padding-bottom:78px;column-gap:20px}
.hero-copy{margin-top:28px}
.hero-copy h1{font-size:clamp(52px,5.9vw,86px);line-height:1.09;letter-spacing:-.055em;margin-bottom:20px}
.hero-word-slot{font-size:.82em;line-height:1.2;min-height:1.3em;overflow:clip;padding-bottom:.1em;letter-spacing:-.045em}
#hero-word{display:block;animation:none;position:relative;will-change:transform,opacity}

.hero-copy p{font-size:16px;max-width:46ch;line-height:1.65;margin-top:8px}
.sculpture{min-height:475px}
.sovereign-section{padding-block:64px 70px;background:#1a2016}
.products{padding-block:66px 72px;background:#10150e;border-top:1px solid #5a664a}
.delivery-section{padding-block:68px;border-top:1px solid #5a664a;background:#1b2117}
.section-top{margin-bottom:28px;gap:36px}.section-top .eyebrow{margin-bottom:16px}
.section-top h2,.delivery-section h2{font-size:clamp(34px,3.8vw,52px);line-height:1.13}
.sovereign-section .section-top>p{font-size:16px;max-width:390px;margin-top:26px;line-height:1.7}
.sovereign-boundary{display:none}
.sovereign-pillars{display:flex;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#698050 transparent;gap:24px;margin-top:12px;border:0;border-bottom:1px solid #566449;scroll-padding-inline:2px}
.sovereign-pillars button,.sovereign-pillars button:last-child{position:relative;flex:1 0 auto;padding:18px 0;min-height:58px;border:0;border-bottom:2px solid transparent;gap:0;background:none;color:#bac8ae}
.sovereign-pillars button strong{font-size:16px;font-family:inherit;font-weight:500;letter-spacing:0;line-height:1.5;white-space:nowrap}
.sovereign-pillars button>small,.sovereign-pillars button>span{display:none}
.sovereign-pillars button[aria-selected=true]{background:none;border-bottom-color:var(--lime);color:var(--lime)}
.sovereign-pillars button:hover:not([aria-selected=true]){background:none;color:#f2f7e8}
.foundation-panel{padding-top:25px}
.foundation-heading{margin-bottom:22px;gap:30px;grid-template-columns:1fr 1.1fr;align-items:center}
.foundation-heading h3{font-size:clamp(26px,2.55vw,34px);line-height:1.2;letter-spacing:-1px;margin-top:9px}
.foundation-heading>.eyebrow,.foundation-heading .eyebrow{font-size:10px;letter-spacing:1px}
.foundation-heading>p{font-size:15px;margin:0;line-height:1.65}
.ue-cinematic{display:flex;flex-direction:column;border-color:#4c5d3e;border-radius:7px;background:radial-gradient(ellipse at 50% 45%,#2d3b224a,transparent 65%),#151e10}
.ue-cinematic .ue-player-bar{order:0;background:#202b19;padding:12px 20px}
.ue-cinematic .ue-player-bar strong{font-size:14px;font-weight:500}
.ue-cinematic .ue-player-mark{width:27px;height:27px;font-size:15px}
.ue-cinematic .ue-player-scene{order:1}
.ue-cinematic .ue-player-controls{order:2;border-top:1px solid #405332;padding:12px 20px;margin:0}
.ue-cinematic .ue-player-evidence,.ue-cinematic .ue-player-steps,.ue-cinematic .ue-player-scenarios{display:none}
.ue-cinematic .ue-player-controls [data-ue-play]{min-width:170px;background:transparent;color:var(--lime);border-color:#789a51;min-height:40px}
.ue-cinematic .ue-player-controls button{min-height:40px}
.foundation-story{margin:0;padding:24px 28px 20px}
.fs-scene-heading{min-height:67px;max-width:920px}
.fs-scene-heading>span{font-size:11px;letter-spacing:1px;color:#b5cd99}
.fs-scene-heading h4{font-size:clamp(21px,2.1vw,28px);letter-spacing:-.6px;font-weight:500;line-height:1.3;margin:10px 0 0;color:#edf7e3}
.fs-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#5b7840 transparent;background-image:radial-gradient(#69824a30 .7px,transparent .7px);background-size:20px 20px;border-radius:5px;margin-top:14px}
.fs-viewport svg{width:100%;height:auto;display:block;overflow:visible;max-height:315px}
.fs-viewport text{font-family:'DM Sans',sans-serif;fill:#c7d9b6;font-size:15px;stroke:none;letter-spacing:0}
.fs-viewport .fs-node-title{font-size:17px;fill:#e4f3d5;font-weight:500}
.fs-viewport .fs-node-sub{font-size:13px;fill:#aabf96}
.fs-viewport .fs-label{font-size:12px;letter-spacing:1px;fill:#a7bf92}
.fs-viewport .fs-status{font-size:15px;fill:#c7dea9}
.fs-node rect,.fs-dashboard>rect:first-child{fill:#213319;stroke:#546f3d;stroke-width:1.4}
.fs-node.is-active rect{fill:#354f23;stroke:#d6fa81;stroke-width:2}
.fs-wire{fill:none;stroke:#567440;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.fs-wire.is-live{stroke:#91b960;stroke-width:2.5}
.fs-packet{fill:none;stroke:#d6fa81;stroke-width:4;stroke-dasharray:9 21;stroke-linecap:round;animation:fs-flow 1.8s linear infinite}
.fs-zone{fill:#24341a55;stroke:#789854;stroke-width:1.5;stroke-dasharray:5 7}
.fs-shield{fill:#304520;stroke:#bada8f;stroke-width:2}.fs-shield path+path{fill:none}
.fs-alert .fs-status{fill:#e5cd92}
.fs-core>circle{fill:#2a3d1d;stroke:#7d9f54;stroke-width:2}
.fs-core.is-active>circle{fill:#3d5928;stroke:#d6fa81}
.fs-core .fs-orbit{fill:none;stroke:#9bbd6c;stroke-dasharray:3 9;transform-origin:410px 150px;animation:fs-orbit 20s linear infinite}
.fs-lake{fill:#273f1b;stroke:#769650;stroke-width:1.5}.fs-lake ellipse{fill:#324f21}.fs-lake.is-active{stroke:#d6fa81;stroke-width:2}
.fs-company rect{fill:#223319;stroke:#668848;stroke-width:1.5}.fs-company path{fill:none;stroke:#82a854;stroke-width:2}.fs-company circle{fill:#bbdf86}.fs-company.is-active rect{stroke:#d6fa81;stroke-width:2}
.fs-dashboard path{stroke:#5b7640;stroke-width:1.5}.fs-dashboard.is-active>rect:first-child{stroke:#d6fa81;stroke-width:2}
.fs-dashboard .fs-chart-bar{fill:#7ca649;transform-origin:center bottom;transform-box:fill-box;opacity:.2;transform:scaleY(.15)}
.fs-dashboard.is-active .fs-chart-bar{opacity:1;transform:scaleY(1);animation:fs-bar .9s cubic-bezier(.22,1,.36,1) both}
.fs-dashboard.is-active .fs-chart-bar:nth-of-type(3){animation-delay:.12s}.fs-dashboard.is-active .fs-chart-bar:nth-of-type(4){animation-delay:.24s}
.fs-gate>path{fill:#25371b;stroke:#6f904c;stroke-width:1.5}.fs-gate.is-active>path{stroke:#d6fa81;fill:#354d24}
.foundation-story figcaption{font-size:15px;line-height:1.65;color:#becfac;min-height:50px;max-width:82ch;margin:15px 0 0}
.ue-cinematic:not(.is-running) .fs-packet,.ue-cinematic:not(.is-running) .fs-orbit{animation-play-state:paused}
.ue-cinematic .foundation-story{animation:fs-reveal .55s ease-out both}
@keyframes fs-flow{to{stroke-dashoffset:-60}}
@keyframes fs-orbit{to{transform:rotate(360deg)}}
@keyframes fs-bar{from{transform:scaleY(.15);opacity:.3}to{transform:scaleY(1);opacity:1}}
@keyframes fs-reveal{from{opacity:.6}to{opacity:1}}
.ue-integration-details{margin-top:16px}.ue-integration-details>summary{padding:16px 0;font-size:14px}
.product-rail{margin:0 0 30px;min-width:0}
.product-rail-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:8px;color:#a8ba98;font-size:12px;letter-spacing:.5px}
.product-rail-tools>div{display:flex;gap:8px}
.product-rail-tools button{width:38px;height:38px;border:1px solid #52633f;background:transparent;color:#cbe5aa;border-radius:50%;display:grid;place-items:center;font-size:17px}
.product-rail-tools button:hover{background:#283a1b}
.product-rail .product-tabs{display:flex;flex-direction:row;flex-wrap:nowrap;gap:28px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#688347 transparent;position:relative;margin:0;padding:0 0 9px;border-bottom:1px solid #465437;scroll-padding-inline:1px}
.product-rail .product-tabs .product-tab,.product-rail .product-tabs .product-tab:last-child,.product-rail .product-tabs .product-tab[aria-selected=true]{flex:0 0 auto;min-width:160px;min-height:70px;padding:15px 2px 17px;background:none;border:0;border-radius:0;scroll-snap-align:start;gap:7px;color:#c0ceb4}
.product-rail .product-tabs .product-tab::before{display:none}
.product-rail .product-tabs .product-tab::after{display:block;bottom:0;left:0;right:0;height:2px;background:transparent}
.product-rail .product-tabs .product-tab[aria-selected=true]{color:var(--lime)}
.product-rail .product-tabs .product-tab[aria-selected=true]::after{background:var(--lime)}
.product-rail .product-tabs .product-tab:hover{color:#edfade;background:none}
.product-rail .service-tab-name{font-size:16px;white-space:nowrap}.product-rail .service-tab-detail{font-size:12px;color:#97aa84}
.ue-product-heading,.cs-heading,.story-heading,.pr-heading,.rpa-heading,.pe-heading{margin-bottom:22px;gap:28px}
.ue-product-heading h3,.cs-heading h3,.story-heading h3,.pr-heading h3,.rpa-heading h3,.pe-heading h3{font-size:clamp(27px,2.7vw,36px);line-height:1.2;letter-spacing:-1px}
.ue-product-heading>p,.cs-heading p,.story-heading p,.pr-heading p,.rpa-heading>p,.pe-heading>p{font-size:15px;line-height:1.65;max-width:70ch}
.story-concept,.cs-label,.pr-label{display:none}
.ue-player .story-art{max-height:330px}.ue-player .story-art-wrap{max-width:930px;margin-inline:auto}
.ue-player .story-scene-label{min-height:105px;padding-top:20px}
.ue-player .cs-schematic{padding-block:18px 22px}.ue-player .cs-dialogue{min-height:80px;padding-top:16px}
@media(max-width:1000px){main>.hero{min-height:570px}.sculpture{min-height:410px}.hero-copy h1{font-size:clamp(46px,6.3vw,65px)}.foundation-heading{grid-template-columns:1fr 1.15fr;gap:24px}.foundation-heading h3{font-size:28px}.foundation-heading>p{font-size:14px}.foundation-story{padding:22px}.fs-scene-heading h4{font-size:24px}.fs-viewport svg{min-width:760px}.foundation-story figcaption{font-size:14px}.sovereign-pillars{gap:24px}.sovereign-pillars button strong{font-size:15px}.product-rail .product-tabs{gap:23px}}
@media(max-width:700px){main>.hero{grid-template-columns:minmax(0,1fr);min-height:0;padding-top:25px;padding-bottom:65px;row-gap:14px}.hero-copy{margin-top:15px}.hero-copy h1{font-size:clamp(43px,9.5vw,63px)}.hero-word-slot{font-size:.84em}.hero-copy p{font-size:16px}.sculpture{min-height:0;height:280px}.sovereign-section,.products{padding-block:44px}.delivery-section{padding-block:45px}.section-top h2,.delivery-section h2{font-size:36px}.sovereign-section .section-top>p{margin-top:18px;font-size:15px}.sovereign-pillars button,.sovereign-pillars button:last-child{border:0;border-bottom:2px solid transparent;min-height:54px}.sovereign-pillars button[aria-selected=true]{border-bottom-color:var(--lime)}.sovereign-pillars button strong{font-size:15px}.foundation-heading{grid-template-columns:1fr;gap:13px}.foundation-heading h3{font-size:28px}.foundation-heading>p{font-size:15px}.foundation-story{padding:18px 16px}.fs-scene-heading{min-height:86px}.fs-scene-heading h4{font-size:22px}.fs-viewport{margin-top:9px}.fs-viewport svg{min-width:760px;max-height:none}.foundation-story figcaption{min-height:76px;margin-top:14px}.ue-cinematic .ue-player-bar{padding:12px 16px}.ue-cinematic .ue-sample{display:none}.ue-cinematic .ue-player-controls{padding:12px 14px;gap:9px}.ue-cinematic .ue-player-controls [data-ue-play]{min-width:0}.ue-player .story-art{max-height:none}.product-rail{margin-bottom:24px}.product-rail .product-tabs .product-tab{min-width:165px}.product-rail .service-tab-name{font-size:15px}}
@media(prefers-reduced-motion:reduce){#hero-word{will-change:auto}.fs-packet,.fs-orbit,.fs-chart-bar,.foundation-story{animation:none!important}.fs-dashboard.is-active .fs-chart-bar{transform:scaleY(1);opacity:1}}

/* One card grid across all four architecture stories. */
.fs-aligned-diagram .fs-card-title{text-anchor:middle;font-size:18px;font-weight:500;fill:#e6f2dc;letter-spacing:-.2px}
.fs-aligned-diagram .fs-card-sub{text-anchor:middle;font-size:13px;fill:#b1c4a0}
.fs-aligned-diagram .fs-card-tag{text-anchor:middle;font-size:10px;letter-spacing:1.15px;fill:#8ea978}
.fs-aligned-diagram .fs-lane-label{font-size:11px;letter-spacing:1.2px;fill:#91a87c}
.fs-aligned-diagram .fs-bottom-note{text-anchor:middle;font-size:14px;fill:#c1d2ad}
.fs-card>rect,.fs-source-node rect,.fs-graph-card>rect{fill:#202c1a;stroke:#4c6239;stroke-width:1.25}
.fs-card .fs-card-accent{stroke:#739350;stroke-width:2;opacity:.3}
.fs-card.is-active>rect,.fs-source-node.is-active rect,.fs-graph-card.is-active>rect{fill:#2d4120;stroke:#c4e991;stroke-width:1.8}
.fs-card.is-active .fs-card-accent{stroke:#d6fa81;opacity:1}
.fs-card.is-active .fs-card-tag{fill:#bddc9b}
.fs-hub>circle:first-child{fill:#293b1e;stroke:#6f9050;stroke-width:1.5}
.fs-hub .fs-hub-ring{fill:none;stroke:#617c46;stroke-dasharray:3 7;stroke-width:1}
.fs-hub.is-active>circle:first-child{fill:#344c24;stroke:#d6fa81;stroke-width:2}
.fs-hub.is-active .fs-hub-ring{stroke:#a6cd77}
.fs-aligned-diagram .fs-zone{fill:#1c281550;stroke:#667d4b;stroke-width:1.25;stroke-dasharray:5 7}
.fs-aligned-diagram .fs-wire{stroke:#536d3d;stroke-width:1.5}
.fs-aligned-diagram .fs-wire.is-live{stroke:#9dc86e;stroke-width:2}
.fs-aligned-diagram .fs-packet{stroke-width:3;stroke-dasharray:7 27}
.fs-aligned-diagram .fs-divider{stroke:#4c6239;stroke-width:1}
.fs-graph-card .fs-graph-spine{fill:none;stroke:#759d50;stroke-width:1.5}
.fs-graph-card circle{fill:#b5d78a}
.fs-aligned-diagram .fs-graph-label{font-size:16px;fill:#d5e4c6;text-anchor:start}
.fs-aligned-diagram .fs-blocked text{fill:#e0c791}
.fs-new-dashboard.is-active>rect:first-child{fill:#26381c}
.fs-viewport .fs-aligned-diagram{max-height:350px}
.ue-cinematic .ue-player-controls{padding:11px 20px}
.ue-cinematic .ue-player-nav>span{font-size:12px}
.ue-cinematic .ue-player-nav button{background:transparent;border-color:#465937;color:#b5cba1;min-width:36px;min-height:36px;padding:7px}
.ue-graph{align-items:stretch}
.ue-graph span{display:flex;align-items:center;justify-content:center;min-height:46px;text-align:center;line-height:1.45}
.ue-graph i{align-self:center}
.ue-process-route>div{justify-content:flex-start;min-height:160px}
.ue-process-route strong{min-height:2.8em}
@media(max-width:700px){.fs-viewport .fs-aligned-diagram{min-width:900px;max-height:none}.ue-cinematic .ue-player-controls{padding:12px 14px}.ue-process-route>div{min-height:0}.ue-process-route strong{min-height:0}}

/* Sandbox as a working environment: snapshot, independent runtimes and evidence. */
.sb-workspace{fill:#1d2b18;stroke:#526e3c;stroke-width:1.3}
.fs-aligned-diagram .sb-small-right{text-anchor:end;font-size:10px;letter-spacing:1.5px;fill:#b6d394}
.sb-snapshot path,.sb-snapshot ellipse,.sb-test-store path,.sb-test-store ellipse{fill:#24371b;stroke:#74984f;stroke-width:1.5}
.sb-snapshot.is-active path,.sb-snapshot.is-active ellipse,.sb-test-store.is-active path,.sb-test-store.is-active ellipse{stroke:#d6fa81;fill:#304921}
.fs-aligned-diagram .sb-title{text-anchor:middle;font-size:15px;font-weight:500;fill:#e5f3d8}
.fs-aligned-diagram .sb-sub{text-anchor:middle;font-size:11px;fill:#b0c39d}
.sb-runtime>rect{fill:#24321d;stroke:#4d653b;stroke-width:1}
.sb-runtime.is-active>rect{fill:#304323;stroke:#bfdf94;stroke-width:1.5}
.sb-runtime circle{fill:#374c28}
.sb-icon{fill:none;stroke:#c5e69f;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fs-aligned-diagram .sb-runtime-title{text-anchor:start;font-size:15px;font-weight:500;fill:#e6f2dc}
.fs-aligned-diagram .sb-runtime-sub{text-anchor:start;font-size:12px;fill:#acc297}
.fs-aligned-diagram .sb-version{text-anchor:end;font-size:11px;fill:#bddb9b}
.fs-aligned-diagram .sb-note{text-anchor:middle;font-size:10px;letter-spacing:1.2px;fill:#aac58f}
.sb-boundary>path:first-child{fill:#293f1c;stroke:#90b568;stroke-width:1.5}
.sb-boundary.is-active>path:first-child{fill:#3e4020;stroke:#d9c68b}
.sb-check{fill:none;stroke:#c7e6a4;stroke-width:2}
.fs-aligned-diagram .sb-policy{text-anchor:middle;font-size:12px;fill:#d7c99b}
.sb-journal>rect{fill:#1c2916;stroke:#4c6338;stroke-width:1}
.sb-journal.is-active>rect{fill:#2b3f20;stroke:#b9db8e;stroke-width:1.5}
.fs-aligned-diagram .sb-footer{text-anchor:middle;font-size:13px;fill:#b5c99f}
.fs-sandbox .fs-viewport .fs-aligned-diagram{max-height:420px}

/* Preserve the workspace while the two scenes exchange emphasis. */
.ue-cinematic .fs-sandbox{animation:none}
.fs-sandbox svg rect,.fs-sandbox svg circle,.fs-sandbox svg ellipse,.fs-sandbox svg path{transition:fill .9s ease,stroke .9s ease,stroke-width .9s ease,opacity .9s ease}
.fs-sandbox .fs-packet{opacity:1}
.fs-sandbox .fs-packet.sb-muted{opacity:0}
.fs-sandbox .fs-scene-heading{min-height:78px}
.fs-sandbox figcaption{min-height:3.3em}
@media(prefers-reduced-motion:reduce){.fs-sandbox svg *{transition:none!important}}

/* Write attempts terminate at the workspace edge; nothing flows to production. */
.fs-sandbox .sb-stop-halo{fill:none;stroke:#d9c68b;stroke-width:12;stroke-linecap:round;opacity:0}
.fs-sandbox .sb-stop-bar{fill:none;stroke:#839969;stroke-width:3;stroke-linecap:round}
.fs-sandbox .sb-write-boundary.is-active .sb-stop-halo{opacity:.16}
.fs-sandbox .sb-write-boundary.is-active .sb-stop-bar{stroke:#e3cf92;stroke-width:4}

/* A live session console for the real-time orchestration narrative. */
.ue-cinematic .fs-orchestration{animation:none}
.fs-orchestration .fs-viewport .fs-aligned-diagram{max-height:420px}
.fs-orchestration svg rect,.fs-orchestration svg path,.fs-orchestration svg circle{transition:fill .9s ease,stroke .9s ease,opacity .9s ease}
.rt-panel{fill:#1d2c17;stroke:#526c3c;stroke-width:1.2}
.rt-live-dot{fill:#cfef96}.rt-wave path{fill:none;stroke:#badb91;stroke-width:2.5;stroke-linecap:round;transform-box:fill-box;transform-origin:center}
.is-running .rt-wave.is-speaking path{animation:rt-speech 1s ease-in-out infinite alternate}
@keyframes rt-speech{to{transform:scaleY(.35);opacity:.5}}
.rt-bubble{fill:#314726;stroke:#5b7842;stroke-width:1}.rt-agent-bubble{fill:#23321d;stroke:#465e33}
.fs-aligned-diagram .rt-meta{font-size:12px;fill:#bdcfaa}
.fs-aligned-diagram .rt-small{font-size:11px;fill:#aebf9d}
.fs-aligned-diagram .rt-tag{font-size:9px;letter-spacing:1.1px;fill:#a8c587}
.fs-aligned-diagram .rt-body{font-size:13px;fill:#dfedcf}
.fs-aligned-diagram .rt-heading{font-size:17px;font-weight:500;fill:#e6f3d9}
.rt-version{fill:#314522}
.fs-aligned-diagram .rt-version-text{font-size:11px;text-anchor:middle;fill:#c1dca4}
.rt-timeline{fill:none;stroke:#58753e;stroke-width:1.5}.rt-event circle{fill:#304324;stroke:#759650;stroke-width:1.5}.rt-event.is-active circle{fill:#cdeb9a;stroke:#d6fa81}
.rt-tool rect{fill:#24321d;stroke:#4c6438;stroke-width:1}.rt-tool.is-active rect{fill:#304423;stroke:#bbd98f}
.rt-paper{fill:#26351d;stroke:#6a8351;stroke-width:1.2}
.rt-receipt.is-confirmed .rt-paper{fill:#304522;stroke:#c5e695;stroke-width:1.6}
.fs-aligned-diagram .rt-receipt-status{font-size:12px;fill:#c4d7ad}.fs-aligned-diagram .rt-order-item{font-size:22px;fill:#eff7e5}
.rt-consent-stop{stroke:#d5c68b;stroke-width:3;stroke-linecap:round}
.fs-orchestration .rt-muted{opacity:0}
.fs-orchestration .fs-scene-heading{min-height:78px}.fs-orchestration figcaption{min-height:3.3em}
@media(prefers-reduced-motion:reduce){.fs-orchestration svg *{transition:none!important;animation:none!important}}

/* Data lake: a relationship explorer and an evidence-backed workspace. */
.ue-cinematic .fs-data{animation:none}
.fs-data .fs-viewport .fs-aligned-diagram{max-height:510px}
.fs-data svg path,.fs-data svg rect,.fs-data svg circle{transition:fill .9s ease,stroke .9s ease,opacity .9s ease}
.dg-graph-surface{fill:#17251a;stroke:#435a40;stroke-width:1}
.dg-source-list rect{fill:#263620;stroke:#536b40;stroke-width:1}.dg-source-list circle{fill:#bddc94}
.fs-aligned-diagram .dg-source-label{font-size:13px;fill:#dce9cf}
.dg-flow{fill:none;stroke:#415c3d;stroke-width:1.4}.dg-flow.is-active{stroke:#b3d58a}
.fs-data .dg-muted{opacity:0}
.dg-lake path,.dg-lake ellipse{fill:#243b24;stroke:#799d65;stroke-width:1.3}.dg-lake.is-active path,.dg-lake.is-active ellipse{stroke:#d6fa81;fill:#344c26}
.fs-aligned-diagram .dg-lake-title{font-size:19px;text-anchor:middle;fill:#e0efd6}
.fs-aligned-diagram .dg-source-note{font-size:11px;text-anchor:middle;fill:#b3c89f}
.dg-query{fill:#24321c;stroke:#556d40;stroke-width:1}.dg-query.is-active{stroke:#b3d491;fill:#2d4021}.dg-agent-dot{fill:#c9ed9b}
.fs-aligned-diagram .dg-query-label{font-size:9px;letter-spacing:1px;fill:#b6d199}
.fs-aligned-diagram .dg-query-text{font-size:12px;fill:#e1ecd7}
.dg-edge>path{fill:none;stroke:#46634a;stroke-width:1.4}.dg-edge>rect{fill:#17251a;stroke:none}.dg-edge.is-active>path{stroke:#bedb97;stroke-width:2}
.dg-edge.is-excluded>path{stroke:#859175;stroke-dasharray:4 5}
.fs-aligned-diagram .dg-edge-label{font-size:9px;text-anchor:middle;fill:#a8bda7}
.dg-node>circle{fill:#25351c;stroke:#829d5c;stroke-width:1.3}.dg-node .dg-halo{fill:none;stroke:#819c5e;stroke-width:1;opacity:.2}
.dg-node.is-active>circle{fill:#334822;stroke:#b8e29f;stroke-width:1.7}.dg-node.is-active .dg-halo{fill:none;opacity:.65}
.fs-aligned-diagram .dg-node-title{font-size:13px;font-weight:500;text-anchor:middle;fill:#e7f0df}
.fs-aligned-diagram .dg-node-sub{font-size:9px;text-anchor:middle;fill:#c2d0b9}
.dg-legend circle{fill:#afd993}.dg-legend .dg-excluded-dot{fill:#a99c7b}
.fs-aligned-diagram .dg-legend-text{font-size:9px;fill:#aabda4}
.dg-result-panel{fill:#1e2c19;stroke:#536c40;stroke-width:1}.dg-result.is-active .dg-result-panel{stroke:#bcd990}
.dg-answer{fill:#2b3d23;stroke:none}
.fs-aligned-diagram .dg-result-title{font-size:17px;fill:#e3f0d6}
.fs-aligned-diagram .dg-result-body{font-size:13px;fill:#e2edd8}
.fs-aligned-diagram .dg-result-small{font-size:11px;fill:#afc29b}
.fs-aligned-diagram .dg-metric{font-size:34px;fill:#d3f59c;letter-spacing:-1px}
.dg-bars rect{fill:#3c5030}.dg-bars.is-active rect{fill:#b7d885}.dg-bars.is-active rect:nth-child(2){fill:#8dab65}.dg-bars.is-active rect:nth-child(3){fill:#647e4a}
.fs-data .fs-scene-heading{min-height:78px}.fs-data figcaption{min-height:3.3em}
@media(prefers-reduced-motion:reduce){.fs-data svg *{transition:none!important;animation:none!important}}

/* Spatial graph treatment: quiet depth, luminous entities and routed signals. */
.fs-data .dg-graph-surface{fill:url(#dg-space);stroke:#5d7446;stroke-width:1.2}
.dg-depth{pointer-events:none}.dg-field-orbit{fill:none;stroke:#9bb77c;stroke-width:.7;stroke-dasharray:2 9;opacity:.19}
.dg-peripheral{fill:none;stroke:#91ab71;stroke-width:.6;opacity:.13}.dg-star{fill:#d0e5b2;opacity:.4}
.dg-corner{fill:none;stroke:#bddc94;stroke-width:1;opacity:.6}
.fs-data .dg-node{--node-light:#a7be8a;color:var(--node-light)}
.fs-data .dg-node.is-active{--node-light:var(--lime,#d6fa81)}
.fs-data .dg-node .dg-node-core{fill:url(#dg-core-light);stroke:var(--node-light);stroke-width:1;filter:drop-shadow(0 0 5px color-mix(in srgb,var(--node-light) 22%,transparent))}
.fs-data .dg-node.is-active .dg-node-core{stroke-width:1.5;filter:drop-shadow(0 0 9px color-mix(in srgb,var(--node-light) 35%,transparent))}
.fs-data .dg-node .dg-aura{fill:var(--node-light);stroke:none;opacity:.035}
.fs-data .dg-node.is-active .dg-aura{opacity:.085}
.fs-data .dg-node .dg-halo{fill:none;stroke:var(--node-light);stroke-width:.6;opacity:.22}
.dg-orbit{animation:dg-orbit-turn 28s linear infinite;animation-play-state:paused}
.dg-orbit>circle:first-child{fill:none;stroke:var(--node-light);stroke-width:1;stroke-dasharray:26 15 4 18;opacity:.5}
.dg-orbit .dg-satellite{fill:var(--node-light);stroke:none;filter:drop-shadow(0 0 4px currentColor)}
.dg-owner .dg-orbit,.dg-payment .dg-orbit{animation-direction:reverse;animation-duration:36s}
.is-running .dg-orbit{animation-play-state:running}
.dg-node-notch{fill:none;stroke:var(--node-light);stroke-width:2;stroke-linecap:round;opacity:.8}
.fs-aligned-diagram .dg-node-title{fill:#eff7e3;font-size:13px;letter-spacing:.1px}
.fs-aligned-diagram .dg-node-sub{fill:#b7c6a6}
.fs-data .dg-edge>.dg-link-core{stroke:#718955;stroke-width:1;opacity:.7}
.fs-data .dg-edge.is-active>.dg-link-core{stroke:#c9ee94;stroke-width:1.6;opacity:1;filter:drop-shadow(0 0 3px #b9df7880)}
.fs-data .dg-edge>.dg-link-signal{stroke:#e3ffb2;stroke-width:2.5;stroke-dasharray:3 47;stroke-linecap:round;opacity:0;animation:dg-signal-travel 3s linear infinite;animation-play-state:paused;filter:drop-shadow(0 0 3px #d6fa81)}
.fs-data .dg-edge.is-active>.dg-link-signal{opacity:.9}.is-running .dg-edge>.dg-link-signal{animation-play-state:running}
.fs-data .dg-edge.is-excluded>.dg-link-signal{opacity:0}.fs-data .dg-edge.is-excluded>.dg-link-core{stroke:#859175;stroke-dasharray:3 5;filter:none;opacity:.6}
.fs-data .dg-edge>rect{fill:#182314;stroke:#435535;stroke-width:.5;opacity:.95}
.fs-aligned-diagram .dg-edge-label{fill:#bed0a9;font-size:9px}
.fs-data .dg-query{fill:#1b2815;stroke:#526b3c}.fs-data .dg-query.is-active{fill:#293d1d;stroke:#a9d992}
.fs-data .dg-agent-dot{fill:#d6fa81;filter:drop-shadow(0 0 5px #bddf8b)}
.fs-data .dg-result-panel{fill:#192514;stroke:#4f653c}.fs-data .dg-answer{fill:#2a3b20}
@keyframes dg-orbit-turn{to{transform:rotate(360deg)}}
@keyframes dg-signal-travel{to{stroke-dashoffset:-100}}
@media(prefers-reduced-motion:reduce){.fs-data svg *{animation:none!important;transition:none!important}}

/* Ingestion belongs to the entire graph, not to the Accounts entity. */
.dg-ingestion-boundary{fill:none;stroke:#7f9861;stroke-width:.8;stroke-dasharray:3 7;opacity:.35}
.dg-ingestion.is-mapping .dg-ingestion-boundary{stroke:#c9e998;opacity:.7}
.dg-ingestion-signal{fill:none;stroke:#d6fa81;stroke-width:1.8;stroke-dasharray:10 65;opacity:0;animation:dg-ingest 5s linear infinite;animation-play-state:paused}
.dg-ingestion.is-mapping .dg-ingestion-signal{opacity:.75}
.is-running .dg-ingestion-signal{animation-play-state:running}
.dg-ingestion-port{fill:#c7edab;stroke:#526d39;stroke-width:2}
@keyframes dg-ingest{to{stroke-dashoffset:-150}}
@media(prefers-reduced-motion:reduce){.dg-ingestion-signal{animation:none!important}}

/* AI DevOps control room, using the shared green/lime visual language. */
.ue-cinematic .fs-infra{animation:none}.fs-infra .fs-viewport .fs-aligned-diagram{max-height:455px}
.fs-infra svg path,.fs-infra svg rect,.fs-infra svg circle{transition:fill .9s ease,stroke .9s ease,opacity .9s ease}
.dv-panel{fill:#1b2815;stroke:#50663c;stroke-width:1.2}
.dv-wire{fill:none;stroke:#516a3c;stroke-width:1.5}.dv-wire.is-active{stroke:#bfdf91}
.fs-infra .dv-muted{opacity:0}
.dv-frame-highlight{fill:none;stroke:#d6fa81;stroke-width:1.6;opacity:0}.dv-frame-highlight.is-active{opacity:.9}
.dv-artifact>circle:first-child{fill:#2b3f1e;stroke:#bddc91;stroke-width:1.4}
.dv-artifact-ring{fill:none;stroke:#8dab63;stroke-dasharray:3 7;stroke-width:1}
.dv-artifact>path{fill:none;stroke:#d6fa81;stroke-width:1.7;stroke-linejoin:round}
.fs-aligned-diagram .dv-package-title{text-anchor:middle;font-size:23px;fill:#edf6e1}
.fs-aligned-diagram .dv-package-sub{text-anchor:middle;font-size:12px;fill:#afc49a}
.fs-aligned-diagram .dv-label{font-size:10px;letter-spacing:1px;fill:#a9c48e}
.fs-aligned-diagram .dv-small{font-size:11px;fill:#b4c6a2}
.fs-aligned-diagram .dv-body{font-size:14px;fill:#e0efd0}
.fs-aligned-diagram .dv-title{font-size:17px;fill:#e5f1d9}
.fs-aligned-diagram .dv-right{text-anchor:end;font-size:11px;fill:#c4dda4}
.dv-check-dot{fill:#c7e997}.dv-tag{fill:#2c4020}
.fs-aligned-diagram .dv-tag-text{text-anchor:middle;font-size:10px;fill:#c5daa9}
.dv-environment>rect{fill:#22321b;stroke:#4c6438;stroke-width:1}.dv-environment.is-active>rect{fill:#2c4020;stroke:#a9cc7f}
.dv-server-icon{fill:none;stroke:#bbd995;stroke-width:1.3}
.dv-status-pill{fill:#354c26}
.fs-aligned-diagram .dv-status{text-anchor:middle;font-size:10px;fill:#d4ebba}
.dv-gpu>rect{fill:#172112;stroke:#415334;stroke-width:1}.dv-gpu.is-online>rect{fill:#2a3c1e;stroke:#95b66e}
.dv-chip{fill:none;stroke:#637b49;stroke-width:1.5}.dv-gpu.is-online .dv-chip{stroke:#ceeea3}
.fs-aligned-diagram .dv-gpu-label{text-anchor:middle;font-size:12px;fill:#d4e5bf}
.fs-aligned-diagram .dv-gpu-state{text-anchor:middle;font-size:10px;fill:#a5be8a}
.dv-monitor>rect{fill:#131f10;stroke:#405735;stroke-width:1}.dv-chart-grid{fill:none;stroke:#31462a;stroke-width:.7}
.dv-health-line{fill:none;stroke:#cfef9c;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dv-recovery>rect{fill:#24341c;stroke:#4e693a;stroke-width:1}.dv-recovery.is-active>rect{fill:#304524;stroke:#c9e899;stroke-width:1.4}
.fs-infra .fs-scene-heading{min-height:78px}.fs-infra figcaption{min-height:3.3em}
@media(prefers-reduced-motion:reduce){.fs-infra svg *{transition:none!important;animation:none!important}}

/* Scaling fans out together; recovery points back into the affected lane. */
.dv-capacity-route,.dv-rollback-route{opacity:0;transition:opacity .9s ease}
.dv-capacity-route.is-active,.dv-rollback-route.is-active{opacity:1}
.dv-capacity-arrow,.dv-return-arrow{fill:none;stroke:#d6fa81;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(prefers-reduced-motion:reduce){.dv-capacity-route,.dv-rollback-route{transition:none}}

.ue-cinematic .ue-player-nav{margin-left:auto}
