/* Motion decorates the approved composition. Every base state is complete and
   readable without scripts; animation cancellation restores that state. */
:root[data-motion="full"] [data-reveal="pending"] { opacity: 0; pointer-events: none; }
.overview-atlas { transform-origin: 50% 65%; }
.atlas-connections { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; overflow: visible; }
.atlas-relation { fill: none; stroke: #daefed; stroke-width: 2; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 0; opacity: 0; }
.atlas-focus { fill: none; stroke: #dcf5ef; stroke-width: 1.4; opacity: 0; transform-box: fill-box; transform-origin: center; }
:root[data-theme="warm"] .atlas-relation { stroke: #376c59; }
:root[data-theme="warm"] .atlas-focus { stroke: #376c59; }
/* Translucent navigation retains its existing geometry and mobile menu. */
.site-header { background: color-mix(in srgb,var(--paper) 94%,transparent); backdrop-filter: blur(16px); }
.vision-overview { transition: border-color 220ms ease,box-shadow 220ms ease; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  :root[data-motion="full"] .vision-overview:hover { border-color: #587b83; box-shadow: 0 24px 60px #020c1426,inset 0 1px 0 #ffffff16; }
  :root[data-theme="warm"][data-motion="full"] .vision-overview:hover { border-color: #9cb3a5; box-shadow: 0 24px 60px #3c514020,inset 0 1px 0 #ffffffa6; }
}
