/* Institutional action buttons only. Never targets theme/editor/third-party buttons globally. */
html body :is(
  a.onf-project-card__button,
  button.onf-project-filters__apply,
  a.onf-project-filters__clear,
  a.onf-project-hero__pill,
  a.onf-project-videos__link,
  button.onf-project-partners__previous,
  button.onf-project-partners__next,
  .onf-project-carousel__controls button,
  a.onf-repository-document__action,
  .onf-repository .onf-repository__filters button.onf-repository__filter-apply,
  a.onf-repository__filter-clear,
  button.onf-convocatorias__details-toggle,
  a.onf-convocatorias__button,
  button.onf-team-tab,
  button.onf-team-dialog-close,
  button.onf-aliados-carousel__arrow,
  button.onf-aliados-carousel__autoplay,
  .onf-privacy button[data-consent-accept],
  .onf-privacy button[data-consent-reject],
  .onf-privacy button[data-consent-save],
  .onf-privacy button[data-consent-close],
  button.onf-youtube-consent__play,
  .onf-youtube-consent button[data-youtube-authorize],
  button.onf-header-utilities__submit,
  button.onf-institutional-dialog__close,
  .onf-social-floating button.onf-social-floating__toggle,
  .onf-andina-form :is(button, input[type="submit"], input[type="button"]),
  .onf-button
) {
  --onf-button-background: #2aa837;
  --onf-button-hover-background: #054f11;
  --onf-button-foreground: #ffffff;
  --onf-button-font-size: 13px;
  background-color: var(--onf-button-background);
  background-image: none;
  color: var(--onf-button-foreground);
  font-size: var(--onf-button-font-size);
  border-radius: var(--onf-button-radius, 30px);
}
html body :is(
  a.onf-project-card__button,
  button.onf-project-filters__apply,
  a.onf-project-filters__clear,
  a.onf-project-hero__pill,
  a.onf-project-videos__link,
  button.onf-project-partners__previous,
  button.onf-project-partners__next,
  .onf-project-carousel__controls button,
  a.onf-repository-document__action,
  .onf-repository .onf-repository__filters button.onf-repository__filter-apply,
  a.onf-repository__filter-clear,
  button.onf-convocatorias__details-toggle,
  a.onf-convocatorias__button,
  button.onf-team-tab,
  button.onf-team-dialog-close,
  button.onf-aliados-carousel__arrow,
  button.onf-aliados-carousel__autoplay,
  .onf-privacy button[data-consent-accept],
  .onf-privacy button[data-consent-reject],
  .onf-privacy button[data-consent-save],
  .onf-privacy button[data-consent-close],
  button.onf-youtube-consent__play,
  .onf-youtube-consent button[data-youtube-authorize],
  button.onf-header-utilities__submit,
  button.onf-institutional-dialog__close,
  .onf-social-floating button.onf-social-floating__toggle,
  .onf-andina-form :is(button, input[type="submit"], input[type="button"]),
  .onf-button
):is(:hover, :focus-visible, :active) {
  background-color: var(--onf-button-hover-background);
  color: var(--onf-button-foreground);
}
html body :is(
  a.onf-project-card__button,
  button.onf-project-filters__apply,
  a.onf-project-filters__clear,
  a.onf-project-hero__pill,
  a.onf-project-videos__link,
  button.onf-project-partners__previous,
  button.onf-project-partners__next,
  .onf-project-carousel__controls button,
  a.onf-repository-document__action,
  .onf-repository .onf-repository__filters button.onf-repository__filter-apply,
  a.onf-repository__filter-clear,
  button.onf-convocatorias__details-toggle,
  a.onf-convocatorias__button,
  button.onf-team-tab,
  button.onf-team-dialog-close,
  button.onf-aliados-carousel__arrow,
  button.onf-aliados-carousel__autoplay,
  .onf-privacy button[data-consent-accept],
  .onf-privacy button[data-consent-reject],
  .onf-privacy button[data-consent-save],
  .onf-privacy button[data-consent-close],
  button.onf-youtube-consent__play,
  .onf-youtube-consent button[data-youtube-authorize],
  button.onf-header-utilities__submit,
  button.onf-institutional-dialog__close,
  .onf-social-floating button.onf-social-floating__toggle,
  .onf-andina-form :is(button, input[type="submit"], input[type="button"]),
  .onf-button
):not(:disabled):not([aria-disabled="true"]) {
  filter: none;
  opacity: 1;
}
html body :is(
  a.onf-project-card__button,
  button.onf-project-filters__apply,
  a.onf-project-filters__clear,
  a.onf-project-hero__pill,
  a.onf-project-videos__link,
  button.onf-project-partners__previous,
  button.onf-project-partners__next,
  .onf-project-carousel__controls button,
  a.onf-repository-document__action,
  .onf-repository .onf-repository__filters button.onf-repository__filter-apply,
  a.onf-repository__filter-clear,
  button.onf-convocatorias__details-toggle,
  a.onf-convocatorias__button,
  button.onf-team-tab,
  button.onf-team-dialog-close,
  button.onf-aliados-carousel__arrow,
  button.onf-aliados-carousel__autoplay,
  .onf-privacy button[data-consent-accept],
  .onf-privacy button[data-consent-reject],
  .onf-privacy button[data-consent-save],
  .onf-privacy button[data-consent-close],
  button.onf-youtube-consent__play,
  .onf-youtube-consent button[data-youtube-authorize],
  button.onf-header-utilities__submit,
  button.onf-institutional-dialog__close,
  .onf-social-floating button.onf-social-floating__toggle,
  .onf-andina-form :is(button, input[type="submit"], input[type="button"]),
  .onf-button
):focus-visible {
  outline: 3px solid #054f11;
  outline-offset: 3px;
  box-shadow: 0 0 0 2px #ffffff;
}
html body :is(a.onf-project-filters__clear, a.onf-repository__filter-clear, button.onf-project-partners__previous, button.onf-project-partners__next, .onf-project-carousel__controls button, button.onf-team-dialog-close, button.onf-aliados-carousel__arrow, button.onf-aliados-carousel__autoplay, .onf-privacy button[data-consent-close], button.onf-header-utilities__submit, button.onf-institutional-dialog__close, .onf-social-floating button.onf-social-floating__toggle),
html body :is(a.onf-project-filters__clear, a.onf-repository__filter-clear, button.onf-project-partners__previous, button.onf-project-partners__next, .onf-project-carousel__controls button, button.onf-team-dialog-close, button.onf-aliados-carousel__arrow, button.onf-aliados-carousel__autoplay, .onf-privacy button[data-consent-close], button.onf-header-utilities__submit, button.onf-institutional-dialog__close, .onf-social-floating button.onf-social-floating__toggle):is(:hover, :focus-visible, :active) { --onf-button-radius: 50%; }
/* Retain the border space and reserve the focus indicator for keyboard navigation. */
html body .onf-team-view button.onf-team-tab,
html body .onf-team-view button.onf-team-tab:is(:hover, [aria-selected="true"]) {
  border-color: transparent;
}

