/* b/6e28ec410172/host.css */
/* Nexus Observatory pages: host rules. On the canvas template the page is black edge to edge; with
   _nxo_hide_theme_chrome the theme's header and footer are hidden on that page only (Ohio and common themes). */
html,body.nxo-canvas-page,body.nxo-hide-theme-chrome{margin:0;background:var(--nxo-bg,#000);cursor:auto!important}
/* the ground and type outside .nxo-view (overscroll, consent, overlays) follow the visitor's theme and the kit's face, not
   black and the browser's serif (QA H-02, 2026-11-02); dark stays the default when no theme is chosen */
:root[data-theme=light],:root[data-theme=light] :is(body.nxo-canvas-page,body.nxo-hide-theme-chrome){background:var(--nxo-bg,#fff);color-scheme:light}
body.nxo-canvas-page,body.nxo-hide-theme-chrome{font-family:var(--nxo-sans,"IBM Plex Sans","IBM Plex Sans Fallback",system-ui,sans-serif)}
body.nxo-hide-theme-chrome .site-header,body.nxo-hide-theme-chrome #masthead,body.nxo-hide-theme-chrome .header,
body.nxo-hide-theme-chrome header.header,body.nxo-hide-theme-chrome .site-footer,body.nxo-hide-theme-chrome #colophon,
body.nxo-hide-theme-chrome .site-footer-wrap,body.nxo-hide-theme-chrome footer.site-footer,body.nxo-hide-theme-chrome .clb-subscribe-popup,
body.nxo-hide-theme-chrome .page-headline,body.nxo-hide-theme-chrome .breadcrumbs{display:none!important}
body.nxo-hide-theme-chrome .page-container,body.nxo-hide-theme-chrome .site-content,body.nxo-hide-theme-chrome .site-main{max-width:none!important;padding:0!important;margin:0!important}
.nxo-view{position:relative;isolation:isolate}
/* "Skip to content", printed by the canvas templates before the consent banner and the view (WCAG 2.4.1, audit L10): out of
   sight until focused, then over the bar and every overlay (token z-skip), never under the bar (WCAG 2.4.11) */
body .nx-skip{position:fixed;top:8px;inset-inline-start:8px;z-index:var(--nxo-z-skip,60);box-sizing:border-box;padding:10px 14px;border-radius:5px;background:var(--nxo-t1,#fff);color:var(--nxo-bg,#000);font:600 14px/1.2 var(--nxo-sans,"IBM Plex Sans",system-ui,sans-serif);text-decoration:none;transform:translateY(calc(-100% - 16px))}
body .nx-skip:focus,body .nx-skip:focus-visible{transform:none;outline:2px solid var(--nxo-accent,#FF1F1F);outline-offset:2px}
.nxo-view-notice{padding:12px 16px;border:1px dashed #ff3b2f;color:#ff3b2f;font:500 13px/1.4 ui-monospace,monospace}

/* The server-recorded page (.nxo-ssr: the page's own text, printed by the plugin for readers without scripts and shown
   until the view mounts, or for good when it cannot): a reading column below the fixed bar and sub-header, the type
   scale of the views, never full-width text under the bar (owner P0 2026-11-06). Tokens with fallbacks: this sheet
   comes first, before the bundle's tokens. A view's own rules (cov.css) still refine it. */
.nxo-ssr{box-sizing:border-box;max-width:880px;margin:0 auto;padding:calc(var(--nx-bar-end,104px) + 40px) 24px 64px;color:var(--t1,#f2f2f2);font:400 17px/1.6 var(--sans,"IBM Plex Sans",system-ui,sans-serif)}
.nxo-ssr h1{margin:14px 0 18px;font:500 clamp(32px,4.2vw,52px)/1.08 var(--sans,"IBM Plex Sans",system-ui,sans-serif);letter-spacing:-.02em}
.nxo-ssr h2{margin:44px 0 12px;font:500 clamp(22px,2.4vw,30px)/1.22 var(--sans,"IBM Plex Sans",system-ui,sans-serif);letter-spacing:-.01em}
.nxo-ssr h3{margin:28px 0 8px;font:600 18px/1.35 var(--sans,"IBM Plex Sans",system-ui,sans-serif)}
.nxo-ssr p,.nxo-ssr li,.nxo-ssr dd{max-width:72ch;color:var(--t2,#c9c9c9)}
.nxo-ssr ul,.nxo-ssr ol{padding-inline-start:1.2em}
.nxo-ssr .crumb{display:flex;flex-wrap:wrap;gap:6px;font:400 12px/1.4 var(--mono,"IBM Plex Mono",ui-monospace,monospace);color:var(--t3,#8c8c8c)}
.nxo-ssr .crumb a,.nxo-ssr a{color:var(--t1,#f2f2f2);text-decoration:underline;text-underline-offset:3px}
.nxo-ssr .crumb a{color:inherit}
.nxo-ssr img,.nxo-ssr svg{max-width:100%;height:auto}
.nxo-ssr table{border-collapse:collapse;font-size:15px}.nxo-ssr th,.nxo-ssr td{padding:6px 10px;border-bottom:1px solid var(--hair,rgba(127,127,127,.25));text-align:start}
@media (max-width:640px){.nxo-ssr{padding:calc(var(--nx-bar-end,96px) + 24px) 16px 40px;font-size:16px}}

/* ui/dist/nxo-ui.3643bcbdca.css */
/* nexus-observatory-ui tokens: generated from site-src/system/tokens/tokens.json; do not edit. */
@font-face{font-family:"IBM Plex Sans";src:url(/_nxo/ui/dist/fonts/plex-sans-400.4ea58f2db7.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(/_nxo/ui/dist/fonts/plex-sans-500.f77a509766.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url(/_nxo/ui/dist/fonts/plex-sans-600.4d2eac2d26.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/_nxo/ui/dist/fonts/plex-mono-400.4ef03b12ee.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/_nxo/ui/dist/fonts/plex-mono-500.2575194967.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans Condensed";src:url(/_nxo/ui/dist/fonts/plex-sans-condensed-500.3ba975b546.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans Fallback";src:local("Arial"),local("Liberation Sans"),local("Helvetica");size-adjust:101.82%;ascent-override:100.67%;descent-override:27.01%;line-gap-override:0%}
@font-face{font-family:"IBM Plex Mono Fallback";src:local("Courier New"),local("Liberation Mono"),local("Menlo");size-adjust:99.98%;ascent-override:102.52%;descent-override:27.50%;line-gap-override:0%}
:root{--nxo-bg:#000;--nxo-surface:#0a0a0a;--nxo-elev:#111;--nxo-muted:#141414;--nxo-hover:#1a1a1a;--nxo-hair:rgba(255,255,255,.08);--nxo-hair2:rgba(255,255,255,.20);--nxo-t1:#fff;--nxo-t2:#d4d4d4;--nxo-t3:#a3a3a3;--nxo-accent:#FF1F1F;--nxo-accent-bg:#3A0404;--nxo-btn-primary-hover:#FF4A3D;--nxo-code-string:#FF7A6E;--nxo-code-comment:#8c8c8c;--nxo-accent-graphic:#FF1F1F;--nxo-accent-hot:#FF4A3D;--nxo-accent-text:#FF1F1F;--nxo-accent-glint:#FFE1DD;--nxo-on-accent:#000;--nxo-accent-pressed:#D91414;--nxo-on-accent-pressed:#fff;--nxo-ink:255,255,255;--nxo-paper:0,0,0;--nxo-ramp-1:#1A0303;--nxo-ramp-2:#4D0606;--nxo-ramp-3:#8A0A0A;--nxo-ramp-4:#D91414;--nxo-ramp-5:#FF1F1F;--nxo-ramp-6:#FF7A6E;--nxo-ramp-7:#FFE1DD;color-scheme:dark;--nxo-r:5px;--nxo-rc:4px;--nxo-sans:"IBM Plex Sans","IBM Plex Sans Fallback",system-ui,sans-serif;--nxo-mono:"IBM Plex Mono","IBM Plex Mono Fallback",ui-monospace,monospace;--nxo-condensed:"IBM Plex Sans Condensed","IBM Plex Sans",sans-serif;--nxo-display:var(--nxo-mono);--nxo-cond:var(--nxo-sans);--nxo-numeric:tabular-nums slashed-zero;--nxo-scene-filter-light:invert(1) hue-rotate(178deg) saturate(3.4);--nxo-track-display-1:-0.045em;--nxo-track-display-2:-0.045em;--nxo-track-title:-0.012em;--nxo-track-lede:-0.008em;--nxo-track-sub:-0.008em;--nxo-track-body:0;--nxo-track-small:0;--nxo-track-eyebrow:0.16em;--nxo-track-nav:0.06em;--nxo-track-data:0;--nxo-track-button:-0.005em;--nxo-space-1:4px;--nxo-space-2:8px;--nxo-space-3:12px;--nxo-space-4:16px;--nxo-space-5:24px;--nxo-space-6:32px;--nxo-space-7:48px;--nxo-space-8:64px;--nxo-space-gutter:48px;--nxo-space-gutter-md:20px;--nxo-space-gutter-sm:16px;--nxo-space-section:120px;--nxo-space-section-md:88px;--nxo-space-page-max:1440px;--nxo-space-nav-h:64px;--nxo-dur-fast:150ms;--nxo-dur-base:250ms;--nxo-dur-slow:600ms;--nxo-ease-standard:cubic-bezier(0.2,0,0,1);--nxo-ease-out:cubic-bezier(0,0,0.2,1);--nxo-z-content:2;--nxo-z-caption:3;--nxo-z-sticky:10;--nxo-z-nav:20;--nxo-z-site-bar:30;--nxo-z-overlay:40;--nxo-z-consent:50;--nxo-shadow-menu:0 40px 80px rgba(var(--nxo-paper),.6);--nxo-shadow-marker:inset 2px 0 #FF1F1F}
:root[data-theme=light]{--nxo-bg:#fff;--nxo-surface:#f6f6f5;--nxo-elev:#efefee;--nxo-muted:#ebebea;--nxo-hover:#e5e5e4;--nxo-hair:rgba(0,0,0,.09);--nxo-hair2:rgba(0,0,0,.22);--nxo-t1:#0a0a0a;--nxo-t2:#2b2b2b;--nxo-t3:#5c5c5c;--nxo-accent:#FF1F1F;--nxo-accent-bg:#FFF0EE;--nxo-btn-primary-hover:#FF4A3D;--nxo-code-string:#8A0A0A;--nxo-code-comment:#6b6b6b;--nxo-accent-graphic:#FF1F1F;--nxo-accent-hot:#FF4A3D;--nxo-accent-text:#0a0a0a;--nxo-accent-glint:#FFE1DD;--nxo-on-accent:#000;--nxo-accent-pressed:#D91414;--nxo-on-accent-pressed:#fff;--nxo-ink:0,0,0;--nxo-paper:255,255,255;--nxo-ramp-1:#FFF0EE;--nxo-ramp-2:#FFC6BF;--nxo-ramp-3:#FF7A6E;--nxo-ramp-4:#FF1F1F;--nxo-ramp-5:#D91414;--nxo-ramp-6:#8A0A0A;--nxo-ramp-7:#4D0606;color-scheme:light}
@media (prefers-color-scheme:light){:root:not([data-theme]){--nxo-bg:#fff;--nxo-surface:#f6f6f5;--nxo-elev:#efefee;--nxo-muted:#ebebea;--nxo-hover:#e5e5e4;--nxo-hair:rgba(0,0,0,.09);--nxo-hair2:rgba(0,0,0,.22);--nxo-t1:#0a0a0a;--nxo-t2:#2b2b2b;--nxo-t3:#5c5c5c;--nxo-accent:#FF1F1F;--nxo-accent-bg:#FFF0EE;--nxo-btn-primary-hover:#FF4A3D;--nxo-code-string:#8A0A0A;--nxo-code-comment:#6b6b6b;--nxo-accent-graphic:#FF1F1F;--nxo-accent-hot:#FF4A3D;--nxo-accent-text:#0a0a0a;--nxo-accent-glint:#FFE1DD;--nxo-on-accent:#000;--nxo-accent-pressed:#D91414;--nxo-on-accent-pressed:#fff;--nxo-ink:0,0,0;--nxo-paper:255,255,255;--nxo-ramp-1:#FFF0EE;--nxo-ramp-2:#FFC6BF;--nxo-ramp-3:#FF7A6E;--nxo-ramp-4:#FF1F1F;--nxo-ramp-5:#D91414;--nxo-ramp-6:#8A0A0A;--nxo-ramp-7:#4D0606;color-scheme:light}}
.nxo-ui[data-theme=dark]{--nxo-bg:#000;--nxo-surface:#0a0a0a;--nxo-elev:#111;--nxo-muted:#141414;--nxo-hover:#1a1a1a;--nxo-hair:rgba(255,255,255,.08);--nxo-hair2:rgba(255,255,255,.20);--nxo-t1:#fff;--nxo-t2:#d4d4d4;--nxo-t3:#a3a3a3;--nxo-accent:#FF1F1F;--nxo-accent-bg:#3A0404;--nxo-btn-primary-hover:#FF4A3D;--nxo-code-string:#FF7A6E;--nxo-code-comment:#8c8c8c;--nxo-accent-graphic:#FF1F1F;--nxo-accent-hot:#FF4A3D;--nxo-accent-text:#FF1F1F;--nxo-accent-glint:#FFE1DD;--nxo-on-accent:#000;--nxo-accent-pressed:#D91414;--nxo-on-accent-pressed:#fff;--nxo-ink:255,255,255;--nxo-paper:0,0,0;--nxo-ramp-1:#1A0303;--nxo-ramp-2:#4D0606;--nxo-ramp-3:#8A0A0A;--nxo-ramp-4:#D91414;--nxo-ramp-5:#FF1F1F;--nxo-ramp-6:#FF7A6E;--nxo-ramp-7:#FFE1DD;color-scheme:dark}
.nxo-ui[data-theme=light]{--nxo-bg:#fff;--nxo-surface:#f6f6f5;--nxo-elev:#efefee;--nxo-muted:#ebebea;--nxo-hover:#e5e5e4;--nxo-hair:rgba(0,0,0,.09);--nxo-hair2:rgba(0,0,0,.22);--nxo-t1:#0a0a0a;--nxo-t2:#2b2b2b;--nxo-t3:#5c5c5c;--nxo-accent:#FF1F1F;--nxo-accent-bg:#FFF0EE;--nxo-btn-primary-hover:#FF4A3D;--nxo-code-string:#8A0A0A;--nxo-code-comment:#6b6b6b;--nxo-accent-graphic:#FF1F1F;--nxo-accent-hot:#FF4A3D;--nxo-accent-text:#0a0a0a;--nxo-accent-glint:#FFE1DD;--nxo-on-accent:#000;--nxo-accent-pressed:#D91414;--nxo-on-accent-pressed:#fff;--nxo-ink:0,0,0;--nxo-paper:255,255,255;--nxo-ramp-1:#FFF0EE;--nxo-ramp-2:#FFC6BF;--nxo-ramp-3:#FF7A6E;--nxo-ramp-4:#FF1F1F;--nxo-ramp-5:#D91414;--nxo-ramp-6:#8A0A0A;--nxo-ramp-7:#4D0606;color-scheme:light}
/* nexus-observatory-ui components (docs/30 §1, system/ui/README). Every value is a token (--nxo-*, generated from
   system/tokens/tokens.json); no colour literals. Scope: .nxo-ui, plus the Connect containers (.nxo-c, .nxo-native,
   .nxo-um) whose markup predates the package. Dark is the default; html[data-theme] or the device decides. */
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um){
  color:var(--nxo-t1);font:400 14px/1.5 var(--nxo-sans);font-variant-numeric:var(--nxo-numeric);-webkit-font-smoothing:antialiased;
  --nxo-focus:0 0 0 2px var(--nxo-bg),0 0 0 4px var(--nxo-accent);
}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) *,:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) *::before,:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) *::after{box-sizing:border-box}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--nxo-accent);outline-offset:2px}
.nxo-ui [hidden]{display:none!important}

/* ---- type ---- */
:is(.nxo-ui, .nxo-c) .nxo-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0;font:500 11px/1.4 var(--nxo-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--nxo-t3)}
:is(.nxo-ui, .nxo-c) .nxo-eyebrow--dot::before,.nxo-ui .nxo-eyebrow[data-dot]::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--nxo-accent)}
.nxo-ui .nxo-title{margin:0;font:400 20px/1.15 var(--nxo-mono);letter-spacing:var(--nxo-track-display-1);color:var(--nxo-t1)}
.nxo-ui .nxo-text{margin:0;color:var(--nxo-t2);font-size:13.5px;line-height:1.55}
.nxo-ui .nxo-mono,.nxo-ui .nxo-num{font-family:var(--nxo-mono);font-variant-numeric:tabular-nums slashed-zero}
.nxo-ui .nxo-link,.nxo-ui .nxo-text a{color:var(--nxo-t1);text-decoration:underline;text-decoration-color:var(--nxo-accent);text-decoration-thickness:1px;text-underline-offset:.2em}
.nxo-ui .nxo-link:hover,.nxo-ui .nxo-text a:hover{text-decoration-thickness:2px}

/* ---- buttons: outlined by default; primary = red fill, black label; text = a link that is a button ---- */
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) .nxo-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 16px;margin:0;
  border:1px solid var(--nxo-hair2);border-radius:var(--nxo-r);background:transparent;color:var(--nxo-t1);
  font:600 13.5px/1 var(--nxo-sans);letter-spacing:-.005em;text-decoration:none;white-space:nowrap;cursor:pointer;
  transition:background var(--nxo-dur-fast) var(--nxo-ease-standard),border-color var(--nxo-dur-fast) var(--nxo-ease-standard),color var(--nxo-dur-fast)}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) .nxo-btn:hover{background:var(--nxo-hover);border-color:var(--nxo-t3)}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) .nxo-btn:active{background:var(--nxo-muted)}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(.nxo-btn--primary,.nxo-btn[data-variant=primary]){background:var(--nxo-accent);border-color:var(--nxo-accent);color:var(--nxo-on-accent)}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(.nxo-btn--primary,.nxo-btn[data-variant=primary]):hover{background:var(--nxo-accent-hot);border-color:var(--nxo-accent-hot);color:var(--nxo-on-accent)}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(.nxo-btn--primary,.nxo-btn[data-variant=primary]):active{background:var(--nxo-accent-pressed);border-color:var(--nxo-accent-pressed);color:var(--nxo-on-accent-pressed)}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(.nxo-btn--ghost,.nxo-btn[data-variant=ghost]){border-color:transparent;color:var(--nxo-t2)}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(.nxo-btn--ghost,.nxo-btn[data-variant=ghost]):hover{color:var(--nxo-t1);background:var(--nxo-hover)}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) .nxo-btn--text{min-height:32px;padding:0 4px;border-color:transparent;background:none;color:var(--nxo-t1);font-weight:500;text-decoration:underline;text-decoration-color:var(--nxo-accent);text-underline-offset:.2em}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) .nxo-btn--text:hover{background:none;text-decoration-thickness:2px}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(.nxo-btn--sm,.nxo-btn[data-size=sm]){min-height:32px;padding:0 12px;font-size:12.5px}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(.nxo-btn--lg,.nxo-btn[data-size=lg]){min-height:48px;padding:0 20px;font-size:15px}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) .nxo-btn--block{display:flex;width:100%}
:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) :is(.nxo-btn[disabled],.nxo-btn[aria-disabled=true]){opacity:.45;cursor:not-allowed;pointer-events:none}
.nxo-ui .nxo-actions{display:flex;flex-wrap:wrap;gap:8px}

/* ---- forms ---- */
.nxo-ui .nxo-form{display:grid;gap:18px}
.nxo-ui .nxo-form__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
:is(.nxo-ui, .nxo-c, .nxo-native) .nxo-field{display:grid;gap:6px;min-width:0}
:is(.nxo-ui, .nxo-c, .nxo-native) .nxo-label{font:500 11px/1.3 var(--nxo-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--nxo-t2)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-hint,.nxo-help){font-size:12.5px;line-height:1.45;color:var(--nxo-t3)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-input,.nxo-select,.nxo-textarea){
  width:100%;min-height:42px;padding:9px 12px;margin:0;border:1px solid var(--nxo-hair2);border-radius:var(--nxo-r);
  background:var(--nxo-surface);color:var(--nxo-t1);font:400 14px/1.4 var(--nxo-sans);box-shadow:none;
  transition:border-color var(--nxo-dur-fast),background var(--nxo-dur-fast)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-input,.nxo-select,.nxo-textarea)::placeholder{color:var(--nxo-t3);opacity:1}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-input,.nxo-select,.nxo-textarea):hover{border-color:var(--nxo-t3)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-input,.nxo-select,.nxo-textarea):focus{outline:none;border-color:var(--nxo-accent);background:var(--nxo-bg);box-shadow:0 0 0 1px var(--nxo-accent)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-input,.nxo-select,.nxo-textarea)[aria-invalid=true]{border-color:var(--nxo-t1);box-shadow:inset 3px 0 0 var(--nxo-accent)}
.nxo-ui .nxo-textarea,.nxo-c textarea.nxo-input{min-height:110px;resize:vertical}
.nxo-ui .nxo-select{appearance:none;padding-inline-end:36px;background-image:linear-gradient(45deg,transparent 50%,var(--nxo-t2) 50%),linear-gradient(135deg,var(--nxo-t2) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat}
/* errors: ink text with a red icon and the word, never colour alone, never red text */
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-error,.nxo-err){display:flex;gap:8px;align-items:flex-start;font-size:12.5px;line-height:1.45;color:var(--nxo-t1)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-error,.nxo-err):not(:empty)::before{content:"";flex:none;width:14px;height:14px;margin-top:1px;background:var(--nxo-accent);-webkit-mask:var(--nxo-ico-error) center/14px no-repeat;mask:var(--nxo-ico-error) center/14px no-repeat}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-errors,.nxo-summary){padding:14px 16px 14px 18px;border:1px solid var(--nxo-hair2);border-inline-start:3px solid var(--nxo-accent);border-radius:var(--nxo-r);background:var(--nxo-surface);color:var(--nxo-t1)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-errors,.nxo-summary) :is(h2,h3,strong){display:block;margin:0 0 6px;font:600 13.5px/1.4 var(--nxo-sans)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-errors,.nxo-summary) ul{margin:0;padding-inline-start:18px}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-errors,.nxo-summary) a{color:var(--nxo-t1);text-decoration:underline;text-decoration-color:var(--nxo-accent)}

/* checkbox and radio */
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-check,.nxo-radio){display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:13.5px;color:var(--nxo-t2)}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-check,.nxo-radio) input{appearance:none;width:20px;height:20px;margin:0;border:1px solid var(--nxo-hair2);background:var(--nxo-surface);display:grid;place-items:center;cursor:pointer}
:is(.nxo-ui, .nxo-c, .nxo-native) .nxo-check input{border-radius:4px}
:is(.nxo-ui, .nxo-c, .nxo-native) .nxo-radio input{border-radius:50%}
:is(.nxo-ui, .nxo-c, .nxo-native) :is(.nxo-check,.nxo-radio) input:hover{border-color:var(--nxo-t3)}
:is(.nxo-ui, .nxo-c, .nxo-native) .nxo-check input:checked{background:var(--nxo-accent);border-color:var(--nxo-accent)}
:is(.nxo-ui, .nxo-c, .nxo-native) .nxo-check input:checked::after{content:"";width:10px;height:6px;border:2px solid var(--nxo-on-accent);border-top:0;border-inline-end:0;transform:translateY(-1px) rotate(-45deg)}
:is(.nxo-ui, .nxo-c, .nxo-native) .nxo-radio input:checked{border-color:var(--nxo-accent)}
:is(.nxo-ui, .nxo-c, .nxo-native) .nxo-radio input:checked::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--nxo-accent)}

/* switch: <span class="nxo-switch"><input role="switch" class="nxo-switch__input"><span class="nxo-switch__track"></span><span class="nxo-switch__state">Off</span></span> */
.nxo-ui .nxo-switch{position:relative;display:inline-flex;align-items:center;gap:10px;flex:none}
.nxo-ui .nxo-switch__input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}
.nxo-ui .nxo-switch__track{position:relative;width:38px;height:22px;border:1px solid var(--nxo-hair2);border-radius:11px;background:var(--nxo-muted);transition:background var(--nxo-dur-fast),border-color var(--nxo-dur-fast)}
.nxo-ui .nxo-switch__track::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:14px;height:14px;border-radius:50%;background:var(--nxo-t2);transition:transform var(--nxo-dur-fast) var(--nxo-ease-standard),background var(--nxo-dur-fast)}
.nxo-ui .nxo-switch__input:checked+.nxo-switch__track{background:var(--nxo-accent);border-color:var(--nxo-accent)}
.nxo-ui .nxo-switch__input:checked+.nxo-switch__track::after{transform:translateX(16px);background:var(--nxo-on-accent)}.nxo-ui .nxo-switch__input:checked+.nxo-switch__track:dir(rtl)::after{transform:translateX(-16px)}
.nxo-ui .nxo-switch__input:focus-visible+.nxo-switch__track{box-shadow:var(--nxo-focus)}
.nxo-ui .nxo-switch__input:disabled+.nxo-switch__track{opacity:.45}
.nxo-ui .nxo-switch__state{min-width:2.6em;font:500 11px var(--nxo-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--nxo-t2)}

