:root {
  --vnwo-bg: #f6f8fb;
  --vnwo-bg-soft: #eef3f8;
  --vnwo-bg-dark: #08111d;
  --vnwo-panel: #ffffff;
  --vnwo-panel-strong: #f9fbfd;
  --vnwo-text: #102033;
  --vnwo-text-muted: #526275;
  --vnwo-line: #d9e2ec;
  --vnwo-line-strong: #b6c4d4;
  --vnwo-accent: #0b6fae;
  --vnwo-accent-2: #126b43;
  --vnwo-warning: #835d00;
  --vnwo-danger: #a34040;
  --vnwo-ok: #0d7042;
  --vnwo-max-width: 1180px;
  --vnwo-readable: 78ch;
  --vnwo-radius: 18px;
  --vnwo-radius-sm: 10px;
  --vnwo-shadow: 0 18px 60px rgba(20, 39, 67, 0.12);
  --vnwo-focus-ring: 3px solid #0ea5e9;
  --vnwo-font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --vnwo-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  --vnwo-header-height: 76px;
  --space-1: .25rem;
  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
}

*, *::before, *::after { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; background: var(--vnwo-bg); }
body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 9% 1%, rgba(11,111,174,.10), transparent 26rem),
    linear-gradient(180deg, #fbfdff 0%, var(--vnwo-bg) 46%, #f2f5f9 100%);
  color: var(--vnwo-text);
  font-family: var(--vnwo-font-sans);
  font-size: 16px;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img, svg, video { display: block; max-width: 100%; }
img { height: auto; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd { margin-block-start: 0; }
p, ul, ol, dl, pre, table, blockquote { margin-block-end: 1rem; }
h1, h2, h3, h4, h5, h6 { margin-block-end: .72rem; color: var(--vnwo-text); line-height: 1.08; letter-spacing: -.035em; }
h1 { font-size: clamp(2.35rem, 5.2vw, 4.9rem); max-width: 14ch; }
h2 { font-size: clamp(1.65rem, 3.2vw, 3rem); }
h3 { font-size: clamp(1.16rem, 2vw, 1.45rem); }
p { color: var(--vnwo-text-muted); }
ul, ol { padding-inline-start: 1.35rem; }
a { color: var(--vnwo-accent); text-decoration-thickness: .08em; text-underline-offset: .18em; }
a:hover { color: var(--vnwo-accent-2); }
:focus { outline: var(--vnwo-focus-ring); outline-offset: 4px; }
:focus:not(:focus-visible) { outline: none; }
:focus-visible { outline: var(--vnwo-focus-ring); outline-offset: 4px; }
::selection { background: rgba(11,111,174,.18); color: var(--vnwo-text); }
code, kbd, samp, pre { font-family: var(--vnwo-font-mono); }
pre { overflow: auto; max-width: 100%; border-radius: var(--vnwo-radius-sm); }
hr { border: 0; border-block-start: 1px solid var(--vnwo-line); margin: 2rem 0; }
.skip-link { position: fixed; inset-block-start: 1rem; inset-inline-start: 1rem; z-index: 1000; transform: translateY(-160%); border-radius: var(--vnwo-radius-sm); background: #fff2b9; color: #221700; padding: .75rem 1rem; font-weight: 800; text-decoration: none; box-shadow: var(--vnwo-shadow); }
.skip-link:focus,
.skip-link:focus-visible {
  transform: translateY(0);
  outline: var(--vnwo-focus-ring);
  outline-offset: 4px;
}
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.vnwo-button, .wp-block-button__link {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 44px;
  border: 1px solid var(--vnwo-line-strong); border-radius: 999px; padding: .72rem 1.05rem;
  background: var(--vnwo-panel); color: var(--vnwo-text); font-weight: 760; line-height: 1; text-decoration: none;
  box-shadow: 0 1px 0 rgba(255,255,255,.65) inset, 0 8px 20px rgba(18,45,76,.06);
}
.vnwo-button:hover, .wp-block-button__link:hover { border-color: var(--vnwo-accent); color: var(--vnwo-text); transform: translateY(-1px); }
.vnwo-button--primary, .wp-block-button__link { border-color: #0b6fae; background: #0b6fae; color: #fff; }
.vnwo-button--primary:hover { color: #fff; background: #095d93; }
.vnwo-button--secondary { border-color: #126b43; background: #e7f7ef; color: #0e5837; }
.vnwo-button--ghost { background: transparent; }
.vnwo-button--small { min-height: 38px; padding: .56rem .84rem; font-size: .9rem; }
label { display: block; margin-block-end: .4rem; color: var(--vnwo-text); font-weight: 700; }
input, textarea, select { width: 100%; border: 1px solid var(--vnwo-line-strong); border-radius: var(--vnwo-radius-sm); background: #fff; color: var(--vnwo-text); padding: .8rem .9rem; }
textarea { min-height: 9rem; resize: vertical; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
  :focus-visible {
    outline: var(--vnwo-focus-ring) !important;
    outline-offset: 4px !important;
    transition: none !important;
  }
}
.vnwo-container { width: min(100% - 2rem, var(--vnwo-max-width)); margin-inline: auto; }
.vnwo-narrow { max-width: var(--vnwo-readable); }
.site-main { min-height: 60vh; }
.site-header { position: sticky; inset-block-start: 0; z-index: 100; border-block-end: 1px solid rgba(190,202,216,.9); background: rgba(255,255,255,.92); backdrop-filter: blur(18px); }
.site-header__inner { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 1rem; min-height: var(--vnwo-header-height); }
.site-brand { display: inline-flex; align-items: center; gap: .72rem; color: var(--vnwo-text); text-decoration: none; min-width: max-content; }
.site-brand:hover { color: var(--vnwo-text); }
.site-brand__mark { display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid var(--vnwo-line-strong); border-radius: 14px; background: #f8fbff; }
.site-brand__mark img { width: 32px; height: 32px; }
.site-brand__name { display: block; font-weight: 850; letter-spacing: -.02em; }
.site-brand__tagline { display: block; color: var(--vnwo-text-muted); font-size: .78rem; }
.primary-nav { justify-self: end; }
.primary-nav__list, .footer-nav__list { display: flex; align-items: center; gap: .12rem; margin: 0; padding: 0; list-style: none; }
.primary-nav a { display: inline-flex; min-height: 38px; align-items: center; border-radius: 999px; padding: .48rem .58rem; color: var(--vnwo-text-muted); font-size: .86rem; font-weight: 730; text-decoration: none; white-space: nowrap; }
.primary-nav a:hover, .primary-nav .current-menu-item > a { background: rgba(11,111,174,.08); color: var(--vnwo-text); }
.site-header__cta { justify-self: end; }
.site-header__toggle { display: none; align-items: center; gap: .55rem; min-height: 44px; border: 1px solid var(--vnwo-line-strong); border-radius: 999px; background: var(--vnwo-panel); color: var(--vnwo-text); padding: .5rem .72rem; }
.site-header__toggle-lines { position: relative; width: 18px; height: 2px; background: currentColor; }
.site-header__toggle-lines::before, .site-header__toggle-lines::after { content: ""; position: absolute; inset-inline-start: 0; width: 18px; height: 2px; background: currentColor; }
.site-header__toggle-lines::before { inset-block-start: -6px; } .site-header__toggle-lines::after { inset-block-start: 6px; }
.vnwo-section { padding-block: clamp(3.2rem, 7vw, 6rem); }
.vnwo-section--tight { padding-block: clamp(2rem, 4.4vw, 3.75rem); }
.vnwo-section--panel { background: var(--vnwo-panel-strong); border-block: 1px solid var(--vnwo-line); }
.vnwo-split { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: clamp(1.6rem, 4vw, 4rem); align-items: start; }
.vnwo-section-heading { max-width: 760px; margin-block-end: 1.65rem; }
.vnwo-card-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap: 1rem; }
.vnwo-card-grid--two { grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); }
.vnwo-card-grid--principles { grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr)); }
.vnwo-button-row { display: flex; flex-wrap: wrap; gap: .7rem; align-items: center; }
.vnwo-document-layout { display: grid; grid-template-columns: 248px minmax(0,1fr); gap: clamp(1.4rem, 3.5vw, 3.5rem); padding-block: clamp(2rem, 5vw, 4rem); }
.vnwo-section-nav { position: sticky; inset-block-start: calc(var(--vnwo-header-height) + 1rem); align-self: start; display: grid; gap: .2rem; border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: rgba(255,255,255,.9); padding: .7rem; box-shadow: 0 10px 30px rgba(18,45,76,.06); }
.vnwo-section-nav a { border-radius: 999px; color: var(--vnwo-text-muted); padding: .46rem .7rem; font-size: .9rem; font-weight: 720; text-decoration: none; }
.vnwo-section-nav a:hover, .vnwo-section-nav a[aria-current="true"] { background: rgba(11,111,174,.09); color: var(--vnwo-text); }
.vnwo-document { min-width: 0; }
.site-footer { border-block-start: 1px solid #14263d; background: #08111d; color: #eef3f8; padding-block: clamp(3rem, 6vw, 5rem) 1.5rem; }
.site-footer p, .site-footer a { color: #c7d2df; }
.site-footer a:hover { color: #fff; }
.site-footer__grid { display: grid; grid-template-columns: 1.05fr 1.1fr .85fr; gap: clamp(1.5rem, 4vw, 3.5rem); }
.site-footer__mark { margin-block-end: 1rem; }
.site-footer__name { margin: 0; color: #fff; font-weight: 850; }
.site-footer__tagline { margin-block-end: 1rem; }
.site-footer__boundary { max-width: 44rem; }
.site-footer__heading { margin-block-end: 1rem; color: #fff; font-size: 1rem; letter-spacing: .04em; text-transform: uppercase; }
.footer-nav__list { display: grid; gap: .5rem; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); align-items: start; }
.site-footer__bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; border-block-start: 1px solid rgba(255,255,255,.14); margin-block-start: 2.5rem; padding-block-start: 1.2rem; }
.site-footer__bottom p { margin: 0; font-size: .92rem; }
@media (max-width: 1023px) { .site-header__inner { grid-template-columns: auto auto auto; } .site-header__toggle { display: inline-flex; justify-self: end; } .primary-nav { position: absolute; inset-block-start: calc(100% + .35rem); inset-inline: max(.65rem, env(safe-area-inset-left)) max(.65rem, env(safe-area-inset-right)); display: none; border: 1px solid var(--vnwo-line-strong); border-radius: var(--vnwo-radius); background: rgba(255,255,255,.99); padding: .65rem; box-shadow: var(--vnwo-shadow); } .primary-nav.is-open { display: block; } .primary-nav__list { display: grid; gap: .2rem; } .primary-nav a { justify-content: flex-start; width: 100%; } .site-header__cta { display: none; } }
@media (max-width: 840px) { .vnwo-split, .vnwo-document-layout, .site-footer__grid { grid-template-columns: 1fr; } .vnwo-section-nav { position: static; } .site-brand__tagline { display: none; } }
@media (max-width: 520px) { :root { --vnwo-header-height: 66px; } .vnwo-container { width: min(100% - 1.1rem, var(--vnwo-max-width)); } .site-brand__mark { width: 38px; height: 38px; } .site-brand__name { font-size: .95rem; } .site-header__toggle-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } }
@media print { body { background: #fff; color: #000; } .site-header, .site-footer, .vnwo-section-nav, .vnwo-button-row, .vnwo-final-cta { display: none !important; } a { color: #000; } .vnwo-document-layout, .vnwo-section { display: block; padding: 0; } }
.vnwo-section-label, .vnwo-card__meta, .vnwo-chip, .vnwo-badge, .vnwo-callout__label { color: var(--vnwo-accent); font-family: var(--vnwo-font-mono); font-size: .76rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.vnwo-lede { max-width: 62ch; color: var(--vnwo-text); font-size: clamp(1.05rem, 1.8vw, 1.28rem); }
.vnwo-hero { position: relative; overflow: clip; padding-block: clamp(2.6rem, 5vw, 4.8rem); background: linear-gradient(180deg, #fff 0%, rgba(255,255,255,.45) 100%); border-block-end: 1px solid var(--vnwo-line); }
.vnwo-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(11,111,174,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(11,111,174,.08) 1px, transparent 1px); background-size: 54px 54px; mask-image: linear-gradient(180deg, #000 0%, transparent 76%); }
.vnwo-hero__grid { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(340px, .78fr); gap: clamp(1.4rem, 4vw, 3.5rem); align-items: center; }
.vnwo-hero__subheading { max-width: 65ch; color: var(--vnwo-text); font-size: clamp(1.05rem, 1.65vw, 1.28rem); }
.vnwo-core-strip { display: flex; flex-wrap: wrap; gap: .55rem; max-width: 760px; margin-block-start: 1.35rem; }
.vnwo-core-strip span, .vnwo-pill { display: inline-flex; align-items: center; min-height: 34px; border: 1px solid var(--vnwo-line); border-radius: 999px; background: #fff; color: var(--vnwo-text-muted); padding: .4rem .68rem; font-family: var(--vnwo-font-mono); font-size: .82rem; }
.vnwo-hero__visual { contain: layout paint; min-height: 0; }
.vnwo-network-visual { width: 100%; height: auto; filter: drop-shadow(0 20px 42px rgba(18,45,76,.16)); }
.js .vnwo-network-line { stroke-dasharray: 14 12; animation: vnwo-network-flow 16s linear infinite; }
.js .vnwo-network-line--slow { animation-duration: 22s; }
@keyframes vnwo-network-flow { to { stroke-dashoffset: -260; } }
.vnwo-page-header { border-block-end: 1px solid var(--vnwo-line); background: linear-gradient(135deg, #fff 0%, #eff5fb 100%); }
.vnwo-page-header__inner { padding-block: clamp(2.3rem, 5vw, 4.5rem); }
.vnwo-page-header__subheading { max-width: 72ch; color: var(--vnwo-text); font-size: clamp(1.04rem, 1.8vw, 1.22rem); }
.vnwo-page-header--with-image .vnwo-page-header__inner { display: grid; grid-template-columns: minmax(0, .85fr) minmax(260px, .75fr); gap: 2rem; align-items: center; }
.vnwo-page-header__figure, .vnwo-image-panel, .vnwo-schematic-figure { margin: 0; border: 1px solid var(--vnwo-line); border-radius: calc(var(--vnwo-radius) + 6px); background: #fff; box-shadow: var(--vnwo-shadow); overflow: hidden; }
.vnwo-page-header__image, .vnwo-image-panel img, .vnwo-schematic-figure__image { display: block; width: 100%; height: auto; }
figcaption, .vnwo-image-panel figcaption, .vnwo-schematic-figure figcaption, .vnwo-page-header__figure figcaption { border-block-start: 1px solid var(--vnwo-line); margin: 0; padding: .95rem 1.1rem; color: var(--vnwo-text-muted); font-size: .95rem; }
.vnwo-card { position: relative; border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: var(--vnwo-panel); padding: clamp(1.1rem, 2vw, 1.5rem); box-shadow: 0 1px 0 rgba(255,255,255,.85) inset, 0 10px 32px rgba(18,45,76,.06); }
.vnwo-card h2, .vnwo-card h3 { font-size: clamp(1.1rem, 1.8vw, 1.32rem); }
.vnwo-principle-card__number { display: inline-grid; width: 2.1rem; height: 2.1rem; place-items: center; border-radius: 50%; background: #e8f3fb; color: var(--vnwo-accent); font-family: var(--vnwo-font-mono); font-weight: 850; margin-block-end: .8rem; }
.vnwo-core-law { display: grid; gap: .5rem; border: 1px solid #b6d5ed; border-radius: calc(var(--vnwo-radius) + 6px); background: #eaf6ff; padding: clamp(1.2rem, 3vw, 2rem); box-shadow: var(--vnwo-shadow); }
.vnwo-core-law strong { color: #09233d; font-size: clamp(1.4rem, 3vw, 2.35rem); line-height: 1.15; max-width: 34ch; }
.vnwo-memory-section { display: grid; grid-template-columns: minmax(0,.95fr) minmax(300px,1fr); gap: clamp(1.5rem,4vw,3.5rem); align-items: center; }
.vnwo-workflow { display: grid; gap: .55rem; margin: 0; padding: 0; list-style: none; counter-reset: flow; }
.vnwo-workflow li { counter-increment: flow; position: relative; display: flex; align-items: center; gap: .75rem; border: 1px solid var(--vnwo-line); border-radius: 999px; background: #fff; padding: .78rem 1rem; color: var(--vnwo-text); font-weight: 720; }
.vnwo-workflow li::before { content: counter(flow); display: grid; place-items: center; flex: 0 0 1.8rem; width: 1.8rem; height: 1.8rem; border-radius: 50%; background: #e7f7ef; color: #126b43; font-family: var(--vnwo-font-mono); }
.vnwo-callout { border: 1px solid var(--vnwo-line-strong); border-radius: var(--vnwo-radius); background: #fff; padding: clamp(1rem,2vw,1.35rem); margin-block: 1rem; }
.vnwo-callout--warning { border-color: #efd287; background: #fff8e5; }
.vnwo-callout--danger { border-color: #e5b5b5; background: #fff0f0; }
.vnwo-callout--ok { border-color: #a7ddbf; background: #effbf4; }
.vnwo-check-list, .vnwo-numbered-list { display: grid; gap: .55rem; padding-inline-start: 1.2rem; }
.vnwo-check-list li, .vnwo-numbered-list li { color: var(--vnwo-text); }
.vnwo-check-list--negative li::marker { color: var(--vnwo-danger); }
.vnwo-table-wrap { overflow-x: auto; border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: #fff; }
.vnwo-table { width: 100%; border-collapse: collapse; margin: 0; min-width: 620px; }
.vnwo-table caption { padding: .9rem 1rem; font-weight: 780; text-align: left; color: var(--vnwo-text); }
.vnwo-table th, .vnwo-table td { border-block-start: 1px solid var(--vnwo-line); padding: .82rem 1rem; text-align: left; vertical-align: top; }
.vnwo-table thead th { background: #f3f7fb; color: var(--vnwo-text); }
.vnwo-code-block { position: relative; border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: #07111e; color: #eaf3ff; overflow: hidden; margin-block: 1rem; }
.vnwo-code-block pre { margin: 0; padding: 1rem; color: #eaf3ff; white-space: pre-wrap; word-break: break-word; }
.vnwo-code-block code { color: #eaf3ff; }
.vnwo-copy-button { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; border: 1px solid var(--vnwo-line-strong); border-radius: 999px; background: #fff; color: var(--vnwo-text); padding: .5rem .8rem; font-weight: 760; }
.vnwo-code-block .vnwo-copy-button { position: absolute; inset-block-start: .65rem; inset-inline-end: .65rem; }
.vnwo-filter { display: grid; gap: .75rem; margin-block-end: 1.3rem; }
.vnwo-filter__buttons { display: flex; flex-wrap: wrap; gap: .45rem; }
.vnwo-filter__buttons button { border: 1px solid var(--vnwo-line); border-radius: 999px; background: #fff; color: var(--vnwo-text-muted); padding: .45rem .72rem; font-weight: 760; }
.vnwo-filter__buttons button[aria-pressed="true"], .vnwo-filter__buttons button:hover { background: #eaf6ff; color: var(--vnwo-accent); }
.vnwo-badge-grid, .vnwo-agent-badges { display: flex; flex-wrap: wrap; gap: .45rem; margin-block: 1rem; }
.vnwo-badge { display: inline-flex; min-height: 30px; align-items: center; border: 1px solid var(--vnwo-line); border-radius: 999px; background: #fff; padding: .32rem .55rem; }
.vnwo-ecosystem-map { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 1rem; }
.vnwo-ecosystem-node { border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: #fff; padding: 1rem; }
.vnwo-version-meta { display: flex; flex-wrap: wrap; gap: .45rem; margin-block: 1rem 1.5rem; }
.vnwo-version-meta span { display: inline-flex; border: 1px solid var(--vnwo-line); border-radius: 999px; background: #fff; padding: .35rem .6rem; color: var(--vnwo-text-muted); font-family: var(--vnwo-font-mono); font-size: .78rem; }
.vnwo-final-cta { border-block-start: 1px solid var(--vnwo-line); background: #fff; }
.vnwo-final-cta__inner { display: grid; gap: 1rem; align-items: center; grid-template-columns: minmax(0, 1fr) auto; padding-block: clamp(2.5rem,5vw,4rem); }
.vnwo-alert-strip { display: flex; flex-wrap: wrap; gap: .7rem; margin-block: 1rem; }
.vnwo-alert-strip span { border: 1px solid var(--vnwo-line); border-radius: 999px; background: #fff; padding: .45rem .7rem; color: var(--vnwo-text-muted); font-weight: 720; }
@media (max-width: 900px) { .vnwo-hero__grid, .vnwo-memory-section, .vnwo-final-cta__inner, .vnwo-page-header--with-image .vnwo-page-header__inner { grid-template-columns: 1fr; } .vnwo-hero__visual { max-width: 620px; } }
@media (max-width: 560px) { .vnwo-code-block .vnwo-copy-button { position: static; margin: .75rem; } }

/* v1.2.0 content-density pass: the hero now places civic facts in the first viewport instead of reserving blank visual space. */
.vnwo-hero {
  padding-block: clamp(2.1rem, 5vw, 4.6rem);
}

.vnwo-hero::before {
  mask-image: linear-gradient(180deg, #000 0%, transparent 92%);
}

.vnwo-hero__grid {
  grid-template-columns: minmax(0, 1.03fr) minmax(330px, 0.82fr);
  gap: clamp(1.4rem, 4vw, 3.25rem);
  align-items: start;
}

.vnwo-hero h1 {
  font-size: clamp(2.35rem, 5.4vw, 4.9rem);
  max-width: 12.25ch;
}

.vnwo-hero__subheading {
  max-width: 60ch;
}

.vnwo-hero__visual {
  min-height: 0;
  display: grid;
  gap: 1rem;
  align-content: start;
}

.vnwo-network-visual {
  max-height: min(46vh, 430px);
  border: 1px solid rgba(139, 211, 255, 0.24);
  border-radius: calc(var(--vnwo-radius) + 6px);
  background: rgba(7, 9, 13, 0.46);
}

.vnwo-hero__facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .6rem;
}

.vnwo-hero__facts span,
.vnwo-meta-strip span {
  border: 1px solid rgba(139, 211, 255, 0.22);
  border-radius: 999px;
  background: rgba(17, 23, 34, 0.78);
  color: var(--vnwo-text);
  font-family: var(--vnwo-font-mono);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .06em;
  padding: .55rem .72rem;
  text-transform: uppercase;
}

.vnwo-home-priority-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) repeat(2, minmax(220px, .9fr));
  gap: clamp(1rem, 2.5vw, 1.4rem);
  align-items: stretch;
}

.vnwo-priority-card--law {
  background: linear-gradient(135deg, rgba(139, 211, 255, .12), rgba(184, 247, 212, .07)), rgba(17, 23, 34, .9);
}

.vnwo-priority-card h2 {
  font-size: clamp(1.45rem, 2.6vw, 2.3rem);
  max-width: 18ch;
}

.vnwo-link-card a,
.vnwo-machine-card a {
  display: inline-flex;
  margin-block-start: .4rem;
  color: var(--vnwo-accent-2);
  font-weight: 800;
}

.vnwo-card-grid--compact {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
}

.vnwo-doc-layout {
  display: grid;
  grid-template-columns: minmax(180px, .28fr) minmax(0, 1fr);
  gap: clamp(1.2rem, 4vw, 3rem);
  align-items: start;
}

.vnwo-doc-content {
  display: grid;
  gap: clamp(1rem, 3vw, 1.7rem);
}

.vnwo-doc-content > * {
  min-width: 0;
}

.vnwo-toc {
  position: sticky;
  top: calc(var(--vnwo-header-height, 80px) + 1rem);
  display: grid;
  gap: .4rem;
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius);
  background: rgba(17, 23, 34, .82);
  padding: .9rem;
}

.vnwo-toc a {
  border-radius: var(--vnwo-radius-sm);
  color: var(--vnwo-text-muted);
  padding: .45rem .55rem;
  text-decoration: none;
}

.vnwo-toc a:hover,
.vnwo-toc a:focus-visible {
  background: rgba(139, 211, 255, .1);
  color: var(--vnwo-text);
}

.vnwo-version-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-block-end: .5rem;
}

.vnwo-version-meta span {
  border: 1px solid var(--vnwo-line);
  border-radius: 999px;
  color: var(--vnwo-text-muted);
  font-family: var(--vnwo-font-mono);
  font-size: .78rem;
  padding: .42rem .65rem;
}

.vnwo-page-summary,
.vnwo-core-law--inline {
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius);
  background: rgba(17, 23, 34, .82);
  padding: clamp(1.1rem, 3vw, 1.65rem);
}

.vnwo-checklist-grid,
.vnwo-template-list,
.vnwo-glossary-grid {
  display: grid;
  gap: clamp(1rem, 2.4vw, 1.5rem);
}

.vnwo-checklist-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
}

.vnwo-glossary-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
}

.vnwo-key-values {
  display: grid;
  gap: .55rem;
  margin: 0;
}

.vnwo-key-values dt {
  color: var(--vnwo-accent);
  font-family: var(--vnwo-font-mono);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.vnwo-key-values dd {
  color: var(--vnwo-text-muted);
  margin: 0 0 .55rem;
}

.vnwo-template-card {
  display: grid;
  gap: .7rem;
}

.vnwo-download-card .vnwo-button {
  width: fit-content;
}

@media (max-width: 1040px) {
  .vnwo-hero__grid,
  .vnwo-home-priority-grid,
  .vnwo-doc-layout {
    grid-template-columns: 1fr;
  }

  .vnwo-toc {
    position: static;
  }

  .vnwo-network-visual {
    max-height: 340px;
  }
}

@media (max-width: 560px) {
  .vnwo-hero {
    padding-block: 1.7rem 2.4rem;
  }

  .vnwo-hero h1 {
    font-size: clamp(2.15rem, 15vw, 3.45rem);
  }

  .vnwo-core-strip,
  .vnwo-hero__facts {
    grid-template-columns: 1fr;
  }

  .vnwo-network-visual {
    max-height: 285px;
  }
}

.vnwo-checklist-stack { display: grid; gap: 1rem; }
.vnwo-checklist-item__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 1rem; }
.vnwo-template-library { display: grid; gap: 1rem; }
.vnwo-template-meta-list { display: grid; gap: .35rem; }
.vnwo-cta-panel { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; align-items: center; border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: var(--vnwo-panel); padding: clamp(1rem, 3vw, 1.6rem); box-shadow: var(--vnwo-shadow); }
.vnwo-timeline { display: grid; gap: 1rem; }
.vnwo-version-entry dl, .vnwo-definition dl { display: grid; gap: .45rem; }
.vnwo-version-entry dt, .vnwo-definition dt { color: var(--vnwo-text); font-weight: 800; }
.vnwo-version-entry dd, .vnwo-definition dd { margin: 0 0 .65rem; color: var(--vnwo-text-muted); }
.vnwo-definition { border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: var(--vnwo-panel); padding: clamp(1rem, 2.4vw, 1.5rem); }
@media (max-width: 760px) { .vnwo-cta-panel { grid-template-columns: 1fr; } }

/* v2.0.0 light-first readability overrides. */
/* v2.2.0 content expansion components. */
.vnwo-priority-card--law,
.vnwo-page-summary,
.vnwo-core-law--inline,
.vnwo-toc {
  background: #ffffff;
  color: var(--vnwo-text);
}
.vnwo-priority-card--law {
  border-color: #b6d5ed;
  background: linear-gradient(135deg, #eaf6ff, #f1fff7);
}
.vnwo-priority-card--law h2,
.vnwo-priority-card--law p,
.vnwo-page-summary h2,
.vnwo-page-summary h3,
.vnwo-page-summary p,
.vnwo-core-law--inline h2,
.vnwo-core-law--inline h3,
.vnwo-core-law--inline p {
  color: var(--vnwo-text);
}
.vnwo-toc a,
.vnwo-toc a:hover,
.vnwo-toc a:focus-visible {
  color: var(--vnwo-text);
}
.vnwo-hero__facts span,
.vnwo-meta-strip span {
  background: #ffffff;
  color: var(--vnwo-text-muted);
  border-color: var(--vnwo-line);
}

.vnwo-summary-block { border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: #fff; padding: clamp(1.1rem, 3vw, 1.7rem); box-shadow: 0 1px 0 rgba(255,255,255,.85) inset, 0 10px 32px rgba(18,45,76,.05); }
.vnwo-related-list { display: grid; gap: .65rem; padding-inline-start: 1.2rem; }
.vnwo-related-list a { font-weight: 780; }
.vnwo-article-list { display: grid; gap: 1rem; }
.vnwo-key-values--compact { margin-block-start: 1rem; }
.vnwo-process-list li { margin-block-end: .45rem; }
.vnwo-lane-card a { font-weight: 780; }
.vnwo-ecosystem-lane-list { margin-block-start: 1rem; }
.vnwo-badge-row { display: flex; flex-wrap: wrap; gap: .5rem; margin-block: 1rem; }
.vnwo-doc-section .vnwo-button { margin-block-start: .5rem; }

/* v2.5.0 content expansion components. */
.vnwo-expanded-guidance { border-top: 1px solid var(--vnwo-line); padding-top: clamp(1.5rem, 3vw, 2.5rem); }
.vnwo-chip-list { display: flex; flex-wrap: wrap; gap: .55rem; padding: 0; margin: 1rem 0; list-style: none; }
.vnwo-chip-list li, .vnwo-chip { border: 1px solid var(--vnwo-line-strong); background: rgba(139, 211, 255, .09); color: var(--vnwo-text); border-radius: 999px; padding: .42rem .68rem; font-size: .92rem; line-height: 1.25; overflow-wrap: anywhere; }
.vnwo-card-grid--three { grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)); }
.vnwo-card--compact { padding: clamp(1rem, 2vw, 1.35rem); }
.vnwo-card--compact h3 { margin-top: 0; }
.vnwo-card-grid--balanced > .vnwo-card { display: flex; flex-direction: column; }
.vnwo-card-grid--balanced > .vnwo-card p:last-child { margin-bottom: 0; }
.vnwo-callout--boundary { border-color: color-mix(in srgb, var(--vnwo-warning) 55%, var(--vnwo-line)); background: color-mix(in srgb, var(--vnwo-warning) 10%, var(--vnwo-panel)); }
.vnwo-artifact-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: 1rem; }
.vnwo-code-block, .vnwo-table-wrap { max-inline-size: 100%; overflow-x: auto; }
.vnwo-code-block pre { min-width: min-content; }
.vnwo-template-meta-list { overflow-wrap: anywhere; }
.vnwo-version-entry dl { display: grid; grid-template-columns: minmax(9rem, 14rem) 1fr; gap: .5rem 1rem; }
.vnwo-version-entry dt { font-weight: 700; color: var(--vnwo-text); }
.vnwo-version-entry dd { margin: 0; color: var(--vnwo-text-muted); }
@media (max-width: 640px) {
  .vnwo-version-entry dl { grid-template-columns: 1fr; }
  .vnwo-card-grid--three { grid-template-columns: 1fr; }
}

/* v3.0.2 accessible static process diagrams */
.vnwo-process-diagram {
	margin: 0;
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	background: linear-gradient(135deg, var(--surface), var(--surface-subtle, var(--surface)));
	box-shadow: var(--shadow-sm);
	padding: clamp(1rem, 2vw, 1.75rem);
}
.vnwo-process-diagram__title { margin-block-start: 0; }
.vnwo-process-diagram__steps {
	list-style: none;
	margin: 1.25rem 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: .75rem;
}
.vnwo-process-diagram__step {
	position: relative;
	min-width: 0;
	border: 1px solid var(--border);
	border-radius: var(--radius-md);
	background: var(--surface);
	padding: .9rem;
	display: grid;
	align-content: start;
	gap: .4rem;
}
.vnwo-process-diagram__step:not(:last-child)::after {
	content: "→";
	position: absolute;
	inset-inline-end: -.7rem;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
	font-size: 1.15rem;
	font-weight: 800;
	color: var(--accent);
	background: var(--surface);
	border-radius: 999px;
	padding-inline: .1rem;
}
.vnwo-process-diagram__number {
	inline-size: 1.75rem;
	block-size: 1.75rem;
	display: inline-grid;
	place-items: center;
	border-radius: 999px;
	background: var(--accent-soft, var(--surface-subtle));
	color: var(--text);
	font-weight: 800;
}
.vnwo-process-diagram__step span:last-child { color: var(--text-muted); font-size: .92rem; }
.vnwo-process-diagram figcaption { color: var(--text-muted); }
.vnwo-process-diagram__text { margin-block-start: 1rem; }
.vnwo-process-diagram__text summary { cursor: pointer; font-weight: 700; }
@media (max-width: 1050px) {
	.vnwo-process-diagram__steps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.vnwo-process-diagram__step:nth-child(3)::after { display: none; }
}
@media (max-width: 680px) {
	.vnwo-process-diagram__steps { grid-template-columns: 1fr; }
	.vnwo-process-diagram__step::after { display: none; }
}
@media print {
	.vnwo-process-diagram__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.vnwo-process-diagram__step::after { display: none; }
}
.vnwo-doc-section { border-block-end: 1px solid var(--vnwo-line); padding-block: 1.6rem; }
.vnwo-doc-section:first-child { padding-block-start: 0; }
.vnwo-doc-section h2 { scroll-margin-top: calc(var(--vnwo-header-height) + 1.5rem); }
.vnwo-doc-section p { max-width: var(--vnwo-readable); }
.vnwo-role-grid, .vnwo-tool-grid, .vnwo-download-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 1rem; }
.vnwo-hero-summary { display: grid; gap: .85rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); margin-block-start: 1.25rem; }
.vnwo-hero-summary .vnwo-card { padding: 1rem; }
.vnwo-template-card dl { display: grid; gap: .7rem; }
.vnwo-template-card dt { color: var(--vnwo-text); font-weight: 800; }
.vnwo-template-card dd { margin: 0; }
.vnwo-glossary { display: grid; gap: 1rem; }
.vnwo-glossary article { border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background: #fff; padding: 1rem; }
.vnwo-glossary h2 { font-size: 1.25rem; }
.vnwo-download-card { display: grid; gap: .75rem; }
.vnwo-home-map { margin-block-start: 1.25rem; }
.vnwo-home-map .vnwo-schematic-figure__image { max-height: 620px; object-fit: cover; object-position: top center; }
@media (max-width: 760px) { .vnwo-home-map .vnwo-schematic-figure__image { max-height: none; } }


/* v2.3.0 visual density and accessibility polish. */
:root {
  --vnwo-readable: 76ch;
  --vnwo-text-muted: #3f5065;
  --vnwo-line: #cbd7e4;
  --vnwo-line-strong: #8fa2b8;
  --vnwo-header-height: 64px;
}
h1 { font-size: clamp(2rem, 4vw, 3.7rem); max-width: 16ch; line-height: 1.04; }
h2 { font-size: clamp(1.45rem, 2.4vw, 2.35rem); line-height: 1.12; }
h3 { line-height: 1.18; }
p { max-width: var(--vnwo-readable); }
.site-header__inner { min-height: var(--vnwo-header-height); gap: .7rem; }
.site-brand__mark { width: 38px; height: 38px; border-radius: 12px; }
.site-brand__mark img { width: 28px; height: 28px; }
.site-brand__tagline { font-size: .72rem; }
.primary-nav__list { gap: .06rem; }
.primary-nav a, .primary-nav__more-toggle { display: inline-flex; min-height: 36px; align-items:center; border:0; border-radius:999px; background: transparent; color: var(--vnwo-text-muted); font-size: .82rem; font-weight: 760; padding: .42rem .54rem; text-decoration:none; white-space: nowrap; }
.primary-nav a:hover, .primary-nav__more-toggle:hover, .primary-nav .current-menu-item > a { background: rgba(11,111,174,.08); color: var(--vnwo-text); }
.primary-nav__more { position: relative; }
.primary-nav__more-toggle { gap: .42rem; }
.primary-nav__more-icon { inline-size: .48rem; block-size: .48rem; border-inline-end: 2px solid currentColor; border-block-end: 2px solid currentColor; transform: translateY(-.12rem) rotate(45deg); transition: transform .16s ease; }
.primary-nav__more-toggle[aria-expanded="true"] .primary-nav__more-icon { transform: translateY(.12rem) rotate(225deg); }
.primary-nav__sublist { position: absolute; inset-block-start: calc(100% + .45rem); inset-inline-end: 0; z-index: 115; inline-size: min(900px, calc(100vw - 2rem)); max-block-size: min(72dvh, 560px); overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; margin: 0; padding: .8rem; border: 1px solid var(--vnwo-line-strong); border-radius: var(--vnwo-radius); background: rgba(255,255,255,.995); box-shadow: 0 24px 70px rgba(18,45,76,.19); }
.primary-nav__sublist[hidden] { display:none; }
.primary-nav__groups { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .7rem; }
.primary-nav__group { min-width: 0; }
.primary-nav__group-title { display: block; margin-block-end: .35rem; padding-inline: .55rem; color: #52677f; font-family: var(--vnwo-font-mono); font-size: .68rem; font-weight: 850; letter-spacing: .09em; line-height: 1.35; text-transform: uppercase; }
.primary-nav__group-list { display: grid; gap: .12rem; margin: 0; padding: 0; list-style: none; }
.primary-nav__sublist a { justify-content: flex-start; inline-size: 100%; min-block-size: 34px; padding: .42rem .55rem; white-space: normal; line-height: 1.25; }
.primary-nav__more-toggle.is-current { color: var(--vnwo-text); box-shadow: inset 0 0 0 1px rgba(11,111,174,.18); }
.vnwo-hero, .vnwo-page-header { padding-block: clamp(1.55rem, 3.2vw, 3.1rem); }
.vnwo-hero__grid, .vnwo-page-header--with-image .vnwo-page-header__inner { gap: clamp(1rem, 2.5vw, 2rem); align-items: center; }
.vnwo-hero h1, .vnwo-page-header h1 { font-size: clamp(2rem, 4vw, 3.7rem); max-width: 17ch; }
.vnwo-hero__subheading, .vnwo-page-header__subheading { font-size: clamp(1rem, 1.25vw, 1.18rem); max-width: 62ch; }
.vnwo-hero__visual, .vnwo-page-header__figure { max-height: min(36vh, 310px); overflow: hidden; }
.vnwo-network-visual, .vnwo-page-header__image { max-height: min(34vh, 300px); object-fit: contain; }
.vnwo-core-strip { margin-block-start: .85rem; }
.vnwo-section { padding-block: clamp(2rem, 4.6vw, 4.4rem); }
.vnwo-section--tight { padding-block: clamp(1.2rem, 3vw, 2.6rem); }
.vnwo-section-heading { margin-block-end: 1rem; }
.vnwo-card { display: grid; align-content: start; gap: .55rem; padding: clamp(.9rem, 1.7vw, 1.25rem); }
.vnwo-card p, .vnwo-card dd, .vnwo-callout p { color: var(--vnwo-text-muted); }
.vnwo-card__meta, .vnwo-section-label { color: #38516d; font-size: .76rem; letter-spacing: .08em; font-weight: 850; }
.vnwo-version-meta span, .vnwo-alert-strip span, .vnwo-badge { color: #2f4054; background:#fff; border-color: var(--vnwo-line-strong); font-size: .82rem; }
.vnwo-card-grid, .vnwo-role-grid, .vnwo-tool-grid, .vnwo-download-grid { gap: .85rem; }
.vnwo-card-grid--balanced > *, .vnwo-template-grid > *, .vnwo-ecosystem-lane-grid > *, .vnwo-glossary-grid > * { min-height: 0; }
.vnwo-table-wrap { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.vnwo-table-wrap::after { content: 'Scroll table if needed'; display:block; padding:.4rem .75rem; color:#526275; font-size:.78rem; border-block-start:1px solid var(--vnwo-line); }
.vnwo-code-block { max-width: 100%; overflow-x: auto; }
.vnwo-code-block pre { white-space: pre; overflow-x: auto; font-size: .9rem; }
.vnwo-copy-button { font-size: .88rem; }
.vnwo-page-header__actions { margin-block-start: .95rem; }
.vnwo-image-panel--flow img { max-height: 260px; object-fit: contain; }
.vnwo-template-card--compact dl, .vnwo-template-card details dl { gap: .45rem; }
.vnwo-template-card--compact .vnwo-code-block, .vnwo-template-card .vnwo-code-block { margin-block-start: .2rem; }
.vnwo-disclosure summary { cursor:pointer; font-weight:800; color: var(--vnwo-accent); }
.vnwo-glossary-tools { display: grid; gap: .75rem; padding: 1rem; border:1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background:#fff; }
.vnwo-az-index { display:flex; flex-wrap:wrap; gap:.35rem; }
.vnwo-az-index a { min-width: 2rem; text-align:center; border:1px solid var(--vnwo-line); border-radius:999px; padding:.28rem .5rem; background:#fff; font-weight:800; text-decoration:none; }
.vnwo-glossary-letter { grid-column: 1 / -1; margin-block: .75rem .1rem; }
.vnwo-glossary-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); }
.vnwo-definition h3 { font-size: 1.2rem; }
.vnwo-claim-comparison { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr)); gap:.85rem; margin-block-end: 1rem; }
.vnwo-claim-card { border:1px solid var(--vnwo-line); border-radius: var(--vnwo-radius); background:#fff; padding:1rem; }
.vnwo-safer-replacement { border-inline-start: 4px solid var(--vnwo-ok); padding-inline-start: .75rem; }
.vnwo-safer-replacement code { white-space: normal; }
.vnwo-ecosystem-lane-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr)); gap: .95rem; }
.vnwo-lane-group__items { display:grid; gap:.75rem; }
.vnwo-lane-card { border-block-start:1px solid var(--vnwo-line); padding-block-start:.7rem; }
.vnwo-lane-card h4 { margin-block-end:.25rem; font-size:1rem; }
.vnwo-download-card .vnwo-button { width: fit-content; }
@media (max-width: 1023px) {
  .primary-nav { max-block-size: calc(100dvh - var(--vnwo-header-height) - 1rem); overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
  .primary-nav__more { position: static; }
  .primary-nav__sublist { position: static; inline-size: auto; max-block-size: none; overflow: visible; box-shadow:none; border:0; border-inline-start: 2px solid var(--vnwo-line); border-radius: 0; background: transparent; margin-inline-start: .65rem; padding: .45rem 0 .45rem .65rem; }
  .primary-nav__groups { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem 1rem; }
  .primary-nav__group-title { padding-inline: .65rem; }
  .primary-nav__sublist a { padding-inline: .75rem; }
}
@media (max-width: 720px) {
  .primary-nav__groups { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .vnwo-page-header__inner, .vnwo-hero__grid, .vnwo-split, .vnwo-memory-section, .vnwo-final-cta__inner { grid-template-columns: 1fr !important; }
  .vnwo-hero__visual, .vnwo-page-header__figure { max-height: 240px; order: 2; }
}
@media (max-width: 560px) {
  :root { --vnwo-header-height: 58px; }
  body { font-size: 15.5px; }
  h1, .vnwo-hero h1, .vnwo-page-header h1 { font-size: clamp(1.85rem, 10vw, 2.65rem); max-width: 100%; line-height: 1.08; }
  h2 { font-size: clamp(1.35rem, 7vw, 2rem); }
  .vnwo-container { width: min(100% - 1.1rem, var(--vnwo-max-width)); }
  .vnwo-button-row { align-items: stretch; }
  .vnwo-button-row .vnwo-button { width: 100%; }
  .vnwo-hero, .vnwo-page-header { padding-block: 1.15rem 1.55rem; }
  .vnwo-section { padding-block: 1.55rem; }
  .vnwo-card { padding: .9rem; }
  .vnwo-table { min-width: 520px; }
  .vnwo-table-wrap--desktop { display:none; }
}

.is-hidden { display: none !important; }

/* v2.3.1 QA hardening: compact navigation and regression-test affordances. */
.primary-nav a[aria-current="page"],
.primary-nav__sublist a[aria-current="page"],
.primary-nav__more-toggle[aria-expanded="true"] {
  background: rgba(11,111,174,.11);
  color: var(--vnwo-text);
  box-shadow: inset 0 0 0 1px rgba(11,111,174,.18);
}
.primary-nav__more-toggle:focus-visible,
.primary-nav__sublist a:focus-visible {
  outline: var(--vnwo-focus-ring);
  outline-offset: 2px;
}
.vnwo-route-qa-note {
  border: 1px dashed var(--vnwo-line-strong);
  border-radius: var(--vnwo-radius);
  background: #f8fbff;
  color: var(--vnwo-text-muted);
  padding: .8rem 1rem;
  font-size: .92rem;
}
@media (min-width: 1024px) {
  .primary-nav__list { align-items: center; }
  .primary-nav__more-toggle { cursor: pointer; }
}
@media (max-width: 1023px) {
  .primary-nav__more-toggle {
    justify-content: flex-start;
    width: 100%;
  }
}
@media (max-width: 360px) {
  .site-brand__name { font-size: .88rem; }
  .site-brand__mark { width: 34px; height: 34px; }
  .site-header__toggle { min-height: 40px; padding-inline: .62rem; }
}


/* v2.3.2 QA tooling and responsive overflow hardening. */
:root {
  --vnwo-mobile-edge: 0.75rem;
}
.site-main, .vnwo-document, .vnwo-card, .vnwo-callout, .vnwo-page-header, .vnwo-hero {
  min-width: 0;
}
.site-main a, .site-footer a, .vnwo-card a, .vnwo-callout a, .vnwo-code-block, .vnwo-pill, .vnwo-chip, .vnwo-badge {
  overflow-wrap: anywhere;
  word-break: normal;
}
.vnwo-card, .vnwo-callout, .vnwo-alert-strip, .vnwo-version-meta, .vnwo-core-strip {
  max-width: 100%;
}
.vnwo-chip, .vnwo-badge, .vnwo-pill, .vnwo-version-meta span, .vnwo-alert-strip span {
  white-space: normal;
  line-height: 1.3;
}
.vnwo-code-block,
.vnwo-table-wrap {
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius-sm);
}
.vnwo-code-block {
  background: #07111e;
  color: #eaf3ff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03);
}
.vnwo-code-block pre {
  margin: 0;
  padding: .9rem;
  color: #eaf3ff;
}
.vnwo-code-block code,
.vnwo-code-block pre code {
  color: inherit;
}
.vnwo-table-wrap {
  background: #fff;
}
.vnwo-table-wrap table {
  margin-block-end: 0;
}
.vnwo-table-wrap:focus-within,
.vnwo-code-block:focus-within {
  outline: var(--vnwo-focus-ring);
  outline-offset: 2px;
}
.vnwo-code-block::-webkit-scrollbar,
.vnwo-table-wrap::-webkit-scrollbar {
  height: 12px;
  width: 12px;
}
.vnwo-code-block::-webkit-scrollbar-thumb {
  background: rgba(234,243,255,0.35);
  border-radius: 999px;
  border: 2px solid #07111e;
}
.vnwo-table-wrap::-webkit-scrollbar-thumb {
  background: rgba(18,42,66,0.25);
  border-radius: 999px;
  border: 2px solid #fff;
}

.primary-nav__sublist a[aria-current="page"]::before,
.primary-nav a[aria-current="page"]::before {
  content: "";
  inline-size: .42rem;
  block-size: .42rem;
  border-radius: 50%;
  background: currentColor;
}
@media (max-width: 1023px) {
  .site-header__inner {
    grid-template-columns: auto auto;
  }
  .site-header__toggle {
    justify-self: end;
  }
}
@media (max-width: 420px) {
  .vnwo-container {
    width: min(100% - var(--vnwo-mobile-edge) * 2, var(--vnwo-max-width));
  }
  .vnwo-card-grid,
  .vnwo-role-grid,
  .vnwo-tool-grid,
  .vnwo-download-grid,
  .vnwo-claim-comparison,
  .vnwo-ecosystem-lane-grid,
  .vnwo-glossary-grid {
    grid-template-columns: 1fr;
  }
  .vnwo-core-strip span,
  .vnwo-pill,
  .vnwo-chip,
  .vnwo-badge {
    width: 100%;
    justify-content: flex-start;
  }
  .primary-nav {
    inset-inline: var(--vnwo-mobile-edge);
  }
}


/* v2.5.0 AI judgment and refusal governance additions. */
.vnwo-judgment-flow { display: grid; gap: .7rem; }
.vnwo-judgment-flow code { overflow-wrap: anywhere; }
.vnwo-reason-code { font-family: var(--vnwo-font-mono); font-weight: 800; }
.vnwo-card--judgment { border-inline-start: 4px solid var(--vnwo-accent); }
@media (max-width: 560px) {
  .vnwo-chip-list .vnwo-chip { max-width: 100%; overflow-wrap: anywhere; }
}

/* v2.7.3 readability and contrast QA pass. */
:root {
  --vnwo-text-muted: #45566a;
  --vnwo-code-bg: #07111e;
  --vnwo-code-text: #f3f8ff;
  --vnwo-code-line: #2c4d68;
  --vnwo-chip-text: #203247;
  --vnwo-chip-bg: #eef7ff;
  --vnwo-scrollbar-thumb: #607a95;
}
.vnwo-hero__subheading,
.vnwo-page-header__subheading,
.vnwo-card p,
.vnwo-callout p,
.vnwo-definition dd,
.vnwo-version-entry dd,
.vnwo-key-values dd,
.vnwo-section-nav a,
.vnwo-toc a,
.primary-nav a,
.primary-nav__more-toggle {
  color: #3f5064;
}
.vnwo-card__meta,
.vnwo-section-label,
.vnwo-callout__label,
.vnwo-version-meta span,
.vnwo-alert-strip span,
.vnwo-hero__facts span,
.vnwo-meta-strip span,
.vnwo-badge,
.vnwo-chip,
.vnwo-pill,
.vnwo-chip-list li {
  color: var(--vnwo-chip-text);
}
.vnwo-chip,
.vnwo-chip-list li,
.vnwo-badge,
.vnwo-pill,
.vnwo-version-meta span,
.vnwo-alert-strip span {
  background: var(--vnwo-chip-bg);
  border-color: #adc0d2;
}
.vnwo-code-block {
  background: var(--vnwo-code-bg) !important;
  color: var(--vnwo-code-text) !important;
  border-color: var(--vnwo-code-line) !important;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-color: var(--vnwo-scrollbar-thumb) var(--vnwo-code-bg);
  scrollbar-width: thin;
}
.vnwo-code-block pre,
.vnwo-code-block code,
.vnwo-code-block pre code {
  color: var(--vnwo-code-text) !important;
  background: transparent !important;
  text-shadow: none;
}
.vnwo-code-block pre {
  font-size: clamp(.84rem, 1.3vw, .95rem);
  line-height: 1.58;
  tab-size: 2;
  white-space: pre;
  word-break: normal;
  overflow-x: auto;
}
.vnwo-copy-block .vnwo-copy-button + pre {
  padding-block-start: 4.25rem;
}
.vnwo-code-block .vnwo-copy-button {
  background: #ffffff;
  color: #07111e;
  border-color: #7890a8;
  box-shadow: 0 8px 20px rgba(0,0,0,.16);
}
.vnwo-code-block .vnwo-copy-button:hover,
.vnwo-code-block .vnwo-copy-button:focus-visible {
  background: #eaf6ff;
  color: #07111e;
}
.vnwo-code-block::after {
  content: 'Scroll code if needed';
  display: block;
  border-block-start: 1px solid rgba(234,243,255,.16);
  color: #c9d9e8;
  font-size: .78rem;
  padding: .35rem .85rem;
}
.vnwo-table-wrap {
  border-color: #bdccda;
  background: #ffffff;
  scrollbar-color: #71859b #ffffff;
  scrollbar-width: thin;
}
.vnwo-table th,
.vnwo-table td {
  color: #203247;
  line-height: 1.5;
}
.vnwo-table tbody tr:nth-child(even) {
  background: #f8fbff;
}
.vnwo-table-wrap::after {
  color: #33475f;
  background: #f8fbff;
}
.vnwo-safer-replacement {
  background: #f2fbf6;
  border-radius: var(--vnwo-radius-sm);
  padding-block: .5rem;
}
.vnwo-template-card .vnwo-code-block,
.vnwo-claim-card .vnwo-code-block,
.vnwo-definition .vnwo-code-block {
  margin-block: .6rem;
}
@media (max-width: 560px) {
  .vnwo-copy-block .vnwo-copy-button + pre {
    padding-block-start: 1rem;
  }
  .vnwo-code-block pre {
    font-size: .82rem;
    line-height: 1.52;
  }
  .vnwo-code-block .vnwo-copy-button {
    width: calc(100% - 1.5rem);
    justify-content: center;
  }
  .vnwo-code-block::after,
  .vnwo-table-wrap::after {
    font-size: .74rem;
  }
}



/* v2.8.0 technical architecture and research surfaces. */
.vnwo-core-strip-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(.8rem, 2vw, 1.2rem);
}
.vnwo-architecture-flow {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
  gap: .75rem;
  padding: 0;
  margin: 1.25rem 0;
  counter-reset: vnwo-architecture-step;
}
.vnwo-architecture-flow li {
  counter-increment: vnwo-architecture-step;
  position: relative;
  min-width: 0;
  padding: 1rem;
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius-sm);
  background: #fff;
}
.vnwo-architecture-flow li::before {
  content: counter(vnwo-architecture-step, decimal-leading-zero);
  display: block;
  margin-bottom: .45rem;
  color: #315574;
  font-family: var(--vnwo-font-mono);
  font-size: .78rem;
  font-weight: 800;
}
.vnwo-architecture-flow strong,
.vnwo-architecture-flow span { display: block; }
.vnwo-architecture-flow span { margin-top: .35rem; color: #3e5369; }
.vnwo-pattern-card { margin-block: .9rem; }
.vnwo-monitoring-ladder { display: grid; gap: .75rem; }
.vnwo-monitoring-ladder .vnwo-card { border-inline-start: .35rem solid #4a7598; }
@media (max-width: 960px) {
  .vnwo-core-strip-grid { grid-template-columns: 1fr; }
}
@media (max-width: 420px) {
  .vnwo-architecture-flow { grid-template-columns: 1fr; }
  .vnwo-architecture-flow li { padding: .85rem; }
}


/* v2.8.1 small-laptop navigation and worksheet polish. */
@media (min-width: 1024px) and (max-width: 1440px) {
  .site-header__inner { gap: .48rem; }
  .primary-nav a, .primary-nav__more-toggle { padding-inline: .45rem; font-size: .78rem; }
  .site-header__cta { padding-inline: .72rem; }
  .primary-nav__sublist { inline-size: min(860px, calc(100vw - 1.5rem)); }
}
.has-open-nav { overflow: hidden; }
.vnwo-worksheet-table th { inline-size: 28%; }
.vnwo-case-card h3 { margin-block-end: .35rem; }
.vnwo-case-card .vnwo-button { margin-block-start: auto; inline-size: fit-content; }
@media (max-width: 560px) {
  .vnwo-worksheet-table { min-inline-size: 620px; }
}

/* v2.8.1 small-laptop navigation and viewport-fit hardening. */
.primary-nav__more-toggle {
  gap: .42rem;
}
.primary-nav__more-icon {
  inline-size: .5rem;
  block-size: .5rem;
  border-inline-end: 2px solid currentColor;
  border-block-end: 2px solid currentColor;
  transform: translateY(-.12rem) rotate(45deg);
  transition: transform .18s ease;
}
.primary-nav__more-toggle[aria-expanded="true"] .primary-nav__more-icon {
  transform: translateY(.12rem) rotate(225deg);
}
.primary-nav__sublist {
  inline-size: min(960px, calc(100vw - 2rem));
  max-block-size: min(72vh, calc(100dvh - var(--vnwo-header-height) - 1.5rem));
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .9rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: .85rem;
}
.primary-nav__group,
.primary-nav__group-list {
  min-inline-size: 0;
}
.primary-nav__group {
  display: grid;
  align-content: start;
  gap: .32rem;
}
.primary-nav__group-title {
  display: block;
  color: #52667d;
  font-family: var(--vnwo-font-mono);
  font-size: .69rem;
  font-weight: 880;
  letter-spacing: .1em;
  line-height: 1.25;
  padding: .28rem .52rem;
  text-transform: uppercase;
}
.primary-nav__group-list {
  display: grid;
  gap: .08rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.primary-nav__sublist a {
  min-block-size: 34px;
  border-radius: .6rem;
  padding: .42rem .52rem;
  line-height: 1.22;
  white-space: normal;
}
.primary-nav__sublist::-webkit-scrollbar,
.primary-nav::-webkit-scrollbar {
  inline-size: 10px;
  block-size: 10px;
}
.primary-nav__sublist::-webkit-scrollbar-thumb,
.primary-nav::-webkit-scrollbar-thumb {
  border: 2px solid #fff;
  border-radius: 999px;
  background: #9aafc3;
}

@media (max-width: 1023px) {
  html.has-open-nav {
    overflow: hidden;
  }
  .site-header__inner {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .site-header__toggle {
    display: inline-flex;
    justify-self: end;
  }
  .site-header__cta {
    display: none;
  }
  .primary-nav {
    position: absolute;
    inset-block-start: calc(100% + .35rem);
    inset-inline-start: auto;
    inset-inline-end: max(1rem, calc((100vw - var(--vnwo-max-width)) / 2));
    display: none;
    inline-size: min(760px, calc(100vw - 2rem));
    max-block-size: calc(100dvh - var(--vnwo-header-height) - 1.2rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    border: 1px solid var(--vnwo-line-strong);
    border-radius: var(--vnwo-radius);
    background: rgba(255,255,255,.99);
    padding: .75rem;
    box-shadow: var(--vnwo-shadow);
  }
  .primary-nav.is-open {
    display: block;
  }
  .primary-nav__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .2rem .45rem;
  }
  .primary-nav__list > li {
    min-inline-size: 0;
  }
  .primary-nav a,
  .primary-nav__more-toggle {
    justify-content: flex-start;
    inline-size: 100%;
    white-space: normal;
  }
  .primary-nav__more {
    position: static;
    grid-column: 1 / -1;
  }
  .primary-nav__groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .7rem 1rem;
  }
  .primary-nav__sublist {
    position: static;
    inline-size: auto;
    max-block-size: none;
    margin: .45rem 0 0;
    overflow: visible;
    border: 1px solid var(--vnwo-line);
    border-inline-start: 1px solid var(--vnwo-line);
    border-radius: .85rem;
    background: #f7faff;
    padding: .7rem;
    box-shadow: none;
  }
}

@media (max-width: 900px) {
  .primary-nav__groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .primary-nav {
    inset-inline: .55rem;
    inline-size: auto;
  }
  .primary-nav__list,
  .primary-nav__groups {
    grid-template-columns: 1fr;
  }
  .primary-nav__group-title {
    padding-block-start: .55rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .primary-nav__more-icon {
    transition: none;
  }
}


/* v2.9.0 orientation, resource filtering, and claim-boundary panels. */
.vnwo-orientation-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) repeat(2, minmax(220px, .95fr));
  gap: clamp(1rem, 2.6vw, 1.5rem);
  align-items: stretch;
}
.vnwo-plain-card h2 { font-size: clamp(1.35rem, 2vw, 1.8rem); }
.vnwo-role-grid .vnwo-role-card { display: flex; flex-direction: column; }
.vnwo-role-card a { margin-block-start: auto; }
.vnwo-glossary-strip {
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius);
  background: linear-gradient(135deg, #f8fbff, #eff8f2);
  padding: clamp(1rem, 3vw, 1.45rem);
}
.vnwo-glossary-strip__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
  gap: .8rem;
}
.vnwo-glossary-strip article {
  min-width: 0;
  border: 1px solid rgba(18, 107, 67, .18);
  border-radius: var(--vnwo-radius-sm);
  background: rgba(255,255,255,.78);
  padding: .85rem;
}
.vnwo-glossary-strip h3 { font-size: 1rem; margin-block-end: .35rem; }
.vnwo-boundary-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1rem;
  align-items: center;
  border: 1px dashed var(--vnwo-line-strong);
  border-radius: var(--vnwo-radius);
  background: #fff;
  padding: clamp(1rem, 2.8vw, 1.45rem);
}
.vnwo-boundary-panel p:last-child { margin-bottom: 0; }
.vnwo-boundary-panel__badges { display: flex; flex-wrap: wrap; gap: .45rem; margin-block-start: .75rem; }
.vnwo-boundary-panel__badges span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border: 1px solid var(--vnwo-line);
  border-radius: 999px;
  background: #f7fbff;
  color: var(--vnwo-text);
  font-size: .82rem;
  font-weight: 760;
  padding: .28rem .56rem;
}
.vnwo-boundary-panel__link { justify-self: end; margin: 0; }
.vnwo-global-boundary {
  border-block-start: 1px solid #0f2136;
  background: #08111d;
  padding-block: clamp(1.25rem, 3vw, 2rem);
}
.vnwo-boundary-panel--footer {
  border-color: rgba(139,211,255,.35);
  background: rgba(255,255,255,.055);
  color: #eef3f8;
}
.vnwo-boundary-panel--footer p,
.vnwo-boundary-panel--footer .vnwo-card__meta { color: #d9e6f4; }
.vnwo-boundary-panel--footer a { color: #b8f7d4; }
.vnwo-boundary-panel--footer .vnwo-boundary-panel__badges span {
  border-color: rgba(139,211,255,.35);
  background: rgba(255,255,255,.08);
  color: #eef3f8;
}
.vnwo-resource-controls {
  display: grid;
  gap: .8rem;
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius);
  background: #fff;
  padding: clamp(1rem, 2.5vw, 1.35rem);
  margin-block-end: 1.2rem;
}
.vnwo-filter-row { display: flex; flex-wrap: wrap; gap: .45rem; }
.vnwo-filter-chip {
  border: 1px solid var(--vnwo-line-strong);
  border-radius: 999px;
  background: #fff;
  color: var(--vnwo-text);
  font-weight: 760;
  padding: .5rem .75rem;
}
.vnwo-filter-chip.is-active,
.vnwo-filter-chip[aria-pressed="true"] { border-color: var(--vnwo-accent); background: #eaf6ff; color: #073d61; }
.vnwo-resource-grid [hidden] { display: none !important; }
.vnwo-resource-card { display: flex; flex-direction: column; }
.vnwo-resource-card .vnwo-button { margin-block-start: auto; width: fit-content; }
.vnwo-resource-meta {
  display: grid;
  gap: .35rem;
  margin-block: .75rem 1rem;
}
.vnwo-resource-meta div { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); gap: .5rem; align-items: baseline; }
.vnwo-resource-meta dt { color: var(--vnwo-text); font-weight: 800; }
.vnwo-resource-meta dd { margin: 0; color: var(--vnwo-text-muted); overflow-wrap: anywhere; }
.vnwo-copy-button--inline { position: static; margin-block-start: .35rem; }
@media (max-width: 1180px) and (min-width: 1024px) {
  .site-brand__tagline { display: none; }
  .primary-nav a, .primary-nav__more-toggle { font-size: .74rem; padding-inline: .34rem; }
  .primary-nav__sublist { inline-size: min(900px, calc(100vw - 1rem)); }
  .primary-nav__groups { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .55rem; }
}
@media (max-width: 1023px) {
  .vnwo-orientation-grid, .vnwo-boundary-panel { grid-template-columns: 1fr; }
  .vnwo-boundary-panel__link { justify-self: start; }
}
@media (max-width: 520px) {
  .vnwo-resource-meta div { grid-template-columns: 1fr; gap: .1rem; }
}


/* v2.9.2 deployment-parity and adoption-readiness refinements */
.vnwo-skip-local {
  display: inline-flex;
  min-height: 2.75rem;
  align-items: center;
  font-weight: 700;
}
.vnwo-template-groups { display: grid; gap: var(--space-6); }
.vnwo-template-group {
  border: 1px solid var(--color-border, #cbd5e1);
  border-radius: var(--radius-lg, 1rem);
  background: var(--color-surface, #fff);
  overflow: clip;
}
.vnwo-template-group > summary {
  display: flex;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-5);
  cursor: pointer;
  font-weight: 800;
}
.vnwo-template-group > .vnwo-card-grid { padding: 0 var(--space-5) var(--space-5); }
.vnwo-template-group__count,
.vnwo-filter-status {
  font-variant-numeric: tabular-nums;
  color: var(--color-text-muted, #475569);
}
.vnwo-template-card__links { display: flex; flex-wrap: wrap; gap: .65rem 1rem; margin-top: var(--space-4); }
.vnwo-template-card__links a { font-weight: 700; }
.vnwo-boundary-panel > summary {
  display: grid;
  gap: .25rem;
  cursor: pointer;
  padding: var(--space-4) var(--space-5);
  font-weight: 650;
}
.vnwo-boundary-panel__summary-label { font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
.vnwo-boundary-panel[open] > summary { border-bottom: 1px solid rgba(148, 163, 184, .35); }
.vnwo-boundary-panel__content { padding: var(--space-4) var(--space-5); }
.vnwo-global-boundary { padding-block: var(--space-4); }
@media (max-width: 1023px) {
  .primary-nav.is-open {
    max-height: calc(100dvh - var(--site-header-height, 5rem));
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}
@media (max-width: 360px) {
  .site-header__inner { gap: .5rem; }
  .site-brand__tagline { display: none; }
  .primary-nav__list { min-width: 0; }
  .vnwo-template-group > summary,
  .vnwo-template-group > .vnwo-card-grid { padding-inline: var(--space-3); }
}


/* v2.9.2 final release metadata, skip navigation, and compact footer refinements. */
.skip-link--navigation:focus { inset-inline-start: 10.5rem; }
.vnwo-page-header__meta,
.vnwo-hero__meta { padding-block: 0 1rem; }
.vnwo-version-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem .8rem;
  align-items: center;
  border-block-start: 1px solid var(--vnwo-line, #d8e1eb);
  color: var(--vnwo-text-muted, #475569);
  font-size: .78rem;
  line-height: 1.4;
  padding-block-start: .65rem;
}
.vnwo-version-meta span + span::before {
  content: "•";
  margin-inline-end: .8rem;
  color: var(--vnwo-line-strong, #94a3b8);
}
.site-footer__nav .footer-nav__list {
  columns: 2;
  column-gap: 1.25rem;
}
.site-footer__nav .footer-nav__list li { break-inside: avoid; }
@media (max-width: 680px) {
  .skip-link--navigation:focus { inset-inline-start: 1rem; inset-block-start: 4rem; }
  .vnwo-version-meta { display: grid; gap: .25rem; }
  .vnwo-version-meta span + span::before { content: none; }
  .site-footer__nav .footer-nav__list { columns: 1; }
}

.vnwo-version-meta a {
  color: var(--vnwo-accent, #075985);
  font-weight: 760;
  text-underline-offset: .18em;
}
.vnwo-version-meta__current {
  border: 1px solid #86b99a;
  border-radius: 999px;
  background: #edf8f0;
  color: #174c2c;
  font-family: var(--vnwo-font-mono);
  font-weight: 780;
  padding: .18rem .5rem;
}

/* v3.0.2 application profiles, machine-reader access, and deployment integrity. */
.vnwo-profile-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 25rem), 1fr));
  gap: 1rem;
}
.vnwo-profile-card { display: flex; flex-direction: column; }
.vnwo-profile-card > a:last-child { margin-block-start: auto; font-weight: 780; }
.vnwo-maturity-badge {
  display: inline-flex;
  align-items: center;
  min-height: 1.75rem;
  border: 1px solid var(--vnwo-line-strong);
  border-radius: 999px;
  background: #eef7f3;
  color: #153f34;
  padding: .2rem .6rem;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .025em;
}
.vnwo-boundary-note {
  border-inline-start: .25rem solid var(--vnwo-accent);
  background: #f6f9fc;
  padding: .8rem 1rem;
}
.vnwo-integrity-table [data-deployment-check-result] { min-inline-size: 12rem; font-weight: 760; }
.vnwo-integrity-table tr.is-check-pass [data-deployment-check-result] { color: #155d43; }
.vnwo-integrity-table tr.is-check-fail [data-deployment-check-result] { color: #8a2d24; }
.vnwo-integrity-table tr.is-check-pass { background: #f2fbf7; }
.vnwo-integrity-table tr.is-check-fail { background: #fff6f4; }
@media (max-width: 640px) {
  .vnwo-profile-grid { grid-template-columns: 1fr; }
  .vnwo-integrity-table [data-deployment-check-result] { min-inline-size: 10rem; }
}


/* v3.0.2 evidence, application-profile, and copy-review layouts. */
.vnwo-two-column {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  align-items: start;
}
.vnwo-kpi-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr));
  gap: var(--space-3);
}
.vnwo-kpi-strip > * {
  display: grid;
  gap: .35rem;
  min-width: 0;
  padding: var(--space-4);
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius);
  background: #fff;
}
.vnwo-kpi-strip span { color: var(--vnwo-text-muted); font-size: .9rem; }
.vnwo-copy-row { display: grid; gap: .65rem; align-items: start; }
.vnwo-copy-row [data-copy-source] { display: block; overflow-wrap: anywhere; }
.vnwo-copy-row .vnwo-copy-button { justify-self: start; }
.vnwo-filter input[type="search"] {
  inline-size: min(100%, 44rem);
  min-block-size: 44px;
  padding: .7rem .85rem;
  border: 1px solid var(--vnwo-line-strong);
  border-radius: .65rem;
  background: #fff;
  color: var(--vnwo-text);
}
@media (max-width: 720px) {
  .vnwo-two-column { grid-template-columns: 1fr; }
}

/* v3.0.2 local review tools */
.vnwo-review-tool {
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	background: var(--surface);
	box-shadow: var(--shadow-sm);
	padding: clamp(1rem, 2vw, 1.75rem);
}
.vnwo-form-grid {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(14rem, 1fr);
	gap: 1rem;
	align-items: end;
}
.vnwo-field {
	display: grid;
	gap: .45rem;
}
.vnwo-field label {
	font-weight: 700;
}
.vnwo-field select,
.vnwo-review-textarea {
	width: 100%;
	border: 1px solid var(--border-strong, var(--border));
	border-radius: var(--radius-sm);
	background: var(--surface);
	color: var(--text);
	font: inherit;
	padding: .75rem;
}
.vnwo-review-textarea {
	font-family: var(--font-mono);
	line-height: 1.55;
	resize: vertical;
	tab-size: 2;
}
.vnwo-field--actions,
.vnwo-button-row {
	display: flex;
	flex-wrap: wrap;
	gap: .65rem;
}
.vnwo-help-text {
	color: var(--text-muted);
	font-size: .92rem;
	margin: 0;
}
.vnwo-review-results {
	margin-top: 1rem;
	border-inline-start: .3rem solid var(--border-strong, var(--border));
	background: var(--surface-subtle, var(--surface));
	padding: 1rem 1rem 1rem 1.15rem;
}
.vnwo-review-results[data-status="success"] { border-inline-start-color: var(--success, #247a45); }
.vnwo-review-results[data-status="error"] { border-inline-start-color: var(--danger, #b42318); }
.vnwo-review-results[data-status="pending"] { border-inline-start-color: var(--accent); }
.vnwo-review-results h3 { margin-block-start: 0; }
.vnwo-review-results li + li { margin-block-start: .45rem; }
@media (max-width: 720px) {
	.vnwo-form-grid { grid-template-columns: 1fr; }
	.vnwo-field--actions { align-items: stretch; }
	.vnwo-field--actions .vnwo-button { flex: 1 1 auto; }
}

/* v3.0.4 participation implementation toolkit and browser-local generator */
.vnwo-participation-generator form {
	display: grid;
	gap: 1rem;
	margin-block-end: 1rem;
}
.vnwo-participation-generator input[type="text"],
.vnwo-participation-generator textarea,
.vnwo-participation-generator select {
	inline-size: 100%;
	border: 1px solid var(--border-strong, var(--border));
	border-radius: var(--radius-sm);
	background: var(--surface);
	color: var(--text);
	font: inherit;
	padding: .75rem;
}
.vnwo-participation-generator textarea {
	resize: vertical;
	line-height: 1.5;
}
.vnwo-fieldset {
	min-inline-size: 0;
	border: 1px solid var(--border);
	border-radius: var(--radius-md);
	padding: 1rem;
}
.vnwo-fieldset legend {
	font-weight: 800;
	padding-inline: .35rem;
}
.vnwo-form-grid--compact {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
}
.vnwo-form-grid--three {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: start;
}
.vnwo-participation-generator .vnwo-review-results {
	margin-block: 1rem;
}
@media (max-width: 860px) {
	.vnwo-form-grid--compact,
	.vnwo-form-grid--three { grid-template-columns: 1fr; }
}

/* v3.0.6 Teleodynamic ecosystem orientation */
.vnwo-ecosystem-group + .vnwo-ecosystem-group { margin-block-start: var(--space-12, 3rem); }
.vnwo-section-heading--compact { margin-block-end: var(--space-5, 1.25rem); }
.vnwo-ecosystem-card { display: flex; flex-direction: column; gap: .8rem; }
.vnwo-ecosystem-card > a { margin-block-start: auto; }
.vnwo-definition-list { display: grid; gap: .75rem; margin: 0; }
.vnwo-definition-list div { border-block-start: 1px solid var(--vnwo-line); padding-block-start: .75rem; }
.vnwo-definition-list dt { font-weight: 760; color: var(--vnwo-text); }
.vnwo-definition-list dd { margin: .25rem 0 0; color: var(--vnwo-muted); }


/* v3.0.8 source-status, responsive table, and cross-lane case components. */
:is(#reciprocal-title, #source-status-title, #source-routes-title, #lane-map-title, #worked-case-title, #routing-table-title, #machine-summary-title) { scroll-margin-top: calc(var(--vnwo-header-height, 80px) + 1rem); }
.vnwo-ecosystem-toc { position: static; grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr)); align-items: center; }
.vnwo-ecosystem-toc > strong { color: var(--vnwo-text); padding: .45rem .55rem; }
.vnwo-status-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-block: 1rem; }
.vnwo-status-summary > div { display: grid; gap: .2rem; border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius-sm); background: var(--vnwo-panel); padding: .9rem; }
.vnwo-status-summary strong { color: var(--vnwo-text); font-size: clamp(1.5rem, 3vw, 2.15rem); line-height: 1; }
.vnwo-status-summary span { color: var(--vnwo-text-muted); }
.vnwo-status-badge { display: inline-flex; align-items: center; gap: .4rem; inline-size: fit-content; border: 1px solid var(--vnwo-line-strong); border-radius: 999px; background: var(--vnwo-panel); color: var(--vnwo-text); font-size: .82rem; font-weight: 800; line-height: 1.25; padding: .35rem .58rem; }
.vnwo-status-badge[data-state="verified"] { border-style: solid; }
.vnwo-status-badge[data-state="verified_with_drift"] { border-style: dashed; }
.vnwo-status-badge[data-state="unavailable_during_review"], .vnwo-status-badge[data-state="not_checked"], .vnwo-status-badge[data-state="stale_review"] { border-style: dotted; }
.vnwo-source-status-table td small { display: block; margin-block-start: .4rem; color: var(--vnwo-text-muted); text-transform: capitalize; }
.vnwo-source-status-table code { display: inline-block; margin-block-start: .35rem; max-inline-size: 32ch; overflow-wrap: anywhere; white-space: normal; }
.vnwo-source-status-actions { margin-block-start: 1rem; }
.vnwo-card__status { display: flex; justify-content: flex-start; }
.vnwo-case-timeline { display: grid; gap: 1rem; margin: 0; padding: 0; list-style: none; counter-reset: none; }
.vnwo-case-timeline > li { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: .85rem; align-items: start; }
.vnwo-case-timeline__number { display: grid; place-items: center; inline-size: 2.5rem; block-size: 2.5rem; border: 2px solid var(--vnwo-accent); border-radius: 999px; background: var(--vnwo-panel); color: var(--vnwo-text); font-weight: 850; }
.vnwo-case-timeline .vnwo-card { min-inline-size: 0; }
.vnwo-table-wrap--responsive::after { content: 'Scroll horizontally only when the table cannot reflow'; }
@media (max-width: 720px) {
  .vnwo-status-summary { grid-template-columns: 1fr; }
  .vnwo-table-wrap--responsive { overflow: visible; border: 0; background: transparent; }
  .vnwo-table-wrap--responsive::after { display: none; }
  .vnwo-table--responsive { display: block; min-inline-size: 0; }
  .vnwo-table--responsive caption { display: block; border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius-sm) var(--vnwo-radius-sm) 0 0; background: var(--vnwo-panel); }
  .vnwo-table--responsive thead { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .vnwo-table--responsive tbody, .vnwo-table--responsive tr, .vnwo-table--responsive td { display: block; inline-size: 100%; }
  .vnwo-table--responsive tbody { display: grid; gap: .85rem; margin-block-start: .85rem; }
  .vnwo-table--responsive tr { border: 1px solid var(--vnwo-line); border-radius: var(--vnwo-radius-sm); background: var(--vnwo-panel); overflow: hidden; }
  .vnwo-table--responsive td { display: grid; grid-template-columns: minmax(7rem, .34fr) minmax(0, 1fr); gap: .75rem; border: 0; border-block-start: 1px solid var(--vnwo-line); padding: .8rem; }
  .vnwo-table--responsive td:first-child { border-block-start: 0; }
  .vnwo-table--responsive td::before { content: attr(data-label); color: var(--vnwo-text); font-weight: 820; }
  .vnwo-case-timeline > li { grid-template-columns: 2rem minmax(0, 1fr); gap: .6rem; }
  .vnwo-case-timeline__number { inline-size: 2rem; block-size: 2rem; }
}
@media (max-width: 420px) {
  .vnwo-table--responsive td { grid-template-columns: 1fr; gap: .25rem; }
}
@media print {
  .vnwo-ecosystem-toc, .vnwo-source-status-actions { display: none !important; }
  .vnwo-status-summary { grid-template-columns: repeat(3, 1fr); }
  .vnwo-table-wrap--responsive { overflow: visible; border: 0; }
  .vnwo-table--responsive { display: table; min-inline-size: 0; font-size: 9pt; }
  .vnwo-table--responsive caption { display: table-caption; border: 0; }
  .vnwo-table--responsive thead { position: static; inline-size: auto; block-size: auto; overflow: visible; clip: auto; white-space: normal; }
  .vnwo-table--responsive tbody { display: table-row-group; }
  .vnwo-table--responsive tr { display: table-row; break-inside: avoid; }
  .vnwo-table--responsive td { display: table-cell; inline-size: auto; border-block-start: 1px solid #999; padding: .35rem; }
  .vnwo-table--responsive td::before { content: none; }
  .vnwo-case-timeline > li, .vnwo-card, .vnwo-ecosystem-group { break-inside: avoid; }
  .vnwo-source-status-table a[href^="http"]::after { content: ' (' attr(href) ')'; font-size: 8pt; font-weight: 400; }
}

/* v3.0.12 maintainer contact, profile, and utility-file layout. */
.vnwo-contact-layout { align-items: stretch; }
.vnwo-contact-address { margin: 0; font-style: normal; }
.vnwo-contact-details { display: grid; gap: .85rem; margin: 1.25rem 0 0; }
.vnwo-contact-details div { display: grid; grid-template-columns: minmax(7.5rem, .42fr) minmax(0, 1fr); gap: .8rem; border-block-start: 1px solid var(--vnwo-line); padding-block-start: .8rem; }
.vnwo-contact-details dt { color: var(--vnwo-text); font-weight: 760; }
.vnwo-contact-details dd { min-width: 0; margin: 0; color: var(--vnwo-muted); overflow-wrap: anywhere; }
.vnwo-contact-action-row { align-items: stretch; margin-block: 1.25rem .85rem; }
.vnwo-contact-action-row .vnwo-button { flex: 1 1 11.5rem; justify-content: center; text-align: center; }
.vnwo-contact-lane-card { display: flex; flex-direction: column; }
.vnwo-contact-lane-actions { margin-block-start: auto; padding-block-start: 1rem; }
.vnwo-contact-lane-actions .vnwo-button { width: 100%; justify-content: center; text-align: center; }
.vnwo-contact-utility-link { margin-block: .8rem 0; font-weight: 700; }
.vnwo-contact-utility-link a { display: inline-flex; align-items: center; min-height: 44px; }
.vnwo-profile-link-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr)); }
.vnwo-profile-link-card { display: flex; flex-direction: column; }
.vnwo-profile-link-card > a:last-child { margin-block-start: auto; font-weight: 760; }
@media (max-width: 640px) {
  .vnwo-contact-details div { grid-template-columns: 1fr; gap: .2rem; }
  .vnwo-contact-action-row .vnwo-button { flex-basis: 100%; }
}



/* v3.0.16 content clarity, deep-linked glossary, and evidence-outcome refinements. */
.vnwo-card__outcome {
  border-block-start: 1px solid var(--vnwo-line);
  margin-block-start: 1rem;
  padding-block-start: .75rem;
}
.vnwo-term-heading {
  align-items: flex-start;
  display: flex;
  gap: .45rem;
}
.vnwo-term-heading a {
  color: inherit;
  text-decoration-color: color-mix(in srgb, var(--vnwo-accent) 55%, transparent);
  text-decoration-thickness: .08em;
  text-underline-offset: .18em;
}
.vnwo-term-heading a::after {
  color: var(--vnwo-text-muted);
  content: " #";
  font-family: var(--vnwo-font-mono);
  font-size: .76em;
  font-weight: 600;
}
.vnwo-term-details {
  border-block: 1px solid var(--vnwo-line);
  margin-block: 1rem;
  padding-block: .65rem;
}
.vnwo-term-details > summary {
  color: var(--vnwo-accent);
  cursor: pointer;
  font-weight: 760;
  min-block-size: 44px;
  padding-block: .55rem;
}
.vnwo-term-details > div { padding-block-start: .55rem; }
.vnwo-term-details > div > :last-child { margin-block-end: 0; }
.vnwo-glossary-letter {
  border-block-end: 2px solid var(--vnwo-line-strong);
  margin-block-start: 1.25rem;
  padding-block-end: .35rem;
  scroll-margin-block-start: calc(var(--vnwo-header-height) + 1.5rem);
}
.vnwo-definition[id] { scroll-margin-block-start: calc(var(--vnwo-header-height) + 1.5rem); }
/*
 * VNWO v3.0.7 usability and accessibility layer.
 *
 * This file intentionally loads last. It consolidates the public design tokens,
 * readable measure, CTA hierarchy, breadcrumb treatment, interaction states,
 * and explicit light/dark appearance modes without changing content semantics.
 */
:root {
  --vnwo-readable: 70ch;
  --vnwo-text-muted: #3f5064;
  --vnwo-line: #c7d3e0;
  --vnwo-line-strong: #71869c;
  --vnwo-focus-color: #006ea6;
  --vnwo-focus-ring: 3px solid var(--vnwo-focus-color);
  --vnwo-chip-bg: #ffffff;
  --vnwo-chip-text: #2f4054;
}

body {
  font-size: 16px;
  line-height: 1.65;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

h1 { line-height: 1.08; }
h2 { line-height: 1.18; }
h3 { line-height: 1.25; }

p,
li,
dd,
figcaption,
.vnwo-page-header__subheading,
.vnwo-hero__subheading {
  text-wrap: pretty;
}

.vnwo-entry-content,
.vnwo-doc-section,
.vnwo-page-header__copy,
.vnwo-hero__content,
.vnwo-section-heading {
  max-inline-size: var(--vnwo-readable);
}

.vnwo-card > :last-child,
.vnwo-callout > :last-child,
.vnwo-doc-section > :last-child {
  margin-block-end: 0;
}

.vnwo-entry-content a:not(.vnwo-button),
.vnwo-doc-section a:not(.vnwo-button),
.vnwo-card p a,
.vnwo-card li a,
.vnwo-callout a:not(.vnwo-button),
.vnwo-page-header__subheading a,
.site-footer p a {
  text-decoration-line: underline;
  text-decoration-thickness: .09em;
  text-underline-offset: .2em;
}

button,
.vnwo-button,
.primary-nav a,
.primary-nav__more-toggle,
.vnwo-filter__buttons button,
.vnwo-filter-chip,
.vnwo-copy-button,
.vnwo-theme-toggle {
  min-block-size: 44px;
}

button:disabled,
[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: .62;
  filter: grayscale(.25);
  text-decoration: line-through;
  text-decoration-thickness: .08em;
}

/* Header actions and appearance preference. */
.site-header__actions {
  display: flex;
  align-items: center;
  justify-self: end;
  gap: .45rem;
}

.vnwo-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .42rem;
  border: 1px solid var(--vnwo-line-strong);
  border-radius: 999px;
  background: var(--vnwo-panel);
  color: var(--vnwo-text);
  padding: .48rem .68rem;
  font-size: .78rem;
  font-weight: 780;
  line-height: 1;
}

.vnwo-theme-toggle:hover {
  border-color: var(--vnwo-accent);
  background: var(--vnwo-bg-soft);
}

.vnwo-theme-toggle__icon {
  display: grid;
  place-items: center;
  inline-size: 1.1rem;
  block-size: 1.1rem;
  font-size: 1rem;
  line-height: 1;
}

.vnwo-theme-toggle__icon::before { content: "◐"; }
html[data-theme-preference="light"] .vnwo-theme-toggle__icon::before { content: "☀"; }
html[data-theme-preference="dark"] .vnwo-theme-toggle__icon::before { content: "☾"; }

/* Seven visible choices; resources and low-priority routes use disclosures. */
.primary-nav__sublist--resources {
  inline-size: min(320px, calc(100vw - 2rem));
}

.primary-nav__sublist--resources .primary-nav__groups {
  grid-template-columns: 1fr;
}

.primary-nav__more-toggle.is-current::before,
.primary-nav a[aria-current="page"]::before,
.primary-nav__sublist a[aria-current="page"]::before {
  content: "";
  flex: 0 0 auto;
  inline-size: .42rem;
  block-size: .42rem;
  border-radius: 50%;
  background: currentColor;
}

/* Breadcrumbs provide visible route orientation without dominating page titles. */
.vnwo-page-header__breadcrumb {
  padding-block-start: clamp(.85rem, 1.8vw, 1.3rem);
}

.vnwo-breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .35rem .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
  color: var(--vnwo-text-muted);
  font-size: .84rem;
}

.vnwo-breadcrumbs li {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
}

.vnwo-breadcrumbs li:not(:last-child)::after {
  content: "/";
  color: var(--vnwo-line-strong);
  font-weight: 700;
}

.vnwo-breadcrumbs a {
  color: var(--vnwo-accent);
  font-weight: 730;
  text-decoration-line: underline;
}

.vnwo-breadcrumbs [aria-current="page"] {
  color: var(--vnwo-text-muted);
  font-weight: 650;
}

.vnwo-page-header__breadcrumb + .vnwo-page-header__inner {
  padding-block-start: clamp(1.2rem, 2.7vw, 2.2rem);
}

/* Primary buttons remain visually dominant; extra actions become contextual links. */
.vnwo-related-actions,
.vnwo-context-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem .9rem;
  margin-block-start: 1rem;
  color: var(--vnwo-text-muted);
  font-size: .92rem;
}

.vnwo-related-actions > span {
  font-weight: 760;
}

.vnwo-related-actions ul {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .9rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.vnwo-related-actions a,
.vnwo-context-links a {
  font-weight: 750;
  text-decoration-line: underline;
  text-underline-offset: .2em;
}

.vnwo-context-links {
  align-items: flex-start;
  flex-direction: column;
}

.vnwo-button-row {
  margin-block-start: 1rem;
}

.vnwo-hero .vnwo-button-row,
.vnwo-page-header__actions {
  gap: .75rem;
}

.vnwo-section + .vnwo-section {
  border-block-start-color: var(--vnwo-line);
}

.vnwo-hero::before {
  opacity: .45;
}

/* Selected filters carry a checkmark, not only a color change. */
.vnwo-filter__buttons button[aria-pressed="true"]::before,
.vnwo-filter-chip[aria-pressed="true"]::before {
  content: "✓";
  margin-inline-end: .38rem;
  font-weight: 900;
}

/* Explicit appearance palettes. */
html[data-theme-resolved="light"] {
  color-scheme: light;
}

html[data-theme-resolved="dark"] {
  color-scheme: dark;
  --vnwo-bg: #09111c;
  --vnwo-bg-soft: #101c2a;
  --vnwo-bg-dark: #050a11;
  --vnwo-panel: #111e2d;
  --vnwo-panel-strong: #0d1824;
  --vnwo-text: #f2f6fb;
  --vnwo-text-muted: #c0ccda;
  --vnwo-line: #314258;
  --vnwo-line-strong: #7187a0;
  --vnwo-accent: #78caff;
  --vnwo-accent-2: #7bd9a9;
  --vnwo-warning: #ffd27a;
  --vnwo-danger: #ffaaa5;
  --vnwo-ok: #85dfad;
  --vnwo-chip-bg: #152438;
  --vnwo-chip-text: #dce8f5;
  --vnwo-focus-color: #a5ddff;
  --vnwo-shadow: 0 18px 60px rgba(0, 0, 0, .38);
}

html[data-theme-resolved="dark"] body {
  background:
    radial-gradient(circle at 9% 1%, rgba(120, 202, 255, .10), transparent 26rem),
    linear-gradient(180deg, #0b1522 0%, var(--vnwo-bg) 46%, #070d16 100%);
}

html[data-theme-resolved="dark"] .site-header {
  border-color: rgba(113, 135, 160, .58);
  background: rgba(9, 17, 28, .94);
}

html[data-theme-resolved="dark"] :is(
  .site-brand__mark,
  .primary-nav,
  .primary-nav__sublist,
  .vnwo-section-nav,
  .vnwo-hero,
  .vnwo-page-header,
  .vnwo-page-header__figure,
  .vnwo-image-panel,
  .vnwo-schematic-figure,
  .vnwo-card,
  .vnwo-callout,
  .vnwo-workflow li,
  .vnwo-table-wrap,
  .vnwo-table thead th,
  .vnwo-copy-button,
  .vnwo-filter__buttons button,
  .vnwo-filter-chip,
  .vnwo-badge,
  .vnwo-pill,
  .vnwo-version-meta span,
  .vnwo-alert-strip span,
  .vnwo-ecosystem-node,
  .vnwo-final-cta,
  .vnwo-glossary article,
  .vnwo-glossary-tools,
  .vnwo-az-index a,
  .vnwo-claim-card,
  .vnwo-summary-block,
  .vnwo-boundary-panel,
  .vnwo-cta-panel,
  .vnwo-review-tool,
  .vnwo-participation-generator,
  input,
  textarea,
  select
) {
  border-color: var(--vnwo-line);
  background: var(--vnwo-panel);
  color: var(--vnwo-text);
  box-shadow: none;
}

html[data-theme-resolved="dark"] .vnwo-hero,
html[data-theme-resolved="dark"] .vnwo-page-header {
  background: linear-gradient(135deg, #101c2a 0%, #0b1522 100%);
}

html[data-theme-resolved="dark"] .vnwo-section--panel {
  background: var(--vnwo-panel-strong);
}

html[data-theme-resolved="dark"] :is(
  p,
  dd,
  figcaption,
  .site-brand__tagline,
  .vnwo-card p,
  .vnwo-card dd,
  .vnwo-callout p,
  .vnwo-help-text,
  .vnwo-filter-status
) {
  color: var(--vnwo-text-muted);
}

html[data-theme-resolved="dark"] :is(
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  label,
  .vnwo-table caption,
  .vnwo-table th,
  .vnwo-check-list li,
  .vnwo-numbered-list li
) {
  color: var(--vnwo-text);
}

html[data-theme-resolved="dark"] .primary-nav a:hover,
html[data-theme-resolved="dark"] .primary-nav__more-toggle:hover,
html[data-theme-resolved="dark"] .primary-nav a[aria-current="page"],
html[data-theme-resolved="dark"] .primary-nav__more-toggle.is-current,
html[data-theme-resolved="dark"] .primary-nav__more-toggle[aria-expanded="true"] {
  background: rgba(120, 202, 255, .13);
  color: var(--vnwo-text);
}

html[data-theme-resolved="dark"] .primary-nav__group-title,
html[data-theme-resolved="dark"] .vnwo-card__meta,
html[data-theme-resolved="dark"] .vnwo-section-label {
  color: #b8d7ed;
}

html[data-theme-resolved="dark"] .vnwo-button,
html[data-theme-resolved="dark"] .wp-block-button__link {
  border-color: var(--vnwo-line-strong);
  background: var(--vnwo-panel);
  color: var(--vnwo-text);
  box-shadow: none;
}

html[data-theme-resolved="dark"] .vnwo-button--primary,
html[data-theme-resolved="dark"] .wp-block-button__link {
  border-color: #4bb7f6;
  background: #0878b8;
  color: #ffffff;
}

html[data-theme-resolved="dark"] .vnwo-button--primary:hover {
  background: #0b8bce;
  color: #ffffff;
}

html[data-theme-resolved="dark"] .vnwo-button--secondary {
  border-color: #66c593;
  background: #123b2b;
  color: #d7f8e6;
}

html[data-theme-resolved="dark"] .vnwo-callout--warning {
  border-color: #80672d;
  background: #2a230f;
}

html[data-theme-resolved="dark"] .vnwo-callout--danger {
  border-color: #874d50;
  background: #2b1518;
}

html[data-theme-resolved="dark"] .vnwo-callout--ok {
  border-color: #3d7659;
  background: #10261b;
}

html[data-theme-resolved="dark"] .vnwo-core-law,
html[data-theme-resolved="dark"] .vnwo-priority-card--law {
  border-color: #315b76;
  background: linear-gradient(135deg, rgba(69, 149, 199, .18), rgba(55, 142, 96, .12)), var(--vnwo-panel);
}

html[data-theme-resolved="dark"] .vnwo-core-law strong {
  color: var(--vnwo-text);
}

html[data-theme-resolved="dark"] .vnwo-filter__buttons button[aria-pressed="true"],
html[data-theme-resolved="dark"] .vnwo-filter-chip[aria-pressed="true"] {
  border-color: var(--vnwo-accent);
  background: #17334a;
  color: #dff3ff;
}

html[data-theme-resolved="dark"] .vnwo-table tbody tr:nth-child(even),
html[data-theme-resolved="dark"] .vnwo-integrity-table tr.is-check-pass,
html[data-theme-resolved="dark"] .vnwo-integrity-table tr.is-check-fail {
  background: #0d1926;
}

html[data-theme-resolved="dark"] .vnwo-table-wrap::-webkit-scrollbar-thumb {
  background: rgba(216, 232, 247, .35);
  border-color: var(--vnwo-panel);
}

html[data-theme-resolved="dark"] ::selection {
  background: rgba(120, 202, 255, .3);
  color: #ffffff;
}

@media (max-width: 1023px) {
  .site-header__inner {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .site-header__actions {
    grid-column: 2;
  }

  .primary-nav {
    grid-column: 1 / -1;
  }

  .primary-nav__sublist--resources {
    inline-size: auto;
  }
}

@media (max-width: 560px) {
  body { font-size: 16px; }

  .vnwo-theme-toggle {
    inline-size: 44px;
    padding-inline: 0;
  }

  .vnwo-theme-toggle__label {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .vnwo-button-row {
    align-items: stretch;
  }
}

@media print {
  .vnwo-theme-toggle,
  .vnwo-breadcrumbs {
    display: none !important;
  }
}


/* v3.0.8 ecosystem review states. */
html[data-theme-resolved="dark"] :is(.vnwo-status-summary > div, .vnwo-status-badge, .vnwo-case-timeline__number, .vnwo-table--responsive tr) {
  border-color: var(--vnwo-line);
  background: var(--vnwo-panel);
  color: var(--vnwo-text);
}


/* v3.0.15 SEO and UI/UX hardening sweep. */
:where([id]) {
  scroll-margin-block-start: calc(var(--vnwo-header-height, 76px) + 1.25rem);
}

.site-main:focus {
  outline: none;
}

.site-search {
  position: relative;
}

.site-search__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .42rem;
  min-inline-size: 44px;
  min-block-size: 44px;
  border: 1px solid var(--vnwo-line-strong);
  border-radius: 999px;
  background: var(--vnwo-panel);
  color: var(--vnwo-text);
  padding: .48rem .68rem;
  cursor: pointer;
  font-size: .78rem;
  font-weight: 780;
  line-height: 1;
  list-style: none;
}

.site-search__toggle::-webkit-details-marker {
  display: none;
}

.site-search__toggle:hover,
.site-search[open] .site-search__toggle {
  border-color: var(--vnwo-accent);
  background: var(--vnwo-bg-soft);
}

.site-search__icon {
  inline-size: 1.15rem;
  block-size: 1.15rem;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-width: 2;
}

.site-search__icon--close {
  display: none;
}

.site-search[open] .site-search__icon--search {
  display: none;
}

.site-search[open] .site-search__icon--close {
  display: block;
}

.site-search__panel {
  position: absolute;
  z-index: 130;
  inset-block-start: calc(100% + .6rem);
  inset-inline-end: 0;
  inline-size: min(30rem, calc(100vw - 2rem));
  border: 1px solid var(--vnwo-line-strong);
  border-radius: var(--vnwo-radius);
  background: var(--vnwo-panel);
  padding: 1rem;
  box-shadow: var(--vnwo-shadow);
}

.vnwo-search-form {
  display: grid;
  gap: .55rem;
  max-inline-size: 48rem;
}

.vnwo-search-form > label {
  color: var(--vnwo-text);
  font-weight: 760;
}

.vnwo-search-form__hint {
  margin: -.15rem 0 .1rem;
  color: var(--vnwo-text-muted);
  font-size: .92rem;
  line-height: 1.5;
}

.vnwo-search-form__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .6rem;
}

.vnwo-search-form input[type="search"] {
  inline-size: 100%;
  min-block-size: 48px;
  border: 1px solid var(--vnwo-line-strong);
  border-radius: 999px;
  background: var(--vnwo-panel);
  color: var(--vnwo-text);
  padding: .7rem 1rem;
}

.vnwo-search-form input[type="search"]::placeholder {
  color: var(--vnwo-text-muted);
  opacity: 1;
}

.vnwo-search-form--header > label {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.vnwo-search-layout {
  display: grid;
  grid-template-columns: minmax(16rem, .7fr) minmax(0, 1.3fr);
  gap: clamp(1.5rem, 4vw, 3.5rem);
  align-items: start;
}

.vnwo-search-layout__form {
  position: sticky;
  inset-block-start: calc(var(--vnwo-header-height, 76px) + 1rem);
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius);
  background: var(--vnwo-panel);
  padding: clamp(1rem, 2.5vw, 1.35rem);
  box-shadow: 0 10px 30px rgba(18,45,76,.06);
}

.vnwo-search-layout__form .vnwo-search-form__row {
  grid-template-columns: 1fr;
}

.vnwo-search-results__title {
  margin-block-end: .35rem;
}

.vnwo-search-summary {
  margin-block: 0 1.25rem;
  color: var(--vnwo-text-muted);
  font-weight: 700;
}

.vnwo-search-results {
  display: grid;
  gap: 1rem;
}

.vnwo-search-result h3 {
  margin-block: .25rem .65rem;
}

.vnwo-search-result h3 a {
  color: var(--vnwo-text);
  text-decoration-thickness: .08em;
  text-underline-offset: .18em;
}

.vnwo-search-result__excerpt > :last-child {
  margin-block-end: 0;
}

.vnwo-search-result__link {
  display: inline-flex;
  margin-block-start: .8rem;
  font-weight: 780;
}

.vnwo-empty-state {
  border: 1px solid var(--vnwo-line);
  border-radius: var(--vnwo-radius);
  background: var(--vnwo-panel-strong);
  padding: clamp(1.25rem, 3vw, 2rem);
}

.vnwo-empty-state__links {
  display: grid;
  gap: .45rem;
  margin-block-end: 0;
  padding-inline-start: 1.2rem;
}

.vnwo-404-header h1 {
  max-inline-size: 16ch;
}

.vnwo-404-grid .vnwo-link-card {
  min-block-size: 100%;
}

.vnwo-404-grid .vnwo-link-card h3 a {
  color: var(--vnwo-text);
}

.site-footer__nav-groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

.site-footer__nav-group h3 {
  margin-block: 0 .7rem;
  color: #fff;
  font-size: .86rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.site-footer__nav-group .footer-nav__list {
  grid-template-columns: 1fr;
  gap: .42rem;
}

.site-footer__utilities a[data-back-to-top] {
  white-space: nowrap;
}

@media (max-width: 1023px) {
  .site-search__label {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .site-search__toggle {
    padding-inline: .72rem;
  }
}

@media (max-width: 840px) {
  .vnwo-search-layout {
    grid-template-columns: 1fr;
  }

  .vnwo-search-layout__form {
    position: static;
  }
}

@media (max-width: 620px) {
  .site-search__panel {
    position: fixed;
    inset-block-start: calc(var(--vnwo-header-height, 66px) + .5rem);
    inset-inline: .55rem;
    inline-size: auto;
    max-block-size: calc(100dvh - var(--vnwo-header-height, 66px) - 1.25rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }

  .site-footer__nav-groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 420px) {
  .vnwo-theme-toggle__label {
    position: absolute;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .vnwo-theme-toggle {
    padding-inline: .72rem;
  }

  .site-footer__nav-groups,
  .vnwo-search-form__row {
    grid-template-columns: 1fr;
  }

  .vnwo-search-form__row .vnwo-button {
    inline-size: 100%;
  }
}


@media print {
  .site-search,
  .vnwo-search-layout__form,
  .vnwo-404-header .vnwo-button-row,
  .vnwo-404-grid {
    display: none !important;
  }
}


/* Deep-link orientation and high-contrast operating-mode support. */
.site-main :is(section, article, div)[id]:target {
  outline: 2px solid color-mix(in srgb, var(--vnwo-accent) 68%, transparent);
  outline-offset: .45rem;
}

@media (prefers-contrast: more) {
  :root {
    --vnwo-line: color-mix(in srgb, currentColor 42%, transparent);
    --vnwo-line-strong: color-mix(in srgb, currentColor 68%, transparent);
  }

  :is(.vnwo-card, .vnwo-panel, .vnwo-search-layout__form, .site-search__panel) {
    box-shadow: none;
  }
}

@media (forced-colors: active) {
  :is(.vnwo-button, .site-header__toggle, .site-search__toggle, .site-search__panel, .vnwo-theme-toggle, .vnwo-search-form input[type="search"], .vnwo-card, .vnwo-panel) {
    border: 1px solid ButtonText;
  }

  :is(a, button, summary, input):focus-visible,
  [aria-current="page"] {
    outline: 2px solid Highlight;
    outline-offset: 3px;
  }

  .primary-nav a[aria-current="page"],
  .site-footer a[aria-current="page"] {
    text-decoration: underline;
    text-decoration-thickness: .16em;
  }
}
