/*
 * Filled action contrast contract.
 * Keep pale-blue chips, badges and selection surfaces on their existing dark-blue
 * text. Only saturated blue/dark actions are normalized here. SagesWork owns its
 * own button palette and is deliberately excluded from this contract.
 */
:where(#app, #modal-root) :where(
    .primary-btn:not(:disabled),
    .top-nav button.active:not(:disabled),
    .material-pagination button.active:not(:disabled),
    .material-report-tabs button.active:not(:disabled),
    .material-report-subtabs button.active:not(:disabled),
    .xmind-view-switch button.active:not(:disabled),
    .enterprise-company-pagination button.active:not(:disabled),
    .project-module-tabs button.active:not(:disabled),
    .project-solution-form footer button:not(:disabled),
    .project-solution-brief-form footer button:not(:disabled),
    .project-budget-form footer button:not(:disabled),
    .project-solution-detail-actions button.primary:not(:disabled),
    .project-solution-library button:not(:disabled),
    .enterprise-suite-form button:not(:disabled),
    .intelligence-radar-datebar button.today:not(:disabled),
    .intelligence-radar-datebar button.generate:not(:disabled),
    .intelligence-radar-filters button.active:not(:disabled),
    .intelligence-radar-simple-head button:not(:disabled),
    .intelligence-radar-calendar > div > button.selected:not(:disabled),
    .geo-pagination button.active:not(:disabled),
    .market-period-tabs button.active:not(:disabled),
    .market-risk-pager button.active:not(:disabled),
    .market-risk-pager button[aria-current="page"]:not(:disabled),
    .market-risk-filter button:not(.market-filter-reset):not(:disabled),
    .market-capital-detail-filter button:not(.market-filter-reset):not(:disabled),
    .investment-category-tabs button.active:not(:disabled),
    .investment-intelligence-filter > button:not(.investment-filter-reset):not(:disabled),
    .meeting-launch-card button:not(:disabled),
    .meeting-launch-card:not(.local) a,
    .meeting-room-card footer button:not(:disabled),
    .meeting-panel#meeting-panel-chat button:not(:disabled),
    .meeting-panel#meeting-panel-transcript > button:not(:disabled),
    .stock-panorama-filter button:not(:disabled),
    .stock-panorama-modal > nav button.active:not(:disabled),
    .stock-panorama-pager button.active:not(:disabled)
):not(.segaswork-shell *) {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff;
}

/* Child labels and icons must not reintroduce a dark component color. */
:where(#app, #modal-root) :where(
    .primary-btn:not(:disabled),
    .top-nav button.active:not(:disabled),
    .material-pagination button.active:not(:disabled),
    .material-report-tabs button.active:not(:disabled),
    .material-report-subtabs button.active:not(:disabled),
    .xmind-view-switch button.active:not(:disabled),
    .enterprise-company-pagination button.active:not(:disabled),
    .project-module-tabs button.active:not(:disabled),
    .project-solution-form footer button:not(:disabled),
    .project-solution-brief-form footer button:not(:disabled),
    .project-budget-form footer button:not(:disabled),
    .project-solution-detail-actions button.primary:not(:disabled),
    .project-solution-library button:not(:disabled),
    .enterprise-suite-form button:not(:disabled),
    .intelligence-radar-datebar button.today:not(:disabled),
    .intelligence-radar-datebar button.generate:not(:disabled),
    .intelligence-radar-filters button.active:not(:disabled),
    .intelligence-radar-simple-head button:not(:disabled),
    .intelligence-radar-calendar > div > button.selected:not(:disabled),
    .geo-pagination button.active:not(:disabled),
    .market-period-tabs button.active:not(:disabled),
    .market-risk-pager button.active:not(:disabled),
    .market-risk-pager button[aria-current="page"]:not(:disabled),
    .market-risk-filter button:not(.market-filter-reset):not(:disabled),
    .market-capital-detail-filter button:not(.market-filter-reset):not(:disabled),
    .investment-category-tabs button.active:not(:disabled),
    .investment-intelligence-filter > button:not(.investment-filter-reset):not(:disabled),
    .meeting-launch-card button:not(:disabled),
    .meeting-launch-card:not(.local) a,
    .meeting-room-card footer button:not(:disabled),
    .meeting-panel#meeting-panel-chat button:not(:disabled),
    .meeting-panel#meeting-panel-transcript > button:not(:disabled),
    .stock-panorama-filter button:not(:disabled),
    .stock-panorama-modal > nav button.active:not(:disabled),
    .stock-panorama-pager button.active:not(:disabled)
):not(.segaswork-shell *) :is(span, b, strong, small, i, em, svg) {
    color: inherit !important;
    -webkit-text-fill-color: currentColor;
}

:where(#app, #modal-root) :where(
    .primary-btn:not(:disabled),
    .top-nav button.active:not(:disabled)
):not(.segaswork-shell *) svg {
    stroke: currentColor;
}