/* ---- surfaces ---- */
.nxo-ui .nxo-card{padding:20px;border:1px solid var(--nxo-hair);border-radius:var(--nxo-r);background:var(--nxo-surface)}
/* framed surfaces: hairline frame, no corner marks (owner rule) */
.nxo-ui .nxo-panel{position:relative;padding:24px;border:1px solid var(--nxo-hair);background:var(--nxo-bg)}
.nxo-ui :is(.nxo-panel--ticks,.nxo-hudcard,.nxo-dialog,.nxo-sheet,.nxo-toast){background-color:var(--nxo-bg)}
.nxo-ui .nxo-hudcard{position:relative;padding:20px 20px 18px;border:1px solid var(--nxo-hair2);color:var(--nxo-t1)}
.nxo-ui .nxo-hudcard__head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;padding:0 0 10px;border-bottom:1px solid var(--nxo-hair)}

/* dialog, sheet, overlay, toast */
.nxo-ui .nxo-overlay{position:fixed;inset:0;z-index:var(--nxo-z-overlay);background:color-mix(in srgb,var(--nxo-paper-c) 72%,transparent)}
.nxo-ui .nxo-dialog{position:fixed;z-index:calc(var(--nxo-z-overlay) + 1);top:50%;left:50%;transform:translate(-50%,-50%);width:min(640px,calc(100vw - 32px));max-height:min(86vh,820px);display:flex;flex-direction:column;border:1px solid var(--nxo-hair2);color:var(--nxo-t1);box-shadow:var(--nxo-shadow-menu)}
.nxo-ui :is(.nxo-dialog__head,.nxo-dialog__foot){display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px}
.nxo-ui .nxo-dialog__head{border-bottom:1px solid var(--nxo-hair)}
.nxo-ui .nxo-dialog__foot{border-top:1px solid var(--nxo-hair);justify-content:flex-end;flex-wrap:wrap}
.nxo-ui .nxo-dialog__body{overflow:auto;padding:18px 20px;display:grid;gap:14px}
.nxo-ui .nxo-sheet{position:fixed;z-index:calc(var(--nxo-z-overlay) + 1);inset-inline-start:0;inset-inline-end:0;bottom:0;max-height:88vh;overflow:auto;padding:20px 16px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--nxo-hair2)}
.nxo-ui .nxo-close{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid transparent;border-radius:var(--nxo-r);background:none;color:var(--nxo-t2);font:400 20px/1 var(--nxo-sans);cursor:pointer}
.nxo-ui .nxo-close:hover{color:var(--nxo-t1);border-color:var(--nxo-hair2)}
.nxo-ui .nxo-toast{position:fixed;z-index:var(--nxo-z-consent);inset-inline-start:16px;bottom:16px;max-width:min(420px,calc(100vw - 32px));padding:12px 14px 12px 16px;border:1px solid var(--nxo-hair2);color:var(--nxo-t1);font-size:13px;line-height:1.45;box-shadow:var(--nxo-shadow-menu)}
.nxo-ui .nxo-toast::before{content:"";display:inline-block;width:6px;height:6px;margin:0 10px 1px 0;border-radius:50%;background:var(--nxo-accent);vertical-align:middle}

/* tabs and segmented control */
.nxo-ui .nxo-tabs{display:flex;gap:2px;border-bottom:1px solid var(--nxo-hair);overflow-x:auto}
.nxo-ui .nxo-tabs [role=tab]{min-height:40px;padding:0 14px;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;color:var(--nxo-t3);font:500 12px var(--nxo-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.nxo-ui .nxo-tabs [role=tab]:hover{color:var(--nxo-t1)}
.nxo-ui .nxo-tabs [role=tab][aria-selected=true]{color:var(--nxo-t1);border-bottom-color:var(--nxo-accent)}
.nxo-ui .nxo-seg{display:inline-flex;padding:2px;gap:2px;border:1px solid var(--nxo-hair2);border-radius:var(--nxo-r)}
.nxo-ui .nxo-seg button{min-height:30px;padding:0 12px;border:0;border-radius:4px;background:none;color:var(--nxo-t3);font:500 12px var(--nxo-mono);letter-spacing:.04em;cursor:pointer}
.nxo-ui .nxo-seg button:hover{color:var(--nxo-t1)}
.nxo-ui .nxo-seg button[aria-pressed=true]{background:var(--nxo-hover);color:var(--nxo-t1);box-shadow:inset 0 -2px 0 var(--nxo-accent)}

/* table, badge, tag */
.nxo-ui .nxo-table{width:100%;border-collapse:collapse;font-size:13.5px}
.nxo-ui .nxo-table th{text-align:start;padding:0 14px 10px 0;border-bottom:1px solid var(--nxo-hair2);font:500 10.5px var(--nxo-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--nxo-t3)}
.nxo-ui .nxo-table td{padding:12px 14px 12px 0;border-bottom:1px solid var(--nxo-hair);color:var(--nxo-t2);vertical-align:top}
.nxo-ui .nxo-table td:first-child{color:var(--nxo-t1);font-weight:500}
.nxo-ui .nxo-table :is(td,th).nxo-num{text-align:end;font-family:var(--nxo-mono)}
:is(.nxo-ui, .nxo-c) .nxo-badge{display:inline-flex;align-items:center;gap:7px;height:22px;padding:0 8px;border:1px solid var(--nxo-hair2);border-radius:var(--nxo-rc);font:500 10.5px/1 var(--nxo-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--nxo-t2)}
:is(.nxo-ui, .nxo-c) .nxo-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--nxo-accent)}
.nxo-ui .nxo-tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border:1px solid var(--nxo-hair2);border-radius:var(--nxo-rc);font:400 11px var(--nxo-mono);color:var(--nxo-t2)}

/* alert and empty state */
.nxo-ui .nxo-alert{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--nxo-hair2);border-radius:var(--nxo-r);background:var(--nxo-surface);color:var(--nxo-t1)}
.nxo-ui .nxo-alert::before{content:"";flex:none;width:18px;height:18px;background:var(--nxo-accent);-webkit-mask:var(--nxo-ico-error) center/18px no-repeat;mask:var(--nxo-ico-error) center/18px no-repeat}
.nxo-ui .nxo-alert--done::before{background:var(--nxo-t1);-webkit-mask-image:var(--nxo-ico-done);mask-image:var(--nxo-ico-done)}
.nxo-ui .nxo-alert--warning::before{-webkit-mask-image:var(--nxo-ico-warning);mask-image:var(--nxo-ico-warning)}
.nxo-ui .nxo-alert b{font:600 13.5px/1.4 var(--nxo-sans)}.nxo-ui .nxo-alert p{margin:4px 0 0;color:var(--nxo-t2);font-size:13.5px}
.nxo-ui .nxo-empty{padding:36px 24px;border:1px dashed var(--nxo-hair2);border-radius:var(--nxo-r)}
.nxo-ui .nxo-empty h3{margin:0 0 6px;font:600 15px/1.35 var(--nxo-sans)}.nxo-ui .nxo-empty p{margin:0 0 16px;color:var(--nxo-t2);font-size:13.5px}

/* media on the theme surface: no letterbox bars in either theme */
:is(.nxo-ui, .nxo-c) .nxo-media{display:block;width:100%;background:var(--nxo-surface);object-fit:cover}

