:root{
  --ground:#0a0f0d; --slab:#101714; --slab-2:#0d1411; --hair:#1d2a24;
  --ink:#e9f1ec; --dim:#8ba39a; --seal:#10b981; --seal-bright:#34d8a4; --amber:#eab676;
  --up:#3ddc97; --down:#f06f8b;
  --code:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --face:'Manrope',system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--face);
  line-height:1.65;font-size:16.5px;-webkit-font-smoothing:antialiased}
.vts-shell{max-width:1060px;margin:0 auto;padding:0 24px}
a{color:var(--seal-bright);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{font-family:var(--face);line-height:1.18;letter-spacing:-.015em;font-weight:700}
h2{font-size:clamp(1.32rem,2.5vw,1.78rem);margin:0 0 .55em}
h3{font-size:1.08rem;margin:1.5em 0 .4em;color:#fff;font-weight:600}
.vts-dim{color:var(--dim)}
.vts-zone{padding:46px 0}
.vts-zone + .vts-zone{border-top:1px solid var(--hair)}
.vts-eyebrow{font-family:var(--code);font-size:.71rem;letter-spacing:.24em;text-transform:uppercase;
  color:var(--seal);margin-bottom:15px}
/* masthead */
.vts-top{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding:14px 24px;background:rgba(10,15,13,.88);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--hair)}
.vts-brand{display:flex;align-items:center;gap:10px;font-family:var(--code);font-weight:700;color:#fff;
  font-size:.95rem;letter-spacing:-.01em}
.vts-brand svg{width:22px;height:22px;flex:none}
.vts-links{display:flex;gap:22px;list-style:none;margin:0;padding:0;font-size:.89rem}
.vts-links a{color:var(--dim)}
.vts-links a:hover{color:var(--ink);text-decoration:none}
.vts-act{border:1px solid var(--seal);color:var(--seal-bright)!important;padding:7px 14px;border-radius:8px;
  font-family:var(--code);font-size:.79rem}
.vts-act:hover{background:rgba(16,185,129,.13);text-decoration:none}
.vts-burger{display:none;background:none;border:0;cursor:pointer;width:30px;height:24px}
.vts-burger i{display:block;height:2px;background:var(--ink);margin:5px 0;border-radius:2px}
.vts-drawer{display:none;flex-direction:column;gap:2px;padding:10px 24px 20px;border-bottom:1px solid var(--hair);
  background:var(--slab)}
.vts-drawer a{color:var(--ink);padding:10px 0;border-bottom:1px solid var(--hair);font-size:.96rem}
.vts-drawer.open{display:flex}
/* landing band */
.vts-lede{padding:62px 0 44px}
.vts-tagline{font-family:var(--code);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--seal)}
.vts-lede h1{font-size:clamp(2.05rem,4.6vw,3.05rem);margin:.34em 0 .28em;color:#fff;font-weight:800}
.vts-claim{font-size:1.14rem;color:#cfe0d8;max-width:65ch}
.vts-strip{display:flex;flex-wrap:wrap;gap:11px;margin-top:26px;font-family:var(--code);font-size:.81rem}
.vts-pill{border:1px solid var(--hair);background:var(--slab);border-radius:8px;padding:8px 13px;color:var(--dim)}
.vts-pill b{color:var(--seal-bright);font-weight:600}
.vts-go{display:inline-block;margin-top:28px;background:var(--seal);color:#06241a;font-weight:700;
  font-family:var(--code);padding:13px 22px;border-radius:9px;font-size:.92rem}
.vts-go:hover{background:var(--seal-bright);text-decoration:none}
.vts-read{font-size:1.07rem;color:#d6e3dc}
.vts-slab{background:var(--slab);border:1px solid var(--hair);border-radius:13px;padding:23px 25px;margin:18px 0}
.vts-slab.seal{border-color:#1f4a3b;box-shadow:0 0 0 1px rgba(16,185,129,.11) inset}
.vts-mesh{display:grid;gap:16px}
@media(min-width:720px){.vts-mesh.three{grid-template-columns:repeat(3,1fr)}.vts-mesh.two{grid-template-columns:1fr 1fr}}
.vts-tile{background:var(--slab);border:1px solid var(--hair);border-radius:12px;padding:19px}
.vts-tile h3{margin-top:0}
.vts-stamp{font-family:var(--code);font-size:.69rem;letter-spacing:.15em;text-transform:uppercase;color:var(--seal)}
ul.vts-checks{list-style:none;padding:0;margin:15px 0}
ul.vts-checks li{padding:10px 0 10px 28px;position:relative;border-bottom:1px solid var(--hair);color:#d2e0d9}
ul.vts-checks li:before{content:"\2713";position:absolute;left:4px;color:var(--seal);font-family:var(--code);font-weight:700}
.vts-pan{overflow-x:auto;margin:18px 0}
table{border-collapse:collapse;width:100%;font-size:.9rem;min-width:520px}
th,td{padding:11px 14px;border-bottom:1px solid var(--hair);text-align:left}
th{font-family:var(--code);font-size:.71rem;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
td .up{color:var(--up);font-family:var(--code)}
.vts-trail{font-family:var(--code);font-size:.76rem;color:var(--dim);padding:17px 0 0}
.vts-trail a{color:var(--dim)}
.vts-trail .div{opacity:.5;margin:0 5px}
.vts-deck{font-size:1.11rem;color:#cfe0d8;max-width:66ch;margin:.45em 0 0}
.vts-copy h3{color:var(--seal-bright)}
.vts-aside{font-family:var(--code);font-size:.83rem;color:var(--dim);border-left:2px solid var(--seal);
  padding:5px 0 5px 15px;margin:17px 0}
.vts-base{border-top:1px solid var(--hair);background:var(--slab-2);margin-top:32px;padding:42px 0 30px}
.vts-base .row{display:grid;gap:23px}
@media(min-width:720px){.vts-base .row{grid-template-columns:2fr 1fr 1fr 1fr}}
.vts-base a{color:var(--dim);display:block;padding:3px 0}
.vts-base a:hover{color:var(--seal-bright)}
.vts-base .cap{color:#fff;font-family:var(--code);font-size:.77rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.vts-fine{color:#6b8278;font-size:.82rem;margin-top:25px;border-top:1px solid var(--hair);padding-top:17px}
/* receipt-style worked block (distinct from .vts-aside) */
.vts-receipt{background:var(--slab-2);border:1px solid var(--hair);border-left:3px solid var(--seal);
  border-radius:0 11px 11px 0;padding:19px 21px;margin:21px 0}
.vts-receipt .vts-stamp{margin-bottom:11px}
.vts-receipt code,code{font-family:var(--code);font-size:.86em;background:#091310;border:1px solid var(--hair);
  border-radius:4px;padding:1px 6px;color:var(--seal-bright);word-break:break-word}
.vts-receipt ol{margin:0;padding-left:21px}
.vts-receipt ol li{padding:7px 0;color:#d2e0d9}
.vts-receipt ol li b{color:#fff}
/* schematic frame */
figure.vts-figure{margin:25px 0;background:var(--slab);border:1px solid var(--hair);border-radius:13px;
  padding:19px 19px 13px}
figure.vts-figure svg{display:block;width:100%;height:auto;max-width:770px;margin:0 auto}
figure.vts-figure figcaption{font-family:var(--code);font-size:.78rem;color:var(--dim);
  text-align:center;margin-top:11px}
.vts-figure .fg-cell{fill:var(--slab-2,#0d1411);stroke:#1f4a3b;stroke-width:1.2}
.vts-figure .fg-wire{stroke:var(--seal);stroke-width:1.6;fill:none}
.vts-figure .fg-head{font-family:'JetBrains Mono',monospace;font-size:11.5px;fill:#fff;font-weight:600}
.vts-figure .fg-sub{font-family:'JetBrains Mono',monospace;font-size:9.5px;fill:#8ba39a}
.vts-figure .fg-note{font-family:'JetBrains Mono',monospace;font-size:10px;fill:#8ba39a}
.vts-figure .fg-yes{fill:#3ddc97;font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:700}
.vts-figure .fg-no{fill:#f06f8b;font-family:'JetBrains Mono',monospace;font-size:13px;font-weight:700}
/* onward-reading block on a leaf page */
.vts-onward{margin:32px 0 0;border-top:1px solid var(--hair);padding-top:21px}
.vts-onward .cap{font-family:var(--code);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--seal);margin-bottom:13px}
.vts-onward .set{display:grid;gap:11px}
@media(min-width:620px){.vts-onward .set{grid-template-columns:1fr 1fr}}
.vts-onward a.lnk{display:block;border:1px solid var(--hair);border-radius:10px;padding:13px 15px;
  background:var(--slab);color:var(--ink)}
.vts-onward a.lnk:hover{border-color:#1f4a3b;text-decoration:none}
.vts-onward a.lnk b{color:var(--seal-bright);display:block;font-size:.95rem}
.vts-onward a.lnk span{color:var(--dim);font-size:.84rem}
.vts-grade{font-family:var(--code);color:var(--seal-bright)}
@media(max-width:719px){.vts-links{display:none}.vts-burger{display:block}table{min-width:0}th,td{padding:8px 10px}}

/* focus + motion + small-screen polish */
:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms !important;transition-duration:.01ms !important}}
