/* Scope every visual change to homepage Scene 1; preserve its canvas and node geometry. */
.hero .scene .odoo-app-node{background:transparent!important;border-color:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;padding:0!important}
.hero .scene .odoo-app-node:hover,.hero .scene .react-flow__node.selected .odoo-app-node{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.hero .scene .odoo-app-node strong{color:#fff!important;text-shadow:0 1px 8px #100d12!important}
.sco-artery-layer{position:absolute;z-index:4;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.sco-artery-visible{fill:none;stroke:var(--artery-color);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:9 8;filter:drop-shadow(0 0 5px var(--artery-color));animation:sco-artery-flow 1.8s linear infinite;pointer-events:none}
.sco-artery-hit{fill:none;stroke:transparent;stroke-width:30;stroke-linecap:round;pointer-events:stroke;cursor:pointer;outline:none}
.sco-artery-hit:focus-visible+.sco-artery-visible,.sco-artery-group.is-selected .sco-artery-visible{stroke-width:4;stroke-dasharray:none;filter:drop-shadow(0 0 10px var(--artery-color))}
@keyframes sco-artery-flow{to{stroke-dashoffset:-34}}
.sco-artery-controls{position:absolute;z-index:12;top:20px;left:22px;display:flex;gap:10px;direction:ltr}
.sco-artery-controls button{width:48px;height:48px;display:grid;place-items:center;border:1px solid #ffffff38;border-radius:50%;background:#f4eff1;color:#211924;box-shadow:0 8px 24px #0003;cursor:pointer;transition:transform .18s ease,background .18s ease}
.sco-artery-controls button:hover{transform:translateY(-2px);background:#fff}
.sco-artery-controls button:focus-visible,.sco-artery-window button:focus-visible,.sco-artery-hit:focus-visible{outline:3px solid #00c3bc;outline-offset:3px}
.sco-artery-controls svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sco-artery-window{position:absolute;z-index:15;right:24px;top:84px;width:min(390px,calc(100% - 48px));padding:0;background:#f7f2f5;color:#211924;border:1px solid #d3bfd0;border-radius:20px;box-shadow:0 24px 70px #0008;direction:rtl;overflow:hidden}
.sco-artery-window[hidden]{display:none}
.sco-artery-window-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 18px;background:#211924;color:#fff;cursor:move;touch-action:none;user-select:none}
.sco-artery-window-head strong{font-size:16px;line-height:1.5}
.sco-artery-window-head button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #ffffff42;border-radius:10px;background:transparent;color:#fff;font-size:21px;cursor:pointer}
.sco-artery-window-body{padding:18px 20px 20px;line-height:1.8}
.sco-artery-window-body dl{margin:0;display:grid;gap:12px}
.sco-artery-window-body dt{color:#76546f;font-size:11px;font-weight:700}
.sco-artery-window-body dd{margin:2px 0 0;font-size:14px}
.sco-artery-window-route{display:flex;align-items:center;gap:9px;margin:0 0 14px;color:#147c79;font-size:12px;font-weight:700}
.sco-artery-window-route span{width:7px;height:7px;border-radius:50%;background:var(--active-artery,#00a09d)}
.scene.sco-artery-fullscreen{position:fixed!important;inset:0!important;z-index:2147483000!important;width:100vw!important;height:100vh!important;height:100dvh!important;margin:0!important;background:#100d12!important;overflow:hidden!important}
body.sco-artery-lock{overflow:hidden!important}
@media(max-width:700px){.sco-artery-controls{top:10px;left:10px;gap:7px}.sco-artery-controls button{width:42px;height:42px}.sco-artery-window{right:12px;top:62px;width:min(350px,calc(100% - 24px))}.scene.sco-artery-fullscreen .sco-artery-controls{top:10px;left:10px}.scene.sco-artery-fullscreen .sco-artery-window{top:62px;right:12px}}
@media(prefers-reduced-motion:reduce){.sco-artery-visible{animation:none}.sco-artery-controls button{transition:none}}
.hero .scene .react-flow__handle{opacity:0!important;pointer-events:none!important}
/* Keep the original color falloff and lift its darkest area so every artery reads clearly. */
main>.hero .scene{background:radial-gradient(ellipse at 60% 43%,rgba(183,135,181,.31) 0%,rgba(112,83,119,.14) 47%,transparent 76%),linear-gradient(108deg,#28212b 0%,#3e3341 49%,#594c58 100%)!important}

/* Canonical icon-and-name geometry, isolated to the first scene. */
main>.hero .scene .odoo-app-node{width:136px!important;height:112px!important;min-height:112px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;padding:4px 0 0!important;border:0!important;transform:none!important;cursor:grab}
main>.hero .scene .odoo-app-node:active{cursor:grabbing}
main>.hero .scene .odoo-app-node img{width:64px!important;height:64px!important;object-fit:contain!important;flex-shrink:0!important;filter:drop-shadow(0 5px 10px #17101b33)}
main>.hero .scene .odoo-app-node>div:not(.react-flow__handle){width:100%;text-align:center!important}
main>.hero .scene .odoo-app-node small{display:none!important}
main>.hero .scene .odoo-app-node strong{display:block!important;font-size:16px!important;line-height:1.5!important;white-space:nowrap!important;text-align:center!important}
main>.hero .scene .odoo-app-node .react-flow__handle-left{left:32px!important;top:36px!important}
main>.hero .scene .odoo-app-node .react-flow__handle-right{right:32px!important;top:36px!important}
main>.hero .scene .odoo-app-node .react-flow__handle-top{top:4px!important}
main>.hero .scene .odoo-app-node .react-flow__handle-bottom{bottom:0!important}
main>.hero .scene .odoo-core-node{width:140px!important;height:140px!important;min-width:140px!important;min-height:140px!important}
main>.hero .scene .react-flow__node-app{width:136px!important}
main>.hero .scene .react-flow{inset:66px 0 40px!important;width:100%!important;height:calc(100% - 106px)!important}
main>.hero .scene .sco-artery-visible{stroke-width:2.5;filter:drop-shadow(0 0 3px var(--artery-color));stroke-dasharray:7 7;opacity:.94}
main>.hero .scene .sco-artery-group.is-selected .sco-artery-visible{stroke-width:4;stroke-dasharray:none;opacity:1}
main>.hero .scene .scene-caption{bottom:15px!important;pointer-events:none}
main>.hero .scene:fullscreen{width:100vw!important;height:100dvh!important;min-height:0!important;max-height:none!important}
main>.hero .scene.sco-artery-fullscreen{height:100dvh!important;max-height:none!important;min-height:0!important}

/* Orthogonal connections: native edges remain in React Flow state; this layer owns their visible, editable routes. */
main>.hero .scene .react-flow__edges{opacity:0!important;pointer-events:none!important}
main>.hero .scene .sco-artery-layer{touch-action:none}
main>.hero .scene .sco-artery-hit{touch-action:none;stroke-width:24;cursor:move}
main>.hero .scene .sco-artery-group.is-core .sco-artery-visible{stroke-width:1.7;opacity:.52;filter:none;stroke-dasharray:6 7}
main>.hero .scene .sco-artery-group:hover .sco-artery-visible,main>.hero .scene .sco-artery-group.is-dragging .sco-artery-visible,main>.hero .scene .sco-artery-group.is-selected .sco-artery-visible{stroke-width:3.5;opacity:1;filter:drop-shadow(0 0 4px var(--artery-color))}
main>.hero .scene.sco-artery-dragging{user-select:none;-webkit-user-select:none}
/* SCO identity: plum foundation, mauve depth, restrained teal light. */
.hero .scene .sco-artery-window{background:radial-gradient(ellipse at 6% 100%,#00a09d24 0%,transparent 60%),linear-gradient(135deg,#38283b 0%,#5d405c 60%,#76566f 100%);color:#fff7fd;border:1px solid #c8a8c37a;box-shadow:0 24px 70px #130b1c88,0 0 0 1px #ffffff08 inset}
.hero .scene .sco-artery-window-head{background:linear-gradient(110deg,#6f4b68 0%,#422d43 100%);border-bottom:1px solid #c6a2bf55;color:#fff}
.hero .scene .sco-artery-window-head strong{font-size:17px}
.hero .scene .sco-artery-window-body{padding:22px 24px 25px}
.hero .scene .sco-artery-window-body dt{color:#d9b8d1;font-size:12px}
.hero .scene .sco-artery-window-body dd{color:#fff7fd;font-size:14px;line-height:1.9}
.hero .scene .sco-artery-window-route{color:#8de1d8;border-bottom:1px solid #d0b4c92b;padding-bottom:15px}
.hero .scene .sco-artery-window-head button{background:#ffffff0b;border-color:#dfc9dc70}
.hero .scene .sco-artery-window-head button:hover{background:#ffffff20}

/* Click remains a hand; show dragging only after the pointer actually moves. */
main>.hero .scene .sco-artery-hit{cursor:pointer!important}
main>.hero .scene .sco-artery-group.is-dragging .sco-artery-hit{cursor:grabbing!important}
main>.hero .scene.sco-artery-dragging{cursor:grabbing!important}
.sco-artery-controls button:disabled{opacity:.4;cursor:default;transform:none;box-shadow:none}

/* Slightly larger icons and Arabic names; icon centers stay on the approved grid. */
main>.hero .scene .odoo-app-node{height:124px!important;min-height:124px!important}
main>.hero .scene .odoo-app-node img{width:74px!important;height:74px!important}
main>.hero .scene .odoo-app-node strong{font-size:18px!important}
main>.hero .scene .odoo-app-node .react-flow__handle-left,main>.hero .scene .odoo-app-node .react-flow__handle-right{top:41px!important}

/* Explicit exploration opt-in: passive page scroll first, native diagram gestures after activation. */
main>.hero .scene .sco-explore-gate{position:absolute;inset:0;z-index:10;display:block;width:100%;height:100%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:pointer;touch-action:pan-y pinch-zoom;color:#f7eff6;font:inherit}
.sco-explore-gate span,.sco-explore-exit{position:absolute;top:22px;right:22px;padding:10px 17px;border:1px solid #c7acc34d;border-radius:24px;background:#352b3bca;color:#f7eff6;font:inherit;font-size:13px;line-height:1.6;direction:rtl}
main>.hero .scene .sco-explore-gate[hidden],main>.hero .scene .sco-explore-exit[hidden]{display:none!important}
main>.hero .scene .sco-explore-exit{z-index:12;cursor:pointer;display:flex;align-items:center;gap:12px;border-color:#58c6bd88}
.sco-explore-exit span{font-size:20px;line-height:1}
main>.hero .scene.sco-exploring:after{content:"";position:absolute;inset:1px;z-index:11;pointer-events:none;border:1px solid #54c8be85;border-radius:inherit}
main>.hero .scene.sco-browsing .react-flow,main>.hero .scene.sco-browsing .sco-artery-layer,main>.hero .scene.sco-browsing .sco-artery-hit{pointer-events:none!important;touch-action:pan-y pinch-zoom!important}
main>.hero .scene .sco-explore-gate:focus-visible{outline:2px solid #67d5cc;outline-offset:-4px}
main>.hero .scene .sco-explore-exit:focus-visible{outline:2px solid #67d5cc;outline-offset:3px}
@media(max-width:700px){.sco-explore-gate span,main>.hero .scene .sco-explore-exit{top:12px;right:10px;padding:8px 10px;font-size:11px;max-width:calc(100% - 120px)}}