/* monogram: a person without a photo (account header, menus). Ink only, 5px corners, mono initials or the person glyph. */
.nxo-monogram{display:inline-grid;place-items:center;flex:none;width:var(--nxo-mono-size,40px);height:var(--nxo-mono-size,40px);border:1px solid var(--nxo-hair2);border-radius:var(--nxo-r);background:var(--nxo-muted);color:var(--nxo-t1);font:500 calc(var(--nxo-mono-size,40px) * .36)/1 var(--nxo-mono);letter-spacing:.02em;text-transform:uppercase;overflow:hidden}
.nxo-monogram svg{width:55%;height:55%;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.nxo-monogram img{display:block;width:100%;height:100%;object-fit:contain}

/* guide: the plain-language help at the foot of a page (account sections and any view that ships guide data). Ink on
   the page surface, hairlines, 5px corners; red only on hover and focus. Headings stay in the document outline. */
.nxo-guide{margin:48px 0 0;padding:28px 0 0;border-top:1px solid var(--nxo-hair2);color:var(--nxo-t2);font:400 15px/1.6 var(--nxo-sans)}
.nxo-guide *{box-sizing:border-box}
.nxo-guide__kicker{margin:0 0 6px;font:500 11px/1.4 var(--nxo-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--nxo-t3)}
.nxo-guide .nxo-guide__title{margin:0;font:600 20px/1.3 var(--nxo-sans);letter-spacing:-.01em;color:var(--nxo-t1)}
.nxo-guide .nxo-guide__intro{max-width:68ch;margin:10px 0 0;color:var(--nxo-t2)}
.nxo-guide__part{margin:28px 0 0}
.nxo-guide .nxo-guide__h{margin:0 0 12px;font:600 15px/1.4 var(--nxo-sans);color:var(--nxo-t1)}
.nxo-guide__steps{display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:nxo-guide;border:1px solid var(--nxo-hair);border-radius:var(--nxo-r);background:var(--nxo-surface)}
.nxo-guide__steps>li{counter-increment:nxo-guide;margin:0;display:grid;grid-template-columns:32px minmax(0,1fr);gap:4px 12px;padding:14px 16px;border-bottom:1px solid var(--nxo-hair)}
.nxo-guide__steps>li:last-child{border-bottom:0}
.nxo-guide__steps>li::before{content:counter(nxo-guide,decimal-leading-zero);grid-row:span 2;font:500 12px/1.9 var(--nxo-mono);color:var(--nxo-t3);font-variant-numeric:tabular-nums}
.nxo-guide__st{margin:0;font:600 14px/1.45 var(--nxo-sans);color:var(--nxo-t1)}
.nxo-guide__sx{margin:0;max-width:72ch;font-size:14px;color:var(--nxo-t2)}
.nxo-guide__faq{border-top:1px solid var(--nxo-hair)}
.nxo-guide__faq details{border-bottom:1px solid var(--nxo-hair)}
.nxo-guide__faq summary{position:relative;display:block;min-height:44px;padding:11px 32px 11px 0;cursor:pointer;list-style:none;font:500 14px/1.45 var(--nxo-sans);color:var(--nxo-t1)}
.nxo-guide__faq summary::-webkit-details-marker{display:none}
.nxo-guide__faq summary::after{content:"";position:absolute;inset-inline-end:6px;top:17px;width:7px;height:7px;border-inline-end:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
.nxo-guide__faq details[open] summary::after{transform:rotate(-135deg);top:21px}
.nxo-guide__faq summary:hover{color:var(--nxo-t1);text-decoration:underline;text-decoration-color:var(--nxo-accent);text-underline-offset:3px}
.nxo-guide__faq summary:focus-visible,.nxo-guide a:focus-visible{outline:2px solid var(--nxo-accent);outline-offset:2px}
.nxo-guide__faq details>p{max-width:72ch;margin:0 0 14px;font-size:14px;color:var(--nxo-t2)}
.nxo-guide__notes{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.nxo-guide__notes>li{position:relative;max-width:72ch;padding-inline-start:18px;font-size:14px;color:var(--nxo-t2)}
.nxo-guide__notes>li::before{content:"";position:absolute;inset-inline-start:0;top:.8em;width:8px;height:1px;background:var(--nxo-t2)}
.nxo-guide__refs{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.nxo-guide__refs>li{display:grid;gap:2px}
.nxo-guide__refs a{font-size:14px;color:var(--nxo-t1);text-decoration:underline;text-decoration-color:var(--nxo-hair2);text-underline-offset:3px}
.nxo-guide__refs a:hover{text-decoration-color:var(--nxo-accent)}
.nxo-guide__src{font:400 12px/1.4 var(--nxo-mono);color:var(--nxo-t3);overflow-wrap:anywhere}
@media (min-width:900px){.nxo-guide__cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 40px}}

/* icons (masks take the current token colour) */
:root{
  --nxo-ico-error:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='8' cy='8' r='6.4'/%3E%3Cpath d='M8 4.6v4.1M8 11.2v.2'/%3E%3C/svg%3E");
  --nxo-ico-warning:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 1.8 15 14H1z'/%3E%3Cpath d='M8 6.5v3.6M8 12.2v.1'/%3E%3C/svg%3E");
  --nxo-ico-done:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='8' r='6.4'/%3E%3Cpath d='m5 8.2 2 2 4-4.4'/%3E%3C/svg%3E");
  --nxo-paper-c:rgb(var(--nxo-paper));
}
@media (prefers-reduced-motion:reduce){:is(.nxo-ui, .nxo-c, .nxo-native, .nxo-um) *{transition:none!important;animation:none!important}}

/* ui/icons/nxo-icons.c655fe8677.css */
/* Nexus Observatory icons (system/icons). Ink by default; red only for hover, focus and the active state. */
.nxo-i{display:inline-block;flex:none;width:24px;height:24px;vertical-align:middle;overflow:visible;color:inherit}
.nxo-i[data-s="16"]{width:16px;height:16px}
.nxo-i[data-s="20"]{width:20px;height:20px}
.nxo-i[data-s="32"]{width:32px;height:32px}
.nxo-i--muted{color:var(--t3,#a3a3a3)}
/* inline with text: sits on the text baseline, 8 px gap */
.nxo-i--inline{width:16px;height:16px;vertical-align:-.2em;margin-inline-end:8px}
/* a tile for cards and feature grids: a 40 px (48 px large) hairline square holding the icon in muted ink */
.nxo-ico{display:inline-grid;place-items:center;flex:none;width:40px;height:40px;border:1px solid var(--hair2,rgba(255,255,255,.2));border-radius:5px;color:var(--t2,#d4d4d4);transition:color .15s,border-color .15s}
.nxo-ico--lg{width:48px;height:48px}
.nxo-ico--sm{width:32px;height:32px}
.nxo-ico--bare{border:0;width:auto;height:auto;border-radius:0}
/* red only on hover, focus and the active state: hover on the card or link that holds the tile, or the state itself */
:is(a,button,.cell,.box,.card,.nxo-hot):is(:hover,:focus-visible) .nxo-ico,
:is(a,button):is(:hover,:focus-visible) > .nxo-i,
.nxo-ico[data-active],[aria-current] > .nxo-i,[aria-current] .nxo-ico,[aria-pressed=true] > .nxo-i{color:var(--accent-graphic,currentColor)}
:is(a,button,.cell,.box,.card,.nxo-hot):is(:hover,:focus-visible) .nxo-ico{border-color:var(--hair2,rgba(255,255,255,.2))}
/* eyebrow, chip and link rows that lead with an icon: 16 px icon, 8 px gap, aligned to the first line */
.nxo-eb{display:flex;align-items:center;gap:8px}
.nxo-eb .nxo-i{margin-inline-end:0}
/* the icon on a card that has a picture: floats over the picture's corner, 12 px in */
.nxo-ico--float{position:absolute;inset-block-start:12px;inset-inline-start:12px;z-index:2;background:var(--bg,#000)}
/* check and arrow lists: the icon takes the place of the bullet, 16 px with an 8 px gap */
.nxo-ul{list-style:none;margin:0;padding:0}
.nxo-ul>li{display:flex;align-items:flex-start;gap:8px}
.nxo-ul>li>.nxo-i{margin-block-start:.18em;color:var(--t3,#a3a3a3)}
/* direction-bearing icons turn with the writing direction */
:is([dir=rtl],:dir(rtl)) .nxo-i[data-dir]{transform:scaleX(-1)}
@media (prefers-reduced-motion:reduce){.nxo-ico{transition:none}}
@media (forced-colors:active){.nxo-i,.nxo-ico{color:CanvasText;forced-color-adjust:auto}}
/* ---- bindings for components that already exist ---- */
.is-dom span{display:inline-flex;align-items:center;gap:6px}
.lines a>.nxo-i{color:var(--t3)}
.lines a.cur>.nxo-i{color:var(--accent-graphic,currentColor)}
.lines a:is(:hover,:focus-visible)>.nxo-i{color:var(--accent-graphic,currentColor)}
.inds a:is(:hover,:focus-visible) .nxo-i{color:var(--accent-graphic,currentColor)}
.cell:is(:hover,:focus-visible) .nxo-ico--float,.tc:is(:hover,:focus-visible) .nxo-ico--float{color:var(--accent-graphic,currentColor)}
.route>.nxo-ico{align-self:flex-start;margin-block-end:8px}
.route:is(:hover,:focus-within) .nxo-ico{color:var(--accent-graphic,currentColor)}

/* ui/reader/dist/reader.e014301155.css */
/*! Nexus Observatory reader tools (nexus-observatory-ui): the dock and the effects of each preference. Tokens only. */
.nxo-reader { position: fixed; inset-inline-end: 20px; bottom: calc(20px + var(--nxo-r-lift, 0px)); z-index: calc(var(--nxo-z-overlay, 1000) - 1); font: 400 14px/1.5 var(--nxo-sans, "IBM Plex Sans", system-ui, sans-serif); color: var(--nxo-t1); display: flex; flex-direction: column; align-items: flex-end; gap: 12px; }
.nxo-reader * { box-sizing: border-box; }
.nxo-reader [hidden] { display: none !important; }
/* steps aside while the phone drawer, a modal, a sheet or the search is open (reader.js away()) */
.nxo-reader.nxo-reader--away { display: none; }
.nxo-reader-trigger { inline-size: 44px; block-size: 44px; display: inline-grid; place-items: center; border-radius: 5px; border: 1px solid var(--nxo-hair2); background: var(--nxo-surface); color: var(--nxo-t1); cursor: pointer; }
.nxo-reader-trigger:hover, .nxo-reader-trigger[aria-expanded="true"] { color: var(--nxo-accent); border-color: var(--nxo-accent); }
.nxo-reader button:focus-visible { outline: 2px solid var(--nxo-accent); outline-offset: 2px; }
.nxo-reader-sr { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.nxo-reader-dialog { inline-size: min(320px, calc(100vw - 40px)); max-block-size: calc(100vh - 120px); overflow: auto; padding: 16px; border: 1px solid var(--nxo-hair2); border-radius: 5px; background: var(--nxo-surface); color: var(--nxo-t1); }
.nxo-reader-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 8px; }
.nxo-reader-title { margin: 0; font: 600 15px/1.3 var(--nxo-sans, system-ui, sans-serif); color: var(--nxo-t1); }
.nxo-reader-close { min-inline-size: 32px; min-block-size: 32px; border: 1px solid var(--nxo-hair); border-radius: 5px; background: transparent; color: var(--nxo-t1); font-size: 18px; line-height: 1; cursor: pointer; }
.nxo-reader-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.nxo-reader-tool { inline-size: 100%; min-block-size: 40px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 12px; border: 1px solid var(--nxo-hair); border-radius: 5px; background: transparent; color: var(--nxo-t1); font: inherit; text-align: start; cursor: pointer; }
.nxo-reader-tool:hover { border-color: var(--nxo-hair2); background: var(--nxo-hover, transparent); }
.nxo-reader-tool[aria-pressed="true"] { border-color: var(--nxo-accent); }
.nxo-reader-tool[aria-pressed="true"] .nxo-reader-state { color: var(--nxo-accent-text, var(--nxo-accent)); }
.nxo-reader-state { font: 500 12px/1 var(--nxo-mono, "IBM Plex Mono", ui-monospace, monospace); color: var(--nxo-t2); }
.nxo-reader-reset { margin-block-start: 12px; min-block-size: 36px; padding: 6px 12px; border: 1px solid var(--nxo-hair2); border-radius: 5px; background: transparent; color: var(--nxo-t1); font: inherit; cursor: pointer; }
.nxo-reader-note { margin: 8px 0 0; font-size: 12px; color: var(--nxo-t3); }
.nxo-reader-guide { position: fixed; inset-inline: 0; top: 0; block-size: 32px; pointer-events: none; z-index: calc(var(--nxo-z-overlay, 1000) - 2); border-block: 2px solid var(--nxo-accent); background: transparent; }
@media (prefers-reduced-motion: reduce) { .nxo-reader * { transition: none !important; } }
/* The preferences, on <html> (set before paint by the inline boot). */
html.nxo-r-size { font-size: calc(100% * var(--nxo-r-scale, 1)); }
html.nxo-r-size body { font-size: calc(1em * var(--nxo-r-scale, 1)); }
html.nxo-r-lines body, html.nxo-r-lines body * { line-height: 1.8 !important; }
html.nxo-r-spacing body, html.nxo-r-spacing body * { letter-spacing: .08em !important; word-spacing: .16em !important; }
html.nxo-r-contrast { --nxo-t2: var(--nxo-t1); --nxo-t3: var(--nxo-t1); --nxo-hair: var(--nxo-t2); --nxo-hair2: var(--nxo-t1); --nxo-muted: var(--nxo-t1); }
html.nxo-r-motion *, html.nxo-r-motion *::before, html.nxo-r-motion *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
html.nxo-r-font body, html.nxo-r-font body *:not(code):not(pre):not(kbd):not(samp) { font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important; }
html.nxo-r-links a { text-decoration: underline !important; text-underline-offset: 3px; }
html.nxo-r-focus :focus-visible { outline: 3px solid var(--nxo-accent) !important; outline-offset: 3px !important; }
html.nxo-r-cursor, html.nxo-r-cursor * { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 24 24'%3E%3Cpath d='M4 2l15 9-6.5 1.5L16 20l-3 1.5-3.5-7.5L4 18z' fill='%23000' stroke='%23fff' stroke-width='1.2'/%3E%3C/svg%3E") 4 2, auto !important; }

/* b/6e28ec410172/kit.css */
.nxo-view{--bg:#000;--surface:#0a0a0a;--elev:#111;--muted:#141414;--hover:#1a1a1a;--hair:rgba(255,255,255,.08);--hair2:rgba(255,255,255,.20);--scrim:rgba(0,0,0,.88);--t1:#fff;--t2:#d4d4d4;--t3:#a3a3a3;--accent:#FF1F1F;--accent-bg:#3A0404;--btn-primary-hover:#FF4A3D;--code-string:#FF7A6E;--code-comment:#8c8c8c;--accent-graphic:#FF1F1F;--accent-hot:#FF4A3D;--accent-text:#FF1F1F;--accent-glint:#FFE1DD;--on-accent:#000;--accent-pressed:#D91414;--on-accent-pressed:#fff;--ref-ink:#d4d4d4;--ref-line:rgba(255,255,255,.44);--ink:255,255,255;--paper:0,0,0;--ramp-1:#1A0303;--ramp-2:#4D0606;--ramp-3:#8A0A0A;--ramp-4:#D91414;--ramp-5:#FF1F1F;--ramp-6:#FF7A6E;--ramp-7:#FFE1DD;color-scheme:dark;--r:5px;--rc:4px;--sans:"IBM Plex Sans","IBM Plex Sans Fallback",system-ui,sans-serif;--mono:"IBM Plex Mono","IBM Plex Mono Fallback",ui-monospace,monospace;--condensed:"IBM Plex Sans Condensed","IBM Plex Sans",sans-serif;--display:var(--mono);--cond:var(--sans);--numeric:tabular-nums slashed-zero;--scene-filter-light:invert(1) hue-rotate(178deg) saturate(3.4);--track-display-1:-0.045em;--track-display-2:-0.045em;--track-title:-0.012em;--track-lede:-0.008em;--track-sub:-0.008em;--track-body:0;--track-small:0;--track-eyebrow:0.16em;--track-nav:0.06em;--track-data:0;--track-button:-0.005em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-gutter:48px;--space-gutter-md:20px;--space-gutter-sm:16px;--space-section:120px;--space-section-md:88px;--space-page-max:1440px;--space-nav-h:64px;--dur-fast:150ms;--dur-base:250ms;--dur-slow:600ms;--ease-standard:cubic-bezier(0.2,0,0,1);--ease-out:cubic-bezier(0,0,0.2,1);--z-content:2;--z-caption:3;--z-sticky:10;--z-nav:20;--z-site-bar:30;--z-overlay:40;--z-consent:50;--z-skip:60;--shadow-menu:0 40px 80px rgba(var(--paper),.6);--shadow-marker:inset 2px 0 #FF1F1F}
:root[data-theme=light] .nxo-view{--bg:#fff;--surface:#f6f6f5;--elev:#efefee;--muted:#ebebea;--hover:#e5e5e4;--hair:rgba(0,0,0,.09);--hair2:rgba(0,0,0,.22);--scrim:rgba(255,255,255,.9);--t1:#0a0a0a;--t2:#2b2b2b;--t3:#5c5c5c;--accent:#FF1F1F;--accent-bg:#FFF0EE;--btn-primary-hover:#FF4A3D;--code-string:#8A0A0A;--code-comment:#6b6b6b;--accent-graphic:#FF1F1F;--accent-hot:#FF4A3D;--accent-text:#0a0a0a;--accent-glint:#FFE1DD;--on-accent:#000;--accent-pressed:#D91414;--on-accent-pressed:#fff;--ref-ink:#2b2b2b;--ref-line:rgba(0,0,0,.46);--ink:0,0,0;--paper:255,255,255;--ramp-1:#FFF0EE;--ramp-2:#FFC6BF;--ramp-3:#FF7A6E;--ramp-4:#FF1F1F;--ramp-5:#D91414;--ramp-6:#8A0A0A;--ramp-7:#4D0606;color-scheme:light}
@media (prefers-color-scheme:light){:root:not([data-theme]) .nxo-view{--bg:#fff;--surface:#f6f6f5;--elev:#efefee;--muted:#ebebea;--hover:#e5e5e4;--hair:rgba(0,0,0,.09);--hair2:rgba(0,0,0,.22);--scrim:rgba(255,255,255,.9);--t1:#0a0a0a;--t2:#2b2b2b;--t3:#5c5c5c;--accent:#FF1F1F;--accent-bg:#FFF0EE;--btn-primary-hover:#FF4A3D;--code-string:#8A0A0A;--code-comment:#6b6b6b;--accent-graphic:#FF1F1F;--accent-hot:#FF4A3D;--accent-text:#0a0a0a;--accent-glint:#FFE1DD;--on-accent:#000;--accent-pressed:#D91414;--on-accent-pressed:#fff;--ref-ink:#2b2b2b;--ref-line:rgba(0,0,0,.46);--ink:0,0,0;--paper:255,255,255;--ramp-1:#FFF0EE;--ramp-2:#FFC6BF;--ramp-3:#FF7A6E;--ramp-4:#FF1F1F;--ramp-5:#D91414;--ramp-6:#8A0A0A;--ramp-7:#4D0606;color-scheme:light}
}
:root[data-brand=protocol] .nxo-view{--accent:#00E07A;--accent-bg:#00160C;--btn-primary-hover:#4DF0A0;--code-string:#3D9BFF;--accent-graphic:#00E07A;--accent-hot:#4DF0A0;--accent-text:#00E07A;--accent-glint:#E6FBF0;--on-accent:#000;--accent-pressed:#00B86B;--on-accent-pressed:#000;--accent-2:#3D9BFF;--accent-2-bg:#06142A;--accent-2-text:#3D9BFF;--ramp-1:#00160C;--ramp-2:#003D22;--ramp-3:#00663B;--ramp-4:#00A35F;--ramp-5:#00E07A;--ramp-6:#7DF0B5;--ramp-7:#D9FCEB;--display:var(--sans);--display-weight:500;--track-display-1:-0.035em;--track-display-2:-0.03em;--eyebrow-font:var(--condensed);--display-1-size:clamp(40px,5vw,76px);--still-filter:hue-rotate(150deg) saturate(1.15);--shadow-marker:inset 2px 0 #00E07A;--scene-filter-light:invert(1) hue-rotate(178deg) saturate(3.4) hue-rotate(150deg) saturate(1.15);--pd-bar-h:56px;--pd-side-w:264px;--pd-otp-w:220px;--pd-measure:74ch;--pd-ctl-h:34px;--pd-gap:40px}
:root[data-brand=protocol][data-theme=light] .nxo-view{--accent:#00A35F;--accent-bg:#E6FBF0;--btn-primary-hover:#00B86B;--code-string:#0B5CD6;--accent-graphic:#00A35F;--accent-hot:#00B86B;--accent-text:#007A47;--accent-glint:#E6FBF0;--on-accent:#000;--accent-pressed:#007A47;--on-accent-pressed:#fff;--accent-2:#0B5CD6;--accent-2-bg:#EAF2FE;--accent-2-text:#0B5CD6;--ramp-1:#E6FBF0;--ramp-2:#B5F2D2;--ramp-3:#5FD69A;--ramp-4:#00A35F;--ramp-5:#007A47;--ramp-6:#00522F;--ramp-7:#002E1A}
@media (prefers-color-scheme:light){:root[data-brand=protocol]:not([data-theme]) .nxo-view{--accent:#00A35F;--accent-bg:#E6FBF0;--btn-primary-hover:#00B86B;--code-string:#0B5CD6;--accent-graphic:#00A35F;--accent-hot:#00B86B;--accent-text:#007A47;--accent-glint:#E6FBF0;--on-accent:#000;--accent-pressed:#007A47;--on-accent-pressed:#fff;--accent-2:#0B5CD6;--accent-2-bg:#EAF2FE;--accent-2-text:#0B5CD6;--ramp-1:#E6FBF0;--ramp-2:#B5F2D2;--ramp-3:#5FD69A;--ramp-4:#00A35F;--ramp-5:#007A47;--ramp-6:#00522F;--ramp-7:#002E1A}
}
.nxo-view *{box-sizing:border-box}
.nxo-view{margin:0;background:var(--bg);color:var(--t1);font:400 14px/1.5 var(--sans);-webkit-font-smoothing:antialiased}
.nxo-view a{color:inherit;text-decoration:none}
.nxo-view .w{max-width:1440px;margin:0 auto;padding:0 48px}
.nxo-view .eyebrow{font:500 11px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--t3)}
.nxo-view .eyebrow b{color:var(--accent-text);font-weight:500}
.nxo-view .nav{position:fixed;inset:0 0 auto 0;z-index:20;background:var(--bg);border-bottom:1px solid var(--hair)}
.nxo-view .nav>.w{display:flex;align-items:center;height:64px;gap:40px}
.nxo-view .logo{display:flex;align-items:center;gap:10px;font:600 15px/1 var(--sans);letter-spacing:.04em;text-transform:uppercase}
.nxo-view .logo i{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.nxo-view .links{display:flex;gap:28px;font-size:14px;color:var(--t3)}
.nxo-view .links a:hover{color:var(--t1)}
.nxo-view .sp{flex:1}
.nxo-view .navr{display:flex;gap:8px;align-items:center}
.nxo-view .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 14px;border-radius:var(--r);font:500 14px/1 var(--sans);border:1px solid transparent;transition:background .15s,border-color .15s;white-space:nowrap}
.nxo-view .btn[data-size=lg]{height:44px;padding:0 18px;font-size:15px}
.nxo-view .btn[data-variant=primary]{background:var(--accent);color:var(--on-accent)}
.nxo-view .btn[data-variant=primary]:hover{background:var(--btn-primary-hover)}
.nxo-view .btn[data-variant=secondary]{border-color:var(--hair2);color:var(--t1)}
.nxo-view .btn[data-variant=secondary]:hover{background:var(--hover)}
.nxo-view .btn[data-variant=ghost]{color:var(--t2);background:transparent}
.nxo-view .btn[data-variant=ghost]:hover{color:var(--t1);background:var(--hover)}
.nxo-view .btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nxo-view .badge{display:inline-flex;align-items:center;gap:7px;height:22px;padding:0 8px;border-radius:var(--rc);border:1px solid var(--hair2);font:500 10.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--t2)}
.nxo-view .badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}
.nxo-view .ui-ref{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:var(--rc);border:1px dashed var(--ref-line);font:500 10.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ref-ink);white-space:nowrap;vertical-align:middle}
.nxo-view .hero{position:relative;height:100vh;min-height:760px;overflow:hidden;border-bottom:1px solid var(--hair)}
.nxo-view #globe{position:absolute;inset:0;width:100%;height:100%}
.nxo-view .hero .w{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:center;pointer-events:none}
.nxo-view .hero .w *{pointer-events:auto}
.nxo-view .hrow{display:flex;gap:14px;align-items:center}
.nxo-view h1{margin:22px 0 20px;font:500 clamp(40px,4.4vw,64px)/1.04 var(--sans);letter-spacing:-.03em;max-width:18ch}
.nxo-view .lede{max-width:60ch;font-size:17px;line-height:1.55;color:var(--t2);margin:0 0 32px}
.nxo-view .cta{display:flex;gap:10px;flex-wrap:wrap}
.nxo-view .facts{display:flex;gap:0;margin:44px 0 0;padding:0;border-top:1px solid var(--hair);max-width:560px}
.nxo-view .facts div{padding:14px 28px 0 0}
.nxo-view .facts dt{font:500 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--t3)}
.nxo-view .facts dd{margin:6px 0 0;font:500 15px var(--mono);font-variant-numeric:tabular-nums}
.nxo-view .band .w{display:grid;grid-template-columns:repeat(4,1fr)}
.nxo-view .m{padding:32px 24px 28px 0;border-inline-start:1px solid var(--hair);padding-inline-start:24px}
.nxo-view .m:first-child{border-inline-start:0;padding-inline-start:0}
.nxo-view .m b{display:block;font:500 32px/1.1 var(--mono);letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin:10px 0 6px}
.nxo-view .m:first-child b{color:var(--accent)}
.nxo-view .m span{font-size:13px;color:var(--t3)}
.nxo-view .band{border-bottom:1px solid var(--hair)}
.nxo-view section.s{padding:120px 0;border-bottom:1px solid var(--hair)}
.nxo-view h2{margin:14px 0 14px;font:500 clamp(30px,2.8vw,40px)/1.12 var(--sans);letter-spacing:-.028em;max-width:24ch}
.nxo-view .sub{font-size:15px;line-height:1.55;color:var(--t2);max-width:62ch;margin:0 0 48px}
.nxo-view .cells{display:grid;gap:1px;background:transparent;border:1px solid var(--hair);overflow:clip}
.nxo-view .cells>*{box-shadow:0 0 0 1px var(--hair)}
.nxo-view .cell{position:relative;background:var(--bg);padding:24px;display:flex;flex-direction:column;min-height:260px;overflow:hidden;transition:background .15s}
.nxo-view .cell:hover{background:var(--surface)}
.nxo-view .cell h3{margin:auto 0 6px;font:500 15px/1.35 var(--sans);letter-spacing:-.01em}
.nxo-view .cell p{margin:0;font-size:13px;line-height:1.5;color:var(--t2);max-width:46ch}
.nxo-view .bento{grid-template-columns:repeat(6,1fr);grid-auto-rows:280px}
.nxo-view .c3{grid-column:span 3}
.nxo-view .c2{grid-column:span 2}
.nxo-view .c4{grid-column:span 4}
.nxo-view .tall{grid-row:span 2}
.nxo-view .viz{position:absolute;inset-inline-start:0;inset-inline-end:0;top:44px;height:calc(100% - 150px);width:100%;pointer-events:none}
.nxo-view .states{position:absolute;inset-inline-start:24px;inset-inline-end:24px;top:64px;display:flex;flex-direction:column;gap:10px;font:400 12px var(--mono)}
.nxo-view .st{display:flex;align-items:center;gap:12px;color:var(--t3)}
.nxo-view .st i{width:7px;height:7px;border-radius:50%;border:1px solid currentColor;flex:none}
.nxo-view .st.on{color:var(--t1)}
.nxo-view .st.on i{background:var(--t1);border-color:var(--t1)}
.nxo-view .st.cur{color:var(--t1)}
.nxo-view .st.cur i{background:var(--accent);border-color:var(--accent-text)}
.nxo-view .st em{font-style:normal;color:var(--t3);margin-inline-start:auto;font-size:11px}
.nxo-view .prod{grid-template-columns:repeat(4,1fr)}
.nxo-view .prod .cell{min-height:220px}
.nxo-view .prod svg{width:40px;height:40px;stroke:var(--t1);fill:none;stroke-width:1.2}
.nxo-view .prod .cell:hover svg{stroke:var(--accent)}
.nxo-view .prod .go{margin-top:14px;font:500 12px var(--mono);color:var(--t3)}
.nxo-view .prod .cell:hover .go{color:var(--t1)}
.nxo-view .open{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}
.nxo-view .ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--hair)}
.nxo-view .ol li{display:grid;grid-template-columns:170px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--hair)}
.nxo-view .ol b{font-weight:500;font-size:14px}
.nxo-view .ol span{color:var(--t2);font-size:13.5px}
.nxo-view .code{border-radius:var(--r);border:1px solid var(--hair2);background:var(--surface);overflow:hidden;font:400 13px/1.75 var(--mono)}
.nxo-view .code .bar{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid var(--hair);color:var(--t3);font-size:12px}
.nxo-view .code pre{margin:0;padding:18px 20px;font:inherit;color:var(--t2);white-space:pre}
.nxo-view .k{color:var(--t1)}
.nxo-view .s1{color:var(--code-string)}
.nxo-view .n{color:var(--t2);text-decoration:underline;text-decoration-color:var(--hair2)}
.nxo-view .c{color:var(--code-comment)}
.nxo-view :is(footer.legal,footer:not([class])){padding:40px 0 56px;color:var(--t3);font-size:13px}
.nxo-view :is(footer.legal,footer:not([class])) .w{display:flex;justify-content:space-between}
@media (max-width:900px){.nxo-view .links{display:none}
.nxo-view .bento,.nxo-view .prod{grid-template-columns:1fr;grid-auto-rows:auto}
.nxo-view .cell{min-height:240px}
.nxo-view .c2,.nxo-view .c3,.nxo-view .c4{grid-column:auto}
.nxo-view .tall{grid-row:auto;min-height:340px}
.nxo-view .prod{grid-template-columns:1fr 1fr}
.nxo-view .open{grid-template-columns:1fr}
.nxo-view .band .w{grid-template-columns:1fr 1fr}
.nxo-view .m:nth-child(3){border-inline-start:0;padding-inline-start:0}
.nxo-view .w{padding:0 20px}
.nxo-view section.s{padding:88px 0}
.nxo-view .facts{display:none}
}
.nxo-view h1,.nxo-view h2{font-family:var(--display)!important;font-weight:400!important;letter-spacing:var(--track-display-1)!important;text-wrap:balance}
.nxo-view h1{font-size:var(--display-1-size,clamp(32px,3.4vw,52px))!important;line-height:1.04!important;max-width:22ch!important}
.nxo-view h2{font-size:clamp(24px,2.3vw,36px)!important;line-height:1.1!important;max-width:28ch!important}
.nxo-view .close h2{font-size:clamp(30px,3.1vw,48px)!important;max-width:22ch!important}
.nxo-view h3{font-family:var(--sans)!important;font-weight:600!important;letter-spacing:-.012em!important}
.nxo-view .lede,.nxo-view .sub{letter-spacing:-.008em}
.nxo-view .nav .links a{font:400 12px var(--mono)!important;letter-spacing:.06em!important;text-transform:uppercase}
.nxo-view .btn{font-family:var(--sans)!important;font-weight:600!important;letter-spacing:-.005em}
@media (max-width:700px){.nxo-view .nav>.w{gap:14px}
.nxo-view .navr .btn[data-variant=ghost]{display:none}
.nxo-view .navr .btn{height:34px;padding:0 12px}
.nxo-view .logo{font-size:13px;letter-spacing:.03em}
.nxo-view .w{padding:0 16px}
.nxo-view img,.nxo-view svg,.nxo-view canvas,.nxo-view iframe,.nxo-view video{max-width:100%}
.nxo-view .fb .w{flex-wrap:wrap;row-gap:10px}
.nxo-view .fb .jump{display:none}
}
@media (max-width:480px){.nxo-view .navr{gap:6px}
.nxo-view .navr .btn[data-variant=primary]{width:34px;min-width:34px;padding:0;font-size:0!important;justify-content:center;gap:0}
.nxo-view .navr .btn[data-variant=primary]::before{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:var(--ico-user) center/16px no-repeat;mask:var(--ico-user) center/16px no-repeat}
}
.nxo-view{--ico-user:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23000' stroke-width='1.4'%3E%3Ccircle cx='8' cy='5.5' r='3'/%3E%3Cpath d='M2.5 14.5c.6-3 2.8-4.6 5.5-4.6s4.9 1.6 5.5 4.6'/%3E%3C/svg%3E")}
@media (max-width:700px){.nxo-view .seg,.nxo-view #fk,.nxo-view .cta,.nxo-view .tog{flex-wrap:wrap!important;row-gap:8px}
.nxo-view .seg{max-width:100%}
.nxo-view table.tbl,.nxo-view table.gt{display:block;max-width:100%;overflow-x:auto}
.nxo-view .tb{max-width:100%;overflow:hidden}
.nxo-view #wheel{max-width:100%}
}
@media (max-width:700px){.nxo-view table{display:block;max-width:100%;overflow-x:auto}
.nxo-view .w>*,.nxo-view .split>*,.nxo-view .hero .w>*{min-width:0;max-width:100%}
.nxo-view .cta{max-width:100%}
.nxo-view .cta .btn{white-space:normal;height:auto;min-height:44px;text-align:center}
.nxo-view .filters,.nxo-view .fbar,.nxo-view .ctrl,.nxo-view .controls,.nxo-view .next{flex-wrap:wrap;max-width:100%}
.nxo-view .next{flex-direction:column;align-items:flex-start;gap:16px}
.nxo-view #wheel{width:100%!important;height:auto!important;overflow:hidden!important}
.nxo-view .top,.nxo-view .sw{grid-template-columns:minmax(0,1fr)!important}
.nxo-view .split{grid-template-columns:minmax(0,1fr)!important}
}
@media (max-width:700px){.nxo-view{overflow-x:clip}
}
@media (min-width:1001px){.nxo-view :is(.g3,.g4):has(>:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.nxo-view .g4:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:700px){.nxo-view table.t-stack{display:block;overflow:visible}
.nxo-view table.t-stack :is(tbody,tr,td){display:block}
.nxo-view table.t-stack thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.nxo-view table.t-stack tr{padding:16px 0;border-bottom:1px solid var(--hair)}
.nxo-view table.t-stack td{padding:0!important;border:0!important;min-width:0!important;white-space:normal!important}
.nxo-view table.t-stack td+td{margin-top:6px}
.nxo-view table.t-stack td:first-child{font:500 11px var(--mono);letter-spacing:.08em;color:var(--t3)}
.nxo-view table.t-stack td:nth-child(2){font-size:15px;color:var(--t1);font-weight:500}
.nxo-view table.t-stack td[data-label]::before{content:attr(data-label);display:block;font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3);margin-bottom:2px}
}
:root[data-theme=light] .nxo-view :is(canvas,iframe,.gimg,.limg,img[src*="thumbs/"],img[src*="data/stories/"],img[src*="data/environments/"]){filter:var(--scene-filter-light)}
@media (prefers-color-scheme:light){:root:not([data-theme]) .nxo-view :is(canvas,iframe,.gimg,.limg,img[src*="thumbs/"],img[src*="data/stories/"],img[src*="data/environments/"]){filter:var(--scene-filter-light)}
}
.nxo-view{background:var(--bg);color:var(--t1)}
.nxo-view .thm{display:inline-flex;gap:2px;margin-inline-end:6px;padding:2px;border:1px solid var(--hair2);border-radius:5px}
.nxo-view .thm button{width:26px;height:26px;display:inline-grid;place-items:center;padding:0;border:0;border-radius:4px;background:transparent;color:var(--t3);cursor:pointer}
.nxo-view .thm button svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round}
.nxo-view .thm button:hover{color:var(--t1)}
.nxo-view .thm button[aria-pressed=true]{color:var(--t1);background:var(--hover)}
.nxo-view .thm button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
@media (max-width:700px){.nxo-view .thm{margin-inline-end:0}
.nxo-view .thm button{width:24px;height:24px}
}
.nxo-view{font-variant-numeric:var(--numeric)}
.nxo-view main:empty,.nxo-view main>#body:empty{min-height:100vh}
.nxo-view main :where(p,dd,td,figcaption,.prose li) a:not(.btn){text-decoration:underline;text-decoration-color:var(--accent-text);text-decoration-thickness:1px;text-underline-offset:.2em}
.nxo-view main :where(p,dd,td,figcaption,.prose li) a:not(.btn):hover{color:var(--accent-text)}
.nxo-view :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nxo-view .eyebrow.dot::before{content:"";display:inline-block;width:6px;height:6px;margin-inline-end:8px;border-radius:50%;background:var(--accent);vertical-align:.1em}
.nxo-view :where(.navr,.sx-g) .btn[data-variant=primary]{background:var(--t1);color:var(--bg)}
.nxo-view :where(.navr,.sx-g) .btn[data-variant=primary]:hover{background:var(--t2)}
.nxo-view .btn[data-variant=primary]:active{background:var(--accent-pressed);color:var(--on-accent-pressed)}
@media (min-width:701px){.nxo-view .nav>.w{flex-wrap:nowrap}
.nxo-view .nav .logo,.nxo-view .nav .links a,.nxo-view .navr .btn{white-space:nowrap}
.nxo-view .nav .logo,.nxo-view .navr{flex:none}
}
@media (max-width:1439px){.nxo-view .nav>.w{gap:24px}
.nxo-view .nav .links{gap:18px}
}
@media (max-width:1279px){.nxo-view .navr .btn[data-variant=ghost]{display:none}
}
.nxo-view .nav-mb{display:none;align-items:center;gap:8px;height:32px;padding:0 10px;margin-inline-start:auto;border:1px solid var(--hair2);border-radius:5px;background:transparent;color:var(--t1);font:500 11px var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;flex:none}
.nxo-view .nav-mb svg{width:10px;height:6px;fill:none;stroke:var(--t3);stroke-width:1.5}
.nxo-view .nav-mb[aria-expanded=true] svg{transform:rotate(180deg)}
.nxo-view .nav-mb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media (max-width:1199px){.nxo-view .nav .links{display:none}
.nxo-view .nav-mb{display:inline-flex}
.nxo-view .nav-mb~.navr{margin-inline-start:0}
.nxo-view .nav.open .links{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;position:absolute;top:100%;inset-inline:0;margin:0;padding:4px 24px 20px;background:var(--bg);border-bottom:1px solid var(--hair)}
.nxo-view .nav.open .links a{display:block;padding:12px 0;border-top:1px solid var(--hair)}
}
@media (max-width:700px){.nxo-view .nav.open .links{grid-template-columns:1fr;padding-inline:16px}
}
.nxo-view .nav .links .nav-cta{display:none}
@media (max-width:700px){.nxo-view .nav .logo{white-space:normal;min-width:0;flex:0 1 auto;line-height:1.15}
.nxo-view .nav-mb{flex:none}
}
.nxo-view .navr .acct{white-space:nowrap}
@media (max-width:480px){.nxo-view .nav>.w{gap:10px}
.nxo-view .nav .logo{font-size:0!important;gap:0;flex:none}
.nxo-view .nav .logo i{width:10px;height:10px}
.nxo-view .navr:has(.nxo-um) .btn{display:none}
.nxo-view .nav.open .links:has(~ .navr .nxo-um) .nav-cta,.nxo-view .nav.open .links:has(+ .nav-mb ~ .navr .nxo-um) .nav-cta{display:block}
}
.nxo-view .nxo-poster,.nxo-view .st-poster,.nxo-view .nxo-stage-still,.nxo-view .nxo-stage-poster,.nxo-view .nxo-hero-poster,.nxo-view .pr-still,.nxo-view .nx-still img,.nxo-view img.th16,.nxo-view img[data-nx-still]{filter:var(--still-filter,none)}
.nxo-view [data-nxo-stage-host]:empty,.nxo-view .nxo-stage-host:empty,.nxo-view .nxo-stage-after:empty{min-height:100vh;min-height:100svh}
.nxo-view .nxo-stage-ssr .nxo-stage-still{position:static;display:block;width:100%;height:100vh;height:100svh;object-fit:cover;filter:var(--still-filter,none)}
:root[data-theme="light"] .nxo-view .nxo-stage-ssr{visibility:hidden}
@media (prefers-color-scheme:light){:root:not([data-theme]) .nxo-view .nxo-stage-ssr{visibility:hidden}
}
.nxo-view [data-nxo-hero-band]{position:relative;min-height:620px}
.nxo-view [data-nxo-hero-band]>.w>*{max-width:min(46vw,640px)}
@media (max-width:900px){.nxo-view [data-nxo-hero-side]:not(.has-hero)::after{content:"";display:block;height:clamp(260px,52vh,420px);visibility:hidden}
}
@media (max-width:900px){.nxo-view [data-nxo-hero-band]{display:flex;flex-direction:column;min-height:0;padding-top:88px}
.nxo-view [data-nxo-hero-band]>.w>*{max-width:none}
.nxo-view [data-nxo-hero-band]:not(:has(>.nxo-hero))::after{content:"";display:block;flex:none;order:2;height:clamp(260px,52vh,420px);margin-top:24px;visibility:hidden}
}
.nxo-view [data-nxo-map-notice-slot]{padding:24px 0 32px}
.nxo-view .nxo-map-notice{margin:0;max-width:80ch;font:400 12px/1.55 var(--sans);color:var(--t3)}
.nxo-view .nxo-map-notice a{color:var(--t2);text-decoration:underline;text-underline-offset:2px}

.nxo-view header.nav{top:0!important;bottom:auto!important;height:64px!important;min-height:0!important;max-height:none!important;transform:none!important}
body.admin-bar .nxo-view header.nav,body.admin-bar .nxo-view .sx{top:32px!important}
@media screen and (max-width:782px){body.admin-bar .nxo-view header.nav,body.admin-bar .nxo-view .sx{top:46px!important}}
.nxo-view .sx{top:0!important;bottom:auto!important;height:auto!important;min-height:0!important;transform:none!important}
.nxo-view footer{position:relative!important;height:auto!important;min-height:0!important}
.nxo-view{cursor:auto}

/* b/6e28ec410172/nav.css */
.nxo-view [data-nxo-nav]{position:relative;z-index:30;background:var(--bg);border-bottom:1px solid var(--hair)}
.nxo-view .nav[data-nxo-nav]{position:fixed;inset:0 0 auto 0;z-index:30}
:root:has([data-nxo-nav]) .nxo-view{scroll-padding-top:calc(var(--nx-bar-end,var(--nx-bar,64px)) + 16px)}
.nxo-view [data-nxo-nav][data-nxo-nav] .logo,.nxo-view .nxf .logo{display:flex;align-items:center;gap:10px;color:var(--t1);font:600 15px/1 var(--sans);letter-spacing:.04em;text-transform:uppercase;text-decoration:none}
.nxo-view [data-nxo-nav][data-nxo-nav] .logo i,.nxo-view .nxf .logo i{display:block;width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none}
.nxo-view :is(.nx-drawer__f,.nxf-brand,.nx-feat) .btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:36px;padding:0 14px;border:1px solid transparent;border-radius:5px;font:500 14px/1 var(--sans);text-decoration:none;white-space:nowrap}
.nxo-view :is(.nx-drawer__f,.nxf-brand,.nx-feat) .btn[data-variant=primary]{background:var(--accent);color:var(--on-accent)}
.nxo-view :is(.nx-drawer__f,.nxf-brand,.nx-feat) .btn[data-variant=primary]:hover{background:var(--btn-primary-hover,var(--accent))}
.nxo-view :is(.nx-drawer__f,.nxf-brand,.nx-feat) .btn[data-variant=secondary]{border-color:var(--hair2);color:var(--t1)}
.nxo-view :is(.nx-drawer__f,.nxf-brand,.nx-feat) .btn[data-variant=secondary]:hover{border-color:var(--t3)}
.nxo-view :is(.nx-drawer__f,.nxf-brand,.nx-feat) .btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nxo-view [data-nxo-nav] a,.nxo-view [data-nxo-nav] a:hover,.nxo-view .nxs a,.nxo-view .nxs a:hover{text-decoration:none}
.nxo-view [data-nxo-nav] .w{display:flex;align-items:center;gap:32px;height:64px;max-width:1440px;margin:0 auto;padding:0 48px;box-sizing:border-box}
.nxo-view [data-nxo-nav][data-nxo-nav] .logo{flex:none;white-space:nowrap}
.nxo-view [data-nxo-nav] .navr{display:flex;align-items:center;gap:8px;flex:none}
.nxo-view [data-nxo-nav] .sp{flex:1;min-width:0}
.nxo-view [hidden]{display:none!important}
.nxo-view .nx-main{min-width:0}
.nxo-view .nx-list{display:flex;align-items:stretch;gap:2px;margin:0;padding:0;list-style:none;height:64px}
.nxo-view .nx-i{display:flex;align-items:stretch}
.nxo-view .nx-t{position:relative;display:inline-flex;align-items:center;gap:6px;height:100%;padding:0 12px;border:0;background:transparent;color:var(--t2);font:500 14px/1 var(--sans);letter-spacing:0;text-transform:none;white-space:nowrap;cursor:pointer;text-decoration:none}
.nxo-view .nx-t::after{content:"";position:absolute;inset-inline:12px;bottom:-1px;height:2px;background:transparent}
.nxo-view .nx-t:hover,.nxo-view .nx-t[aria-expanded=true],.nxo-view .nx-t[data-current=true]{color:var(--t1)}
.nxo-view .nx-t:hover::after,.nxo-view .nx-t[aria-expanded=true]::after,.nxo-view .nx-t[data-current=true]::after{background:var(--accent)}
.nxo-view .nx-t:focus-visible,.nxo-view .nx-btn:focus-visible,.nxo-view .nx-card:focus-visible,.nxo-view .nx-mm__foot a:focus-visible,.nxo-view .nxf a:focus-visible,.nxo-view .nx-drawer a:focus-visible,.nxo-view .nx-drawer summary:focus-visible,.nxo-view .nxs-o:focus-visible,.nxo-view .nxs input:focus-visible,.nxo-view .nxs-x:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:5px}
.nxo-view .nx-btn:focus-visible,.nxo-view .nxf a:focus-visible{outline-offset:2px}
.nxo-view .nx-chev{width:9px;height:6px;fill:none;stroke:var(--t3);stroke-width:1.5;transition:transform .15s}
.nxo-view .nx-t[aria-expanded=true] .nx-chev{transform:rotate(180deg)}
.nxo-view .nx-btn{display:inline-grid;place-items:center;flex:none;box-sizing:border-box;width:32px;height:32px;padding:0;border:1px solid var(--hair2);border-radius:5px;background:transparent;color:var(--t2);cursor:pointer;text-decoration:none}
.nxo-view .nx-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.nxo-view .nx-btn:hover{color:var(--t1);border-color:var(--t3)}
.nxo-view .nx-burger{display:none}
.nxo-view .nx-burger .nx-i-x{display:none}
.nxo-view .nx-drawer-open .nx-burger .nx-i-menu{display:none}
.nxo-view .nx-drawer-open .nx-burger .nx-i-x{display:block}
.nxo-view [data-nxo-nav] .thm,.nxo-view [data-nxo-nav] .nxo-thm,.nxo-view .sx .thm{box-sizing:border-box;height:32px;margin:0;padding:2px}
.nxo-view [data-nxo-nav] .thm button,.nxo-view [data-nxo-nav] .nxo-thm button,.nxo-view .sx .thm button{width:26px;height:26px}
.nxo-view .nxtr-sw-slot{display:contents}
.nxo-view [data-nxo-nav] .nxtr-sw-head{display:none}
.nxo-view [data-nxo-nav] .nxtr-sw-btn,.nxo-view .sx .nxtr-sw-btn{height:32px}
.nxo-view [data-nxo-nav] .nxo-um,.nxo-view .sx .nxo-um{margin:0}
.nxo-view [data-nxo-nav] .nxo-um__btn,.nxo-view .sx .nxo-um__btn{width:32px;height:32px}
.nxo-view .nx-sub{position:fixed;inset-inline:0;top:var(--nx-bar-end,var(--nx-bar,65px));z-index:29;background:var(--bg);border-bottom:1px solid var(--hair);font-family:var(--sans)}
.nxo-view .nx-sub .w{display:flex;align-items:stretch;gap:4px;height:38px;max-width:1440px;margin:0 auto;padding:0 48px;box-sizing:border-box;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}
.nxo-view .nx-sub .w::-webkit-scrollbar{display:none}
.nxo-view .nx-sub a,.nxo-view .nx-sub a:hover{text-decoration:none}
.nxo-view .nx-sub__home{display:inline-flex;align-items:center;gap:16px;flex:none;margin-inline-end:6px;color:var(--t1);font:500 13.5px/1 var(--sans);white-space:nowrap}
.nxo-view .nx-sub__home::after{content:"";width:1px;height:16px;background:var(--hair2)}
.nxo-view .nx-sub__home:hover{color:var(--accent-text)}
.nxo-view .nx-sub__l{display:flex;align-items:stretch;gap:2px;margin:0;padding:0;list-style:none;flex:none}
.nxo-view .nx-sub__l li{display:flex}
.nxo-view .nx-sub__a{position:relative;display:inline-flex;align-items:center;padding:0 10px;color:var(--t2);font:400 13.5px/1 var(--sans);white-space:nowrap}
.nxo-view .nx-sub__a::after{content:"";position:absolute;inset-inline:10px;bottom:0;height:2px;background:transparent}
.nxo-view .nx-sub__a:hover,.nxo-view .nx-sub__a[aria-current=page]{color:var(--t1)}
.nxo-view .nx-sub__a:hover::after,.nxo-view .nx-sub__a[aria-current=page]::after{background:var(--accent)}
.nxo-view .nx-sub__a[aria-current=page]{font-weight:500}
.nxo-view .nx-sub__cta{align-self:center;flex:none;display:inline-flex;align-items:center;height:26px;margin-inline-start:auto;padding:0 10px;border:1px solid var(--hair2);border-radius:5px;color:var(--t1);font:500 12.5px/1 var(--sans);white-space:nowrap}
.nxo-view .nx-sub__cta:hover,.nxo-view .nx-sub__cta[aria-current=page]{border-color:var(--accent)}
.nxo-view .nx-sub a:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:5px}
.nxo-view .nx-sub-pad{height:var(--nx-sub,39px)}
.nxo-view .nx-drawer-open~.nx-sub{visibility:hidden}
@media (max-width:1279px){.nxo-view .nx-sub .w{padding:0 24px}
}
@media (max-width:700px){.nxo-view .nx-sub{position:absolute}
}
@media (max-width:900px){.nxo-view .nx-sub__home{position:sticky;inset-inline-start:0;z-index:1;background:var(--bg);box-shadow:-16px 0 0 var(--bg)}
:root[dir=rtl] .nxo-view .nx-sub__home{box-shadow:16px 0 0 var(--bg)}
}
@media (max-width:900px){.nxo-view .nx-sub__cta{position:sticky;inset-inline-end:0;z-index:1;margin-inline-start:auto;background:var(--bg);box-shadow:-12px 0 0 var(--bg)}
:root[dir=rtl] .nxo-view .nx-sub__cta{box-shadow:12px 0 0 var(--bg)}
}
@media (max-width:700px){.nxo-view .nx-sub .w{gap:0;padding:0 16px}
.nxo-view .nx-sub__home{gap:12px;margin-inline-end:4px}
.nxo-view .nx-sub__a{padding:0 9px}
.nxo-view .nx-sub__a::after{inset-inline:9px}
.nxo-view .nx-sub__cta{margin-inline-start:12px;box-shadow:-12px 0 0 var(--bg),16px 0 0 var(--bg)}
:root[dir=rtl] .nxo-view .nx-sub__cta{box-shadow:12px 0 0 var(--bg),-16px 0 0 var(--bg)}
}
.nxo-view .nx-mm{position:absolute;inset-inline:0;top:100%;background:var(--bg);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair2);max-height:calc(100vh - var(--nx-bar,64px) - var(--wp-admin--admin-bar--height,0px));overflow:auto;overscroll-behavior:contain}
.nxo-view .nx-mm .w,.nxo-view .nav .nx-mm .w,.nxo-view [data-nxo-nav] .nx-mm .w{display:block;height:auto;padding-top:32px;padding-bottom:0}
.nxo-view .nx-mm__body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start;padding-bottom:28px}
.nxo-view .nx-mm__cols{display:grid;gap:36px 40px}
.nxo-view .nx-mm--platforms .nx-mm__cols{grid-template-columns:minmax(0,4fr) minmax(0,8fr);grid-template-rows:min-content min-content 1fr;align-items:start}
.nxo-view .nx-mm--platforms .nx-g{grid-column:1}
.nxo-view .nx-mm--platforms .nx-g[data-g=technology]{grid-column:2;grid-row:1/span 3}
.nxo-view .nx-mm--platforms .nx-g[data-g=technology] .nx-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
.nxo-view .nx-mm--industries .nx-mm__cols{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 12px}
.nxo-view .nx-mm--solutions .nx-mm__cols,.nxo-view .nx-mm--products .nx-mm__cols,.nxo-view .nx-mm--resources .nx-mm__cols,.nxo-view .nx-mm--company .nx-mm__cols{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.nxo-view .nx-mm--company .nx-mm__cols{grid-template-columns:repeat(2,minmax(0,1fr))}
.nxo-view .nx-mm--industries .nx-mm__body{grid-template-columns:minmax(0,1fr) 280px}
.nxo-view .nx-g .eyebrow{display:block;margin:0 0 12px;padding-inline:12px}
.nxo-view .nx-cards{list-style:none;margin:0;padding:0}
.nxo-view .nx-card{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;align-items:start;padding:10px 12px;border-radius:5px;color:var(--t1);text-decoration:none}
.nxo-view .nx-card--plain{grid-template-columns:minmax(0,1fr)}
.nxo-view .nx-card:hover{background:var(--surface)}
.nxo-view .nx-ic{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--hair);border-radius:5px;color:var(--t2)}
.nxo-view .nx-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.nxo-view .nx-card:hover .nx-ic{color:var(--accent-text);border-color:var(--hair2)}
.nxo-view .nx-card__t{display:flex;flex-direction:column;gap:3px;min-width:0}
.nxo-view .nx-card strong{font:500 14px/1.3 var(--sans);color:var(--t1)}
.nxo-view .nx-card__t span{font:400 12.5px/1.45 var(--sans);color:var(--t3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nxo-view .nx-card:hover strong{color:var(--accent-text)}
.nxo-view .nx-mm__foot{display:flex;flex-wrap:wrap;gap:8px 28px;padding:16px 12px 20px;border-top:1px solid var(--hair);font-size:13px}
.nxo-view .nx-mm__foot a{color:var(--t2);text-decoration:none}
.nxo-view .nx-mm__foot a:hover{color:var(--t1);text-decoration:underline;text-decoration-color:var(--accent)}
.nxo-view .nx-mm{display:none}
.nxo-view [data-nxo-nav]:not(.nx-js) .nx-i--menu:hover>.nx-mm,.nxo-view [data-nxo-nav]:not(.nx-js) .nx-i--menu:focus-within>.nx-mm,.nxo-view .nx-js .nx-mm:not([hidden]){display:block}
.nxo-view .nx-drawer{display:none;position:fixed;inset-inline:0;top:var(--nx-bar-end,calc(var(--nx-bar,64px) + var(--wp-admin--admin-bar--height,0px)));bottom:0;z-index:31;background:var(--bg);border-top:1px solid var(--hair);overflow:auto;overscroll-behavior:contain}
.nxo-view .nx-drawer:target,.nxo-view .nx-drawer-open .nx-drawer{display:block}
.nxo-view [data-nxo-nav] .nx-drawer .w,.nxo-view .nx-drawer .w{display:block;height:auto;padding-top:8px;padding-bottom:0}
.nxo-view .nav[data-nxo-nav].nx-open::after{content:"";position:fixed;inset:var(--nx-bar-end,var(--nx-bar,64px)) 0 0 0;background:var(--scrim,rgba(0,0,0,.6));z-index:-1;pointer-events:none}
.nxo-view .nav[data-nxo-nav].nx-drawer-open,.nxo-view [data-nxo-nav].nx-drawer-open{z-index:60}
.nxo-view .nx-drawer ul{list-style:none;margin:0;padding:0}
.nxo-view .nx-dl>li{border-bottom:1px solid var(--hair)}
.nxo-view .nx-dl__t,.nxo-view .nx-acc summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0;color:var(--t1);font:500 18px/1.2 var(--sans);text-decoration:none;cursor:pointer;list-style:none}
.nxo-view .nx-acc summary::-webkit-details-marker{display:none}
.nxo-view .nx-acc[open] .nx-chev{transform:rotate(180deg)}
.nxo-view .nx-acc__b{padding:0 0 16px}
.nxo-view .nx-acc__b .eyebrow{margin:16px 0 4px}
.nxo-view .nx-acc__b li a{display:block;padding:10px 0;color:var(--t2);font-size:15px;text-decoration:none}
.nxo-view .nx-acc__b li a:hover,.nxo-view .nx-dl__t:hover{color:var(--t1)}
.nxo-view .nx-acc__f{display:flex;flex-wrap:wrap;gap:6px 20px;margin:12px 0 0;padding-top:12px;border-top:1px solid var(--hair);font-size:13px}
.nxo-view .nx-acc__f a{color:var(--t3);text-decoration:none}
.nxo-view .nx-dl__own{padding:12px 0 8px}
.nxo-view .nx-dl__own .eyebrow{margin:0 0 4px}
.nxo-view .nx-dl__own li a{display:block;padding:9px 0;color:var(--t1);font-size:16px;text-decoration:none}
.nxo-view .nx-drawer{scroll-padding-bottom:160px}
.nxo-view .nx-drawer__f{position:sticky;bottom:0;display:flex;gap:10px;padding:16px 0 calc(16px + env(safe-area-inset-bottom,0px));background:var(--bg);border-top:1px solid var(--hair)}
.nxo-view .nx-drawer__f .btn{flex:1 1 0}
@media (max-width:1279px){.nxo-view [data-nxo-nav] .w{padding:0 24px;gap:24px}
.nxo-view .nx-t{padding:0 9px}
.nxo-view .nx-t::after{inset-inline:9px}
.nxo-view .nx-mm .w{padding-inline:24px}
}
@media (max-width:1179px){.nxo-view .nx-main{display:none}
.nxo-view .nx-burger{display:inline-grid}
.nxo-view [data-nxo-nav] .sp{flex:1}
}
@media (min-width:1180px){.nxo-view .nx-drawer,.nxo-view .nx-drawer:target{display:none}
}
@media (max-width:700px){.nxo-view [data-nxo-nav] .w{gap:12px;padding:0 16px}
.nxo-view [data-nxo-nav] .navr{gap:6px}
.nxo-view .nx-drawer .w{padding-inline:16px}
.nxo-view .nx-drawer__f{flex-direction:column}
.nxo-view .nx-drawer__f .btn{flex:none;width:100%}
}
.nxo-view .nx-drawer__f .btn{min-height:44px}
.nxo-view .nx-drawer__f{gap:10px}
@media (max-width:480px){.nxo-view [data-nxo-nav][data-nxo-nav] .logo{flex:0 1 auto;min-width:0;gap:7px!important;font-size:10.5px!important;line-height:1.15;letter-spacing:.03em;white-space:normal;max-width:96px}
.nxo-view [data-nxo-nav][data-nxo-nav] .logo i{width:8px!important;height:8px!important}
.nxo-view [data-nxo-nav] .navr{gap:4px}
.nxo-view [data-nxo-nav] .w{gap:8px}
}
.nxo-view .nx-drawer-open .nx-mm{display:none}
.nxo-view footer.nxf,.nxo-view div.nxf{padding:0;margin:0;font-size:13.5px;line-height:1.5}
.nxo-view footer.nxf .w,.nxo-view div.nxf .w{display:block;justify-content:normal}
.nxo-view .nxf a,.nxo-view .nxf a:hover{text-decoration:none}
.nxo-view .nxf .nxf-c .nxf-h{margin:0 0 12px;padding:0;font:500 11px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--t3)}
.nxo-view .nxf .nxf-legal nav,.nxo-view .nxf .nxf-cols{display:flex}
.nxo-view .nxf .nxf-legal nav a{display:inline}
.nxo-view .nxf{border-top:1px solid var(--hair);background:var(--bg);color:var(--t3);padding:0;font-size:13.5px}
.nxo-view .nxf .w{display:block;max-width:1440px;margin:0 auto;padding:0 48px;box-sizing:border-box}
.nxo-view .nxf-top{display:grid;grid-template-columns:200px minmax(0,1fr);gap:40px;padding:56px 0 40px}
.nxo-view .nxf-brand p{max-width:34ch;margin:16px 0 20px;color:var(--t2);font-size:13.5px;line-height:1.55}
.nxo-view .nxf-brand p b{color:var(--t1);font-weight:500}
.nxo-view .nxf-cols{display:flex;flex-wrap:wrap;gap:32px 28px}
.nxo-view .nxf-c{flex:1 1 120px;min-width:0}
.nxo-view .nxf-c--wide{flex:2 1 250px}
.nxo-view .nxf-c ul{list-style:none;margin:0;padding:0}
.nxo-view .nxf-c--wide ul{columns:2;column-gap:20px}
.nxo-view .nxf-c li{break-inside:avoid}
.nxo-view .nxf-c a{display:block;padding:5px 0;color:var(--t3);text-decoration:none}
.nxo-view .nxf .nxf-c a:hover,.nxo-view .nxf .nxf-legal nav a:hover{color:var(--t1);text-decoration:underline;text-decoration-color:var(--accent)}
.nxo-view .nxf-legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;padding:20px 0 40px;border-top:1px solid var(--hair);font-size:12.5px}
.nxo-view .nxf-legal p{margin:0}
.nxo-view .nxf-legal nav{display:flex;flex-wrap:wrap;gap:6px 20px}
.nxo-view .nxf-legal nav a{color:var(--t3);text-decoration:none}
.nxo-view .nxf-legal nav a:hover{color:var(--t1);text-decoration:underline;text-decoration-color:var(--accent)}
.nxo-view .nxf-ctl{display:flex;align-items:center;gap:8px}
.nxo-view .nxf .nxtr-sw-list{top:auto;bottom:calc(100% + 6px)}
.nxo-view .nxf .thm,.nxo-view .nxf .nxo-thm{box-sizing:border-box;height:32px;margin:0;padding:2px}
.nxo-view .nxf .nxtr-sw-btn{height:32px}
@media (max-width:1100px){.nxo-view .nxf-top{grid-template-columns:1fr;gap:32px}
}
@media (max-width:700px){.nxo-view .nxf .w{padding:0 16px}
.nxo-view .nxf-top{padding:40px 0 28px}
.nxo-view .nxf-c{flex:1 1 calc(50% - 20px)}
.nxo-view .nxf-c--wide{flex:1 1 100%}
.nxo-view .nxf-legal{flex-direction:column;align-items:flex-start}
}
.nxo-view .nxs-bg{position:fixed;inset:0;z-index:1000;background:rgba(var(--paper),.6)}
.nxo-view .nxs{position:fixed;inset-inline:0;top:10vh;z-index:1001;box-sizing:border-box;width:min(680px,calc(100vw - 32px));max-height:min(620px,80vh);margin-inline:auto;display:flex;flex-direction:column;background:var(--bg);color:var(--t1);border:1px solid var(--hair2);border-radius:5px;overflow:hidden;font-family:var(--sans)}
.nxo-view .nxs-in{display:flex;align-items:center;gap:12px;padding:0 12px 0 16px;border-bottom:1px solid var(--hair)}
.nxo-view .nxs-ico{width:16px;height:16px;flex:none;fill:none;stroke:var(--t3);stroke-width:1.4;stroke-linecap:round}
.nxo-view .nxs input{flex:1;min-width:0;height:56px;padding:0;border:0;background:transparent;color:var(--t1);font:400 16px var(--sans)}
.nxo-view .nxs input::placeholder{color:var(--t3)}
.nxo-view .nxs input:focus-visible{outline:0}
.nxo-view .nxs-in:focus-within{box-shadow:inset 0 -2px 0 var(--accent)}
.nxo-view .nxs-x{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:5px;background:transparent;color:var(--t3);cursor:pointer}
.nxo-view .nxs-x:hover{color:var(--t1);background:var(--hover)}
.nxo-view .nxs-x svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.nxo-view .nxs-list{flex:1;overflow:auto;padding:8px;overscroll-behavior:contain}
.nxo-view .nxs-gh{padding:12px 10px 6px;font:500 11px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--t3)}
.nxo-view .nxs-o{display:flex;align-items:flex-start;gap:12px;padding:9px 10px;border-radius:5px;color:var(--t1);text-decoration:none}
.nxo-view .nxs-o b{font:500 14px/1.3 var(--sans)}
.nxo-view .nxs-o__t span{font-size:12.5px;line-height:1.4;color:var(--t3);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.nxo-view .nxs-o[aria-selected=true]{background:var(--surface);box-shadow:inset 2px 0 0 var(--accent)}
.nxo-view .nxs-o[aria-selected=true]:dir(rtl){box-shadow:inset -2px 0 0 var(--accent)}
.nxo-view .nxs-none{margin:0;padding:28px 12px;color:var(--t3);font-size:14px}
.nxo-view .nxs-ft{display:flex;gap:18px;padding:10px 16px;border-top:1px solid var(--hair);color:var(--t3);font-size:12px}
.nxo-view .nxs kbd{padding:1px 5px;border:1px solid var(--hair2);border-radius:4px;font:400 11px var(--mono);color:var(--t2)}
.nxo-view .nxs-live{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media (max-width:700px){.nxo-view .nxs{top:0;width:100vw;max-height:100dvh;height:100dvh;border-radius:0;border-inline:0}
.nxo-view .nxs-ft{display:none}
}
@media (prefers-reduced-motion:no-preference){.nxo-view .nx-mm:not([hidden]){animation:nx-in .12s ease-out}
@keyframes nx-in{from{opacity:0}}
}
.nxo-view .nx-feat{display:flex;flex-direction:column;gap:10px;padding-inline-start:40px;border-inline-start:1px solid var(--hair);min-width:0}
.nxo-view .nx-still{display:block;margin:0}
.nxo-view .nx-still img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center;border:0}
.nxo-view .nx-still .nx-still__l{display:none}
:root[data-theme=light] .nxo-view .nx-still .nx-still__d{display:none}
:root[data-theme=light] .nxo-view .nx-still .nx-still__l{display:block}
@media (prefers-color-scheme:light){:root:not([data-theme]) .nxo-view .nx-still .nx-still__d{display:none}
:root:not([data-theme]) .nxo-view .nx-still .nx-still__l{display:block}
}
.nxo-view .nx-feat__t{margin:0;font:500 17px/1.3 var(--sans);color:var(--t1)}
.nxo-view .nx-feat__x{margin:0;font-size:13px;line-height:1.5;color:var(--t3)}
.nxo-view .nx-feat .btn{align-self:flex-start;margin-top:4px}
.nxo-view .nx-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 0;padding:0;list-style:none}
.nxo-view .nx-chips a{display:inline-flex;align-items:center;height:28px;padding:0 10px;border:1px solid var(--hair2);border-radius:4px;color:var(--t2);font-size:13px}
.nxo-view .nx-chips a:hover{color:var(--t1);border-color:var(--accent)}
.nxo-view .nx-proof{display:flex;flex-wrap:wrap;gap:6px 22px;margin:8px 0 0;padding-top:12px;border-top:1px solid var(--hair)}
.nxo-view .nx-proof div{display:flex;flex-direction:column;gap:2px}
.nxo-view .nx-proof dt{font:500 10px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--t3)}
.nxo-view .nx-proof dd{margin:0;font:500 15px/1.2 var(--mono);color:var(--t1);font-variant-numeric:tabular-nums slashed-zero}
.nxo-view .nx-ic--s{width:24px;height:24px;border:0;flex:none}
.nxo-view .nx-ic--s svg{width:18px;height:18px}
.nxo-view .nx-acc__b li a{display:flex;align-items:center;gap:10px}
@media (max-width:1279px){.nxo-view .nx-mm__body{grid-template-columns:minmax(0,1fr) 240px;gap:32px}
.nxo-view .nx-feat{padding-inline-start:28px}
}
.nxo-view .nxs-o__t{display:flex;flex-direction:column;gap:2px;min-width:0}
.nxo-view .nxs-ic{display:grid;place-items:center;flex:none;width:28px;height:28px;border:1px solid var(--hair);border-radius:5px;color:var(--t3)}
.nxo-view .nxs-ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.nxo-view .nxs-o[aria-selected=true] .nxs-ic{color:var(--accent-text)}
@media (min-width:601px){.nxo-view.admin-bar :is(.nav,[data-nxo-nav]){top:var(--wp-admin--admin-bar--height,32px)}
}
.nxo-view [data-nxo-nav][data-nxo-nav] .logo--obp,.nxo-view .nxf .logo--obp{text-transform:none;letter-spacing:-.01em;font:600 16px/1 var(--sans);gap:10px}
.nxo-view .logo--obp .nx-mark{width:24px;height:24px;flex:none;fill:none;stroke-width:1.4}
.nxo-view .logo--obp .nx-mark__ring{stroke:var(--hair2)}
.nxo-view .logo--obp .nx-mark__links{stroke:var(--accent-2,var(--accent));stroke-linejoin:round}
.nxo-view .logo--obp .nx-mark__n{fill:var(--accent);stroke:var(--bg);stroke-width:1.2}
.nxo-view .nav--obp .nx-sub__home,.nxo-view .nxf--obp .nxf-h{font-family:var(--eyebrow-font,var(--mono))}
@media (max-width:480px){.nxo-view [data-nxo-nav][data-nxo-nav] .logo--obp{font-size:12.5px!important;line-height:1.1;max-width:118px;white-space:normal;gap:8px!important}
.nxo-view [data-nxo-nav] .logo--obp .nx-mark{width:22px;height:22px}
}
.nxo-view .nx-skip{position:fixed;top:8px;inset-inline-start:8px;z-index:var(--z-skip,60);box-sizing:border-box;padding:10px 14px;border-radius:5px;background:var(--t1);color:var(--bg);font:600 14px/1.2 var(--sans);text-decoration:none;transform:translateY(calc(-100% - 16px))}
.nxo-view .nx-skip:focus,.nxo-view .nx-skip:focus-visible{transform:none;outline:2px solid var(--accent);outline-offset:2px;transition:none}
@media (prefers-reduced-motion:no-preference){.nxo-view .nx-skip{transition:transform var(--dur-fast,150ms) var(--ease-standard,ease)}
}
.nxo-view header[data-nxo-layout=docs]>.w{gap:20px;height:var(--pd-bar-h,56px);padding:0 24px;max-width:none}
.nxo-view [data-nxo-layout=docs] .nx-list{height:var(--pd-bar-h,56px)}
.nxo-view [data-nxo-layout=docs][data-nxo-nav] .logo{font:600 15px/1 var(--sans);letter-spacing:-.01em}
.nxo-view .pd-id{display:flex;align-items:center;gap:8px;flex:none}
.nxo-view .pd-pill{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border:1px solid var(--hair2);border-radius:4px;font:500 11px/1 var(--eyebrow-font,var(--mono));letter-spacing:.08em;text-transform:uppercase;color:var(--t1);white-space:nowrap}
.nxo-view .pd-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}
.nxo-view .pd-ver{position:relative}
.nxo-view .pd-ver>summary{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 8px;border:1px solid var(--hair2);border-radius:4px;font:500 12px/1 var(--mono);color:var(--t2);cursor:pointer;list-style:none;white-space:nowrap}
.nxo-view .pd-ver>summary::-webkit-details-marker,.nxo-view .pd-pref>summary::-webkit-details-marker{display:none}
.nxo-view .pd-ver>summary:hover,.nxo-view .pd-ver[open]>summary{color:var(--t1);border-color:var(--t3)}
.nxo-view .pd-ver[open] .nx-chev{transform:rotate(180deg)}
.nxo-view .pd-pop{position:absolute;top:calc(100% + 6px);z-index:40;min-width:220px;margin:0;padding:6px;list-style:none;background:var(--bg);border:1px solid var(--hair2);border-radius:5px;box-shadow:var(--shadow-2,none)}
.nxo-view .pd-ver .pd-pop{inset-inline-start:0}
.nxo-view .pd-pop a{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:4px;color:var(--t1);font:400 13px/1.35 var(--sans);text-decoration:none}
.nxo-view .pd-pop a b{font:500 13px/1.3 var(--mono)}
.nxo-view .pd-pop a span{color:var(--t3);font-size:12px}
.nxo-view .pd-pop a:hover,.nxo-view .pd-pop a[aria-current]{background:var(--surface)}
.nxo-view .pd-pop a:focus-visible,.nxo-view .pd-ver>summary:focus-visible,.nxo-view .pd-pref>summary:focus-visible,.nxo-view .pd-search:focus-visible,.nxo-view .pd-acct:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nxo-view [data-nxo-layout=docs] .nx-t{padding:0 10px;font:400 14px/1 var(--sans);color:var(--t2)}
.nxo-view [data-nxo-layout=docs] .nx-t::after{inset-inline:10px;height:2px}
.nxo-view [data-nxo-layout=docs] .nx-t:hover::after,.nxo-view [data-nxo-layout=docs] .nx-t[data-current=true]::after,.nxo-view [data-nxo-layout=docs] .nx-t[aria-current=page]::after{background:var(--accent-2,var(--accent))}
.nxo-view [data-nxo-layout=docs] .nx-t[aria-current=page],.nxo-view [data-nxo-layout=docs] .nx-t[data-current=true]{color:var(--t1)}
.nxo-view .pd-search{display:inline-flex;align-items:center;gap:10px;flex:0 1 280px;min-width:0;height:34px;padding:0 8px 0 12px;box-sizing:border-box;border:1px solid var(--hair2);border-radius:5px;background:var(--surface);color:var(--t3);font:400 13.5px/1 var(--sans);text-decoration:none;white-space:nowrap;overflow:hidden}
.nxo-view .pd-search svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.nxo-view .pd-search__l{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.nxo-view .pd-search kbd{flex:none;display:inline-grid;place-items:center;min-width:20px;height:20px;border:1px solid var(--hair2);border-radius:4px;font:500 11px/1 var(--mono);color:var(--t3)}
.nxo-view .pd-search:hover{color:var(--t1);border-color:var(--t3)}
.nxo-view .pd-tools{display:flex;align-items:center;gap:6px;flex:none}
.nxo-view .pd-pref{position:relative}
.nxo-view .pd-pref>summary{list-style:none}
.nxo-view .pd-pref[open]>summary{color:var(--t1);border-color:var(--t3)}
.nxo-view .pd-pref .pd-pref__p{inset-inline-end:0;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:12px;min-width:240px}
.nxo-view .pd-pref__p>*{width:100%}
.nxo-view .pd-pref__p .thm{display:flex}
.nxo-view .pd-pref__p .thm button{flex:1}
.nxo-view .pd-acct{display:block;padding:8px 10px;border:1px solid var(--hair2);border-radius:5px;color:var(--t1);font:500 13px/1 var(--sans);text-align:center;text-decoration:none;order:9}
.nxo-view .pd-acct:hover{border-color:var(--t3)}
.nxo-view .pd-drawer .nx-dl>li{border-bottom:1px solid var(--hair);padding:10px 0}
.nxo-view .pd-drawer a{display:flex;gap:12px;align-items:baseline;padding:8px 0;color:var(--t2);font:400 15px/1.35 var(--sans);text-decoration:none}
.nxo-view .pd-drawer .nx-dl__t{color:var(--t1);font-weight:500}
.nxo-view .pd-drawer ul ul{padding-inline-start:0}
.nxo-view .pd-drawer .pd-n{min-width:32px;font:500 12px/1 var(--mono);color:var(--accent-2-text,var(--t3))}
.nxo-view .pd-drawer a[aria-current=page]{color:var(--t1);box-shadow:inset 2px 0 var(--accent);padding-inline-start:8px}
@media (max-width:1179px){.nxo-view [data-nxo-layout=docs] .nx-burger{display:inline-grid}
}
@media (max-width:900px){.nxo-view .pd-search{flex:0 0 34px;width:34px;padding:0;justify-content:center}
.nxo-view .pd-search__l,.nxo-view .pd-search kbd{display:none}
.nxo-view header[data-nxo-layout=docs]>.w{padding:0 16px;gap:10px}
}
@media (max-width:480px){.nxo-view .pd-ver>summary{padding:0 6px;font-size:11px}
.nxo-view .pd-pill{display:none}
.nxo-view [data-nxo-layout=docs][data-nxo-nav] .logo span{font-size:13.5px}
}
.nxo-view .pd-foot__top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:40px;padding:40px 0 32px}
.nxo-view .pd-foot__id p{margin:14px 0 0;max-width:46ch;color:var(--t2);line-height:1.55}
.nxo-view .pd-foot__rec{margin:0;display:grid;gap:0;border-top:1px solid var(--hair)}
.nxo-view .pd-foot__rec>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--hair)}
.nxo-view .pd-foot__rec dt{font:500 11px/1.6 var(--eyebrow-font,var(--mono));letter-spacing:.1em;text-transform:uppercase;color:var(--t3)}
.nxo-view .pd-foot__rec dd{margin:0;font:400 13px/1.5 var(--mono);color:var(--t1)}
.nxo-view .pd-foot__nav ul{margin:0;padding:0;list-style:none;columns:2;column-gap:24px}
.nxo-view .pd-foot__nav li{break-inside:avoid;padding:4px 0}
.nxo-view .pd-foot__nav a{color:var(--accent-2-text,var(--t2));text-decoration:none}
.nxo-view .pd-foot__nav a:hover{text-decoration:underline}
@media (max-width:900px){.nxo-view .pd-foot__top{grid-template-columns:1fr;gap:28px}
}
.nxo-view [data-nxo-nav] .nx-hex{display:none;flex:none;place-items:center;width:28px;height:28px;border-radius:var(--r,5px);color:var(--t1);text-decoration:none}
.nxo-view [data-nxo-nav] .nx-hex svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linejoin:round}
.nxo-view [data-nxo-nav] .nx-hex circle{fill:currentColor;stroke:none}
.nxo-view [data-nxo-nav] .nx-hex:hover,.nxo-view [data-nxo-nav] .nx-hex:focus-visible{color:var(--accent)}
.nxo-view [data-nxo-nav] .nx-hex:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nxo-view [data-nxo-nav][data-stuck] .nx-hex{display:inline-grid}
@media (min-width:1280px){.nxo-view [data-nxo-nav] .nx-hex{position:absolute;margin-inline-start:-34px}
}
@media (max-width:1279px){.nxo-view [data-nxo-nav][data-nxo-nav][data-stuck]:has(.nx-hex) .logo{display:none}
}
@media (prefers-reduced-motion:no-preference){.nxo-view [data-nxo-nav][data-stuck] .nx-hex{animation:nx-in .12s ease-out}
}
@media (forced-colors:active){.nxo-view [data-nxo-nav] .nx-hex{color:LinkText}
.nxo-view [data-nxo-nav] .nx-hex circle{fill:LinkText}
}
:root:has(.nxd[data-nxd],.nxo-reader:not(.nxo-reader--away)) .nxo-view{--nx-dock-reserve:76px}
.nxo-view :is(footer,div).nxf{padding-block-end:var(--nx-dock-reserve,0px)}

