/* NoktaOn v1.8.47 -- shared action contrast. Last-loaded after historic page sheets. */
body.nok-web{--primary-contrast:#fff}
/* --primary-contrast set inline by PHP from configured web_primary (WCAG luminance). */
body.nok-web :is(a.btn,.btn,button[type="submit"],.nav-post,.nok-ws-submit,.nok-follow-optin button,
  .nok-theme-savebar button,.nok-ws-actions button,.listing-action-primary):not(.outline):not(.ghost):not(.secondary):not(.danger):not(.btn-outline):not(.btn-light):not(.btn-danger){
  color:var(--primary-contrast,#fff)!important;
}
body.nok-web :is(.btn,button,.nok-ws-submit):not(.outline):not(.ghost):not(.secondary):not(.danger):hover{filter:brightness(.95)}
body.nok-web :is(a.btn,.btn,button[type="submit"]):focus-visible,
body.admin-app :is(button,.btn):focus-visible{outline:3px solid #fbbf24;outline-offset:3px}
/* Text-only buttons and outline buttons preserve themed foreground on light backgrounds. */
body.nok-web :is(.btn-outline,.btn-light,.btn.ghost,.btn.outline,.btn.secondary){color:var(--primary,#2563eb)!important}
body.nok-web :is(.btn-outline,.btn-light,.btn.ghost,.btn.outline,.btn.secondary):hover{color:var(--primary,#2563eb)!important}
/* Admin controls are on a separate palette, and should never inherit web form fields' green text. */
body.admin-app :is(button[type="submit"],button.admin-logout,.btn):not(.danger):not(.outline):not(.ghost):not(.secondary){color:#fff!important}
body.admin-app :is(.admin-theme-preview .admin-preview-button){color:var(--np-primary-contrast,#fff)!important}
/* Actual dark-on-light contrast for every admin preview primary selected color is set in JS. */
