/* SOFI — Single source of truth for horizontal + vertical navigation states. */
:root { --sofi-menu-purple:#443b73; --sofi-menu-text:#596176; --sofi-menu-icon:#7d8294; }
/* Default all inactive links, including Dashboard, without special first-child styling. */
#layout-menu .menu-item:not(.active):not(.open) > .menu-link:not(:hover) {
  background:transparent !important; background-image:none !important;
  color:var(--sofi-menu-text) !important; box-shadow:none !important;
}
#layout-menu .menu-item:not(.active):not(.open) > .menu-link:not(:hover) .menu-icon,
#layout-menu .menu-item:not(.active):not(.open) > .menu-link:not(:hover)::after {
  color:var(--sofi-menu-icon) !important;
}
/* Same states for both menu orientations and all submenu depths. */
#layout-menu .menu-item > .menu-link:hover,
#layout-menu .menu-item.active > .menu-link,
#layout-menu .menu-item.open > .menu-link {
  background:var(--sofi-menu-purple) !important;
  background-image:none !important;
  color:#fff !important;
  box-shadow:none !important;
}
#layout-menu .menu-item > .menu-link:hover .menu-icon,
#layout-menu .menu-item.active > .menu-link .menu-icon,
#layout-menu .menu-item.open > .menu-link .menu-icon,
#layout-menu .menu-item > .menu-link:hover::after,
#layout-menu .menu-item.active > .menu-link::after,
#layout-menu .menu-item.open > .menu-link::after {
  color:#fff !important;
}
#layout-menu .menu-item > .menu-link:hover::after,
#layout-menu .menu-item.active > .menu-link::after,
#layout-menu .menu-item.open > .menu-link::after {
  border-color:#fff !important;
}