/* b/6e28ec410172/i18n.css */
.nxo-view .nxtr-sw{position:relative;display:inline-flex;flex:none}
.nxo-view .nxtr-sw-btn{list-style:none;display:inline-flex;align-items:center;gap:6px;box-sizing:border-box;height:36px;padding:0 10px;border:1px solid var(--hair2);border-radius:5px;background:transparent;color:var(--t2);font:500 11.5px var(--mono);letter-spacing:.06em;cursor:pointer;white-space:nowrap}
.nxo-view .nxtr-sw-btn::-webkit-details-marker{display:none}
.nxo-view .nxtr-sw-btn::marker{content:""}
.nxo-view .nxtr-sw-btn::after{content:"";width:.4em;height:.4em;border-inline-end:1.5px solid currentColor;border-block-end:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.nxo-view .nxtr-sw[open]>.nxtr-sw-btn::after{transform:rotate(-135deg)}
.nxo-view .nxtr-sw-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.2}
.nxo-view .nxtr-sw-btn:hover,.nxo-view .nxtr-sw[open]>.nxtr-sw-btn{color:var(--t1);border-color:var(--t3)}
.nxo-view .nxtr-sw-btn:focus-visible,.nxo-view .nxtr-sw-link:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.nxo-view .nxtr-sw-cur{display:none}
.nxo-view .nxtr-sw-list{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:60;min-width:200px;max-height:70vh;overflow:auto;margin:0;padding:6px;list-style:none;background:var(--bg);border:1px solid var(--hair2);border-radius:5px}
.nxo-view .nxtr-sw-list li{margin:0;padding:0}
.nxo-view .nxtr-sw-link{display:block;padding:8px 10px;border-radius:4px;color:var(--t2);font:400 14px var(--sans);text-decoration:none}
.nxo-view .nxtr-sw-link:hover{background:var(--hover);color:var(--t1)}
.nxo-view .nxtr-sw-mt{margin-inline-start:6px;font:400 11px var(--mono);color:var(--t3)}
.nxo-view .nxo-untranslated{max-width:880px;margin:calc(var(--nx-bar-end,104px) + 16px) auto 0;padding:10px 14px;border:1px solid var(--hair2);border-radius:5px;color:var(--t2);font:400 14px/1.5 var(--sans)}
.nxo-view .nxtr-sw-link[aria-current=true]{color:var(--t1);box-shadow:inset 2px 0 0 var(--accent)}
.nxo-view .nxtr-sw--footer .nxtr-sw-list{top:auto;bottom:calc(100% + 6px);inset-inline-end:auto;inset-inline-start:0}
@media (max-width:700px){.nxo-view .nxtr-sw-btn{gap:4px;padding:0 7px;font-size:10.5px;letter-spacing:.02em}
.nxo-view .nxtr-sw-btn::after{display:none}
.nxo-view .nxtr-sw-btn svg{width:13px;height:13px}
.nxo-view .nxtr-sw--header .nxtr-sw-list{position:fixed;top:56px;inset-inline:12px auto;min-width:0;width:min(260px,calc(100vw - 24px))}
}
@media (pointer:coarse){.nxo-view .nxtr-sw-link{min-height:44px;box-sizing:border-box;padding-block:12px}
}
.nxo-view:lang(ru){--sans:"IBM Plex Sans","IBM Plex Sans Fallback",system-ui,sans-serif;--mono:"IBM Plex Mono","IBM Plex Mono Fallback",ui-monospace,monospace}
.nxo-view:lang(zh-Hans){--sans:"IBM Plex Sans","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;--mono:"IBM Plex Mono","Noto Sans SC",monospace}
.nxo-view:lang(ja){--sans:"IBM Plex Sans","IBM Plex Sans JP","Hiragino Sans","Yu Gothic",sans-serif;--mono:"IBM Plex Mono","IBM Plex Sans JP",monospace}
.nxo-view:lang(ko){--sans:"IBM Plex Sans","IBM Plex Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;--mono:"IBM Plex Mono","IBM Plex Sans KR",monospace}
.nxo-view:lang(hi){--sans:"IBM Plex Sans","IBM Plex Sans Devanagari",sans-serif;--mono:"IBM Plex Sans Devanagari Space","IBM Plex Mono","IBM Plex Sans Devanagari",monospace}
.nxo-view:lang(ar){--sans:"IBM Plex Sans","Vazirmatn","IBM Plex Sans Fallback",sans-serif;--mono:"Vazirmatn Space","IBM Plex Mono","Vazirmatn",monospace;--nxo-sans:var(--sans);--nxo-mono:var(--mono);--nxo-font:var(--sans)}
.nxo-view:is(:lang(zh-Hans),:lang(ja),:lang(ko),:lang(hi),:lang(ar)) :is(h1,h2,h3,.eyebrow,.badge,.btn,.ch-n,.nav .links a,.sx-ln button,.sx-ln a){letter-spacing:0!important}
.nxo-view:is(:lang(ar),:lang(hi)) *{letter-spacing:0!important}
.nxo-view:lang(ar) :is(*,*::before,*::after){letter-spacing:0!important;text-transform:none!important}
.nxo-view:lang(ar) :is(h1,h2,h3,h4,.lede,.sub,.hero p,.phero p){font-family:var(--sans)!important}
.nxo-view:lang(ar) :is(h1,h2){font-weight:500!important;line-height:1.3!important;text-wrap:balance}
.nxo-view:lang(ar) :is(h3,h4){font-weight:600!important;line-height:1.4!important}
.nxo-view:lang(ar) :is(p,li,dd,.lede,.sub){line-height:1.75}
.nxo-view:lang(ar) :is(.btn,.nav .links a,.eyebrow,.badge,.crumbs,.crumb){font-family:var(--sans)!important;font-weight:500}
.nxo-view:is(:lang(zh-Hans),:lang(ja),:lang(ko)) :is(h1,h2){line-height:1.25!important;overflow-wrap:anywhere;text-wrap:balance}
.nxo-view:lang(ko) :is(h1,h2){word-break:keep-all}
.nxo-view:is(:lang(zh-Hans),:lang(ja)) :is(h1,h2){word-break:normal;line-break:strict}
.nxo-view:lang(ja) :is(h1,h2){word-break:auto-phrase}
.nxo-view:is(:lang(zh-Hans),:lang(ja)) :is(h1,h2)[style*="ch"]{max-width:min(100%,14em)!important}
.nxo-view:is(:lang(hi),:lang(ar)) :is(h1,h2){line-height:1.35!important}
.nxo-view:is(:lang(de),:lang(ru),:lang(tr),:lang(id)) :is(h1,h2,h3){hyphens:auto;overflow-wrap:anywhere}
.nxo-view :is(canvas,svg,.chain,.timeline,.span,.tl-plot,.st-cmp):dir(rtl){direction:ltr}
.nxo-view .sx-netb svg:dir(rtl),.nxo-view .sx-ln:dir(rtl){direction:rtl}
.nxo-view .th canvas.hg:dir(rtl){right:auto;left:0}
.nxo-view .srch svg:dir(rtl){left:auto;right:11px}
.nxo-view .th img.still:dir(rtl){mask-image:linear-gradient(270deg,transparent 0,var(--bg) 22%);-webkit-mask-image:linear-gradient(270deg,transparent 0,var(--bg) 22%)}
.nxo-view .uni .scrim:dir(rtl){background:linear-gradient(270deg,var(--bg) 0,color-mix(in srgb,var(--bg) 70%,transparent) 38%,transparent 62%)}
@media (max-width:900px){.nxo-view .uni .scrim:dir(rtl){background:linear-gradient(180deg,transparent 0,var(--bg) 70%)}
}
.nxo-view .track>li.on:dir(rtl):after{background:linear-gradient(270deg,var(--accent),var(--hair2))}
.nxo-view .dg-ribbon:dir(rtl):before{background:linear-gradient(270deg,var(--accent) 0 40px,var(--hair2) 40px)}
.nxo-view :is(dd,output):dir(rtl){unicode-bidi:plaintext;text-align:right}
.nxo-view :is(.ro dd,.grp3 dd,.nxo3d-card dd):dir(rtl){text-align:left}
.nxo-view :is(kbd,code,samp):dir(rtl){unicode-bidi:isolate;direction:ltr}
.nxo-view :is(input:not([type=email],[type=url],[type=tel],[type=number],[type=range],[type=checkbox],[type=radio]),textarea):dir(rtl){unicode-bidi:plaintext}
.nxo-view input:is([type=email],[type=url],[type=tel]):dir(rtl){direction:ltr;text-align:right}
.nxo-view :is(svg.go,[data-mirror]):dir(rtl){transform:scaleX(-1)}
@media (min-width:701px){.nxo-view .drw:dir(rtl){right:auto;left:0;transform:translateX(-100%)}
.nxo-view .drw.open:dir(rtl){transform:none}
}
.nxo-view .sx-rail button[aria-pressed=true]:dir(rtl),.nxo-view .nxtr-sw-link[aria-current=true]:dir(rtl){box-shadow:inset -2px 0 0 var(--accent)}

/* b/6e28ec410172/ins/ins.css */
/* Instrument UI: the page-level language that matches the chrome and the CAD scenes. Hairline frames with corner
   ticks, measured rails, monospaced readouts, one red signal for what is active. Tokens come from kit.css. */

/* native buttons styled as .btn start transparent (variants set their own fill) */
button.btn{background:transparent;color:var(--t1);cursor:pointer}
button.btn:disabled{opacity:.4;cursor:default}
.btn kbd{margin-inline-start:2px}

/* ---------- layout: section rail + content ---------- */
.ins-shell{display:grid;grid-template-columns:208px minmax(0,1fr);gap:56px;align-items:start}
.ins-rail{position:sticky;top:calc(var(--chrome-h,64px) + 32px);max-height:calc(100vh - var(--chrome-h,64px) - 56px);overflow:auto;padding:4px 0 24px;scrollbar-width:none}
.ins-rail::-webkit-scrollbar{display:none}
.ins-rail ol{list-style:none;margin:0;padding:0;position:relative}
.ins-rail ol:before{content:"";position:absolute;inset-inline-start:3px;top:6px;bottom:6px;width:1px;background:var(--hair2)}
.ins-rail .prog{position:absolute;inset-inline-start:3px;top:6px;width:1px;height:0;background:var(--accent);transition:height var(--dur-base) var(--ease-standard)}
.ins-rail li a{position:relative;display:grid;grid-template-columns:1fr auto;gap:8px;padding:7px 0 7px 22px;color:var(--t3);font:400 13px/1.35 var(--sans);border-radius:var(--rc)}
.ins-rail li a:before{content:"";position:absolute;inset-inline-start:0;top:12px;width:7px;height:7px;border:1px solid var(--hair2);background:var(--bg);transform:rotate(45deg)}
.ins-rail li a:hover{color:var(--t1)}
.ins-rail li a[aria-current=true]{color:var(--t1)}
.ins-rail li a[aria-current=true]:before{border-color:var(--accent-text);background:var(--accent)}
.ins-rail li a em{font:400 11px var(--mono);font-style:normal;font-variant-numeric:var(--numeric);color:var(--t3)}
.ins-rail .jump{margin-top:20px;width:100%}
.ins-rail .rt{display:block;font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3);margin:0 0 14px}
.ins-main{min-width:0}
.ins-sec{padding:72px 0;border-top:1px solid var(--hair);scroll-margin-top:calc(var(--chrome-h,64px) + 60px)}
.ins-sec:first-child{border-top:0;padding-top:24px}
.ins-sec>header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;margin-bottom:32px}
.ins-sec>header h2{margin:0 0 10px}
.ins-sec>header p{margin:0;color:var(--t2);max-width:64ch;font-size:15px;line-height:1.55}
.ins-sec>header .acts{display:flex;gap:8px;flex-wrap:wrap}