html body .onf-team-view button.onf-team-tab:not(:focus-visible) {
  outline: none;
  box-shadow: none;
}

html body .onf-team-view button.onf-team-tab[aria-selected="true"] {
  background-color: var(--onf-button-hover-background);
  text-decoration: none;
}
/* Existing SVG fill:none and transparent CSS triangles remain untouched. */
html body .onf-project-videos__link-icon { color: #ffffff; }
/* These legacy repository rules already use !important. Limit precedence to the same controls. */
html body .onf-repository :is(a.onf-repository-document__action, .onf-repository__filters button.onf-repository__filter-apply) {
  background: #2aa837 !important;
  color: #ffffff !important;
  border-radius: 30px !important;
}
html body .onf-repository :is(a.onf-repository-document__action, .onf-repository__filters button.onf-repository__filter-apply):is(:hover, :focus-visible, :active) {
  background: #054f11 !important;
  color: #ffffff !important;
}
html body .onf-repository a.onf-repository-document__action .onf-repository-document__action-icon { stroke: #ffffff !important; }
/* Convocatorias also makes its per-instance foreground important. */
html body :is(button.onf-convocatorias__details-toggle, a.onf-convocatorias__button),
html body :is(button.onf-convocatorias__details-toggle, a.onf-convocatorias__button):is(:hover, :focus-visible, :active) { color: #ffffff !important; }
/* Same scoped exception: the repository applies an important outline to every filter control. */
html body .onf-repository .onf-repository__filters :is(button.onf-repository__filter-apply, a.onf-repository__filter-clear):focus-visible {
  outline: 3px solid #054f11 !important;
}
/* Structural/media controls keep their design, but retain a visible keyboard focus indicator. */
html body :is(.onf-team-card, .onf-project-gallery__side, .onf-institutional-trigger):focus-visible {
  outline: 3px solid #054f11;
  outline-offset: 3px;
  box-shadow: 0 0 0 2px #ffffff;
}

/* Glyphs are icons, not label text: retain the original sizes while button labels use 13px. */
html body :is(.onf-project-partners__previous, .onf-project-partners__next) > .onf-button-glyph { font-size: 22px; }
html body .onf-privacy [data-consent-close] > .onf-button-glyph { font-size: 24px; }
html body .onf-institutional-dialog__close > .onf-button-glyph,
html body .onf-team-dialog-close > span { font-size: 30px; }
