/*
 * Nexus operations layer: accessibility floor for every front-end view (WCAG 2.2 AA). Tokens only.
 * 2.4.7 and 2.4.11 focus visible and not hidden; 2.5.8 target size (24 by 24 CSS px at least); 2.3.3 motion.
 */
body.nx-site :where(.nx-switch__btn,.nx-tool,.nx-dlg__close,.nx-chip,.nx-badge,.nx-pages a,.nx-footline__nav a,.nx-trust a,.nx-crumbs a,.nx-rmeta a,.skip-link,.nx-skip):focus-visible{outline:2px solid var(--nx-focus);outline-offset:2px}
body.nx-site :where(.nx-switch__btn,.nx-tool,.nx-dlg__close,.nx-chip,.nx-badge){min-height:24px;min-width:24px}
body.nx-site :where(.nx-footline__nav,.nx-trust__links,.nx-crumbs li,.nx-rmeta>span) a{display:inline-block;min-height:24px;line-height:24px}
body.nx-site :where(.skip-link,.nx-skip):focus{z-index:100001;clip:auto;clip-path:none;width:auto;height:auto;padding:8px 12px;background:var(--nx-primary-bg);color:var(--nx-primary-ink);border-radius:var(--nx-radius)}
.nx-main :where(h1,h2,h3,[id]){scroll-margin-top:calc(var(--wp-admin--admin-bar--height,0px) + 96px)}
:root[data-nx-motion="reduce"] body.nx-site *,:root[data-nx-motion="reduce"] body.nx-site *::before,:root[data-nx-motion="reduce"] body.nx-site *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
@media (forced-colors:active){body.nx-site :where(.nx-tool,.nx-switch__btn,.nx-dlg__close){border:1px solid ButtonText}}
/* Platform domain hue (BRAND_SYSTEM section 3): the byline bar's 2 px rule and the platform name only. */
:root[data-nx-domain] .nx-rbar{border-top-color:transparent;background:linear-gradient(90deg,var(--nx-domain-rule),var(--nx-accent)) top left/100% 2px no-repeat}
:root[data-nx-domain] .nx-crumbs li:first-child a{color:var(--nx-domain-ink)}
/* 1.4.1 links in running text are told apart by more than colour; 1.4.3 the article index numbers keep full contrast. */
.nx-main :where(p,dd,li,td,figcaption,.nx-tbx__note) a:not([class]){text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.18em}
body.nx-site .nx-main .nx-article .nx-index-strip a>span{opacity:1}
/* 1.4.3 form text in both schemes: the parent's dark inputs keep a grey that fails on near-black. */
body.nx-site :where(.nx-dlg,.nx-main,.nx-head__search) :where(input[type="text"],input[type="search"],input[type="email"],textarea){color:var(--nx-text-primary)}
body.nx-site :where(.nx-dlg,.nx-main,.nx-head__search) :where(input,textarea)::placeholder{color:var(--nx-text-muted);opacity:1}
/* CLS: with script on, the reader tool buttons keep their place (hidden) until nexus-reader.js is ready; without script they stay out (nexus-reader.css). */
:root[data-nx-mode]:not(.nx-reader-ready) .nx-tools :where([data-nx-open],[data-nx-print]){display:inline-flex;visibility:hidden}