/* mobile: the rail becomes a horizontal sticky scroller with progress */
@media (max-width:1100px){
  .ins-shell{grid-template-columns:1fr;gap:0}
  .ins-rail{position:sticky;top:var(--chrome-h,64px);z-index:var(--z-sticky);max-height:none;overflow-x:auto;overflow-y:hidden;background:var(--bg);border-bottom:1px solid var(--hair);margin:0 -48px;padding:0 48px}
  .ins-rail .rt,.ins-rail .jump{display:none}
  .ins-rail ol{display:flex;gap:4px;white-space:nowrap}
  .ins-rail ol:before,.ins-rail .prog{display:none}
  .ins-rail li a{padding:14px 10px;display:flex;gap:6px}
  .ins-rail li a:before{display:none}
  .ins-rail li a[aria-current=true]{box-shadow:inset 0 -2px 0 var(--accent)}
  .ins-sec>header{grid-template-columns:1fr}
}
/* the rail bleeds to the page edge by the page gutter (kit.css .w: 48 px, 20 px at 900 and below, 16 px at 700) */
@media (max-width:900px){.ins-rail{margin:0 -20px;padding:0 20px}}
@media (max-width:700px){.ins-rail{margin:0 -16px;padding:0 16px}.ins-sec{padding:48px 0}}

