/* One outline family, inherited theme/action colors, no external font or CDN. */
.moyo-icon,.moyo-ui-icon,.moyo-action-icon{display:inline-block;box-sizing:border-box;flex:0 0 18px;width:18px;height:18px;max-width:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:-3px;pointer-events:none}
.moyo-has-ui-icon{min-width:0;max-width:100%}
.moyo-has-ui-icon>.moyo-ui-icon{margin-inline-end:6px}
:is(.notification-bell-icon,.topbar-global-search-icon,.sap-home-app-icon,.sap-home-favorite)>.moyo-ui-icon{margin:0;vertical-align:middle}
[data-moyo-icon-only=true]>.moyo-ui-icon{margin:0}
.topbar-nav :is(.theme-toggle,.notification-bell){min-width:40px;min-height:40px;box-sizing:border-box}
.sap-home-app-icon>.moyo-ui-icon{width:24px;height:24px;max-width:24px;flex-basis:24px}
.sap-home-favorite[aria-pressed=true]>.moyo-ui-icon{fill:currentColor}
[data-pmo-nav-group]>summary>.moyo-ui-icon{margin-inline-end:0}
:is(.sap-tab,.sap-nav-toggle,button.act,a.act).moyo-has-ui-icon{min-height:40px;box-sizing:border-box}
:is(button.act,a.act).moyo-has-ui-icon{overflow-wrap:anywhere}
/* Detail actions and section navigation share the same readable hit targets. */
:is(button.act,a.act,button.btn,a.btn,button[data-req-section],button[data-moyo-icon]).moyo-has-ui-icon{box-sizing:border-box;min-height:40px}
:is(.sap-full-head,.sap-detail-head,.sap-actions,.sap-comment-buttons,.sap-inline-field-actions){min-width:0;max-width:100%}
:is(.sap-full-head,.sap-detail-head,.sap-actions,.sap-comment-buttons,.sap-inline-field-actions)>:is(button.act,a.act,button.btn,a.btn,button[data-req-section],button[data-moyo-icon]).moyo-has-ui-icon{max-width:100%;white-space:normal;overflow-wrap:anywhere}
:is(.sap-req-detail-tab,.sap-req-floating-link).moyo-has-ui-icon{display:inline-flex;align-items:center}
button.moyo-has-ui-icon[data-moyo-icon-only=true]{min-width:40px}
:is(button,a).moyo-has-ui-icon:focus-visible{outline:2px solid var(--accent,#3182f6);outline-offset:3px}
@media(max-width:1024px){:is(button.act,a.act,button.btn,a.btn,button[data-req-section],button[data-moyo-icon]).moyo-has-ui-icon{min-height:44px}button.moyo-has-ui-icon[data-moyo-icon-only=true]{min-width:44px}}
body.topbar-menu-ready .topbar-mobile-menu-slot .sap-nav-toggle.moyo-has-ui-icon::before{content:none}
@media(max-width:900px){body.topbar-menu-ready .topbar-mobile-menu-slot .sap-nav-toggle.moyo-has-ui-icon>.moyo-ui-icon{margin:0}}
.moyo-has-ui-icon[aria-busy=true]>.moyo-ui-icon{animation:moyo-action-spin .8s linear infinite}
@media(max-width:1024px){.topbar-nav :is(.theme-toggle,.notification-bell){min-width:44px;min-height:44px}:is(.sap-tab,.sap-nav-toggle,button.act,a.act).moyo-has-ui-icon{min-height:44px}body.topbar-menu-ready .topbar-mobile-menu-slot .sap-nav-toggle.moyo-has-ui-icon{min-width:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.moyo-has-ui-icon[aria-busy=true]>.moyo-ui-icon{animation:none}}
