.case-study.page{padding-block-start:var(--space-4)}.cs{--rail:20rem;--stick:calc(6rem + var(--space-4))}.cs-progress{height:3px;z-index:calc(var(--z-nav) + 1);pointer-events:none;position:fixed;inset-block-start:0;inset-inline:0}.cs-progress__bar{transform-origin:0;will-change:transform;width:100%;height:100%;transform:scaleX(0)}.cs-layout{grid-template-columns:minmax(15rem, var(--rail)) 1fr;gap:var(--space-24);align-items:start;display:grid}.cs-aside{top:var(--stick);max-height:calc(100dvh - var(--stick));align-self:start;gap:var(--space-3);flex-direction:column;display:flex;position:sticky}.cs-main{gap:var(--space-20);flex-direction:column;min-width:0;display:flex}.cs-title{color:var(--accent)}.cs-aside__role{color:var(--ink-primary)}.cs-aside__note{color:var(--ink-secondary)}.cs-aside__block{gap:var(--space-2);flex-direction:column;padding-block-start:var(--space-4);display:flex}.cs-aside__h{color:var(--ink-secondary);font-weight:500}.cs-aside__tech{gap:var(--space-2);flex-wrap:wrap;display:flex}.cs-aside__tech li{color:var(--ink-secondary);padding:.25rem var(--space-3);border:1px solid var(--border-default);border-radius:var(--radius-full)}.cs-aside__link{color:var(--accent);text-underline-offset:.25em;background-image:linear-gradient(var(--accent), var(--accent));-webkit-box-decoration-break:clone;box-decoration-break:clone;background-position:0;background-repeat:no-repeat;background-size:0% 1.3em;width:fit-content;text-decoration:underline;text-decoration-thickness:1px;transition:background-size .45s ease-in-out,color .45s ease-in-out}.cs-aside__link:hover,.cs-aside__link:focus-visible{color:var(--ink-on-colour);background-size:100% 1.3em;text-decoration:none}@media (prefers-reduced-motion:reduce){.cs-aside__link{transition:none}}.cs-main.is-armed .cs-section>*{opacity:0;transform:translateY(12px)}.cs-main.is-armed .cs-section>.is-in{opacity:1;transition:opacity .55s,transform .55s;transform:none}.cs-section{gap:var(--space-5);scroll-margin-top:var(--stick);flex-direction:column;display:flex}.cs-h2{color:var(--ink-primary)}.cs-body{max-width:68ch;color:var(--ink-secondary)}.cs-tech{color:var(--accent);font-style:italic;font-weight:inherit}.cs-lead{color:var(--ink-secondary);font-weight:var(--weight-emphasis)}.cs-main a{color:var(--accent);font-weight:inherit;text-underline-offset:.2em;background-image:linear-gradient(var(--accent), var(--accent));-webkit-box-decoration-break:clone;box-decoration-break:clone;background-position:0;background-repeat:no-repeat;background-size:0% 1.3em;text-decoration:underline;text-decoration-thickness:1px;transition:background-size .45s ease-in-out,color .45s ease-in-out}.cs-main a:hover,.cs-main a:focus-visible{color:var(--ink-on-colour);background-size:100% 1.3em;text-decoration:none}@media (prefers-reduced-motion:reduce){.cs-main a{transition:none}}.cs code{font-family:var(--font-mono);font-size:var(--text-code-inline);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--ink-primary);padding:.1em .35em}.cs-figure{gap:var(--space-3);padding:var(--space-6);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-page);flex-direction:column;margin:0;display:flex;overflow-x:auto}.cs-callout{color:var(--ink-secondary);background:var(--surface-raised);border-inline-start:3px solid var(--accent);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-block-start:var(--space-4)}@media (max-width:60rem){.cs-layout{gap:var(--space-10);grid-template-columns:1fr}.cs-aside{max-height:none;position:static;top:auto}}
.case-study--pendula .cs-diagram{margin:0;overflow-x:auto}.case-study--pendula .cs-body code{color:var(--accent)}.cs-coverage{gap:var(--space-6) var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.cs-coverage__item{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.cs-coverage__tag{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--accent-dark);color:var(--ink-on-colour)}.cs-coverage__gloss{color:var(--ink-secondary)}@media (max-width:48rem){.cs-coverage{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:30rem){.cs-coverage{grid-template-columns:1fr}}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.1ypl14jhz9yyw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.2g9li78_0_it5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.00u3xrku2lqty.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.2vepgg3wcdr2q.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.2ttjmmx-9gnz1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.3259ncl47-hqj.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_6a08cb02-module__77PVkq__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_6a08cb02-module__77PVkq__variable{--manrope:"Manrope", "Manrope Fallback"}
@font-face{font-family:Gabarito;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/6d21c497e638cb51-s.14-b1bivpjn73.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Gabarito;font-style:normal;font-weight:400 900;font-display:swap;src:url(../media/67af958a78cfd7ea-s.p.15uhe87qgyi9v.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Gabarito Fallback;src:local(Arial);ascent-override:94.81%;descent-override:26.22%;line-gap-override:0.0%;size-adjust:99.15%}.gabarito_7e7b82ba-module__n5niVq__className{font-family:Gabarito,Gabarito Fallback;font-style:normal}.gabarito_7e7b82ba-module__n5niVq__variable{--gabarito:"Gabarito", "Gabarito Fallback"}
@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/88731e1a74492905-s.0q2063htaeirl.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/861011d7404b02f6-s.0d9wz4v27vhhi.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/3381337b621a9a6a-s.1rocwc0_3n-7e.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/5413d6e6d8960ee4-s.24rqa-df9e8h5.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0951afe60dbf5d36-s.0pq_2k203_b3q.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/97e7b204180d1274-s.3621_6y7338x-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/b8b552e8609c5636-s.p.1mao1hin7sitq.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code Fallback;src:local(Arial);ascent-override:73.56%;descent-override:23.92%;line-gap-override:0.0%;size-adjust:134.59%}.fira_code_f179669-module__wyofKG__className{font-family:Fira Code,Fira Code Fallback;font-style:normal}.fira_code_f179669-module__wyofKG__variable{--fira-code:"Fira Code", "Fira Code Fallback"}
@font-face{font-family:stackSansText;src:url(../media/stack_sans_text_latin_wght_normal.p.27zixbncdv3ur.woff2)format("woff2");font-display:swap;font-weight:200 700}.stacksanstext_d6484f65-module__vECIRG__className{font-family:stackSansText}.stacksanstext_d6484f65-module__vECIRG__variable{--stack-sans-text:"stackSansText"}
@font-face{font-family:stackSansNotch;src:url(../media/stack_sans_notch_latin_wght_normal.p.3e_7zxzl7fbi3.woff2)format("woff2");font-display:swap;font-weight:200 700}.stacksansnotch_d9cedddd-module__Z1Sm_G__className{font-family:stackSansNotch}.stacksansnotch_d9cedddd-module__Z1Sm_G__variable{--stack-sans-notch:"stackSansNotch"}
.ss{gap:var(--space-5)}.ss__svg{width:100%;height:auto}@media (max-width:40rem){.ss__caption{min-height:3.6em}}.ss__wire{fill:none;stroke:var(--border-default);stroke-width:var(--dg-stroke);opacity:.5;transition:opacity .3s,stroke .3s}.ss__wire.is-on{stroke:var(--accent);opacity:1;stroke-dasharray:6 5;animation:2.4s linear infinite ss-flow}@keyframes ss-flow{to{stroke-dashoffset:-22px}}.ss__node{opacity:.4;transition:opacity .3s}.ss__node.is-on{opacity:1}.ss__node>rect{fill:var(--surface-raised);transition:fill .4s}.ss__node.is-on>rect{fill:color-mix(in oklab, var(--accent) 9%, var(--surface-raised))}.ss__node.is-match>rect{fill:color-mix(in oklab, var(--accent) 18%, var(--surface-raised))}.ss__label{fill:var(--ink-primary);font-family:var(--font-sans);font-size:var(--dg-title);text-anchor:middle;font-weight:600}.ss__label--sm{font-size:var(--dg-sub)}.ss__label.ss__label--start,.ss__sub.ss__sub--start{text-anchor:start}.ss__mono{fill:var(--ink-secondary);font-family:var(--font-mono);font-size:var(--dg-sub);text-anchor:middle}.ss__sub{fill:var(--ink-secondary);font-family:var(--font-sans);font-size:var(--dg-sub);text-anchor:middle}.ss__seam path{stroke:var(--accent-light);stroke-width:var(--dg-stroke);stroke-dasharray:3 3;fill:none}.ss__match{fill:var(--accent);font-family:var(--font-sans);font-size:var(--dg-callout);font-weight:600}.ss__caption{color:var(--ink-secondary);text-align:center;min-height:2.4em}@media (prefers-reduced-motion:reduce){.ss__wire.is-on{animation:none}}@media (forced-colors:active){.ss__node>rect,.ss__node rect{fill:canvas;stroke:canvastext;stroke-width:1px}.ss__wire{stroke:graytext}.ss__wire.is-on{stroke:highlight}.ss__label{fill:canvastext}.ss__mono{fill:graytext}.ss__match{fill:highlight}.ss__seam path{stroke:highlight}}
.vault-ui{--vu-surface:oklch(100% 0 0);--vu-surface-subtle:oklch(97% .006 290);--vu-surface-sunken:oklch(93% .008 290);--vu-overlay:oklch(99% .003 290);--vu-ink:oklch(18% .003 290);--vu-ink-2:oklch(37% .006 290);--vu-ink-3:oklch(60% .008 290);--vu-border:oklch(93% .008 290);--vu-border-strong:oklch(86% .01 290);--vu-primary:oklch(48.2% .186 2.5);--vu-primary-hover:oklch(44% .176 1.7);--vu-primary-subtle:oklch(96.5% .016 3);--vu-primary-ink:oklch(100% 0 0);--vu-success:oklch(45% .15 148);--vu-success-subtle:oklch(97% .03 148);--vu-warning:oklch(47% .142 65);--vu-warning-subtle:oklch(97% .025 65);--vu-radius-sm:.25rem;--vu-radius-md:.5rem;--vu-radius-lg:.75rem;--vu-radius-full:9999px;--vu-shadow-sm:0 1px 2px oklch(18% .003 290/.06);--vu-shadow-md:0 4px 6px -1px oklch(18% .003 290/.1), 0 2px 4px -2px oklch(18% .003 290/.1);--vu-focus:0 0 0 3px oklch(48.2% .186 2.5/.2);--vu-font:"Manrope Variable", var(--manrope), system-ui, sans-serif;--vu-mono:var(--fira-code), "Fira Code", ui-monospace, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--vu-surface);color:var(--vu-ink);font-family:var(--vu-font)}.vault-ui ::selection{background:var(--vu-primary-subtle)}.vault-ui :focus-visible{border-color:var(--vu-primary);box-shadow:var(--vu-focus);outline:none}
.nnd{flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.nnd__head{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--vu-border);background:var(--vu-surface-subtle);flex-wrap:wrap;display:flex}.nnd__swatch{border-radius:var(--vu-radius-md);border:1px solid var(--vu-border-strong);width:2.25rem;height:2.25rem;box-shadow:var(--vu-shadow-sm);cursor:pointer;flex:none;position:relative;overflow:hidden}.nnd__swatch input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.nnd__hex{font-family:var(--vu-mono);color:var(--vu-ink);background:var(--vu-surface);border:1px solid var(--vu-border-strong);border-radius:var(--vu-radius-md);padding:var(--space-2) var(--space-3);text-transform:lowercase;width:8.5rem;font-size:1rem}.nnd__presets{gap:var(--space-2);margin-left:auto;display:flex}.nnd__chip{border-radius:var(--vu-radius-full);border:1px solid var(--vu-border-strong);cursor:pointer;width:1.35rem;height:1.35rem;transition:transform var(--duration-fast,.1s) ease;padding:0}.nnd__chip:hover{transform:scale(1.12)}.nnd__result{gap:var(--space-4);padding:var(--space-5);flex-direction:column;display:flex}.nnd__name{align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.nnd__nameText{letter-spacing:-.01em;color:var(--vu-ink);font-size:1.5rem;font-weight:700}.nnd__delta{font-family:var(--vu-mono);color:var(--vu-ink-3);font-size:.78rem}.nnd__pill{letter-spacing:.02em;color:var(--vu-primary);background:var(--vu-primary-subtle);padding:.2rem var(--space-3);border-radius:var(--vu-radius-full);font-size:.7rem;font-weight:500}.nnd__runners{gap:var(--space-2) var(--space-5);flex-wrap:wrap;display:flex}.nnd__runners li{align-items:center;gap:var(--space-2);color:var(--vu-ink-2);font-size:.9rem;display:flex}.nnd__runnerSwatch{border-radius:var(--vu-radius-full);border:1px solid var(--vu-border);width:.85rem;height:.85rem}.nnd__runnerDelta{font-family:var(--vu-mono);color:var(--vu-ink-3);font-size:.7rem}.nnd__rampWrap{gap:var(--space-2);flex-direction:column;display:flex}.nnd__rampMeta{justify-content:space-between;align-items:baseline;display:flex}.nnd__rampLabel{letter-spacing:.02em;text-transform:uppercase;color:var(--vu-ink-3);font-size:.72rem;font-weight:500}.nnd__lch{font-family:var(--vu-mono);color:var(--vu-ink-3);font-size:.72rem}.nnd__ramp{border-radius:var(--vu-radius-md);border:1px solid var(--vu-border);grid-template-columns:repeat(10,1fr);height:2.5rem;display:grid;overflow:hidden}.nnd__rampStop{height:100%}.nnd__pass{align-items:center;gap:var(--space-2) var(--space-3);font-family:var(--vu-mono);color:var(--vu-ink-2);padding-top:var(--space-1);flex-wrap:wrap;font-size:.75rem;display:flex}.nnd__pass b{color:var(--vu-ink)}.nnd__passArrow{color:var(--vu-primary)}.nnd__empty{font-family:var(--vu-mono);color:var(--vu-ink-3);font-size:.85rem}
.ctd{padding:0;display:block;overflow:hidden}.ctd__bar{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--vu-border);background:var(--vu-surface-subtle);flex-wrap:wrap;display:flex}.ctd__swatch{border-radius:var(--vu-radius-md);border:1px solid var(--vu-border-strong);width:2.25rem;height:2.25rem;box-shadow:var(--vu-shadow-sm);cursor:pointer;flex:none;position:relative;overflow:hidden}.ctd__swatch input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.ctd__hex{font-family:var(--vu-mono);color:var(--vu-ink);background:var(--vu-surface);border:1px solid var(--vu-border-strong);border-radius:var(--vu-radius-md);padding:var(--space-2) var(--space-3);text-transform:lowercase;width:7.5rem;font-size:.9rem}.ctd__presets{gap:var(--space-2);margin-left:auto;display:flex}.ctd__chip{border-radius:var(--vu-radius-full);border:1px solid var(--vu-border-strong);cursor:pointer;width:1.35rem;height:1.35rem;transition:transform var(--duration-fast,.1s) ease;padding:0}.ctd__chip:hover{transform:scale(1.12)}.ctd__body{gap:var(--space-6);padding:var(--space-5);flex-direction:column;display:flex}.ctd__group{gap:var(--space-3);flex-direction:column;display:flex}.ctd__groupHead{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.ctd__eyebrow{font-family:var(--vu-font);letter-spacing:.08em;text-transform:uppercase;color:var(--vu-ink-3);font-size:.65rem;font-weight:600}.ctd__pair{gap:var(--space-3) var(--space-5);grid-template-columns:1fr 1fr;display:grid}.ctd__row{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--vu-border);border-radius:var(--vu-radius-md);font-size:.875rem;display:flex}.ctd__tile{border-radius:var(--vu-radius-sm);width:28px;height:24px;box-shadow:0 0 0 1px var(--vu-border) inset;flex:none;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:inline-flex}.ctd__rowLabel{color:var(--vu-ink-2);flex:1}.ctd__ratio{font-family:var(--vu-mono);color:var(--vu-ink-3);font-size:.75rem}.ctd__badge{padding:1px var(--space-2);border-radius:var(--vu-radius-full);font-size:.68rem;font-weight:600}.ctd__badge.is-pass{background:var(--vu-success-subtle);color:var(--vu-success)}.ctd__badge.is-fail{background:var(--vu-surface-sunken);color:var(--vu-ink-3)}.ctd__markers{height:1.15rem;position:relative}.ctd__flag{white-space:nowrap;letter-spacing:.02em;color:var(--vu-primary);font-size:.65rem;font-weight:600;position:absolute;bottom:0;transform:translate(-50%)}.ctd__flag:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:4px solid var(--vu-primary);position:absolute;top:100%;left:50%;transform:translate(-50%)}.ctd__ramp{border-radius:var(--vu-radius-md);grid-template-columns:repeat(10,1fr);list-style:none;display:grid;overflow:hidden}.ctd__stop{padding:var(--space-3) 0;flex-direction:column;align-items:center;gap:.15rem;min-width:0;display:flex}.ctd__stopLabel{letter-spacing:.04em;opacity:.75;font-size:.6rem;font-weight:600}.ctd__stopRatio{font-family:var(--vu-mono);font-size:.72rem}.ctd__stopFlag{letter-spacing:.06em;opacity:.8;font-size:.58rem;font-weight:700}.ctd__stop.is-crossover{box-shadow:inset 3px 0 0 var(--vu-primary)}.ctd__badges{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ctd__note{padding:.2rem var(--space-3);border-radius:var(--vu-radius-full);font-size:.78rem}.ctd__note--ok{background:var(--vu-success-subtle);color:var(--vu-success)}.ctd__note--warn{background:var(--vu-warning-subtle);color:var(--vu-warning)}.ctd__hint{color:var(--vu-ink-3);font-size:.78rem}@media (max-width:48rem){.ctd__pair{grid-template-columns:1fr}}@media (max-width:40rem){.ctd__stopFlag{display:none}.ctd__stopRatio{font-size:.62rem}}
.pgd{gap:var(--space-5);flex-direction:column;display:flex}.pgd__head{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.pgd__seg{background:var(--vu-surface-sunken);border-radius:var(--vu-radius-full);gap:2px;padding:3px;display:inline-flex}.pgd__segBtn{font-family:var(--vu-font);color:var(--vu-ink-2);padding:.35rem var(--space-4);border-radius:var(--vu-radius-full);cursor:pointer;transition:all var(--duration-fast,.1s) ease;font-size:.85rem;font-weight:500}.pgd__segBtn.is-on{background:var(--vu-primary);color:var(--vu-primary-ink)}.pgd__seeds{gap:var(--space-2);align-items:center;display:flex}.pgd__seed{border-radius:var(--vu-radius-md);border:1px solid var(--vu-border-strong);width:2.5rem;height:2.5rem;box-shadow:var(--vu-shadow-sm);cursor:pointer;position:relative;overflow:hidden}.pgd__seed--sm{width:2rem;height:2rem}.pgd__seed input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.pgd__addSeed{border-radius:var(--vu-radius-md);border:1px dashed var(--vu-border-strong);width:2rem;height:2rem;color:var(--vu-ink-3);cursor:pointer;background:0 0;font-size:1.1rem;line-height:1}.pgd__addSeed:hover:not(:disabled){border-color:var(--vu-primary);color:var(--vu-primary)}.pgd__addSeed:disabled{opacity:.4;cursor:not-allowed}.pgd__tonal{gap:var(--space-2);flex-direction:column;display:flex}.pgd__row{align-items:center;gap:var(--space-3);grid-template-columns:5rem 1fr;display:grid}.pgd__rowLabel{font-family:var(--vu-mono);color:var(--vu-ink-2);text-align:right;font-size:.8rem}.pgd__ramp{border-radius:var(--vu-radius-sm);border:1px solid var(--vu-border);grid-template-columns:repeat(10,1fr);height:2.25rem;display:grid;overflow:hidden}.pgd__stop{height:100%}.pgd__countRow{align-items:center;gap:var(--space-3);display:flex}.pgd__countLabel{font-family:var(--vu-mono);color:var(--vu-ink-3);text-transform:uppercase;letter-spacing:.02em;font-size:.78rem}.pgd__range{max-width:14rem;accent-color:var(--vu-primary);flex:1}.pgd__countVal{font-family:var(--vu-mono);color:var(--vu-ink);font-size:.85rem}.pgd__expressive{gap:var(--space-3);flex-wrap:wrap;display:flex}.pgd__hue{border-radius:var(--vu-radius-md);border:1px solid var(--vu-border);box-shadow:var(--vu-shadow-sm);flex-direction:column;flex:3rem;min-width:2.5rem;display:flex;overflow:hidden}.pgd__hueStop{height:2rem;position:relative}.pgd__hueStop--mid{height:3rem}.pgd__badges{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.pgd__badge{font-family:var(--vu-mono);color:var(--vu-ink-2);padding:.2rem var(--space-3);border-radius:var(--vu-radius-full);border:1px solid var(--vu-border-strong);font-size:.75rem}.pgd__badge b{color:var(--vu-ink)}.pgd__badge--ok{color:var(--vu-success);background:var(--vu-success-subtle);border-color:#0000}.pgd__badge--warn{color:var(--vu-warning);background:var(--vu-warning-subtle);border-color:#0000}.pgd__hint{color:var(--vu-ink-3);font-size:.78rem}
.tsd{gap:var(--space-5);flex-direction:column;display:flex}.tsd__controls{align-items:flex-start;gap:var(--space-5);flex-wrap:wrap;display:flex}.tsd__ctrl{gap:var(--space-2);flex-direction:column;display:flex}.tsd__ctrlLabel{align-items:center;gap:var(--space-2);font-family:var(--vu-mono);text-transform:uppercase;letter-spacing:.02em;color:var(--vu-ink-3);font-size:.75rem;display:flex}.tsd__ctrlLabel b{color:var(--vu-ink)}.tsd__select{font-family:var(--vu-font);color:var(--vu-ink);background:var(--vu-surface);border:1px solid var(--vu-border-strong);border-radius:var(--vu-radius-md);padding:var(--space-2) var(--space-3);cursor:pointer;font-size:.9rem}.tsd__range{width:10rem;accent-color:var(--vu-primary)}.tsd__flag{letter-spacing:.02em;color:var(--vu-primary);background:var(--vu-primary-subtle);padding:.2rem var(--space-3);border-radius:var(--vu-radius-full);align-self:flex-end;margin-bottom:.2rem;font-size:.72rem;font-weight:500}.tsd__list{flex-direction:column;display:flex}.tsd__step{align-items:baseline;gap:var(--space-5);padding:var(--space-3) 0;border-bottom:1px solid var(--vu-border);display:flex}.tsd__step:last-child{border-bottom:none}.tsd__meta{flex-direction:column;flex:none;gap:2px;width:6.5rem;display:flex}.tsd__name{color:var(--vu-ink);font-size:.8rem;font-weight:600}.tsd__size{font-family:var(--vu-mono);color:var(--vu-primary);font-size:.72rem}.tsd__weight{font-family:var(--vu-mono);color:var(--vu-ink-3);font-size:.68rem}.tsd__specimen{--tsd-max:5.75rem;font-size:clamp(.9rem, var(--tsd-size), var(--tsd-max));color:var(--vu-ink);font-family:var(--vu-font);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}@media (max-width:48rem){.tsd__step{align-items:stretch;gap:var(--space-1);flex-direction:column}.tsd__meta{align-items:baseline;gap:var(--space-2);flex-direction:row;width:auto}.tsd__specimen{--tsd-max:3.5rem;white-space:normal;text-overflow:clip;overflow:visible}}
.cpd{flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.cpd__inputRow{align-items:center;gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid var(--vu-border);display:flex}.cpd__inputIcon{color:var(--vu-ink-3);flex:none;font-size:.875rem}.cpd__input{min-width:0;padding:var(--space-4) 0;font-family:var(--vu-font);color:var(--vu-ink);background:0 0;border:none;outline:none;flex:1;font-size:1rem}.cpd__input::placeholder{color:var(--vu-ink-3)}.cpd__input:focus-visible{box-shadow:none}.cpd__kbd{font-family:var(--vu-mono);color:var(--vu-ink-3);background:var(--vu-surface-sunken);border:1px solid var(--vu-border-strong);border-radius:var(--vu-radius-sm);cursor:pointer;flex:none;padding:.15rem .4rem;font-size:.7rem}.cpd__list{padding:var(--space-2);flex-direction:column;gap:2px;max-height:19rem;margin:0;list-style:none;display:flex;overflow-y:auto}.cpd__empty{padding:var(--space-6);text-align:center;color:var(--vu-ink-3);font-size:.875rem}.cpd__item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--vu-radius-md);cursor:pointer;color:var(--vu-ink);font-size:.9rem;display:flex}.cpd__item.is-active{background:var(--vu-surface-sunken)}.cpd__itemIcon{width:1rem;color:var(--vu-ink-3);flex:none;font-size:.8rem}.cpd__item.is-active .cpd__itemIcon{color:var(--vu-primary)}.cpd__itemLabel{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.cpd__itemHint{letter-spacing:.08em;text-transform:uppercase;color:var(--vu-ink-3);flex:none;font-size:.65rem;font-weight:600}.cpd__foot{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-top:1px solid var(--vu-border);background:var(--vu-surface-subtle);color:var(--vu-ink-3);font-size:.75rem;display:flex}.cpd__keys b{font-family:var(--vu-mono);color:var(--vu-ink-2);margin:0 .15rem 0 .5rem;font-weight:500}.cpd__keys b:first-child{margin-left:0}.cpd__ran{text-align:right;color:var(--vu-ink-2)}@media (max-width:34rem){.cpd__itemHint{display:none}}
.case-study--vault .cs-body code{color:var(--accent)}.case-study--vault .vo__group{fill:var(--accent);font-family:var(--font-annotation-sc);font-size:var(--dg-wlabel);text-anchor:middle}.case-study--vault .cs-diagram{margin:0;overflow-x:auto}