/* ---------- frame: hairline box ---------- */
.frame{position:relative;border:1px solid var(--hair);background:var(--bg)}
.frame.on{border-color:var(--accent-text)}

/* ---------- HUD readouts ---------- */
.hud{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));border:1px solid var(--hair)}
.hud>div{padding:16px 18px 14px;border-inline-start:1px solid var(--hair);min-width:0}
.hud>div:first-child{border-inline-start:0}
.hud dt{font:400 11.5px var(--sans);color:var(--t3);margin:0}
.hud dd{margin:6px 0 0;font:400 28px/1.1 var(--mono);font-variant-numeric:var(--numeric);letter-spacing:-.02em;color:var(--t1)}
.hud dd small{font:400 12px var(--mono);color:var(--t3);margin-inline-start:4px;letter-spacing:0}
.hud>div.sig dd{color:var(--accent-text)}
@media (max-width:700px){.hud{grid-template-columns:1fr 1fr}.hud>div:nth-child(odd){border-inline-start:0}.hud>div:nth-child(n+3){border-top:1px solid var(--hair)}.hud dd{font-size:22px}}

/* ---------- toolbar: search, segmented control, toggles ---------- */
.tool{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px;border:1px solid var(--hair);border-bottom:0;background:var(--surface)}
.tool .sp{flex:1}
.srch{position:relative;flex:1 1 260px;max-width:420px}
.srch input{width:100%;height:38px;border:1px solid var(--hair2);border-radius:var(--r);background:var(--bg);color:var(--t1);padding:0 64px 0 36px;font:400 14px var(--sans)}
.srch svg{position:absolute;inset-inline-start:11px;top:11px;width:16px;height:16px;stroke:var(--t3);fill:none;stroke-width:1.5}
.srch kbd{position:absolute;inset-inline-end:8px;top:8px}
.srch input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}
kbd{display:inline-flex;align-items:center;height:22px;padding:0 6px;border:1px solid var(--hair2);border-bottom-width:2px;border-radius:4px;font:500 11px var(--mono);color:var(--t3);background:var(--bg)}
.seg{display:inline-flex;border:1px solid var(--hair2);border-radius:var(--r);overflow:hidden;flex:none;max-width:100%;overflow-x:auto}
.seg button{height:36px;padding:0 12px;background:var(--bg);color:var(--t2);border:0;border-inline-start:1px solid var(--hair2);font:500 13px var(--sans);cursor:pointer;white-space:nowrap;display:inline-flex;gap:6px;align-items:center}
.seg button:first-child{border-inline-start:0}
.seg button em{font:400 11px var(--mono);font-style:normal;color:var(--t3);font-variant-numeric:var(--numeric)}
.seg button:hover{background:var(--hover);color:var(--t1)}
.seg button[aria-pressed=true]{background:var(--t1);color:var(--bg)}
.seg button[aria-pressed=true] em{color:var(--bg);opacity:.7}
.seg button:focus-visible,.chip:focus-visible,.list .row:focus-visible,.tabs [role=tab]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.tgl{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 12px;border:1px solid var(--hair2);border-radius:var(--r);font:500 13px var(--sans);color:var(--t2);cursor:pointer;background:var(--bg)}
.tgl input{position:absolute;opacity:0;width:1px;height:1px}
.tgl i{width:28px;height:16px;border-radius:8px;border:1px solid var(--hair2);position:relative;transition:background var(--dur-fast)}
.tgl i:after{content:"";position:absolute;inset-inline-start:2px;top:2px;width:10px;height:10px;border-radius:50%;background:var(--t3);transition:transform var(--dur-fast),background var(--dur-fast)}
.tgl input:checked+i{background:var(--accent);border-color:var(--accent-text)}
.tgl input:checked+i:after{transform:translateX(12px);background:var(--on-accent,var(--bg))}.tgl input:checked+i:dir(rtl):after{transform:translateX(-12px)}
.tgl input:focus-visible+i{outline:2px solid var(--accent);outline-offset:2px}
.chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:1px solid var(--hair2);border-radius:4px;background:var(--bg);color:var(--t2);font:500 12px var(--sans);cursor:pointer}
.chip[aria-pressed=true]{border-color:var(--accent-text);color:var(--t1);box-shadow:inset 0 0 0 1px var(--accent)}

/* ---------- tabs ---------- */
.tabs [role=tablist]{display:flex;gap:0;border-bottom:1px solid var(--hair);overflow-x:auto;scrollbar-width:thin}
.tabs [role=tab]{flex:none;height:48px;padding:0 16px;background:none;border:0;border-bottom:2px solid transparent;color:var(--t3);font:500 14px var(--sans);cursor:pointer;display:inline-flex;gap:8px;align-items:center;white-space:nowrap}
.tabs [role=tab] em{font:400 11px var(--mono);font-style:normal;color:var(--t3)}
.tabs [role=tab]:hover{color:var(--t1)}
.tabs [role=tab][aria-selected=true]{color:var(--t1);border-bottom-color:var(--accent-text)}
.tabs [role=tabpanel]{padding-top:28px}
.tabs [role=tabpanel][hidden]{display:none}

/* ---------- explorer: rows that open a detail drawer ---------- */
.list{border:1px solid var(--hair);background:var(--bg)}
.list .row{display:grid;grid-template-columns:var(--cols,minmax(0,2fr) minmax(0,3fr) auto) 16px;gap:20px;align-items:center;width:100%;padding:14px 18px;border:0;border-top:1px solid var(--hair);background:var(--bg);color:var(--t1);text-align:start;font:inherit;cursor:pointer;transition:background var(--dur-fast)}
.list .row:first-child{border-top:0}
.list .row:hover{background:var(--surface)}
.list .row[aria-expanded=true]{background:var(--surface);box-shadow:inset 2px 0 0 var(--accent)}
.list .row b{font:600 14px/1.35 var(--sans);display:flex;align-items:center;gap:8px;min-width:0}
.list .row span{color:var(--t2);font-size:13.5px;line-height:1.45;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.list .row span.meta{display:flex;-webkit-line-clamp:unset}
.list .row .meta{font:400 11.5px var(--mono);color:var(--t3);white-space:nowrap;display:flex;gap:10px;align-items:center}
.list .row .go{width:16px;height:16px;stroke:var(--t3);fill:none;stroke-width:1.5;flex:none}
.list .row:hover .go{stroke:var(--t1)}
.dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none;display:inline-block}
.ring{width:7px;height:7px;border-radius:50%;border:1px solid var(--t3);flex:none;display:inline-block}
.listfoot{display:flex;justify-content:space-between;align-items:center;padding:10px 18px;border:1px solid var(--hair);border-top:0;font:400 12px var(--mono);color:var(--t3)}
.empty{padding:48px 24px;text-align:center;color:var(--t2)}
.empty b{display:block;font:600 15px var(--sans);color:var(--t1);margin-bottom:6px}
.empty button{margin-top:16px}
@media (max-width:800px){.list .row{grid-template-columns:1fr;gap:6px}.list .row>.go{display:none}.list .row .meta{white-space:normal;flex-wrap:wrap}}

/* ---------- grid of panels (replaces flat card walls) ---------- */
.panels{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:16px}
.panel{position:relative;padding:22px 22px 20px;border:1px solid var(--hair);background:var(--bg);display:flex;flex-direction:column;gap:10px;min-width:0;text-align:start;color:inherit;font:inherit;transition:border-color var(--dur-fast),background var(--dur-fast)}
button.panel,a.panel{cursor:pointer}
button.panel:hover,a.panel:hover{border-color:var(--hair2);background:var(--surface)}
.panel.on{border-color:var(--accent-text)}
.panel h3{margin:0;font:600 16px/1.3 var(--sans)!important}
.panel p{margin:0;color:var(--t2);font-size:13.5px;line-height:1.55}
.panel .k{font:400 11.5px var(--mono);color:var(--t3);font-variant-numeric:var(--numeric)}
.panel .foot{margin-top:auto;padding-top:8px;display:flex;gap:6px;flex-wrap:wrap}
:is(.panel,.md,.drw,.tags,.ins-main,.top,.dp) .tag{display:inline-flex;align-items:center;height:22px;padding:0 7px;border:1px solid var(--hair2);border-radius:4px;font:400 11px var(--mono);color:var(--t2);white-space:nowrap}
:is(.panel,.md,.drw,.tags,.ins-main,.top,.dp) .tag.sig{border-color:var(--accent-text);color:var(--t1)}
@media (max-width:1000px){.panels{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.panels{grid-template-columns:1fr}}

/* ---------- drawer (side panel; bottom sheet on phones) ---------- */
.drw-bg{position:fixed;inset:0;z-index:var(--z-overlay);background:rgba(var(--paper),.55);opacity:0;transition:opacity var(--dur-base)}
.drw[hidden],.drw-bg[hidden]{display:none!important}
.drw{position:fixed;font-family:var(--sans);color:var(--t1);top:0;right:0;bottom:0;z-index:calc(var(--z-overlay) + 1);width:min(520px,100vw);background:var(--bg);border-inline-start:1px solid var(--hair2);display:flex;flex-direction:column;align-items:stretch;text-align:start;transform:translateX(100%);transition:transform var(--dur-base) var(--ease-standard);box-shadow:var(--shadow-menu)}
.drw.open{transform:none;display:flex;gap:0;align-items:stretch}.drw-bg.open{opacity:1}
.drw .dh{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;padding:22px 24px 18px;border-bottom:1px solid var(--hair)}
.drw .dh .kick{font:400 12px var(--mono);color:var(--t3)}
.drw .dh h2{margin:6px 0 0!important;font:400 24px/1.15 var(--display)!important;letter-spacing:-.03em!important}
.drw .x{flex:none;width:36px;height:36px;border:1px solid var(--hair2);border-radius:var(--r);background:var(--bg);color:var(--t1);cursor:pointer;display:grid;place-items:center}
.drw .x:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.drw .body{overflow:auto;padding:22px 24px 32px;flex:1}
.drw .body p{color:var(--t2);font-size:14.5px;line-height:1.6;margin:0 0 18px}
.drw .body h3{margin:24px 0 10px;font:500 11.5px var(--mono)!important;letter-spacing:.08em!important;text-transform:uppercase;color:var(--t3)}
.drw .body ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--hair)}
.drw .body li{padding:10px 0;border-bottom:1px solid var(--hair);font-size:13.5px;color:var(--t2);display:flex;justify-content:space-between;gap:12px}
.drw .body li b{color:var(--t1);font-weight:500}
.drw .body a{text-decoration:underline;text-decoration-color:var(--hair2);text-underline-offset:3px}
.drw .body a:hover{text-decoration-color:var(--accent-text)}
.drw .acts{display:flex;gap:8px;padding:16px 24px;border-top:1px solid var(--hair)}
.drw .nav2{display:flex;gap:8px;margin-inline-start:auto}
@media (max-width:700px){.drw{top:auto;inset-inline-start:0;width:100%;height:86vh;border-inline-start:0;border-top:1px solid var(--hair2);transform:translateY(100%);border-radius:5px 5px 0 0}}

