Sign in Create account
:host {
--h-canvas: #ffffff;
--h-elevated: #fafafa;
--h-sunken: #f4f4f5;
--h-hover: #ededed;
--h-line: rgba(0, 0, 0, 0.1);
--h-line-strong: rgba(0, 0, 0, 0.2);
--h-text: #000000;
--h-text-2: #262626;
--h-muted: #525252;
--h-primary-bg: #000000;
--h-primary-ink: #ffffff;
--h-primary-hover: #262626;
--h-shadow: 0 28px 64px -28px rgba(0, 0, 0, 0.28);
--h-scrim: rgba(255, 255, 255, 0.92);
--h-accent: var(--h-text);
--h-a: var(--h-text);
--h-b: var(--h-text);
--h-c: var(--h-text);
--h-sans: "IBM Plex Sans", "IBM Plex Sans Variable", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
--h-body: "IBM Plex Sans", "IBM Plex Sans Variable", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
--h-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
--h-stuck-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
--h-a11y-mark: #ffda00;
--h-dc-canvas: #000000;
--h-dc-elevated: #0a0a0a;
--h-dc-sunken: #000000;
--h-dc-hover: #1f1f1f;
--h-dc-line: rgba(255, 255, 255, 0.55);
--h-dc-line-strong: #ffffff;
--h-dc-text: #ffffff;
--h-dc-text-2: #ffffff;
--h-dc-muted: #f0f0f0;
--h-dc-accent: #ffda00;
--h-lc-canvas: #ffffff;
--h-lc-elevated: #ffffff;
--h-lc-sunken: #ffffff;
--h-lc-hover: #e6e6e6;
--h-lc-line: rgba(0, 0, 0, 0.6);
--h-lc-line-strong: #000000;
--h-lc-text: #000000;
--h-lc-text-2: #000000;
--h-lc-muted: #111111;
--h-lc-accent: #0000cc;
--h-r: 5px;
--h-r-chip: 4px;
--h-fast: 120ms;
--h-base: 180ms;
--h-ease: cubic-bezier(0.2, 0, 0, 1);
--h-gutter: 32px;
--h-max: 1216px;
--h-net-h: 32px;
--h-bar-h: 56px;
--h-ctx-h: 44px;
}
:host([data-theme="dark"]) {
--h-canvas: #000000;
--h-elevated: #111111;
--h-sunken: #0a0a0a;
--h-hover: #1a1a1a;
--h-line: rgba(255, 255, 255, 0.1);
--h-line-strong: rgba(255, 255, 255, 0.2);
--h-text: #ffffff;
--h-text-2: #d4d4d4;
--h-muted: #a3a3a3;
--h-primary-bg: #ffffff;
--h-primary-ink: #000000;
--h-primary-hover: #e5e5e5;
--h-shadow: 0 28px 64px -24px rgba(0, 0, 0, 0.9);
--h-scrim: rgba(0, 0, 0, 0.88);
}
:host([data-inst="gcri"]) { --h-accent: #ffc800; --h-accent-text: #000000; --h-a: #ffe66d; --h-b: #ffc800; --h-c: #ffa800; }
:host([data-inst="grf"]) { --h-accent: #d81c45; --h-accent-text: #d81c45; --h-a: #ffb3c1; --h-b: #ff4d6d; --h-c: #e11d48; }
:host([data-inst="gra"]) { --h-accent: #2563eb; --h-accent-text: #2563eb; --h-a: #9ec5ff; --h-b: #4f8cff; --h-c: #2563eb; }
:host([data-inst="ra"]) { --h-accent: #081df4; --h-accent-text: #081df4; --h-a: #aab4ff; --h-b: #4a5cff; --h-c: #081df4; }
:host([data-inst="nxs"]) { --h-accent: #b3122e; --h-accent-text: #b3122e; --h-a: #e0a800; --h-b: #d9480f; --h-c: #b3122e; }
:host([data-inst="grx"]) { --h-accent: #c2410c; --h-accent-text: #c2410c; --h-a: #ea7a3a; --h-b: #c2410c; --h-c: #9a3412; }
:host([data-inst="gcri"][data-theme="dark"]) { --h-accent: #ffc800; --h-accent-text: #ffc800; --h-a: #fff1a8; --h-b: #ffc800; --h-c: #ffa800; }
:host([data-inst="grf"][data-theme="dark"]) { --h-accent: #ff5c75; --h-accent-text: #ff5c75; --h-a: #ffd1da; --h-b: #ff8fa3; --h-c: #ff5c75; }
:host([data-inst="gra"][data-theme="dark"]) { --h-accent: #6ea8ff; --h-accent-text: #6ea8ff; --h-a: #cfe3ff; --h-b: #8fbaff; --h-c: #6ea8ff; }
:host([data-inst="ra"][data-theme="dark"]) { --h-accent: #8c9aff; --h-accent-text: #8c9aff; --h-a: #c9cfff; --h-b: #8c9aff; --h-c: #5b6cff; }
:host([data-inst="nxs"][data-theme="dark"]) { --h-accent: #e4546f; --h-accent-text: #e4546f; --h-a: #ffc93d; --h-b: #ff7a45; --h-c: #e4546f; }
:host([data-inst="grx"][data-theme="dark"]) { --h-accent: #ff8a3d; --h-accent-text: #ff8a3d; --h-a: #ffc29a; --h-b: #ff8a3d; --h-c: #e8691f; }
:host([data-inst="nxs"]) { --h-accent: #b3122e; --h-a: #e0a800; --h-b: #d9480f; --h-c: #b3122e; }
:host([data-inst="index"]) { --h-accent: #c94a00; --h-a: #ff8a4c; --h-b: #ff5f00; --h-c: #c94a00; }
:host([data-inst="index"][data-theme="dark"]) { --h-accent: #ff8a4c; --h-a: #ffb07f; --h-b: #ff5f00; --h-c: #ff8a4c; }
:host {
--h-rule: linear-gradient(90deg, var(--h-a), var(--h-b), var(--h-c));
--h-focus: var(--h-accent-text, var(--h-accent));
display: block;
position: relative;
z-index: 90;
width: 100%;
color-scheme: light;
}
:host([data-nxf]) { z-index: auto; }
:host([data-menu-open]) { z-index: 2147483000; }
:host([data-theme="dark"]) { color-scheme: dark; }
:host([data-sticky]) { position: sticky; top: var(--nxh-top, 0px); }
:host([data-float]) { position: fixed; top: var(--nxh-top, 0px); left: 0; right: 0; }
:host([data-sticky]) { transition: transform 260ms cubic-bezier(0.2, 0, 0, 1), opacity 200ms ease; }
:host([data-hide]) { transform: translateY(calc(-100% - var(--nxh-top, 0px))); opacity: 0; pointer-events: none; }
@media (prefers-reduced-motion: reduce) { :host([data-sticky]) { transition: none; } }
:host([hidden]) { display: none; }
*, *::before, *::after { box-sizing: border-box; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; margin: 0; padding: 0; cursor: pointer; }
ul, ol { list-style: none; margin: 0; padding: 0; }
svg { display: block; flex: none; }
.ic { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
:focus { outline: none; }
:focus-visible { outline: 2px solid var(--h-focus); outline-offset: 2px; border-radius: var(--h-r); }
.h {
position: relative;
background: var(--h-canvas);
color: var(--h-text-2);
font: 400 14px/1.4 var(--h-sans);
border-block-end: 1px solid var(--h-line);
-webkit-font-smoothing: antialiased;
}
.wrap { max-width: var(--h-max); margin: 0 auto; padding: 0 var(--h-gutter); display: flex; align-items: center; min-width: 0; }
.net { background: var(--h-sunken); border-block-end: 1px solid var(--h-line); height: var(--h-net-h); overflow: hidden; transition: height var(--h-base) var(--h-ease), border-color var(--h-base) var(--h-ease); }
:host([data-stuck]) .net { height: 0; border-color: transparent; overflow: hidden; visibility: hidden; }
:host([data-stuck]) { --h-bar-h: 48px; --h-ctx-h: 40px; box-shadow: 0 1px 0 var(--h-line), var(--h-stuck-shadow); }
.net .wrap { height: var(--h-net-h); gap: 20px; }
.eyebrow { font: 500 11px/1 var(--h-mono); letter-spacing: 0.14em; text-transform: uppercase; color: var(--h-muted); white-space: nowrap; display: inline-flex; align-items: center; gap: 10px; }
.rule { display: inline-block; width: 16px; height: 2px; background: var(--h-rule); flex: none; }
.net ul { display: flex; align-items: center; gap: 2px; min-width: 0; flex: 1; }
.net a { display: inline-flex; align-items: center; height: var(--h-net-h); padding: 0 8px; font-size: 12.5px; color: var(--h-text-2); position: relative; white-space: nowrap; transition: color var(--h-fast) var(--h-ease); }
.net a:hover { color: var(--h-text); }
.net a[aria-current] { color: var(--h-text); font-weight: 500; }
.net a[aria-current]::after { content: ""; position: absolute; left: 8px; right: 8px; bottom: 0; height: 2px; background: var(--h-accent); }
.net .foundry { margin-inline-start: auto; gap: 6px; }
.bar .wrap { height: var(--h-bar-h); gap: 20px; }
.main { flex: 1; min-width: 0; }
.menus { display: flex; align-items: center; gap: 2px; }
.trig, .link {
display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 12px; border-radius: var(--h-r);
font: 400 14px/1 var(--h-sans); color: var(--h-text-2); white-space: nowrap; position: relative;
transition: color var(--h-fast) var(--h-ease), background-color var(--h-fast) var(--h-ease);
}
.trig:hover, .link:hover { color: var(--h-text); background: var(--h-hover); }
.trig[aria-expanded="true"] { color: var(--h-text); }
.trig[aria-expanded="true"]::after, .link[aria-current]::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: -8px; height: 2px; background: var(--h-accent); }
.link[aria-current] { color: var(--h-text); }
.chev { width: 14px; height: 14px; transition: transform var(--h-base) var(--h-ease); }
.trig[aria-expanded="true"] .chev { transform: rotate(180deg); }
.end { display: flex; align-items: center; gap: 12px; margin-inline-start: auto; flex: none; }
.end .contact { height: 40px; }
.end slot[name="a11y"] { display: contents; }
.end ::slotted([data-nx-a11y-slot]) { display: inline-flex; align-items: center; flex: none; }
.end ::slotted([data-nx-a11y-slot]:empty) { display: none; }
.end slot[name="lang"] { display: contents; }
.end ::slotted([data-nx-lang-slot]) { display: inline-flex; align-items: center; flex: none; }
.end ::slotted([data-nx-lang-slot]:empty) { display: none; }
:host([data-lang-slotted]) .end .nx-lang { display: none; }
.d-lang { display: none; padding-block: 12px; border-block-start: 1px solid var(--h-line); }
:host([data-lang-slotted]) .d-lang { display: block; }
.d-lang slot { display: block; }
.theme { display: inline-flex; align-items: center; height: 32px; border: 0; padding: 0; gap: 2px; }
.theme button { display: inline-flex; align-items: center; justify-content: center; gap: 0; width: 32px; height: 32px; padding: 0; border-radius: var(--h-r); font: 400 12.5px/1 var(--h-sans); color: var(--h-muted); transition: color var(--h-fast) var(--h-ease), background-color var(--h-fast) var(--h-ease); }
.theme button:hover { color: var(--h-text); }
.theme button[aria-pressed="true"] { background: var(--h-hover); color: var(--h-text); font-weight: 500; }
.theme .ic { width: 16px; height: 16px; }
.theme .tl { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.theme button[aria-pressed="true"] { color: var(--h-text); box-shadow: inset 0 -2px 0 var(--h-accent); }
@media (max-width: 640px) {
}
.nx-lang { position: relative; display: inline-flex; }
.nx-lang__menu { position: relative; }
.nx-lang__btn { list-style: none; display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 9px; border: 1px solid var(--h-line-strong); border-radius: var(--h-r); font: 400 12.5px/1 var(--h-sans); color: var(--h-muted); cursor: pointer; white-space: nowrap; }
.nx-lang__btn::-webkit-details-marker { display: none; }
.nx-lang__btn:hover { color: var(--h-text); }
.nx-lang__i, .nx-lang__chev { width: 14px; height: 14px; }
.nx-lang__code { display: none; }
.nx-lang__list { position: absolute; inset-inline-end: 0; top: calc(100% + 8px); z-index: 4; min-width: 176px; max-height: 60vh; overflow: auto; margin: 0; padding: 4px; background: var(--h-canvas); border: 1px solid var(--h-line); border-radius: var(--h-r); box-shadow: var(--h-shadow); }
.nx-lang__link { display: flex; align-items: center; min-height: 32px; padding: 0 8px; border-radius: var(--h-r); color: var(--h-text-2); font-size: 13px; }
a.nx-lang__link:hover { background: var(--h-hover); color: var(--h-text); }
.nx-lang__item.is-current .nx-lang__link { color: var(--h-text); font-weight: 500; }
.nx-lang__item.is-unavailable .nx-lang__link { color: var(--h-muted); justify-content: space-between; gap: 12px; cursor: default; }
.flags { display: inline-flex; align-items: center; gap: 4px; margin-inline-start: 7px; vertical-align: middle; flex: none; }
.flag { display: block; height: 10px; width: auto; border-radius: 1.5px; box-shadow: 0 0 0 0.5px var(--h-line-strong); }
.flag-ch { width: 10px; }
.flag-us { width: 19px; }
.flag-ca { width: 20px; }
.net .flags { margin-inline-start: 6px; gap: 3px; }
.net .flag { height: 8px; }
.net .flag-ch { width: 8px; } .net .flag-us { width: 15.2px; } .net .flag-ca { width: 16px; }
.r-t .flags { margin-inline-start: 8px; }
.f-site .flags { margin-inline-start: 12px; gap: 6px; }
.f-site .flag { height: 14px; } .f-site .flag-ch { width: 14px; } .f-site .flag-us { width: 26.6px; } .f-site .flag-ca { width: 28px; }
.f-copy .flags { margin-inline-start: 8px; }
.nx-lang__vh { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.nx-lang__soon { font: 400 10.5px/1 var(--h-mono); letter-spacing: 0.06em; text-transform: uppercase; color: var(--h-muted); white-space: nowrap; }
.nx-lang__list { min-width: 248px; }
.f-lang .nx-lang__btn { height: 40px; padding: 0 14px; }
.rows.two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; }
.burger { display: none; height: 40px; gap: 8px; padding: 0 14px 0 12px; align-items: center; justify-content: center; border: 1px solid var(--h-line-strong); border-radius: var(--h-r); color: var(--h-text); font: 500 14px/1 var(--h-sans); }
.burger .ic { width: 18px; height: 18px; }
.panel {
--p-in: max(var(--h-gutter), calc((100vw - 1560px) / 2));
position: fixed; left: 0; right: 0; top: var(--nxh-bottom, 160px); z-index: 2;
max-height: calc(100vh - var(--nxh-bottom, 160px)); overflow-y: auto; overscroll-behavior: contain;
background: var(--h-canvas); color: var(--h-text-2); border-block: 1px solid var(--h-line); border-radius: 0; box-shadow: var(--h-shadow);
}
.panel[hidden] { display: none; }
.panel::before { content: ""; position: sticky; top: 0; display: block; height: 2px; margin: -1px -1px 0; background: var(--h-rule); border-radius: var(--h-r) var(--h-r) 0 0; z-index: 1; }
.p-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px var(--p-in); border-block-end: 1px solid var(--h-line); }
.p-head .eyebrow:first-child { color: var(--h-text-2); }
.p-meta { display: flex; align-items: center; gap: 12px; min-width: 0; }
.p-meta .sep { width: 20px; height: 1px; background: var(--h-line-strong); flex: none; }
.p-meta .eyebrow:last-child { overflow: hidden; text-overflow: ellipsis; }
.all { display: inline-flex; align-items: center; gap: 6px; min-height: 28px; font: 500 12.5px/1 var(--h-sans); color: var(--h-text-2); white-space: nowrap; }
.all:hover { color: var(--h-text); }
.arrow { width: 13px; height: 13px; }
.p-body { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)) 272px; gap: 0 28px; padding: 22px var(--p-in) 26px; }
.p-body.tabbed { grid-template-columns: 200px minmax(0, 1fr) 272px; }
.vtabs { display: flex; flex-direction: column; gap: 2px; padding-inline-end: 20px; border-inline-end: 1px solid var(--h-line); }
.vtab { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; width: 100%; min-height: 44px; padding: 9px 12px; border-radius: var(--h-r); text-align: start; color: var(--h-text-2); box-shadow: inset 2px 0 0 transparent; transition: background-color var(--h-fast) var(--h-ease), box-shadow var(--h-fast) var(--h-ease), color var(--h-fast) var(--h-ease); }
.vtab:hover { background: var(--h-hover); color: var(--h-text); }
.vtab[aria-selected="true"] { background: var(--h-elevated); color: var(--h-text); box-shadow: inset 2px 0 0 var(--h-accent); }
.vtab[aria-selected="true"]:dir(rtl) { box-shadow: inset -2px 0 0 var(--h-accent); }
.arrow:dir(rtl) { scale: -1 1; }
.vtab:focus-visible { outline-offset: -2px; }
.vt-l { font: 500 13.5px/1.2 var(--h-sans); letter-spacing: -0.005em; }
.vt-d { font: 400 11.5px/1.3 var(--h-body); color: var(--h-muted); }
.vpane { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: 0 28px; min-width: 0; animation: nxh-in var(--h-base) var(--h-ease); }
.vpane[hidden] { display: none; }
@keyframes nxh-in { from { transform: translateY(4px); } to { transform: none; } }
.rail.slim { padding: 0; background: none; border: 0; }
.viz { height: 200px; margin: -6px 0 18px; }
.viz canvas { display: block; width: 100%; height: 100%; }
.p-body[data-rail="none"] { grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); }
.col { display: flex; flex-direction: column; gap: 26px; min-width: 0; }
.g-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-block-end: 10px; border-block-end: 1px solid var(--h-line); }
.g-head .eyebrow { color: var(--h-text-2); }
.g-head a.eyebrow:hover { color: var(--h-text); }
.g-desc { font: 400 11.5px/1.25 var(--h-body); color: var(--h-muted); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; overflow: hidden; min-width: 0; }
.rows { margin-top: 6px; }
.row {
display: flex; align-items: center; gap: 12px; min-height: 44px; padding: 5px 8px; margin: 0 -8px; border-radius: var(--h-r);
transition: background-color var(--h-fast) var(--h-ease);
}
.row:hover, .row:focus-visible { background: var(--h-hover); }
.row:focus-visible { outline-offset: -2px; }
.row[aria-current] .r-t { color: var(--h-accent-text, var(--h-accent)); }
.itile { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; border: 1px solid var(--h-line); border-radius: var(--h-r); color: var(--h-text-2); flex: none; transition: border-color var(--h-fast) var(--h-ease), color var(--h-fast) var(--h-ease); }
.row:hover .itile, .row:focus-visible .itile { border-color: var(--h-line-strong); color: var(--h-text); }
.r-txt { display: block; min-width: 0; flex: 1; }
.r-t { display: block; font: 500 13.5px/1.2 var(--h-sans); letter-spacing: -0.005em; color: var(--h-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.r-d { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; margin-top: 3px; font: 400 12px/1.35 var(--h-body); color: var(--h-muted); white-space: normal; overflow: hidden; }
.row .arrow { opacity: 0; color: var(--h-muted); transition: opacity var(--h-fast) var(--h-ease), transform var(--h-fast) var(--h-ease); }
.row:hover .arrow, .row:focus-visible .arrow { opacity: 1; transform: translateX(2px); }
.row.compact { min-height: 38px; padding-block: 3px; gap: 10px; }
.row.compact .itile { width: 28px; height: 28px; }
.row.compact .itile .ic { width: 15px; height: 15px; }
.vpane .row.compact .r-t { font-weight: 450; color: var(--h-text-2); }
.vpane .row.compact:hover .r-t, .vpane .row.compact:focus-visible .r-t { color: var(--h-text); }
.rail { display: flex; flex-direction: column; padding: 20px; background: var(--h-elevated); border: 1px solid var(--h-line); border-radius: var(--h-r); min-width: 0; }
.feat { display: block; margin-top: 10px; border-radius: var(--h-r); }
.feat-t { display: flex; align-items: center; gap: 8px; margin-top: 0; font: 500 15px/1.25 var(--h-sans); letter-spacing: -0.01em; color: var(--h-text); }
.feat-d { display: block; margin-top: 4px; font: 400 12.5px/1.45 var(--h-body); color: var(--h-muted); }
.feat:hover .feat-t .arrow { transform: translateX(2px); }
.acts { display: flex; flex-direction: column; gap: 8px; margin-top: 18px; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 40px; padding: 0 16px; border-radius: var(--h-r); font: 500 13px/1 var(--h-sans); white-space: nowrap; transition: background-color var(--h-fast) var(--h-ease), border-color var(--h-fast) var(--h-ease); }
.btn.primary { background: var(--h-primary-bg); color: var(--h-primary-ink); }
.btn.primary:hover { background: var(--h-primary-hover); }
.btn.secondary { border: 1px solid var(--h-line-strong); color: var(--h-text); }
.btn.secondary:hover { border-color: var(--h-text); background: var(--h-hover); }
.pts { margin: 18px 0 0; border-block-start: 1px solid var(--h-line); }
.pt { display: flex; flex-direction: column; gap: 5px; padding: 10px 0; border-block-end: 1px solid var(--h-line); }
.pt-v { font: 400 12px/1.45 var(--h-body); color: var(--h-text-2); }
.p-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; padding: 12px 24px; border-block-start: 1px solid var(--h-line); }
.p-foot a { font: 400 12.5px/1 var(--h-sans); color: var(--h-muted); min-height: 24px; display: inline-flex; align-items: center; }
.p-foot a:hover { color: var(--h-text); }
.ctx { border-block-start: 1px solid var(--h-line); }
.ctx .wrap { height: var(--h-ctx-h); gap: 16px; }
.crumbs { display: flex; align-items: center; gap: 8px; flex: none; min-width: 0; font-size: 13px; }
.crumbs li { display: flex; align-items: center; gap: 8px; min-width: 0; white-space: nowrap; }
.crumbs li + li::before { content: "/"; color: var(--h-muted); }
.crumbs a { color: var(--h-muted); min-height: 24px; display: inline-flex; align-items: center; }
.crumbs a:hover { color: var(--h-text); }
.crumbs a[aria-current] { color: var(--h-text); font-weight: 500; }
.vsep { width: 1px; height: 18px; background: var(--h-line-strong); flex: none; }
.inl { display: flex; align-items: center; gap: 2px; min-width: 0; flex: 1; overflow-x: auto; scrollbar-width: none; }
.inl::-webkit-scrollbar { display: none; }
.inl a[hidden] { display: none; }
.inl a { display: inline-flex; align-items: center; height: 32px; padding: 0 10px; border-radius: var(--h-r); font-size: 13px; color: var(--h-text-2); white-space: nowrap; }
.inl a:hover { background: var(--h-hover); color: var(--h-text); }
.inl a[aria-current] { color: var(--h-text); font-weight: 500; box-shadow: inset 0 -2px 0 var(--h-accent); border-radius: 0; }
.ctx .trig { height: 32px; font-size: 13px; flex: none; border: 1px solid var(--h-line-strong); }
.ctx .trig[aria-expanded="true"]::after { display: none; }
.drawer { position: fixed; inset: var(--nxh-bottom, 56px) 0 0 0; z-index: 3; background: var(--h-canvas); color: var(--h-text-2); overflow-y: auto; overscroll-behavior: contain; padding: 8px 20px 40px; border-block-start: 1px solid var(--h-line); }
.drawer[hidden] { display: none; }
.d-sec { border-block-end: 1px solid var(--h-line); }
.d-btn { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 56px; padding: 8px 0; text-align: start; }
.d-btn .d-l { display: block; font: 500 16px/1.2 var(--h-sans); color: var(--h-text); letter-spacing: -0.01em; }
.d-btn .eyebrow { display: block; margin-top: 6px; white-space: normal; line-height: 1.45; }
.d-btn[aria-expanded="true"] .chev { transform: rotate(180deg); }
.d-body { padding: 0 0 18px; }
.d-body[hidden] { display: none; }
.d-group + .d-group { margin-top: 18px; }
.d-group .g-head { margin-bottom: 4px; }
.d-acts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 16px; }
.d-links { display: flex; flex-direction: column; padding: 12px 0; border-block-end: 1px solid var(--h-line); }
.d-links a { display: flex; align-items: center; justify-content: space-between; min-height: 44px; font: 500 15px/1.2 var(--h-sans); color: var(--h-text); }
.d-net { padding: 18px 0 0; }
.d-net ul { margin-top: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
.d-net a { display: flex; align-items: center; min-height: 40px; font-size: 14px; color: var(--h-text-2); }
.d-net a[aria-current] { color: var(--h-text); font-weight: 500; box-shadow: inset 2px 0 0 var(--h-accent); padding-inline-start: 10px; }
.d-net a[aria-current]:dir(rtl) { box-shadow: inset -2px 0 0 var(--h-accent); }
.d-crumbs { padding: 14px 0 4px; }
@media (max-width: 1279px) {
.panel .r-d, .panel .g-desc { display: none; }
.p-body { grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)) 232px; gap: 0 24px; }
.p-body.tabbed { grid-template-columns: 184px minmax(0, 1fr) 232px; }
.vpane { gap: 0 24px; }
.vt-d { display: none; }
.row { min-height: 38px; }
}
@media (max-width: 1199px) { .nx-lang__label { display: none; } .nx-lang__code { display: inline; } .theme .tl { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } .theme button { padding: 0 7px; } .end .contact { display: none; } }
@media (max-width: 959px) {
:host { --h-gutter: 16px; --h-bar-h: 56px; --h-ctx-h: 40px; }
.net, .main, .end .contact { display: none; }
.bar .wrap { justify-content: space-between; }
.burger { display: inline-flex; }
.ctx .inl, .ctx .vsep, .ctx .trig { display: none; }
.crumbs { flex: 1; overflow: hidden; }
.crumbs li:not(:first-child):not(:last-child) { display: none; }
.crumbs li:last-child { overflow: hidden; }
.crumbs li:last-child a { overflow: hidden; text-overflow: ellipsis; display: block; line-height: 24px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; animation: none !important; } }
.f { position: relative; background: var(--h-elevated); color: var(--h-text); border-top: 1px solid var(--h-line); font: 400 14px/1.5 var(--h-body); -webkit-font-smoothing: antialiased; }
.f::before { content: ""; position: absolute; left: 0; right: 0; top: -1px; height: 2px; background: var(--h-rule); }
.f-wrap { max-width: var(--h-max); margin: 0 auto; padding: 44px var(--h-gutter) 24px; }
.f-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 16px 40px; padding-bottom: 32px; }
.f-id { min-width: 0; }
.f-site { font: 500 22px/1.25 var(--h-sans); letter-spacing: -0.015em; color: var(--h-text); text-decoration: none; }
.f-site:hover { text-decoration: underline; text-underline-offset: 3px; }
.f-role { margin: 8px 0 0; color: var(--h-text-2); font-size: 14px; line-height: 1.55; max-width: 76ch; }
.f-acts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.f-acts slot[name="lang"] { display: contents; }
.f-acts ::slotted([data-nx-lang-slot]) { display: inline-flex; align-items: center; }
.f-acts ::slotted([data-nx-lang-slot]:empty) { display: none; }
:host([data-lang-slotted]) .f-lang { display: none; }
.f-act { appearance: none; display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 14px; border: 1px solid var(--h-line-strong); border-radius: var(--h-r); background: var(--h-canvas); color: var(--h-text); font: 500 13px/1 var(--h-sans); text-decoration: none; cursor: pointer; white-space: nowrap; }
.f-act:hover { background: var(--h-hover); }
.f-docs { background: var(--h-primary-bg); border-color: var(--h-primary-bg); color: var(--h-primary-ink); }
.f-docs:hover { background: var(--h-primary-hover); border-color: var(--h-primary-hover); }
.f-row { border-top: 1px solid var(--h-line); padding: 26px 0 30px; }
.f-row-h { margin: 0 0 22px; }
.f-cols { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 28px 32px; }
.f-col { min-width: 0; }
.f-col > summary { list-style: none; cursor: default; display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 10px; }
.f-col > summary::-webkit-details-marker { display: none; }
.f-ch { display: inline-flex; align-items: center; gap: 10px; min-width: 0; font: 600 13.5px/1.3 var(--h-sans); color: var(--h-text); }
.f-ci { display: inline-grid; place-items: center; flex: none; width: 26px; height: 26px; border: 1px solid var(--h-line); border-radius: var(--h-r); background: var(--h-canvas); color: var(--h-text-2); }
.f-ci .ic { width: 14px; height: 14px; }
.f-chev { display: none; }
.f-col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.f-col a { color: var(--h-text-2); text-decoration: none; font: 400 13.5px/1.35 var(--h-body); display: inline-flex; align-items: center; min-height: 28px; padding: 3px 0; }
.f-col a:hover { color: var(--h-text); }
.f-col a:hover > span:last-child { text-decoration: underline; text-underline-offset: 3px; }
.f-li { display: inline-flex; width: 16px; height: 16px; margin-inline-end: 10px; color: var(--h-muted); flex: none; transition: color var(--h-fast) var(--h-ease); }
.f-li .ic { width: 15px; height: 15px; stroke-width: 1.6; }
.f-col a:hover .f-li { color: var(--h-text); }
.f-col a[aria-current="page"] { color: var(--h-text); font-weight: 500; }
.f-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; padding-top: 18px; border-top: 1px solid var(--h-line); color: var(--h-muted); font: 400 12.5px/1.4 var(--h-body); }
.f-copy { font: 500 12px/1.4 var(--h-mono); letter-spacing: 0.02em; color: var(--h-text-2); }
.f-links { list-style: none; margin-block: 0; margin-inline: auto 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 20px; }
.f-links a { color: var(--h-text-2); text-decoration: none; display: inline-flex; align-items: center; min-height: 24px; }
.f-links a:hover { color: var(--h-text); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 1080px) { .f-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); } .f-head { grid-template-columns: 1fr; align-items: start; } }
@media (max-width: 720px) {
.f-wrap { padding: 32px 16px 20px; }
.f-head { gap: 14px; padding-bottom: 24px; }
.f-site { font-size: 20px; }
.f-row { padding: 14px 0 16px; }
.f-row-h { margin-bottom: 6px; }
.f-cols { grid-template-columns: 1fr; gap: 0; }
.f-col { border-bottom: 1px solid var(--h-line); }
.f-col > summary { cursor: pointer; min-height: 48px; margin: 0; }
.f-chev { display: block; flex: none; transition: transform var(--h-fast) var(--h-ease); }
.f-col[open] .f-chev { transform: rotate(180deg); }
.f-col ul { padding-bottom: 10px; }
.f-col a { min-height: 40px; }
.f-links { margin-inline-start: 0; }
}
.itile.ccf { border-color: transparent; font: 14px/1 "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif; }
.row.cty { gap: 7px; min-height: 26px; padding-block: 2px; align-items: flex-start; }
.row.cty .itile.ccf { width: 16px; height: 16px; margin-top: 1px; }
.row.cty .r-t { font: 400 11px/1.35 var(--h-mono); letter-spacing: 0.01em; color: var(--h-text-2); white-space: normal; overflow: visible; text-overflow: clip; word-break: normal; overflow-wrap: normal; hyphens: none; }
.row.cty:hover .r-t, .row.cty:focus-visible .r-t { color: var(--h-text); }
.row.cty .arrow { display: none; }
.onp { display: none; position: relative; border-block-start: 1px solid var(--h-line); background: inherit; }
:host([data-stuck][data-onp]) .onp { display: block; }
.onp .wrap { height: 40px; gap: 16px; }
.onp-l { flex: 0 0 auto; }
.onp-list { --onp-fs: 0px; --onp-fe: 0px; display: flex; align-items: center; gap: 2px; flex: 1; min-width: 0; margin: 0; padding: 0; list-style: none; overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; scroll-snap-type: x proximity; scroll-padding-inline: 40px; scrollbar-width: none; -webkit-mask-image: linear-gradient(to right, transparent 0, black var(--onp-fs), black calc(100% - var(--onp-fe)), transparent 100%); mask-image: linear-gradient(to right, transparent 0, black var(--onp-fs), black calc(100% - var(--onp-fe)), transparent 100%); }
.onp-list:dir(rtl) { -webkit-mask-image: linear-gradient(to left, transparent 0, black var(--onp-fs), black calc(100% - var(--onp-fe)), transparent 100%); mask-image: linear-gradient(to left, transparent 0, black var(--onp-fs), black calc(100% - var(--onp-fe)), transparent 100%); }
.onp-list[data-fade~="start"] { --onp-fs: 40px; }
.onp-list[data-fade~="end"] { --onp-fe: 40px; }
.onp-list > li { flex: none; scroll-snap-align: start; }
.onp-list::-webkit-scrollbar { display: none; }
.onp-list a { display: inline-flex; align-items: center; height: 30px; padding: 0 10px; border-radius: var(--h-r); font: 400 13px/1 var(--h-body); color: var(--h-muted); white-space: nowrap; text-decoration: none; transition: color var(--h-fast) var(--h-ease), background var(--h-fast) var(--h-ease); }
.onp-list a:hover { background: var(--h-hover); color: var(--h-text); }
.onp-list a:focus-visible { outline: 2px solid var(--h-focus); outline-offset: -2px; }
.onp-list a[aria-current] { color: var(--h-text); font-weight: 500; box-shadow: inset 0 -2px 0 var(--h-accent); border-radius: 0; }
.onp-n { flex: 0 0 auto; font: 500 11px/1 var(--h-mono); letter-spacing: 0.08em; color: var(--h-muted); font-variant-numeric: tabular-nums; direction: ltr; unicode-bidi: isolate; }
.onp-prog { position: absolute; inset-inline-start: 0; inset-block-end: -1px; height: 2px; width: var(--onp-p, 0%); background: linear-gradient(90deg, var(--h-a), var(--h-b), var(--h-c)); transition: width 120ms linear; pointer-events: none; }
@media (max-width: 760px) { .onp-l { display: none; } .onp .wrap { height: 38px; gap: 10px; } }
@media (prefers-reduced-motion: reduce) { .onp-prog, .onp-list a { transition: none; } }
@media print { .onp { display: none !important; } }
:host([data-a11y~="readable-font"]) .h, :host([data-a11y~="readable-font"]) .h * { font-family: Verdana, "Atkinson Hyperlegible", Tahoma, Arial, sans-serif !important; }
:host([data-a11y~="dyslexia-font"]) .h, :host([data-a11y~="dyslexia-font"]) .h * { font-family: "OpenDyslexic", Verdana, Arial, sans-serif !important; }
:host([data-a11y~="letter-spacing"]) .h * { letter-spacing: var(--readabler-letter-spacing, 0.05em) !important; }
:host([data-a11y~="font-sizing"]) :is(.main .menus, .net ul, .inl, .crumbs, .onp-list, .end) { zoom: var(--a11y-font, 1); }
:host([data-a11y~="highlight-links"]) a { outline: 2px solid var(--readabler-color, var(--h-a11y-mark)) !important; outline-offset: 2px; text-decoration: underline !important; }
:host([data-a11y~="highlight-focus"]) :focus-visible, :host([data-a11y~="highlight-focus"]) :focus { outline: 3px solid var(--readabler-color, var(--h-a11y-mark)) !important; outline-offset: 2px !important; }
:host([data-a11y~="highlight-hover"]) :is(a, button, summary):hover { outline: 2px dashed var(--readabler-color, var(--h-a11y-mark)) !important; outline-offset: 2px; }
:host([data-a11y~="dark-contrast"]) { --h-canvas: var(--h-dc-canvas); --h-elevated: var(--h-dc-elevated); --h-sunken: var(--h-dc-sunken); --h-hover: var(--h-dc-hover); --h-line: var(--h-dc-line); --h-line-strong: var(--h-dc-line-strong); --h-text: var(--h-dc-text); --h-text-2: var(--h-dc-text-2); --h-muted: var(--h-dc-muted); --h-accent: var(--h-dc-accent); color-scheme: dark; }
:host([data-a11y~="light-contrast"]) { --h-canvas: var(--h-lc-canvas); --h-elevated: var(--h-lc-elevated); --h-sunken: var(--h-lc-sunken); --h-hover: var(--h-lc-hover); --h-line: var(--h-lc-line); --h-line-strong: var(--h-lc-line-strong); --h-text: var(--h-lc-text); --h-text-2: var(--h-lc-text-2); --h-muted: var(--h-lc-muted); --h-accent: var(--h-lc-accent); color-scheme: light; }
:host([data-a11y~="stop-animations"]) *, :host([data-a11y~="stop-animations"]) *::before, :host([data-a11y~="stop-animations"]) *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
:host([data-a11y~="hide-images"]) img { visibility: hidden !important; }
:host { --h-code: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace; }
:host(:lang(ar)), :host(:lang(fa)), :host(:lang(ur)), :host(:lang(ckb)), :host(:lang(sdh)), :host(:lang(lki)), :host(:lang(hac)), :host(:lang(azb)), :host(:lang(prs)), :host(:lang(bal)), :host(:lang(glk)), :host(:lang(mzn)), :host(:lang(lrc)), :host(:lang(bqi)) { --h-sans: "Vazirmatn", "IBM Plex Sans", "Noto Sans Arabic", "Segoe UI", Tahoma, "Geeza Pro", sans-serif; --h-body: "Vazirmatn", "IBM Plex Sans", "Noto Sans Arabic", "Segoe UI", Tahoma, "Geeza Pro", sans-serif; --h-mono: "Vazirmatn", "IBM Plex Sans", "Noto Sans Arabic", "Segoe UI", Tahoma, "Geeza Pro", sans-serif; --h-code: "IBM Plex Mono", "Vazirmatn", ui-monospace, "SFMono-Regular", Consolas, monospace; --nx-lh-body: 1.8; --nx-lh-heading: 1.45; --nx-weight-heading: 500; --nx-weight-strong: 500; font-synthesis-weight: none; font-synthesis-style: none; font-variant-numeric: lining-nums; text-justify: inter-word; }
:host(:lang(ar)) *, :host(:lang(fa)) *, :host(:lang(ur)) *, :host(:lang(ckb)) *, :host(:lang(sdh)) *, :host(:lang(lki)) *, :host(:lang(hac)) *, :host(:lang(azb)) *, :host(:lang(prs)) *, :host(:lang(bal)) *, :host(:lang(glk)) *, :host(:lang(mzn)) *, :host(:lang(lrc)) *, :host(:lang(bqi)) * { letter-spacing: 0 !important; text-transform: none !important; }
:host(:lang(ar)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(ar)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(fa)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(fa)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(ur)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(ur)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(ckb)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(ckb)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(sdh)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(sdh)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(lki)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(lki)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(hac)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(hac)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(azb)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(azb)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(prs)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(prs)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(bal)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(bal)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(glk)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(glk)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(mzn)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(mzn)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(lrc)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(lrc)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) *, :host(:lang(bqi)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(bqi)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) * { --h-mono: "IBM Plex Mono", "Vazirmatn", ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 400; unicode-bidi: isolate; }
:host(:lang(ar)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(fa)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(ur)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(ckb)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(sdh)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(lki)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(hac)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(azb)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(prs)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(bal)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(glk)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(mzn)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(lrc)) :is(h1, h2, h3, h4, h5, h6, [role=heading]), :host(:lang(bqi)) :is(h1, h2, h3, h4, h5, h6, [role=heading]) { font-weight: var(--nx-weight-heading, 500); line-height: var(--nx-lh-heading, 1.45); }
:host(:lang(ar)) :is(b, strong, th, dt, summary, legend), :host(:lang(fa)) :is(b, strong, th, dt, summary, legend), :host(:lang(ur)) :is(b, strong, th, dt, summary, legend), :host(:lang(ckb)) :is(b, strong, th, dt, summary, legend), :host(:lang(sdh)) :is(b, strong, th, dt, summary, legend), :host(:lang(lki)) :is(b, strong, th, dt, summary, legend), :host(:lang(hac)) :is(b, strong, th, dt, summary, legend), :host(:lang(azb)) :is(b, strong, th, dt, summary, legend), :host(:lang(prs)) :is(b, strong, th, dt, summary, legend), :host(:lang(bal)) :is(b, strong, th, dt, summary, legend), :host(:lang(glk)) :is(b, strong, th, dt, summary, legend), :host(:lang(mzn)) :is(b, strong, th, dt, summary, legend), :host(:lang(lrc)) :is(b, strong, th, dt, summary, legend), :host(:lang(bqi)) :is(b, strong, th, dt, summary, legend) { font-weight: var(--nx-weight-strong, 500); }
:host(:lang(ar)) :is(p, li, dd, blockquote, figcaption), :host(:lang(fa)) :is(p, li, dd, blockquote, figcaption), :host(:lang(ur)) :is(p, li, dd, blockquote, figcaption), :host(:lang(ckb)) :is(p, li, dd, blockquote, figcaption), :host(:lang(sdh)) :is(p, li, dd, blockquote, figcaption), :host(:lang(lki)) :is(p, li, dd, blockquote, figcaption), :host(:lang(hac)) :is(p, li, dd, blockquote, figcaption), :host(:lang(azb)) :is(p, li, dd, blockquote, figcaption), :host(:lang(prs)) :is(p, li, dd, blockquote, figcaption), :host(:lang(bal)) :is(p, li, dd, blockquote, figcaption), :host(:lang(glk)) :is(p, li, dd, blockquote, figcaption), :host(:lang(mzn)) :is(p, li, dd, blockquote, figcaption), :host(:lang(lrc)) :is(p, li, dd, blockquote, figcaption), :host(:lang(bqi)) :is(p, li, dd, blockquote, figcaption) { line-height: var(--nx-lh-body, 1.8); }
:host(:lang(ar)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(fa)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(ur)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(ckb)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(sdh)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(lki)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(hac)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(azb)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(prs)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(bal)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(glk)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(mzn)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(lrc)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v), :host(:lang(bqi)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v) { line-height: var(--nx-lh-body, 1.8); }
:host(:lang(ar)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(fa)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(ur)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(ckb)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(sdh)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(lki)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(hac)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(azb)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(prs)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(bal)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(glk)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(mzn)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(lrc)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]), :host(:lang(bqi)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]) { text-align: start !important; }
:host(:lang(zh)) { --h-sans: "Nexus Page SC", "IBM Plex Sans SC", "IBM Plex Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif; --h-body: "Nexus Page SC", "IBM Plex Sans SC", "IBM Plex Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif; --h-mono: "Nexus Page SC", "IBM Plex Sans SC", "IBM Plex Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif; --h-code: "IBM Plex Mono", "IBM Plex Sans SC", ui-monospace, "SFMono-Regular", Consolas, monospace; --nx-lh-body: 1.7; --nx-lh-heading: 1.4; --nx-weight-heading: 600; --nx-weight-strong: 600; font-synthesis-weight: none; font-synthesis-style: none; font-variant-numeric: lining-nums; line-break: strict; text-autospace: normal; }
:host(:lang(zh)) * { letter-spacing: 0 !important; text-transform: none !important; }
:host(:lang(zh)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(zh)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) * { --h-mono: "IBM Plex Mono", "IBM Plex Sans SC", ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 400; unicode-bidi: isolate; }
:host(:lang(zh)) :is(h1, h2, h3, h4, h5, h6, [role=heading]) { font-weight: var(--nx-weight-heading, 600); line-height: var(--nx-lh-heading, 1.4); text-wrap: balance; }
:host(:lang(zh)) :is(b, strong, th, dt, summary, legend) { font-weight: var(--nx-weight-strong, 600); }
:host(:lang(zh)) :is(p, li, dd, blockquote, figcaption) { line-height: var(--nx-lh-body, 1.7); }
:host(:lang(zh)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v) { line-height: var(--nx-lh-body, 1.7); }
:host(:lang(zh)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]) { text-align: start !important; }
:host(:lang(ja)) { --h-sans: "IBM Plex Sans JP", "IBM Plex Sans", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, "Noto Sans CJK JP", sans-serif; --h-body: "IBM Plex Sans JP", "IBM Plex Sans", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, "Noto Sans CJK JP", sans-serif; --h-mono: "IBM Plex Sans JP", "IBM Plex Sans", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, "Noto Sans CJK JP", sans-serif; --h-code: "IBM Plex Mono", "IBM Plex Sans JP", ui-monospace, "SFMono-Regular", Consolas, monospace; --nx-lh-body: 1.7; --nx-lh-heading: 1.4; --nx-weight-heading: 500; --nx-weight-strong: 500; font-synthesis-weight: none; font-synthesis-style: none; font-variant-numeric: lining-nums; line-break: strict; text-autospace: normal; word-break: auto-phrase; overflow-wrap: break-word; }
:host(:lang(ja)) * { letter-spacing: 0 !important; text-transform: none !important; }
:host(:lang(ja)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(ja)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) * { --h-mono: "IBM Plex Mono", "IBM Plex Sans JP", ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 400; unicode-bidi: isolate; }
:host(:lang(ja)) :is(h1, h2, h3, h4, h5, h6, [role=heading]) { font-weight: var(--nx-weight-heading, 500); line-height: var(--nx-lh-heading, 1.4); text-wrap: balance; word-break: auto-phrase; }
:host(:lang(ja)) :is(b, strong, th, dt, summary, legend) { font-weight: var(--nx-weight-strong, 500); }
:host(:lang(ja)) :is(p, li, dd, blockquote, figcaption) { line-height: var(--nx-lh-body, 1.7); }
:host(:lang(ja)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v) { line-height: var(--nx-lh-body, 1.7); }
:host(:lang(ja)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]) { text-align: start !important; }
:host(:lang(ko)) { --h-sans: "IBM Plex Sans KR", "IBM Plex Sans", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans CJK KR", sans-serif; --h-body: "IBM Plex Sans KR", "IBM Plex Sans", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans CJK KR", sans-serif; --h-mono: "IBM Plex Sans KR", "IBM Plex Sans", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans CJK KR", sans-serif; --h-code: "IBM Plex Mono", "IBM Plex Sans KR", ui-monospace, "SFMono-Regular", Consolas, monospace; --nx-lh-body: 1.7; --nx-lh-heading: 1.4; --nx-weight-heading: 500; --nx-weight-strong: 500; font-synthesis-weight: none; font-synthesis-style: none; font-variant-numeric: lining-nums; line-break: strict; word-break: keep-all; overflow-wrap: break-word; }
:host(:lang(ko)) * { letter-spacing: 0 !important; text-transform: none !important; }
:host(:lang(ko)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(ko)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) * { --h-mono: "IBM Plex Mono", "IBM Plex Sans KR", ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 400; unicode-bidi: isolate; }
:host(:lang(ko)) :is(h1, h2, h3, h4, h5, h6, [role=heading]) { font-weight: var(--nx-weight-heading, 500); line-height: var(--nx-lh-heading, 1.4); text-wrap: balance; }
:host(:lang(ko)) :is(b, strong, th, dt, summary, legend) { font-weight: var(--nx-weight-strong, 500); }
:host(:lang(ko)) :is(p, li, dd, blockquote, figcaption) { line-height: var(--nx-lh-body, 1.7); }
:host(:lang(ko)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v) { line-height: var(--nx-lh-body, 1.7); }
:host(:lang(ko)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]) { text-align: start !important; }
:host(:lang(hi)) { --h-sans: "IBM Plex Sans Devanagari", "IBM Plex Sans", "Noto Sans Devanagari", "Kohinoor Devanagari", "Nirmala UI", sans-serif; --h-body: "IBM Plex Sans Devanagari", "IBM Plex Sans", "Noto Sans Devanagari", "Kohinoor Devanagari", "Nirmala UI", sans-serif; --h-mono: "IBM Plex Sans Devanagari", "IBM Plex Sans", "Noto Sans Devanagari", "Kohinoor Devanagari", "Nirmala UI", sans-serif; --h-code: "IBM Plex Mono", "IBM Plex Sans Devanagari", ui-monospace, "SFMono-Regular", Consolas, monospace; --nx-lh-body: 1.75; --nx-lh-heading: 1.45; --nx-weight-heading: 500; --nx-weight-strong: 500; font-synthesis-weight: none; font-synthesis-style: none; font-variant-numeric: lining-nums; }
:host(:lang(hi)) * { letter-spacing: 0 !important; text-transform: none !important; }
:host(:lang(hi)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(hi)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) * { --h-mono: "IBM Plex Mono", "IBM Plex Sans Devanagari", ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 400; unicode-bidi: isolate; }
:host(:lang(hi)) :is(h1, h2, h3, h4, h5, h6, [role=heading]) { font-weight: var(--nx-weight-heading, 500); line-height: var(--nx-lh-heading, 1.45); }
:host(:lang(hi)) :is(b, strong, th, dt, summary, legend) { font-weight: var(--nx-weight-strong, 500); }
:host(:lang(hi)) :is(p, li, dd, blockquote, figcaption) { line-height: var(--nx-lh-body, 1.75); }
:host(:lang(hi)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v) { line-height: var(--nx-lh-body, 1.75); }
:host(:lang(bn)) { --h-sans: "Noto Sans Bengali", "IBM Plex Sans", "Kohinoor Bangla", "Nirmala UI", sans-serif; --h-body: "Noto Sans Bengali", "IBM Plex Sans", "Kohinoor Bangla", "Nirmala UI", sans-serif; --h-mono: "Noto Sans Bengali", "IBM Plex Sans", "Kohinoor Bangla", "Nirmala UI", sans-serif; --h-code: "IBM Plex Mono", "Noto Sans Bengali", ui-monospace, "SFMono-Regular", Consolas, monospace; --nx-lh-body: 1.75; --nx-lh-heading: 1.45; --nx-weight-heading: 400; --nx-weight-strong: 400; font-synthesis-weight: none; font-synthesis-style: none; font-variant-numeric: lining-nums; }
:host(:lang(bn)) * { letter-spacing: 0 !important; text-transform: none !important; }
:host(:lang(bn)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(bn)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) * { --h-mono: "IBM Plex Mono", "Noto Sans Bengali", ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 400; unicode-bidi: isolate; }
:host(:lang(bn)) :is(h1, h2, h3, h4, h5, h6, [role=heading]) { font-weight: var(--nx-weight-heading, 400); line-height: var(--nx-lh-heading, 1.45); }
:host(:lang(bn)) :is(b, strong, th, dt, summary, legend) { font-weight: var(--nx-weight-strong, 400); }
:host(:lang(bn)) :is(p, li, dd, blockquote, figcaption) { line-height: var(--nx-lh-body, 1.75); }
:host(:lang(bn)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v) { line-height: var(--nx-lh-body, 1.75); }
:host(:lang(aii)) { --h-sans: "Noto Sans Syriac Eastern", "IBM Plex Sans", "Segoe UI Historic", sans-serif; --h-body: "Noto Sans Syriac Eastern", "IBM Plex Sans", "Segoe UI Historic", sans-serif; --h-mono: "Noto Sans Syriac Eastern", "IBM Plex Sans", "Segoe UI Historic", sans-serif; --h-code: "IBM Plex Mono", "Noto Sans Syriac Eastern", ui-monospace, "SFMono-Regular", Consolas, monospace; --nx-lh-body: 1.8; --nx-lh-heading: 1.45; --nx-weight-heading: 500; --nx-weight-strong: 500; font-synthesis-weight: none; font-synthesis-style: none; font-variant-numeric: lining-nums; }
:host(:lang(aii)) * { letter-spacing: 0 !important; text-transform: none !important; }
:host(:lang(aii)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(aii)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) * { --h-mono: "IBM Plex Mono", "Noto Sans Syriac Eastern", ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 400; unicode-bidi: isolate; }
:host(:lang(aii)) :is(h1, h2, h3, h4, h5, h6, [role=heading]) { font-weight: var(--nx-weight-heading, 500); line-height: var(--nx-lh-heading, 1.45); }
:host(:lang(aii)) :is(b, strong, th, dt, summary, legend) { font-weight: var(--nx-weight-strong, 500); }
:host(:lang(aii)) :is(p, li, dd, blockquote, figcaption) { line-height: var(--nx-lh-body, 1.8); }
:host(:lang(aii)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v) { line-height: var(--nx-lh-body, 1.8); }
:host(:lang(aii)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]) { text-align: start !important; }
:host(:lang(hy)) { --h-sans: "Noto Sans Armenian", "IBM Plex Sans", "Segoe UI", sans-serif; --h-body: "Noto Sans Armenian", "IBM Plex Sans", "Segoe UI", sans-serif; --h-mono: "Noto Sans Armenian", "IBM Plex Sans", "Segoe UI", sans-serif; --h-code: "IBM Plex Mono", "Noto Sans Armenian", ui-monospace, "SFMono-Regular", Consolas, monospace; --nx-lh-body: 1.65; --nx-lh-heading: 1.3; --nx-weight-heading: 500; --nx-weight-strong: 500; font-synthesis-weight: none; font-synthesis-style: none; font-variant-numeric: lining-nums; }
:host(:lang(hy)) * { letter-spacing: 0 !important; text-transform: none !important; }
:host(:lang(hy)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]), :host(:lang(hy)) :is(code, kbd, samp, pre, var, data, .nx-code, .nx-uni, .nx-num, [data-nx-code], [data-num], [class*="-code"], [class*="-uni"], [class*="-num"]) * { --h-mono: "IBM Plex Mono", "Noto Sans Armenian", ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 400; unicode-bidi: isolate; }
:host(:lang(hy)) :is(h1, h2, h3, h4, h5, h6, [role=heading]) { font-weight: var(--nx-weight-heading, 500); line-height: var(--nx-lh-heading, 1.3); }
:host(:lang(hy)) :is(b, strong, th, dt, summary, legend) { font-weight: var(--nx-weight-strong, 500); }
:host(:lang(hy)) :is(p, li, dd, blockquote, figcaption) { line-height: var(--nx-lh-body, 1.65); }
:host(:lang(hy)) :is(.f-site, .f-role, .f-copy, .f-boundary, .g-desc, .feat-d, .feat-t, .acct-d, .pt-v) { line-height: var(--nx-lh-body, 1.65); }
:host(:lang(hy)) :is(.has-text-align-justify, [style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]) { text-align: start !important; }
:host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(ar), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(fa), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(ur), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(ckb), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(sdh), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(lki), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(hac), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(azb), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(prs), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(bal), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(glk), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(mzn), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(lrc), :host(:not(:lang(ar)):not(:lang(fa)):not(:lang(ur)):not(:lang(ckb)):not(:lang(sdh)):not(:lang(lki)):not(:lang(hac)):not(:lang(azb)):not(:lang(prs)):not(:lang(bal)):not(:lang(glk)):not(:lang(mzn)):not(:lang(lrc)):not(:lang(bqi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(bqi) { font-family: "Segoe UI", Tahoma, "Geeza Pro", "Noto Sans Arabic", system-ui, sans-serif; }
:host(:not(:lang(zh))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(zh) { font-family: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", system-ui, sans-serif; }
:host(:not(:lang(ja))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(ja) { font-family: "Hiragino Sans", "Yu Gothic", Meiryo, "Noto Sans CJK JP", system-ui, sans-serif; }
:host(:not(:lang(ko))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(ko) { font-family: "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans CJK KR", system-ui, sans-serif; }
:host(:not(:lang(hi))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(hi) { font-family: "Kohinoor Devanagari", "Nirmala UI", "Noto Sans Devanagari", system-ui, sans-serif; }
:host(:not(:lang(bn))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(bn) { font-family: "Kohinoor Bangla", "Nirmala UI", "Noto Sans Bengali", system-ui, sans-serif; }
:host(:not(:lang(aii))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(aii) { font-family: "Segoe UI Historic", "Noto Sans Syriac Eastern", "Noto Sans Syriac", system-ui, sans-serif; }
:host(:not(:lang(hy))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(hy) { font-family: "Segoe UI", "Noto Sans Armenian", "Mshtakan", system-ui, sans-serif; }
:host(:not(:lang(ru))) :is(.nx-lang__list, .nx-lang-list, [data-nx-lang-list]) :lang(ru) { font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans", sans-serif; }
:host :is(table, .nx-num, [data-num], [data-nx-num]) { font-variant-numeric: tabular-nums lining-nums; }
:host :is(bdi, .nx-ltr, [data-nx-bidi]) { unicode-bidi: isolate; }
:host .nx-ltr { direction: ltr; }
:host :is(.nx-arrow, .nx-chev, .nx-dir, [data-nx-mirror], .lucide-arrow-right, .lucide-arrow-left, .lucide-chevron-right, .lucide-chevron-left, .lucide-move-right, .lucide-arrow-up-right):dir(rtl) { scale: -1 1; }
:host :is(img, video, canvas, picture, iframe, .nx-logo, [data-nx-no-mirror], .maplibregl-map, .nx-figure, .nx-chart, .nx-map):dir(rtl) { scale: none; }
:host :is(.footnote-backref, .nx-backref, a[href^="#fnref"]):dir(rtl) { display: inline-block; scale: -1 1; }
.onp-prog { display: none; }
.nxa { --nxa-text: var(--h-text, var(--nx-text-primary, CanvasText)); --nxa-text-2: var(--h-text-2, var(--nx-text-secondary, CanvasText)); --nxa-muted: var(--h-muted, var(--nx-text-muted, GrayText)); --nxa-line: var(--h-line, var(--nx-border-hairline, GrayText)); --nxa-line-strong: var(--h-line-strong, var(--nx-border-hairline-strong, GrayText)); --nxa-bg: var(--h-canvas, var(--nx-bg-elevated, Canvas)); --nxa-hover: var(--h-hover, var(--nx-bg-hover, Canvas)); --nxa-accent: var(--h-accent, var(--nx-accent, Highlight)); --nxa-shadow: var(--h-shadow, var(--nx-shadow, 0 12px 32px -12px color-mix(in srgb, CanvasText 45%, transparent))); --nxa-r: var(--h-r, 5px); --nxa-ri: var(--h-r-chip, 4px); --nxa-font: var(--h-sans, var(--nx-font-sans, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif)); position: relative; display: inline-flex; flex: none; font-family: var(--nxa-font); font-size: 13px; line-height: 1.2; text-align: start; }
nx-account { display: inline-flex; flex: none; min-inline-size: 36px; min-block-size: 36px; align-items: center; }
nx-account > a { color: inherit; font-size: 13px; text-decoration: none; padding: 0 10px; }
.nxa *, .nxa *::before, .nxa *::after { box-sizing: border-box; }
.nxa .nxa__btn { display: inline-flex; align-items: center; gap: 8px; block-size: 36px; min-inline-size: 36px; max-inline-size: 220px; margin: 0; padding-block: 0; padding-inline: 10px; border: 1px solid var(--nxa-line-strong); border-radius: var(--nxa-r); background: transparent; color: var(--nxa-text-2); font: 500 13px/1 var(--nxa-font); letter-spacing: normal; text-transform: none; text-decoration: none; white-space: nowrap; cursor: pointer; box-shadow: none; transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease; }
.nxa .nxa__btn:hover, .nxa[data-open] .nxa__btn { background: var(--nxa-hover); color: var(--nxa-text); border-color: var(--nxa-line-strong); }
.nxa .nxa__btn:focus-visible { outline: 2px solid var(--nxa-accent); outline-offset: 2px; }
.nxa .nxa__i { inline-size: 16px; block-size: 16px; flex: none; }
.nxa .nxa__chev { inline-size: 14px; block-size: 14px; color: var(--nxa-muted); transition: transform 0.15s ease; }
.nxa[data-open] .nxa__chev { transform: rotate(180deg); }
.nxa .nxa__lbl { overflow: hidden; text-overflow: ellipsis; }
.nxa .nxa__av { inline-size: 24px; block-size: 24px; flex: none; border-radius: 4px; object-fit: cover; background: var(--nxa-hover); }
.nxa .nxa__av--i { display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--nxa-line-strong); color: var(--nxa-text); font: 600 12px/1 var(--nxa-font); }
.nxa .nxa__av--l { inline-size: 36px; block-size: 36px; font-size: 15px; }
.nxa .nxa__menu { position: absolute; inset-inline-end: 0; inset-block-start: calc(100% + 6px); z-index: 1400; inline-size: min(18rem, calc(100vw - 16px)); margin: 0; padding: 0; overflow: hidden; border: 1px solid var(--nxa-line-strong); border-radius: var(--nxa-r); background: var(--nxa-bg); color: var(--nxa-text); box-shadow: var(--nxa-shadow); }
.nxa .nxa__menu[hidden] { display: none; }
.nxa .nxa__head, .nxa .nxa__who { display: flex; padding: 10px 12px; border-block-end: 1px solid var(--nxa-line); }
.nxa .nxa__head { flex-direction: column; gap: 4px; }
.nxa .nxa__who { align-items: center; gap: 10px; }
.nxa .nxa__eye { color: var(--nxa-muted); font: 500 10.5px/1 var(--h-mono, var(--nx-font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)); letter-spacing: 0.08em; text-transform: uppercase; }
.nxa .nxa__ttl, .nxa .nxa__nm { color: var(--nxa-text); font: 500 13.5px/1.3 var(--nxa-font); overflow: hidden; text-overflow: ellipsis; }
.nxa .nxa__sep { block-size: 1px; margin: 4px 0; background: var(--nxa-line); }
.nxa .nxa__menu > .nxa__item:first-of-type { margin-block-start: 6px; }
.nxa .nxa__item { display: flex; align-items: center; gap: 10px; min-block-size: 36px; margin: 2px 6px; padding: 8px 10px; border-radius: var(--nxa-ri); color: var(--nxa-text-2); font: 500 13px/1.2 var(--nxa-font); text-decoration: none; cursor: pointer; }
.nxa .nxa__menu > .nxa__item:last-child { margin-block-end: 6px; }
.nxa .nxa__item .nxa__i { color: var(--nxa-muted); }
.nxa .nxa__item:hover, .nxa .nxa__item:focus-visible { background: var(--nxa-hover); color: var(--nxa-text); outline: none; }
.nxa .nxa__item:focus-visible { box-shadow: inset 0 0 0 2px var(--nxa-accent); }
.nxa .nxa__item:hover .nxa__i, .nxa .nxa__item:focus-visible .nxa__i { color: var(--nxa-text); }
.nxa .nxa__i--flip:dir(rtl) { transform: scaleX(-1); }
@media (max-width: 719px) {
.nxa .nxa__btn { padding-inline: 9px; gap: 6px; }
.nxa .nxa__btn .nxa__lbl { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.nxa .nxa__chev { display: none; }
}
@media (prefers-reduced-motion: reduce) { .nxa .nxa__btn, .nxa .nxa__chev { transition: none; } }
@media (max-width: 599px) {
.bar .wrap { gap: 8px; }
.end { gap: 6px; }
.burger { padding: 0 10px; }
.burger .bl { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}
@media (max-width: 599px) {
:host([data-brand]) .bar .wrap { gap: 8px; }
:host([data-brand]) .end { gap: 6px; }
:host([data-brand]) .burger { padding: 0 10px; }
:host([data-brand]) .burger .bl { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
}
:host([dir="rtl"]) :is(p, li, a, button, summary, span, h2, h3, dt, dd, small) { unicode-bidi: plaintext; }
.f { padding-bottom: var(--nx-dock-reserve, 0px); }
.hexhome { display: inline-flex; flex: none; align-items: center; justify-content: center; inline-size: 28px; block-size: 28px; margin-inline-end: 4px; border-radius: var(--h-r); color: var(--h-text); visibility: hidden; opacity: 0; transition: opacity .16s ease, visibility 0s linear .16s; }
.hexhome__img { inline-size: 24px; block-size: 24px; object-fit: contain; border-radius: 6px; }
.hexhome svg { inline-size: 20px; block-size: 20px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linejoin: round; }
:host([data-stuck]) .hexhome { visibility: visible; opacity: 1; transition: opacity .16s ease, visibility 0s; }
.hexhome:hover, .hexhome:focus-visible { color: var(--h-hex-hover, #d81c45); }
:host([data-theme="dark"]) .hexhome:hover, :host([data-theme="dark"]) .hexhome:focus-visible { color: var(--h-hex-hover-dark, #ff4d6d); }
.hexhome:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .hexhome, :host([data-stuck]) .hexhome { transition: none; } }
@media (max-width: 599px) {
:host([data-brand]) .burger { order: 0; }
:host([data-brand]) .hexhome { order: 1; display: none; margin-inline: 4px 0; }
:host([data-brand][data-stuck]) .hexhome { display: inline-flex; }
:host([data-brand]) .end { order: 3; }
}
@media (min-width: 960px) {
.bar .wrap { position: relative; }
.hexhome { position: absolute; inset-inline-start: calc(var(--h-gutter) - 30px); inset-block-start: 50%; margin: 0; transform: translateY(-50%); }
}
@media (min-width: 960px) {
:host([data-crowd]) .end .contact { display: none; }
:host([data-crowd]) .theme .tl { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
:host([data-crowd]) .theme button { padding: 0 7px; }
:host([data-crowd]) .nx-lang__label { display: none; }
:host([data-crowd]) .nx-lang__code { display: inline; }
:host([data-crowd]) .nxa .nxa__btn { padding-inline: 9px; gap: 6px; }
:host([data-crowd]) .nxa .nxa__btn .nxa__lbl { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
:host([data-crowd]) .nxa .nxa__chev { display: none; }
:host([data-crowd="2"]) .main { visibility: hidden; }
:host([data-crowd="2"]) .burger { display: inline-flex; }
}
.nx-lang__item.is-unavailable{display:none}
GRF
Têgihiştin û çavkanî What The Global Risks Forum (GRF) publishes under its own authority: governance papers, institutional analyses, explainers, approved speeches and lessons from dialogues, councils and annual cycles. Institutions face pressure to act on fast analysis. The UN Global Principles for Yekparebûna agahiyê (2024) ask publishers to show sources and corrections. Every GRF item carries its author, review state, sources and correction history. Nothing appears before release.
01 Berhevok
Five collections, each with its own rule.
Genres Rewş Publication standard
02 Genres
Pênc cure û standardên ku her yek pêk tîne. Genre Armanc Nirxandin Governance paper Analysis of a governance question with options External review by at least one independent reader Explainer Plain-language account of an instrument or process Accuracy check against the instrument’s text Lêkolîna doz Reconstruction of how institutions governed an event Factual check by the institutions described Learning note Lessons from dialogues and exercises Review by the lesson owners Speech or statement GRF’s own position on its own work Adopted by the responsible GRF organ
03 Rewş
GRF does not take positions on other institutions’ decisions. Insights explain and analyse; they do not lobby for an outcome in any negotiation or rate any government. Where a paper presents options, it says what evidence supports each and who would decide. Evidence comes from GCRI’s Reports with its labels.
04 Publication standard
What every item is designed to state. Who wrote it and for whom Nivîskar, saziya weşangêr û her fînansker têne nav kirin. Sponsor nikarin weşanan pejirînin an delîlan biguherînin.
What it rests on Sources are cited, and data carries its evidence class: observed, modelled, scenario or expert judgement.
Çi guherî û çima A correction creates a recorded new version, never a silent edit.
How insights are made Sînor Di nirxandinê de
05 How insights are made
From convening to a publication someone can check. 01 Tomar pêşî Most GRF analysis starts from records: dialogue outcomes, council minutes, exercise after-action notes. An insight cites the record it interprets.
02 Method stated Comparative institutional analysis, case study, process tracing or scenario review, with the method named and its limits given.
03 Rêya nirxandinê Each item states who reviewed it and how conflicts were managed; speeches are labelled as the speaker’s views unless released as an institutional statement.
04 Bikaranîna din Findings may be offered to the Reports programme or, where a common method is missing, filed as a change proposal to the Nexus Standards . Neither body is bound by GRF’s analysis.
06 Sînor
What a GRF publication is not. It is not a regulatory interpretation, a rating, a ranking or a certification of any institution or country. It is not investment, legal or financial advice; finance-readiness questions are led by The Global Risks Alliance (GRA). A dialogue record states what participants agreed. An analysis states GRF’s view. The two are never presented as each other. A scenario or exercise finding is never a forecast or a warning. Hê tu weşana GRF di van berhevokan de nehatiye tomarkirin. Pirs diçin forma têkiliyê and corrections to the integrity concern form. GCRI’s research library is at weşanên GCRI .
07 Di nirxandinê de
Tiştên pêşîn dê ji ku werin. No GRF publication is listed in these collections yet. The Reports editions that GRF is scheduled to review for public meaning are drafts in stewardship review; each edition page states its evidence close, version and review passes. See the editions in review .
Çavkanî Rûpel Pirs
08 Çavkanî
Where this page’s references lead. Sazî û belgeyên ku ev rûpel li hember wan tê xwendin. Rewş û çap diguherin; her girêdan diçe ba saziya derxistinê.
09 Rûpel
Rûpelên di Têgihiştin û çavkanî de. Why are there no papers listed yet? Because an item is listed only once it has been released with its review state. A paper in preparation is not presented as published.
Can I cite a GRF speech as a GRF position? Only where the speech is labelled as an institutional statement released by GRF. Otherwise a speech reflects the speaker’s views, and the label says so.
Ez çawa çewtiyekê rapor bikim? Where is the scientific evidence behind GRF analyses? Evidence and methods are led by The Global Centre for Risk and Innovation (GCRI). GRF analyses cite their sources and link to the publisher that holds the evidence.
Reports Tevkarî bike
Ji vê rûpelê delîl bidin. Reports is the Consortium’s quarterly publication. What you know about this subject can become evidence, a case or a correction in the next edition, credited to you and published under CC BY 4.0 where it is your own work.
Global Risks Forum
E-name Dergeh GW-GRF Ji vê rûpelê bişînin Delîl, rastkirin, doz, rêbaz, nirxandin, wergerandin an têketina profîlê. Bi nîşana vê rûpelê digihîje, ji ber vê yekê edîtorê xwediyê wê wê bistîne. Zenodo Depoya vekirî Wê razînin û ji civakê re bişînin Tomara xwe li Zenodo bi ORCID iD ya xwe biweşînin, paşê wê li wir ji civaka Reports re bişînin. Kurator wê vedikolin; DOI ya we dimîne. Reports Global Risks Forum See every way to contribute The contribution types, how each is reviewed, what credit you receive, the licence and what is never accepted.
Tu carî daneyên şexsî, hûrgiliyên binesaza hesas an tiştekî ku mafê we yê parvekirinê tune ne neşînin. Beşdarî berî bikaranînê tê nirxandin; şandina wê nivîskarî an mafên edîtorî nade û sponsorî tu carî encamekê nakire.
The Global Risks Forum Pirsek ya rêveberiyê bînin Forumê. Agahî û pirs îro vekirî ne. Pirsek referansekê distîne û gava piştî wê dide nasîn; serlêdan, drav, veqetandina hesabkirinê û tomarkirin tenê dema ku tîm, mercên wê û kapasîteya vekolînê hebin vedibin.