/* ---------- command palette ---------- */
.pal-bg{position:fixed;inset:0;z-index:calc(var(--z-overlay) + 2);background:rgba(var(--paper),.6);display:none}
.pal-bg.open{display:block}
.pal{position:fixed;font-family:var(--sans);color:var(--t1);left:50%;top:12vh;z-index:calc(var(--z-overlay) + 3);width:min(640px,calc(100vw - 32px));transform:translateX(-50%);background:var(--bg);border:1px solid var(--hair2);border-radius:5px;box-shadow:var(--shadow-menu);display:none;overflow:hidden}
.pal.open{display:block}
.pal input{width:100%;height:56px;border:0;border-bottom:1px solid var(--hair);background:var(--bg);color:var(--t1);padding:0 20px 0 48px;font:400 16px var(--sans)}
.pal input:focus{outline:none}
.pal .ico{position:absolute;inset-inline-start:18px;top:19px;width:18px;height:18px;stroke:var(--t3);fill:none;stroke-width:1.5}
.pal [role=listbox]{max-height:min(420px,60vh);overflow:auto;padding:6px}
.pal [role=option]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border-radius:6px;cursor:pointer}
.pal [role=option] b{font:500 14px var(--sans);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pal [role=option] span{font:400 11.5px var(--mono);color:var(--t3);white-space:nowrap}
.pal [role=option] i{width:7px;height:7px;border:1px solid var(--t3);transform:rotate(45deg)}
.pal [role=option][aria-selected=true]{background:var(--surface)}
.pal [role=option][aria-selected=true] i{border-color:var(--accent-text);background:var(--accent)}
.pal .ft{display:flex;gap:16px;padding:10px 16px;border-top:1px solid var(--hair);font:400 12px var(--sans);color:var(--t3)}
.pal .none{padding:28px;text-align:center;color:var(--t3)}

/* ---------- step track (flows) ---------- */
.track{display:grid;grid-template-columns:repeat(var(--n,5),minmax(150px,1fr));overflow-x:auto;border:1px solid var(--hair)}
.track>li{list-style:none;position:relative;padding:44px 16px 18px;border-inline-start:1px solid var(--hair);min-width:0}
.track>li:first-child{border-inline-start:0}
.track>li:before{content:"";position:absolute;inset-inline-start:16px;top:20px;width:9px;height:9px;border:1px solid var(--t3);background:var(--bg);transform:rotate(45deg)}
.track>li:after{content:"";position:absolute;inset-inline-start:34px;inset-inline-end:0;top:24px;height:1px;background:var(--hair2)}
.track>li:last-child:after{display:none}
.track>li.on:before{border-color:var(--accent-text);background:var(--accent)}
.track>li.on:after{background:linear-gradient(90deg,var(--accent),var(--hair2))}
.track>li .n{position:absolute;inset-inline-end:14px;top:16px;font:400 11px var(--mono);color:var(--t3)}
.track b{display:block;font:600 13.5px/1.35 var(--sans);margin-bottom:6px}
.track span{display:block;font-size:12.5px;line-height:1.45;color:var(--t2)}
.track .ob{margin-top:8px;font:400 11px var(--mono);color:var(--t3)}

/* ---------- motion ---------- */
@media (prefers-reduced-motion:reduce){.drw,.drw-bg,.ins-rail .prog,.tgl i,.tgl i:after{transition:none}}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- state diagrams ---------- */
.sd{display:block;width:100%;height:auto;min-width:640px}
.sdwrap{overflow-x:auto;border:1px solid var(--hair);background:var(--bg)}
.sd .e{fill:none;stroke:rgba(var(--ink),.28);stroke-width:1;transition:stroke var(--dur-fast)}
.sd .e.on{stroke:var(--accent);stroke-width:1.5}
.sd .e.dim{stroke:rgba(var(--ink),.08)}
.sd .n rect{fill:var(--bg);stroke:rgba(var(--ink),.45);transition:stroke var(--dur-fast),fill var(--dur-fast)}
.sd .n text{fill:var(--t2);font:500 11px var(--mono)}
.sd .n{cursor:pointer;outline:none}
.sd .n:hover rect,.sd .n:focus-visible rect{stroke:var(--t1)}
.sd .n.on rect{stroke:var(--accent);fill:var(--accent-bg)}.sd .n.on text{fill:var(--t1)}
.sd .n.nb rect{stroke:var(--t1)}.sd .n.nb text{fill:var(--t1)}
.sd .n.dim{opacity:.6}
.sd .n.term rect{stroke-dasharray:3 3}
.sdread{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--hair);border-top:0}
.sdread>div{padding:14px 18px;border-inline-start:1px solid var(--hair);min-width:0}.sdread>div:first-child{border-inline-start:0}
.sdread dt{font:400 11.5px var(--sans);color:var(--t3)}.sdread dd{margin:6px 0 0;font:500 13px/1.5 var(--mono);color:var(--t1);overflow-wrap:anywhere}
@media (max-width:700px){.sdread{grid-template-columns:1fr}.sdread>div{border-inline-start:0;border-top:1px solid var(--hair)}.sdread>div:first-child{border-top:0}}

/* ---------- master/detail (vertical tabs) ---------- */
.md{display:grid;grid-template-columns:260px minmax(0,1fr);border:1px solid var(--hair);min-height:420px}
.md [role=tablist]{display:flex;flex-direction:column;border-inline-end:1px solid var(--hair);background:var(--bg)}
.md [role=tab]{display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;min-height:46px;padding:8px 16px;border:0;border-bottom:1px solid var(--hair);background:none;color:var(--t3);font:500 14px var(--sans);text-align:start;cursor:pointer}
.md [role=tab] .ix{font:400 11px var(--mono);color:var(--t3)}
.md [role=tab] em{font:400 11px var(--mono);font-style:normal;color:var(--t3)}
.md [role=tab]:hover{color:var(--t1);background:var(--surface)}
.md [role=tab][aria-selected=true]{color:var(--t1);background:var(--surface);box-shadow:inset 2px 0 0 var(--accent)}
.md [role=tab][aria-selected=true] .ix{color:var(--accent-text)}
.md [role=tab]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.md [role=tabpanel]{padding:28px 32px;min-width:0}
.md [role=tabpanel] h3{margin:0 0 10px;font:400 28px/1.1 var(--display)!important;letter-spacing:-.03em!important}
.md [role=tabpanel] .lead{color:var(--t2);font-size:15px;line-height:1.6;max-width:68ch;margin:0 0 24px}
.md .facets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.md .facets h4{margin:0 0 10px;font:400 11.5px var(--sans);color:var(--t3)}
.md .facets .tags{display:flex;flex-wrap:wrap;gap:6px}
.md .tags button.tag{height:24px;cursor:pointer;background:var(--bg)} /* a pressable tag meets the 24 px target (WCAG 2.5.8) */
.md .tags button.tag:hover{border-color:var(--t1);color:var(--t1)}
.md .tags button.tag:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
@media (max-width:900px){.md{grid-template-columns:1fr}.md [role=tablist]{flex-direction:row;overflow-x:auto;border-inline-end:0;border-bottom:1px solid var(--hair)}.md [role=tab]{border-bottom:0;border-inline-end:1px solid var(--hair);white-space:nowrap;grid-template-columns:auto auto;flex:none}.md [role=tab] em{display:none}.md [role=tabpanel]{padding:22px 18px}.md .facets{grid-template-columns:1fr}}

/* ---------- matrix heatmap ---------- */
.mx{overflow-x:auto;border:1px solid var(--hair)}
.mx table{border-collapse:collapse;width:auto;min-width:100%}
.mx td,.mx thead th:not(:first-child){width:44px;min-width:44px}
.mx th,.mx td{border-bottom:1px solid var(--hair);padding:0;text-align:center}
.mx thead th{font:400 11px var(--mono);color:var(--t3);height:120px;vertical-align:bottom;padding:0 0 10px;white-space:nowrap}
.mx thead th span{display:inline-block;writing-mode:vertical-rl;transform:rotate(180deg)}
.mx thead th button{all:unset;cursor:pointer;color:inherit}.mx thead th button:hover,.mx thead th button:focus-visible{color:var(--t1);outline:2px solid var(--accent);outline-offset:2px}
.mx tbody th{font:500 13px var(--sans);text-align:start;padding:10px 16px;white-space:nowrap;color:var(--t1)}
.mx td i{display:block;width:16px;height:16px;margin:auto;border:1px solid var(--hair2);transform:rotate(45deg) scale(.6)}
.mx td.on i{background:var(--t1);border-color:var(--t1)}
.mx tr:hover td.on i,.mx td.col.on i{background:var(--accent);border-color:var(--accent-text)}
.mx tr:hover th{color:var(--accent-text)}
.mx td.col{background:var(--surface)}
.mx tfoot td{font:400 11px var(--mono);color:var(--t3);padding:8px 0}

/* ---------- sequence controls ---------- */
.ctl{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px;border:1px solid var(--hair);border-top:0;background:var(--surface)}
.ctl .read{margin-inline-start:auto;font:400 12.5px var(--mono);color:var(--t2)}
.ctl .btn svg{width:14px;height:14px;fill:currentColor}

/* ---------- legal footer (standard on every page) ---------- */
footer.legal{border-top:1px solid var(--hair);padding:48px 0 64px;color:var(--t3);font-size:13px;line-height:1.7}
footer.legal .w{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:40px}
footer.legal b{color:var(--t1);font-weight:600}
footer.legal a{color:var(--t2);text-decoration:underline;text-decoration-color:var(--hair2);text-underline-offset:3px}
footer.legal a:hover{color:var(--t1);text-decoration-color:var(--accent-text)}
@media (max-width:800px){footer.legal .w{grid-template-columns:1fr;gap:24px}}

/* ---------- frequency ruler ---------- */
.ruler{position:relative;border:1px solid var(--hair);background:var(--bg);padding:20px 20px 12px;overflow-x:auto}
.ruler svg{display:block;width:100%;min-width:760px;height:auto}
.ruler .ax{stroke:rgba(var(--ink),.35)}.ruler .tk{stroke:rgba(var(--ink),.25)}.ruler .tl{fill:var(--t3);font:400 11px var(--mono)}
.ruler .bd rect{fill:rgba(var(--ink),.06);stroke:rgba(var(--ink),.55);cursor:pointer;transition:fill var(--dur-fast),stroke var(--dur-fast)}
.ruler .bd.LICENSED rect{fill:rgba(var(--ink),.22)}.ruler .bd.LIGHTLY_LICENSED rect{fill:rgba(var(--ink),.12);stroke-dasharray:4 2}.ruler .bd.CLOSING rect{fill:none;stroke-dasharray:2 3}
.ruler .bd text{fill:var(--t2);font:400 10.5px var(--mono);pointer-events:none}
.ruler .bd:hover rect,.ruler .bd:focus-visible rect,.ruler .bd.on rect{stroke:var(--accent);fill:var(--accent-bg)}
.ruler .bd:focus-visible{outline:none}
.ruler .jl{fill:var(--t1);font:500 12px var(--sans)}
.legend2{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px;font:400 12px var(--sans);color:var(--t3)}
.legend2 i{display:inline-block;width:18px;height:10px;margin-inline-end:6px;vertical-align:-1px;border:1px solid rgba(var(--ink),.55)}
@media (max-width:700px){.btn[data-variant=ghost][data-pal-open]{display:none}}

/* ---------- sequence diagrams (flows) ---------- */
.seq{display:block;width:100%;height:auto;min-width:720px}
.seqwrap{overflow-x:auto;border:1px solid var(--hair);background:var(--bg)}
.seq .ln{stroke:rgba(var(--ink),.14);stroke-dasharray:3 5}.seq .hd rect{fill:var(--bg);stroke:rgba(var(--ink),.4)}.seq .hd text{fill:var(--t1);font:500 11px var(--mono)}
.seq .msg line{stroke:rgba(var(--ink),.35)}.seq .msg text{fill:var(--t3);font:400 11.5px var(--sans)}.seq .msg.done line{stroke:rgba(var(--ink),.6)}.seq .msg.done text{fill:var(--t2)}
.seq .msg.on line{stroke:var(--accent);stroke-width:1.5}.seq .msg.on text{fill:var(--t1)}.seq .obj{fill:var(--t3);font:400 10px var(--mono)}
.flowgrid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:0}
.flowgrid .fl{border:1px solid var(--hair);border-inline-end:0;display:flex;flex-direction:column}
.flowgrid .fl button{display:flex;justify-content:space-between;gap:8px;text-align:start;min-height:44px;padding:10px 16px;background:var(--bg);border:0;border-bottom:1px solid var(--hair);color:var(--t3);font:500 13.5px var(--sans);cursor:pointer}
.flowgrid .fl button em{font:400 11px var(--mono);font-style:normal}
.flowgrid .fl button:hover{color:var(--t1);background:var(--surface)}
.flowgrid .fl button[aria-pressed=true]{color:var(--t1);background:var(--surface);box-shadow:inset 2px 0 0 var(--accent)}
.flowgrid .fl button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
@media (max-width:900px){.flowgrid{grid-template-columns:1fr}.flowgrid .fl{flex-direction:row;overflow-x:auto;border-inline-end:1px solid var(--hair);border-bottom:0}.flowgrid .fl button{flex:none;border-bottom:0;border-inline-end:1px solid var(--hair);white-space:nowrap}}

/* ---------- ledger: name / statement rows for principles and rules ---------- */
.ledger{border-top:1px solid var(--hair);columns:2;column-gap:56px}
.ledger>div{break-inside:avoid;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:18px 0;border-bottom:1px solid var(--hair)}
.ledger dt{font:600 15px/1.35 var(--sans);color:var(--t1);display:flex;gap:10px;align-items:baseline}
.ledger dt:before{content:"";flex:none;width:7px;height:7px;border:1px solid var(--t3);transform:rotate(45deg) translateY(-2px)}
.ledger dd{margin:0 0 0 17px;color:var(--t2);font-size:14px;line-height:1.6;max-width:62ch}
@media (max-width:900px){.ledger{columns:1}}
.drw .body ul.ms li{display:grid;grid-template-columns:88px minmax(0,1fr);justify-content:start}.drw .body ul.ms b{font:500 12.5px var(--mono)}
.flowgrid>*,.md>*,.ws>*{min-width:0}
.mx,.mx td,.mx th{position:relative}

/* ---------- layout stability (CLS ≤ 0.1): views fill their text after load. Hero copy stays hidden until its heading
   is written, so it appears once in its final layout; containers the scripts fill keep a reserved size, so static
   blocks after them start below the fold and never jump into view. ---------- */
.th .copy:has(> h1:empty),.hero .w:has(> h1:empty),.phero .w:has(> h1:empty),.ah .w:has(> h1:empty){visibility:hidden}
#body:empty,#eras:empty,#layers:empty{min-height:100vh}
#hero-hud:empty,#counts:empty,#dsum:empty{min-height:84px}
@media (max-width:700px){#hero-hud:empty,#counts:empty,#dsum:empty{min-height:150px}}
.vrow{min-height:38px}
#roles:empty{min-width:min(650px,100%);min-height:38px}
#explainer .xpl{min-height:min(80vh,720px)}
main:has(.th h1:empty)>:not(.th),main:has(.hero h1:empty)>:not(.hero){visibility:hidden}
@media (max-width:700px){.uni .w{justify-content:flex-start!important;padding-top:56px}header.nav .navr{min-width:206px;justify-content:flex-end}}
.th .w:has(h1:empty){visibility:hidden}
body:has(.th h1:empty) .th~*,body:has(.th h1:empty) #main~*,body:has(.th h1:empty) .prtab,body:has(.th h1:empty) .sp-body{visibility:hidden}
.uni .w:has(#hero-hud:empty){visibility:hidden}
#scn:empty,#rt:empty{min-height:100vh}
.ah #lede:empty{min-height:5.2em}
@media (max-width:700px){.ah #lede:empty{min-height:9.5em}}
body:has(article#body:empty) .doc,body:has(article#body:empty) .doc~*{visibility:hidden}
.doc:has(article#body:empty){min-height:100vh}
#cr:empty{min-height:100vh}

/* ---------- lineage and references ---------- */
.ledger.lineage{columns:1}.lineage>div{grid-template-columns:160px minmax(0,1fr);gap:24px}.lineage dt{flex-direction:column;align-items:flex-start;gap:4px}.lineage dt:before{display:none}.lineage dd{margin:0;max-width:72ch}
.lineage dt .k{font:500 12px/1.4 var(--mono);letter-spacing:.04em;color:var(--t3)}
.lineage sup a{text-decoration:none;font-size:11px;margin-inline-start:2px}
.refs:dir(rtl){padding-inline-end:28px}
.refs{margin:0;padding-inline-start:28px;max-width:84ch;display:grid;gap:10px;font-size:14px;line-height:1.55;color:var(--t2)}
.refs a{overflow-wrap:anywhere}
.refs li:target{color:var(--t1)}
@media (max-width:700px){.lineage>div{grid-template-columns:minmax(0,1fr);gap:6px}}
/* WCAG 2.2: the jump button keeps full contrast in both themes; rail links are at least 24px tall (2.5.8). */
.btn[data-pal-open]{background:transparent;color:var(--t1);border:1px solid var(--hair2)}
.btn[data-pal-open]:hover{background:var(--hover);color:var(--t1)}
.btn[data-pal-open] kbd{color:var(--t1);background:var(--bg)}
.ins-rail ol a{min-height:24px;display:inline-flex;align-items:center}

/* ---------- protocol explorer tabs (figures from system/diagram) ---------- */
.pxp-tabs{display:flex;gap:2px;border-bottom:1px solid var(--hair);margin:0 0 22px;overflow-x:auto;scrollbar-width:none}
.pxp-tabs::-webkit-scrollbar{display:none}
.pxp-tabs [role=tab]{appearance:none;background:transparent;border:0;color:var(--t3);font:500 14px var(--sans);padding:12px 16px 13px;display:inline-flex;align-items:baseline;gap:8px;cursor:pointer;white-space:nowrap;box-shadow:inset 0 -2px 0 transparent}
.pxp-tabs [role=tab] em{font:400 11px var(--mono);font-style:normal;color:var(--t3)}
.pxp-tabs [role=tab]:hover{color:var(--t1);box-shadow:inset 0 -2px 0 var(--accent)}
.pxp-tabs [role=tab][aria-selected=true]{color:var(--t1);box-shadow:inset 0 -2px 0 var(--t1)}
.pxp-tabs [role=tab]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}

/* b/6e28ec410172/page.css */
.nxo-view .phero{padding:176px 0 96px;border-bottom:1px solid var(--hair)}
.nxo-view .phero h1{font:500 clamp(34px,3.6vw,54px)/1.06 var(--mono);letter-spacing:-.03em;max-width:20ch;margin:18px 0 22px}
.nxo-view .phero .lede{max-width:62ch}
.nxo-view .ch{padding:120px 0 112px;border-bottom:1px solid var(--hair);position:relative}
.nxo-view .ch-n{font:400 13px var(--mono);color:var(--t3);letter-spacing:.06em;margin-bottom:22px;display:flex;gap:14px;align-items:center}
.nxo-view .ch-n b{color:var(--accent-text);font-weight:500}
.nxo-view .ch-n i{flex:0 0 48px;height:1px;background:var(--hair2)}
.nxo-view .ch h2{font-size:clamp(30px,3vw,46px);max-width:22ch;margin:0 0 20px;line-height:1.08;letter-spacing:-.03em}
.nxo-view .ch .sub{font-size:17px;max-width:64ch;margin-bottom:56px}
.nxo-view .split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start}
.nxo-view .split>*{min-width:0}
.nxo-view .code pre{overflow-x:auto}
.nxo-view .ph{display:inline-block;padding:1px 6px;border:1px dashed var(--accent);border-radius:4px;color:var(--accent-text);font:500 11.5px var(--mono);letter-spacing:.02em;white-space:nowrap}
.nxo-view .draft{display:inline-flex;align-items:center;gap:8px;height:24px;padding:0 8px;border:1px solid var(--hair2);border-radius:4px;font:500 11px var(--mono);letter-spacing:.06em;color:var(--t2);text-transform:uppercase}
.nxo-view .draft:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}
.nxo-view .tw{overflow-x:auto}
.nxo-view table.t{width:100%;border-collapse:collapse;font-size:14px}
.nxo-view table.t caption{text-align:start;font:400 12px var(--mono);color:var(--t3);padding:0 0 14px}
.nxo-view table.t th{text-align:start;font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3);padding:0 16px 12px 0;border-bottom:1px solid var(--hair2)}
.nxo-view table.t td{padding:14px 16px 14px 0;border-bottom:1px solid var(--hair);vertical-align:top;color:var(--t2);line-height:1.5}
.nxo-view table.t td:first-child{color:var(--t1);font-weight:500;min-width:140px}
.nxo-view table.t td.num{font:400 13px var(--mono);font-variant-numeric:tabular-nums;text-align:end;color:var(--t1)}
.nxo-view table.t th.num{text-align:end}
.nxo-view table.t .mono{font:400 12.5px var(--mono);color:var(--t3)}
.nxo-view .yes{color:var(--t1);font:500 12px var(--mono)}
.nxo-view .no{color:var(--t3);font:500 12px var(--mono)}
.nxo-view .g3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:transparent;border:1px solid var(--hair);overflow:clip}
.nxo-view .g3>*{box-shadow:0 0 0 1px var(--hair)}
.nxo-view .g4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:transparent;border:1px solid var(--hair);overflow:clip}
.nxo-view .g4>*{box-shadow:0 0 0 1px var(--hair)}
.nxo-view .g2{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:transparent;border:1px solid var(--hair);overflow:clip}
.nxo-view .g2>*{box-shadow:0 0 0 1px var(--hair)}
.nxo-view .box{background:var(--bg);padding:24px;min-height:200px;display:flex;flex-direction:column}
.nxo-view .box .k{font:500 11px var(--mono);color:var(--accent-text);letter-spacing:.08em}
.nxo-view .box h3{margin:10px 0 8px;font:500 16px/1.3 var(--sans);letter-spacing:-.01em}
.nxo-view .box p{margin:0;font-size:13.5px;line-height:1.55;color:var(--t2)}
.nxo-view .box .f{margin-top:auto;padding-top:16px;font:400 12px var(--mono);color:var(--t3)}
.nxo-view .note{margin-top:20px;font-size:13px;color:var(--t3);max-width:80ch;line-height:1.55}
.nxo-view .note b{color:var(--t2);font-weight:500}
.nxo-view svg.dg{width:100%;height:auto;display:block}
@media (max-width:700px){.nxo-view svg.dg.dg-wide{display:none}
.nxo-view svg.dg.dg-wide+.g4{margin-top:0!important}
}
.nxo-view svg.dg .ln{fill:none;stroke:rgba(var(--ink),.35);stroke-width:1}
.nxo-view svg.dg .lr{fill:none;stroke:var(--accent);stroke-width:1.5}
.nxo-view svg.dg rect{fill:var(--bg);stroke:rgba(var(--ink),.4);stroke-width:1}
.nxo-view svg.dg rect.on{stroke:var(--t1)}
.nxo-view svg.dg rect.red{stroke:var(--accent)}
.nxo-view svg.dg text{fill:var(--t1);font:500 12px var(--mono);letter-spacing:.06em}
.nxo-view svg.dg text.s{fill:var(--t3);font:400 11px var(--sans);letter-spacing:0}
.nxo-view svg.dg text.h{font:600 11px var(--mono);letter-spacing:.14em}
.nxo-view .close{padding:140px 0}
.nxo-view .close h2{font-size:clamp(36px,4vw,60px);max-width:18ch;letter-spacing:-.04em;line-height:1.04;margin:0 0 24px}
.nxo-view .legal{border-top:1px solid var(--hair);padding:32px 0 48px;color:var(--t3);font-size:12.5px;line-height:1.6}
.nxo-view .legal .w{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.nxo-view .legal b{color:var(--t2);font-weight:500}
.nxo-view .toc{display:flex;gap:6px;flex-wrap:wrap;margin-top:36px}
.nxo-view .toc a{height:32px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--hair2);border-radius:5px;font:500 12.5px var(--sans);color:var(--t2)}
.nxo-view .toc a:hover{color:var(--t1);border-color:rgba(var(--ink),.4)}
@media (max-width:1000px){.nxo-view .phero{padding:128px 0 72px}
.nxo-view .dsum{flex-wrap:wrap;width:auto}
.nxo-view .cta{flex-wrap:wrap}
.nxo-view .docs li{grid-template-columns:1fr}
.nxo-view svg.dg{min-width:0}
.nxo-view .split,.nxo-view .g3,.nxo-view .g4,.nxo-view .g2{grid-template-columns:1fr}
.nxo-view .legal .w{grid-template-columns:1fr}
.nxo-view table.t{font-size:13px}
}
.nxo-view .nxo-pc{font-style:normal;display:flex;flex-direction:column;gap:6px;max-width:48ch;padding:16px 18px;border:1px solid var(--hair2);border-radius:5px;font-size:14.5px;line-height:1.5;color:var(--t2);overflow-wrap:anywhere}
.nxo-view .nxo-pc p{margin:0;max-width:none;font-size:inherit;line-height:inherit;color:inherit}
.nxo-view .nxo-pc p.nxo-pc__role{color:var(--t1)}
.nxo-view .nxo-pc__role strong{font-weight:500}
.nxo-view .nxo-pc p.nxo-pc__org{color:var(--t3);font:400 12.5px/1.5 var(--mono);letter-spacing:.02em;margin-bottom:4px}
.nxo-view .nxo-pc a{color:var(--t1);text-decoration:underline;text-decoration-color:var(--hair2);text-underline-offset:3px}
.nxo-view .nxo-pc a:hover,.nxo-view .nxo-pc a:focus-visible{text-decoration-color:var(--accent)}
.nxo-view .nxo-pc-slot{margin-top:24px}
.nxo-view .nxo-pc-slot:empty{display:none}
.nxo-view .aside .nxo-pc-h{margin-top:22px}
.nxo-view .aside .nxo-pc{padding:0;border:0}
.nxo-view .phero .nxo-pc-slot:empty{display:block;min-height:168px}
.nxo-view .phero #kv:empty{min-height:160px}
@media (max-width:900px){.nxo-view .phero #kv:empty{min-height:247px}
}

/* b/6e28ec410172/gl.css */
.nxo-view .mailbig{display:inline-flex;align-items:center;gap:14px;margin:8px 0 28px;font:400 clamp(22px,2.4vw,34px)/1.1 var(--mono);letter-spacing:-.04em;color:var(--t1);border-bottom:1px solid var(--accent);padding-bottom:6px}
.nxo-view .mailbig:hover{color:var(--accent-text)}
.nxo-view .kv{display:grid;grid-template-columns:200px 1fr;gap:0;border-top:1px solid var(--hair);max-width:820px}
.nxo-view .kv dt,.nxo-view .kv dd{margin:0;padding:12px 0;border-bottom:1px solid var(--hair)}
.nxo-view .kv dt{font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3);padding-top:15px}
.nxo-view .kv dd{color:var(--t2)}
.nxo-view .route{background:var(--bg);padding:22px;display:flex;flex-direction:column;gap:8px;min-height:190px}
.nxo-view .route .k{font:500 11px var(--mono);color:var(--accent-text);letter-spacing:.08em}
.nxo-view .route h3{margin:2px 0 0;font-size:16px}
.nxo-view .route p{margin:0;font-size:13.5px;color:var(--t2);line-height:1.5}
.nxo-view .route a.m{margin-top:auto;font:400 12px var(--mono);color:var(--t3);word-break:break-word}
.nxo-view .route a.m:hover{color:var(--t1)}
.nxo-view .form{border:1px solid var(--hair2);border-radius:5px;padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;max-width:860px}
.nxo-view .form label{display:flex;flex-direction:column;gap:6px;font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3)}
.nxo-view .form input,.nxo-view .form select,.nxo-view .form textarea{height:40px;padding:0 12px;border:1px solid var(--hair2);border-radius:5px;background:var(--bg);color:var(--t1);font:400 14px var(--sans);letter-spacing:0;text-transform:none}
.nxo-view .form textarea{height:120px;padding:10px 12px;resize:vertical}
.nxo-view .form .wide{grid-column:1/-1}
.nxo-view .form input:focus-visible,.nxo-view .form select:focus-visible,.nxo-view .form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.nxo-view .form .fn{grid-column:1/-1;font-size:13px;color:var(--t2);border-top:1px solid var(--hair);padding-top:16px;display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.nxo-view .form .wire{font:400 11px var(--mono);color:var(--t3)}
.nxo-view .stmt{border:1px solid var(--hair2);border-radius:5px;padding:16px 18px;margin:0 0 14px;max-width:80ch}
.nxo-view .stmt .sh{display:flex;gap:10px;align-items:center;margin-bottom:8px;font:400 11px var(--mono);color:var(--t3)}
.nxo-view .stmt p{margin:0;color:var(--t1);line-height:1.6}
.nxo-view .doc{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;padding-top:72px;padding-bottom:120px}
.nxo-view .doc nav{position:sticky;top:96px;align-self:start;display:flex;flex-direction:column;border-inline-start:1px solid var(--hair)}
.nxo-view .doc nav a{padding:7px 0 7px 16px;font-size:13.5px;color:var(--t3);border-inline-start:2px solid transparent;margin-inline-start:-1px}
.nxo-view .doc nav a:hover{color:var(--t1)}
.nxo-view .doc nav a.cur{color:var(--t1);border-inline-start-color:var(--accent-text)}
.nxo-view .doc nav b{font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--t3);padding:0 0 10px 16px}
.nxo-view .cl{padding:0 0 44px;margin:0 0 44px;border-bottom:1px solid var(--hair)}
.nxo-view .cl:last-child{border-bottom:0}
.nxo-view .cl .n{font:400 12px var(--mono);color:var(--accent-text);letter-spacing:.06em}
.nxo-view .cl h2{margin:8px 0 16px}
.nxo-view .cl p,.nxo-view .cl li{color:var(--t2);font-size:15.5px;line-height:1.65;max-width:72ch}
.nxo-view .cl ol,.nxo-view .cl ul{padding-inline-start:20px;margin:0}
.nxo-view .dsum{display:flex;gap:0;border:1px solid var(--hair2);border-radius:5px;margin-top:32px;width:max-content;max-width:100%}
.nxo-view .dsum div{padding:12px 20px;border-inline-end:1px solid var(--hair)}
.nxo-view .dsum div:last-child{border-inline-end:0}
.nxo-view .dsum dt{font:500 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--t3)}
.nxo-view .dsum dd{margin:4px 0 0;font:400 13px var(--mono);color:var(--t1)}
@media (max-width:1000px){.nxo-view .dsum{flex-wrap:wrap;width:auto}
.nxo-view .dsum div{flex:1 1 auto;min-width:0}
.nxo-view .dsum dd{overflow-wrap:anywhere}
}
.nxo-view .docs{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}
.nxo-view .docs li{display:grid;grid-template-columns:70px 1fr auto;gap:16px;padding:12px 0;border-bottom:1px solid var(--hair);align-items:center}
.nxo-view .docs li .c{font:400 12px var(--mono);color:var(--accent-text)}
.nxo-view .docs li a{color:var(--t1)}
.nxo-view .docs li .s{font:400 11px var(--mono);color:var(--t3)}
.nxo-view .gst{display:inline-flex;align-items:center;gap:7px;font:500 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.nxo-view .gst:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--t3)}
.nxo-view .gst.s-done:before{background:var(--t1)}
.nxo-view .gst.s-legal:before{background:var(--accent)}
.nxo-view .gst.s-owner:before{border:1px solid var(--accent);background:transparent}
.nxo-view .gst.s-eng:before{background:transparent;border:1px solid var(--t1)}
.nxo-view .gsum{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:transparent;border:1px solid var(--hair);margin-top:40px;overflow:clip}
.nxo-view .gsum>*{box-shadow:0 0 0 1px var(--hair)}
.nxo-view .gsum div{background:var(--bg);padding:18px}
.nxo-view .gsum b{display:block;font:400 30px var(--mono);letter-spacing:-.04em}
.nxo-view .gsum span{font-size:12.5px;color:var(--t3)}
.nxo-view .gsum div:first-child b{color:var(--accent-text)}
.nxo-view .filt{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 24px}
.nxo-view .filt button{height:32px;padding:0 12px;border-radius:5px;border:1px solid var(--hair2);background:var(--bg);color:var(--t2);font:500 12.5px var(--sans);cursor:pointer}
.nxo-view .filt button[aria-pressed=true]{background:var(--t1);color:var(--bg);border-color:var(--t1)}
.nxo-view table.t td .id{font:400 11.5px var(--mono);color:var(--t3);white-space:nowrap}
@media (max-width:1000px){.nxo-view .doc{grid-template-columns:minmax(0,1fr);gap:32px}
.nxo-view .doc nav{position:static}
.nxo-view .form{grid-template-columns:1fr}
.nxo-view .kv{grid-template-columns:1fr}
.nxo-view .kv dt{padding-bottom:0;border-bottom:0}
.nxo-view .gsum{grid-template-columns:1fr 1fr}
.nxo-view .mailbig{font-size:22px}
}

/* b/6e28ec410172/system/3d/hero.css */
/* Hero stage (system/3d/hero.js). The stage sits at the inline end of the hero (right in LTR, left in RTL) and always
   draws left to right inside (dir="ltr"); the copy stays above it. Below 900 px the stage goes on top of the copy.
   Every colour has a fallback: the stylesheet is loaded beside the view's token scope. */
:is(.nxo-view,html) .has-hero{position:relative;overflow:hidden}
:is(.nxo-view,html) .has-hero>.w,:is(.nxo-view,html) .has-hero>.in,:is(.nxo-view,html) .has-hero>.copy{position:relative;z-index:2}
.nxo-hero{position:absolute;inset:0;direction:ltr;z-index:1;pointer-events:none}
/* The 3D is the page's ground: full width, edge to edge, no frame, border, shadow or box. The scene fades into the page
   with fog (hero.js), and the canvas edges dissolve with an alpha mask so no seam shows into the next section. */
/* The stage carries dir="ltr" (its scene draws left to right), and logical insets resolve against the element's own
   direction, so under an RTL page the end side is set physically: the stage sits on the left, clear of the copy. */
.nxo-hero canvas,.nxo-hero img{display:block;width:100%;height:100%;object-fit:cover}
.nxo-hero canvas{opacity:0;transition:opacity .6s;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 7%,#000 84%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 7%,#000 84%,transparent 100%)}
.nxo-hero.is-live canvas{opacity:1}
/* the copy's plate (hero.js scrim): the scrim token under the text and buttons, above the scene */
.nxo-hero-scrim{position:absolute;background:var(--scrim,rgba(0,0,0,.88));pointer-events:none}
.nxo-hero-scrim[hidden]{display:none}
/* the phone band's poster until the scene is live (hero.js, audit L28); it gives way as the canvas fades in */
.nxo-hero .nxo-hero-wait{position:absolute;inset:0;display:none;width:100%;height:100%;object-fit:cover;object-position:50% 0;transition:opacity .6s,visibility 0s .6s}
.nxo-hero.is-live .nxo-hero-wait{opacity:0;visibility:hidden}
@media (max-width:900px){.nxo-hero .nxo-hero-wait{display:block}}
.nxo-hero-pause{pointer-events:auto;position:absolute;inset-inline-end:16px;bottom:14px;height:28px;padding:0 10px;border-radius:5px;border:1px solid var(--hair2,rgba(127,127,127,.35));background:var(--bg,transparent);color:var(--t3,#8c8c8c);font:500 10.5px/1 var(--mono,monospace);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;opacity:.75}
.nxo-hero-pause:hover,.nxo-hero-pause:focus-visible{opacity:1;color:var(--t1,currentColor);border-color:var(--accent,currentColor);outline:none}
.nxo-hero-pause[hidden]{display:none}
/* text-only page bands (.phero) gain a stage beside the copy */
:is(.nxo-view,html) .has-hero--band{min-height:620px}
:is(.nxo-view,html) .has-hero--band>.w>*{max-width:min(46vw,640px)}
/* a stage that fills its own box (the about stage, the atlas frame, the learn and spectrum figures) */
:is(.nxo-view,html) .has-hero--box{position:relative;overflow:hidden}
:is(.nxo-view,html) .has-hero--box .nxo-hero{inset:0;top:0;width:100%;height:100%}
:is(.nxo-view,html) .has-hero--band>:not(.nxo-hero):not(.w){max-width:min(46vw,640px)}
/* line homes and the about, protocol and master heroes keep their own heights */
@media (max-width:900px){
  :is(.nxo-view,html) .has-hero{display:flex;flex-direction:column}
  /* phones: the heading and copy come first (the first screen reads), the stage follows them; it mounts below the
     copy, so nothing the visitor is reading moves when it arrives */
  .nxo-hero{position:relative;inset:auto;width:100%;height:clamp(260px,52vh,420px);margin-top:0;order:2;flex:none}
  :is(.nxo-view,html) .has-hero>.cap{order:3}
  :is(.nxo-view,html) .hero.has-hero>.w{height:auto;padding-top:112px} /* a full-height hero runs under the bars: its copy clears them */
  :is(.nxo-view,html) .has-hero--band .nxo-hero,:is(.nxo-view,html) .has-hero--fill .nxo-hero{margin-top:24px}
  :is(.nxo-view,html) .has-hero--band{min-height:0;padding-top:88px}
  :is(.nxo-view,html) .has-hero--band>.w>*,:is(.nxo-view,html) .has-hero--band>:not(.nxo-hero):not(.w){max-width:none}
  :is(.nxo-view,html) .has-hero--box{display:block}
  :is(.nxo-view,html) .has-hero--box .nxo-hero{position:absolute;inset:0;height:100%;margin:0}
}
/* CAD viewport (cadview.js): the canvas takes the pointer (drag to orbit, hover to pick); the copy above stays clickable
   because only its own text and controls catch events, its layout boxes let them through to the stage. */
.nxo-hero.nxo-cad-on canvas{pointer-events:auto;cursor:grab;touch-action:pan-y;outline:none}
.nxo-hero.nxo-cad-on canvas:focus-visible{outline:1px solid var(--accent,currentColor);outline-offset:-1px}
:is(.nxo-view,html) .has-hero:has(.nxo-cad-on)>:is(.w,.in,.copy){pointer-events:none}
:is(.nxo-view,html) .has-hero:has(.nxo-cad-on)>:is(.w,.in,.copy) :is(a,button,input,select,textarea,label,summary,p,h1,h2,h3,h4,li,dl,dd,dt,nav,form,[role=button],[tabindex],small,span,b,code,kbd,img,svg){pointer-events:auto}
.nxo-cad{position:absolute;inset:0;pointer-events:none;font:500 10px/1.3 var(--mono,'IBM Plex Mono',monospace);color:var(--t3,#8c8c8c);letter-spacing:.06em}
.nxo-cad-triad{position:absolute;left:16px;bottom:12px;overflow:visible}
.nxo-cad-triad line{stroke:var(--t2,#bdbdbd);stroke-width:1}
.nxo-cad-triad line.bk{stroke:var(--t3,#8c8c8c);stroke-dasharray:2 2}
.nxo-cad-triad text{fill:var(--t2,#bdbdbd);font:500 8px var(--mono,monospace);text-anchor:middle}
.nxo-cad-ro{position:absolute;left:84px;bottom:20px;text-transform:uppercase;white-space:pre;font-variant-numeric:tabular-nums}
.nxo-cad-hint{position:absolute;left:84px;bottom:36px;text-transform:uppercase;opacity:.8;transition:color .2s}
.nxo-cad-hint.nudge{color:var(--t1,currentColor)}
.nxo-cad-hint[hidden]{display:none}
.nxo-cad-call{position:absolute;left:var(--x,0);top:var(--y,0);transform:translate(14px,14px);max-width:260px;padding:8px 10px;border-radius:5px;border:1px solid var(--accent,currentColor);background:var(--bg,#000);color:var(--t1,#f2f2f2);text-transform:none;letter-spacing:0}
.nxo-cad-call.flip{transform:translate(calc(-100% - 14px),14px)}
.nxo-cad-call[hidden]{display:none}
.nxo-cad-call b{display:block;font:600 11px/1.3 var(--mono,monospace);letter-spacing:.06em;text-transform:uppercase;color:var(--accent,currentColor)}
.nxo-cad-call span{display:block;margin-top:3px;font:400 12px/1.4 var(--sans,'IBM Plex Sans',sans-serif);color:var(--t1,#f2f2f2)}
.nxo-cad-call span:empty,.nxo-cad-call i:empty{display:none}
.nxo-cad-call i{display:block;margin-top:4px;font:500 9.5px/1.3 var(--mono,monospace);font-style:normal;letter-spacing:.08em;text-transform:uppercase;color:var(--t3,#8c8c8c)}
.nxo-cad-reset{pointer-events:auto;position:absolute;inset-inline-end:16px;bottom:48px;height:28px;padding:0 10px;border-radius:5px;border:1px solid var(--hair2,rgba(127,127,127,.35));background:var(--bg,transparent);color:var(--t3,#8c8c8c);font:500 10.5px/1 var(--mono,monospace);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.nxo-cad-reset:hover,.nxo-cad-reset:focus-visible{color:var(--t1,currentColor);border-color:var(--accent,currentColor);outline:none}
.nxo-cad-reset[hidden]{display:none}
[dir=rtl] .nxo-cad-reset,[dir=rtl] .nxo-hero-pause{inset-inline-end:auto;inset-inline-start:16px}
@media (max-width:900px){.nxo-cad-hint,.nxo-cad-ro{display:none}.nxo-cad-triad{transform:scale(.8);transform-origin:0 100%}}
@media (hover:none){.nxo-cad-hint{display:none}}
/* Right to left: the stage draws left to right, but its controls mirror with the page, so the triad, readout and
   hint sit at the right and Pause and Reset at the left, never on top of each other. */
[dir=rtl] .nxo-cad-triad{left:auto;right:16px}
[dir=rtl] .nxo-cad-ro,[dir=rtl] .nxo-cad-hint{left:auto;right:84px;text-align:right}
/* A view's own stage caption ("drag to turn") gives way to the viewport's controls once the CAD viewport is live. */
:is(.nxo-view,html) .has-hero:has(.nxo-cad-on) .cap{display:none}

/* Story HUD (system/3d/story-director.js); on a wide hero the caption starts where the subject's free area does
   (--nxo-free-x, measured from the copy by hero.js): the scenario's caption and a slim chapter indicator, quiet text over the scene
   (no box, no fill). Legibility comes from the page tokens and a paper-coloured outline behind the glyphs, not a glow. */
.nxo-story{position:absolute;inset:0;pointer-events:none;color:var(--t1,#f2f2f2)}
.nxo-story-cap{position:absolute;left:var(--nxo-free-x,46%);bottom:90px;max-width:min(50%,460px);display:flex;flex-direction:column;gap:4px;opacity:0;transform:translateY(6px);transition:opacity .7s ease,transform .7s ease}
.nxo-story.in .nxo-story-cap{opacity:1;transform:none}
.nxo-story.out .nxo-story-cap{opacity:0;transition-duration:.45s}
.nxo-story-n{font:500 10px/1 var(--mono,'IBM Plex Mono',monospace);letter-spacing:.12em;color:var(--t2,#bdbdbd);font-variant-numeric:tabular-nums}
.nxo-story-n:empty{display:none}
/* the caption always sits on the scrim token, flat, no blur: the scene's lines (ground, props, orbits) pass under every slot, not only the subject (render sweep 2026-11-04; keepClear still moves it off the subject) */
.nxo-story .nxo-story-cap{background:var(--scrim,rgba(0,0,0,.88));padding:8px 12px;margin:-8px -12px;border-radius:5px}
.nxo-story .nxo-story-t{-webkit-text-stroke:0}
.nxo-story-t{font:500 clamp(15px,1.5vw,19px)/1.3 var(--sans,'IBM Plex Sans',sans-serif);color:var(--t1,#f2f2f2);letter-spacing:.005em;paint-order:stroke fill;-webkit-text-stroke:3px var(--bg,#000)}
.nxo-story-prog{position:absolute;left:var(--nxo-free-x,46%);bottom:78px;display:flex;gap:3px;margin:0;padding:0;list-style:none;width:min(50%,460px)}
.nxo-story-prog li{flex:1;height:2px;background:var(--hair2,rgba(127,127,127,.35));overflow:hidden}
.nxo-story-prog li i{display:block;height:100%;background:var(--t1,#f2f2f2);transform:scaleX(0);transform-origin:0 50%}
.nxo-story-prog li.on{background:var(--t3,#8c8c8c)}
.nxo-story-tags{position:absolute;inset:0;overflow:hidden}
.nxo-story-tag{position:absolute;left:0;top:0;margin:-5px 0 0 12px;font:500 9.5px/1 var(--mono,'IBM Plex Mono',monospace);letter-spacing:.1em;text-transform:uppercase;color:var(--t1,#f2f2f2);white-space:normal;max-width:24ch;line-height:1.35;opacity:0;transition:opacity .4s;padding:3px 5px;border-radius:4px;background:var(--bg,#000)}
.nxo-story-tag::before{content:"";display:inline-block;width:5px;height:5px;margin-inline-end:6px;border-radius:50%;background:var(--accent,currentColor);vertical-align:middle}
.nxo-story-tag[hidden]{display:none}
.nxo-story-step{position:absolute;inset-inline-end:16px;bottom:84px;display:flex;gap:6px;pointer-events:auto}
.nxo-story-step button{width:32px;height:32px;border-radius:5px;border:1px solid var(--hair2,rgba(127,127,127,.35));background:var(--bg,#000);color:var(--t1,#f2f2f2);font:500 18px/1 var(--sans,sans-serif);cursor:pointer}
.nxo-story-step button:hover,.nxo-story-step button:focus-visible{border-color:var(--accent,currentColor);outline:none}
/* on environment and scene pages the tour keeps the bottom: the story's caption sits at the top, under the view's title */
.nxo-story.top .nxo-story-cap{top:92px;bottom:auto;left:16px}
.nxo-story.top .nxo-story-prog{top:84px;bottom:auto;left:16px}
@media (max-width:900px){
  .nxo-story.top .nxo-story-cap{top:84px;bottom:auto}
  .nxo-story.top .nxo-story-prog{top:76px;bottom:auto}
  /* phones: the bottom 80 px belong to the controls (triad at the start, Pause and Reset view at the end); the story's bar
     and caption sit above them instead of running through them */
  .nxo-story-cap{left:16px;bottom:100px;max-width:calc(100% - 32px)}
  .nxo-story-prog{left:16px;bottom:86px;width:calc(100% - 32px)}
  .nxo-story-t{font-size:14px}
  .nxo-story-step{bottom:44px}
}
/* the other slot, taken when the subject is under the caption (story-director keepClear): below the site's top bar and
   sub-header (nav.js sets --nx-bar and --nx-sub), never under them */
.nxo-story.alt .nxo-story-cap{top:calc(var(--nx-bar,64px) + var(--nx-sub,0px) + 32px);bottom:auto}.nxo-story.alt .nxo-story-prog{top:calc(var(--nx-bar,64px) + var(--nx-sub,0px) + 24px);bottom:auto}
.nxo-story.top.alt .nxo-story-cap{top:auto;bottom:90px}.nxo-story.top.alt .nxo-story-prog{top:auto;bottom:78px}
[dir=rtl] .nxo-story-cap,[dir=rtl] .nxo-story-prog{left:16px}
@media (max-width:900px){/* the other slot, taken when the subject is under the caption (story-director keepClear) */
.nxo-story.alt .nxo-story-cap{top:calc(var(--nx-bar,64px) + var(--nx-sub,0px) + 32px);bottom:auto}.nxo-story.alt .nxo-story-prog{top:calc(var(--nx-bar,64px) + var(--nx-sub,0px) + 24px);bottom:auto}
.nxo-story.top.alt .nxo-story-cap{top:auto;bottom:90px}.nxo-story.top.alt .nxo-story-prog{top:auto;bottom:78px}
[dir=rtl] .nxo-story-cap,[dir=rtl] .nxo-story-prog{left:16px}}
@media (prefers-reduced-motion:reduce){.nxo-story-cap{transition:none}}

/* b/6e28ec410172/view-legal.css */
