:root{color-scheme:light;--bg:#f4f0e6;--bg-2:#ebe5d7;--surface:#fbf9f4;--text:#1e1a15;--text-2:#5a5146;--text-3:#6f665a;--border:#dcd3c2;--border-2:#c2b7a1;--link:#1f4f70;--focus:#1f4f70;--dots:#1e1a150d;--tint:10%;--shadow:0 1px 0 var(--border-2), 0 8px 24px #211e1a0f;--lift:3px 3px 0 var(--border-2);--lift-sm:2px 2px 0 var(--border-2);--a:#0f766e;--a-soft:#d7f0ec;--b:#a34a06;--b-soft:#fbe8d0;--c:#6d28d9;--c-soft:#ebe3fb;--ok:#13713a;--ok-soft:#dcf3e3;--bad:#b91c1c;--bad-soft:#fbe1e1;--money:#9d174d;--money-soft:#fbe0ec;--grey:#8a847a;--grey-soft:#ebe7e0;--display:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", "URW Palladio L", P052, Georgia, serif;--font:Charter, "Bitstream Charter", "Sitka Text", Cambria, "Iowan Old Style", Georgia, "Times New Roman", serif;--mono:ui-monospace, "SF Mono", Menlo, "Cascadia Mono", Consolas, "DejaVu Sans Mono", "Liberation Mono", monospace;--measure:68ch;--measure-wide:840px;--radius:8px;--radius-lg:12px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#16140f;--bg-2:#1d1a15;--surface:#221e18;--text:#ece6d9;--text-2:#b5ac9b;--text-3:#948b7c;--border:#332e26;--border-2:#4b4438;--link:#93c3e4;--focus:#93c3e4;--dots:#ece6d90f;--tint:18%;--shadow:0 1px 0 var(--border-2), 0 8px 24px #00000073;--a:#2dd4bf;--a-soft:#123f3a;--b:#fbbf24;--b-soft:#45300c;--c:#a78bfa;--c-soft:#2d2350;--ok:#4ade80;--ok-soft:#133923;--bad:#f87171;--bad-soft:#4a1d1d;--money:#f472b6;--money-soft:#4a1a34;--grey:#8a847a;--grey-soft:#2a2d31}}:root[data-theme=dark]{color-scheme:dark;--bg:#16140f;--bg-2:#1d1a15;--surface:#221e18;--text:#ece6d9;--text-2:#b5ac9b;--text-3:#948b7c;--border:#332e26;--border-2:#4b4438;--link:#93c3e4;--focus:#93c3e4;--dots:#ece6d90f;--tint:18%;--shadow:0 1px 0 var(--border-2), 0 8px 24px #00000073;--a:#2dd4bf;--a-soft:#123f3a;--b:#fbbf24;--b-soft:#45300c;--c:#a78bfa;--c-soft:#2d2350;--ok:#4ade80;--ok-soft:#133923;--bad:#f87171;--bad-soft:#4a1d1d;--money:#f472b6;--money-soft:#4a1a34;--grey:#8a847a;--grey-soft:#2a2d31}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}body{background-color:var(--bg);background-image:radial-gradient(circle at 1px 1px, var(--dots) 1px, transparent 0);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;background-size:22px 22px;margin:0;font-size:17px;line-height:1.6}@media (width>=720px){body{font-size:18px;line-height:1.65}}a{color:var(--link);text-decoration-thickness:1px;text-decoration-color:var(--border-2);text-underline-offset:3px}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:3px}strong{font-weight:700}code,kbd,pre{font-family:var(--mono);font-size:.86em}code{background:var(--bg-2);border:1px solid var(--border);overflow-wrap:anywhere;border-radius:4px;padding:.1em .35em}pre{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:100%;padding:14px 16px;font-size:.8rem;line-height:1.5;overflow-x:auto}.astro-code{border:1px solid var(--border);background:var(--bg-2)!important}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .astro-code,:root:not([data-theme=light]) .astro-code span{color:var(--shiki-dark)!important}:root:not([data-theme=light]) .astro-code{background:var(--bg-2)!important}}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important}:root[data-theme=dark] .astro-code{background:var(--bg-2)!important}pre code{font-size:inherit;background:0 0;border:0;padding:0}hr{border:0;border-top:1px solid var(--border);margin:2.5rem 0}img,svg{max-width:100%;height:auto}svg [hidden]{display:none}table{border-collapse:collapse;background:var(--surface);width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:10px 14px}th{background:var(--bg-2);color:var(--text-2);font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;font-size:.66rem;font-weight:600}td:first-child{font-weight:700}.table-wrap{border:1px solid var(--border-2);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin:1.4rem 0;overflow-x:auto}.table-wrap table{margin:0}.table-wrap th,.table-wrap td{white-space:nowrap}.table-wrap td.wrap,.table-wrap th.wrap{white-space:normal;min-width:12ch}button{font:inherit}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip{background:var(--surface);border:1px solid var(--border);z-index:100;border-radius:6px;padding:8px 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.kicker{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-2);font-size:.68rem;font-weight:600}.page{grid-template-columns:minmax(0,1fr);gap:0 56px;max-width:1240px;margin:0 auto;padding-block:0 80px;padding-inline:16px;display:grid}@media (width>=720px){.page{padding-inline:24px}}@media (width>=1100px){.page{grid-template-columns:250px minmax(0,1fr)}.page>.toc-col{border-right:1px solid var(--border);align-self:start;max-height:100vh;padding:34px 18px 28px 0;position:sticky;top:0;overflow:auto}}main{max-width:var(--measure-wide);min-width:0}.page>div{min-width:0}main>section{border-bottom:1px solid var(--border);padding-bottom:48px;scroll-margin-top:20px}main>section:last-of-type{border-bottom:0}main>section>:is(p,ul,ol,h2,h3,h4,blockquote,.callout,.check,.spec-ref,details,.part-tag),.act-band,.hero .lede{max-width:var(--measure)}.progress{z-index:50;pointer-events:none;background:0 0;width:100%;height:3px;position:fixed;top:0;left:0}.progress>i{background:linear-gradient(90deg, var(--a), var(--b));width:0;height:100%;transition:width 80ms linear;display:block}.topbar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:8px;padding:16px 0;display:flex}.topbar .brand{font-family:var(--display);letter-spacing:-.01em;color:var(--text);font-size:1.15rem;font-weight:700;text-decoration:none}.topbar .brand small{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);margin-left:10px;font-size:.66rem;font-weight:500}.topbar nav{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.topbar nav a{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);font-size:.7rem;text-decoration:none}.topbar nav a[aria-current=page]{color:var(--text);border-bottom:2px solid var(--text);padding-bottom:2px;font-weight:600}.theme-toggle{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--border-2);background:var(--surface);color:var(--text);cursor:pointer;border-radius:999px;padding:5px 11px;font-size:.68rem}.hero{border-bottom:2px solid var(--text);margin-bottom:8px;padding:52px 0 32px}@media (width>=720px){.hero{padding:76px 0 40px}}.hero .kicker{letter-spacing:.2em;margin:0 0 20px}.hero h1{font-family:var(--display);letter-spacing:-.02em;max-width:16ch;margin:0 0 20px;font-size:clamp(2.5rem,6.2vw,4.3rem);font-weight:700;line-height:.98}.hero h1 em{color:var(--a);font-style:italic;font-weight:400}.hero .lede{color:var(--text-2);max-width:54ch;margin:0 0 18px;font-size:clamp(1.15rem,2.2vw,1.35rem);line-height:1.5}.hero .meta{color:var(--text-3);font-family:var(--mono);letter-spacing:.04em;flex-wrap:wrap;gap:6px 18px;margin:0 0 22px;font-size:.72rem;display:flex}.hero .meta code{font-size:.7rem}.route{flex-wrap:wrap;gap:8px;display:flex}.route a{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text);border:1px solid var(--border-2);background:var(--surface);border-radius:999px;padding:7px 13px;font-size:.66rem;font-weight:600;text-decoration:none;transition:border-color .12s,color .12s}.route a b{color:var(--text-3);margin-right:7px;font-weight:600}.route a:hover{border-color:var(--text)}.toc{font-size:.84rem}.toc h2{margin:0 0 8px}.toc ol{margin:0;padding:0;list-style:none}.toc li{margin:0;position:relative}.toc .toc__act{margin:16px 0 4px;padding-left:10px;font-size:.6rem}.toc a{color:var(--text-2);border-left:2px solid #0000;padding:4px 22px 4px 10px;line-height:1.35;text-decoration:none;display:block}.toc a:hover{color:var(--text)}.toc a[aria-current=true]{color:var(--text);border-left-color:var(--a);font-weight:700}.toc a.done:after{content:"✓";color:var(--ok);font:600 .7rem var(--mono);animation:.2s ease-out toc-tick;position:absolute;top:4px;right:4px}@keyframes toc-tick{0%{opacity:0}}.toc .num{font-family:var(--mono);color:var(--text-3);margin-right:8px;font-size:.7rem}.toc .read-pct{margin:16px 0 0;padding-left:10px}.toc-inline{border:1px solid var(--border-2);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);margin:24px 0 28px;padding:16px 20px}.toc-inline ol{columns:2;column-gap:24px}.toc-inline .toc__act{break-after:avoid}@media (width<=560px){.toc-inline ol{columns:1}}@media (width>=1100px){.toc-inline{display:none}}.toc-col{display:none}@media (width>=1100px){.toc-col{display:block}}.act-band{padding:56px 0 18px}.act-band .act-no{letter-spacing:.22em;align-items:center;gap:14px;margin:0;display:flex}.act-band .act-no:after{content:"";background:var(--border-2);flex:1;height:1px}.act-band h2{font-family:var(--display);letter-spacing:-.02em;margin:14px 0 10px;font-size:clamp(1.9rem,4.4vw,3rem);font-weight:700;line-height:1.02}.act-band .act-goal{color:var(--text-2);max-width:60ch;margin:0;font-size:1.05rem;line-height:1.55}.part-tag{letter-spacing:.18em;align-items:center;gap:10px;margin:48px 0 14px;display:flex}.part-tag:before{content:"";background:var(--text-2);width:34px;height:1px}.part-tag .of{color:var(--text-3);letter-spacing:.08em}main>section>h2{font-family:var(--display);letter-spacing:-.015em;margin:0 0 16px;font-size:clamp(1.65rem,3.2vw,2.15rem);font-weight:700;line-height:1.08}main>section>h3{font-family:var(--display);letter-spacing:-.005em;margin:2.4rem 0 .5rem;font-size:1.4rem;font-weight:600;line-height:1.2}main>section>h4{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);margin:1.8rem 0 .4rem;font-size:.72rem;font-weight:600}p{margin:0 0 1rem}ul,ol{margin:0 0 1rem;padding-left:1.3rem}li{margin:.25rem 0}.lead{color:var(--text-2);font-size:1.15rem}.small{color:var(--text-2);font-size:.86rem}.spec-ref{font-family:var(--mono);color:var(--text-3);margin:-.4rem 0 1.4rem;font-size:.7rem}.spec-ref a{color:inherit}.spec-ref code{font-size:.68rem}figure{margin:1.6rem 0}figcaption{color:var(--text-2);margin-top:12px;font-size:.86rem;line-height:1.5}figcaption b{color:var(--text);font-weight:700}.callout{--kind:var(--text-3);border:1px solid var(--border);border-left:4px solid var(--kind);border-radius:var(--radius);background:var(--surface);margin:1.4rem 0;padding:14px 18px;font-size:.94em;line-height:1.58}@supports (background:color-mix(in srgb, red 50%, white)){.callout{background:color-mix(in srgb, var(--kind) var(--tint), var(--surface))}.callout code{background:color-mix(in srgb, var(--text) 8%, transparent);border-color:#0000}}.callout>.label{color:var(--kind);margin-bottom:6px;display:block}.callout p:last-child{margin-bottom:0}.callout.term{--kind:var(--a)}.callout.plain{--kind:var(--c)}.callout.gotcha{--kind:var(--bad)}.callout.spec{--kind:var(--ok)}.callout.impl{--kind:var(--b)}.callout.open{--kind:var(--money)}.callout.key{border:0;border-left:4px solid var(--text);font-family:var(--display);color:var(--text);background:0 0;border-radius:0;padding:4px 0 4px 20px;font-size:1.2rem;font-style:italic;line-height:1.45}.callout.key>.label{color:var(--text-3);font-style:normal}.check{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-2);margin:1.8rem 0 .6rem;padding:16px 20px;font-size:.94rem}.check summary{cursor:pointer;font-family:var(--display);padding-right:30px;font-size:1.02rem;font-weight:600;list-style:none;position:relative}.check summary::-webkit-details-marker{display:none}.check summary:after{content:"+";font:600 1rem var(--mono);color:var(--text-3);position:absolute;top:0;right:2px}.check[open] summary:after{content:"–"}.check .a{color:var(--text-2);border-left:3px solid var(--ok);margin-top:12px;padding-left:14px}.fig,.wide{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin:1.8rem 0;padding:18px 16px 14px;position:relative}.fig__scroll,.wide__scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.fig__inner,.wide__inner{padding:2px}.fig__inner>svg,.wide__inner>svg{width:100%;height:auto;display:block}.fig figcaption,.wide figcaption{max-width:none;margin:12px 2px 0}.fig__source,.wide__note{font-family:var(--mono);letter-spacing:.02em;color:var(--text-3);margin-top:6px;font-size:.68rem;display:block}.fig__source a{color:inherit}@media (width>=720px){.wide__note{display:none}}@media (width<=719px){.fig,.wide{border-left:0;border-right:0;border-radius:0;margin-inline:-16px;padding-inline:16px}}.sim{border:1.5px solid var(--text);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--lift);margin:1.8rem 0;overflow:hidden}.sim__head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px 12px;display:flex}.sim__head h3,.sim__head h4{font-family:var(--display);margin:0;font-size:1.1rem;font-weight:600;line-height:1.25}.sim__head .kind{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-2);margin-bottom:3px;font-size:.64rem;font-weight:600;display:block}.sim__body{padding:16px 18px}.sim__body svg{width:100%;height:auto;display:block}.sim__controls{border-top:1px solid var(--border);background:var(--bg-2);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 18px;font-size:.86rem;display:flex}.sim__controls .spacer{flex:1}.sim__log{border-top:1px solid var(--border);min-height:3.2em;color:var(--text-2);padding:12px 18px;font-size:.9rem;line-height:1.55}.sim__log strong{color:var(--text)}.sim__log .ok{color:var(--ok);font-weight:700}.sim__log .bad{color:var(--bad);font-weight:700}.sim__log .warn{color:var(--b);font-weight:700}.btn{font-family:var(--mono);letter-spacing:.01em;border:1.5px solid var(--text);background:var(--surface);color:var(--text);border-radius:var(--radius);cursor:pointer;box-shadow:var(--lift-sm);padding:7px 13px;font-size:.74rem;font-weight:600;line-height:1.2;transition:transform .12s,box-shadow .12s,background-color .15s,border-color .15s,color .15s,opacity .15s}.btn:hover{box-shadow:3px 3px 0 var(--border-2);transform:translate(-1px,-1px)}.btn:active{box-shadow:none;transform:translate(1px,1px)}.btn[aria-pressed=true],.btn.primary{background:var(--text);color:var(--bg);border-color:var(--text)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn.danger{border-color:var(--bad);color:var(--bad)}.btn.danger[aria-pressed=true]{background:var(--bad);color:#fff}@media (width<=480px){.btn{padding:6px 10px;font-size:.7rem}}.seg{border:1.5px solid var(--text);border-radius:var(--radius);background:var(--surface);box-shadow:var(--lift-sm);display:inline-flex;overflow:hidden}.seg .btn{box-shadow:none;white-space:nowrap;border:0;border-radius:0}.seg .btn:hover,.seg .btn:active{box-shadow:none;transform:none}.seg .btn+.btn{border-left:1px solid var(--border-2)}@media (width<=560px){.seg{flex-wrap:wrap}.seg .btn{white-space:normal;flex:auto}}.range{color:var(--text-2);align-items:center;gap:10px;font-size:.84rem;display:inline-flex}.range input[type=range]{accent-color:var(--a);width:150px}.range input[type=checkbox]{accent-color:var(--a)}.range output{font-family:var(--mono);color:var(--text);font-variant-numeric:tabular-nums;min-width:4ch;font-size:.76rem}.pill{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;padding:2px 9px;font-size:.64rem;font-weight:700;display:inline-block}.pill.a{background:var(--a-soft);color:var(--a)}.pill.b{background:var(--b-soft);color:var(--b)}.pill.c{background:var(--c-soft);color:var(--c)}.pill.ok{background:var(--ok-soft);color:var(--ok)}.pill.bad{background:var(--bad-soft);color:var(--bad)}.pill.money{background:var(--money-soft);color:var(--money)}.pill.grey{background:var(--grey-soft);color:var(--text-2)}.sim__track{background:var(--grey-soft);border-radius:2px;width:100%;height:3px;display:block;overflow:hidden}.sim__track>i{height:100%;width:calc(var(--p,0) * 100%);background:linear-gradient(90deg, var(--a), var(--b));transition:width .3s;display:block}.sim__track.seg{height:4px;box-shadow:none;background:0 0;border:0;border-radius:0;gap:3px;display:flex;overflow:visible}.sim__track.seg>i{background:var(--border);border-radius:2px;flex:1;width:auto;transition:background-color .25s}.sim__track.seg>i.done{background:var(--ok)}.sim__track.seg>i.now{background:var(--a)}.sim__track.seg>i.bad{background:var(--bad)}.sim__scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.sim__scroll>svg{min-width:760px}.sim__scroll-note{font-family:var(--mono);color:var(--text-3);margin:4px 0 0;font-size:.66rem}@media (width>=720px){.sim__scroll-note{display:none}}.sim__log .line{font-family:var(--mono);color:var(--text-3);margin-bottom:4px;font-size:.76rem;display:block}.sim__log--tall{min-height:6.5em}.sim__controls .kicker{letter-spacing:.12em;font-size:.64rem}.sim__controls .group{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.sim[aria-busy=true] .sim__controls .btn:not([data-role=reset]){opacity:.6;pointer-events:none}.pill,.result,.step-list li,.sim__log{transition:background-color .15s,border-color .15s,color .15s,opacity .2s}.btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.btn.danger:hover{background:var(--bad-soft)}.pill.pulse{animation:.6s sim-pulse}@keyframes sim-pulse{50%{transform:scale(1.1)}}.step-list li:hover{background:var(--bg-2)}.step-list li:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.step-list li[aria-current=step]{box-shadow:inset 3px 0 0 var(--a)}.step-list li.done .n:after{content:" ✓";color:var(--ok)}.step-card>[data-card]:not([hidden]),.step-card>[data-step-card]:not([hidden]),.result>[data-card]:not([hidden]),.result>[data-result]:not([hidden]){animation:.18s ease-out sim-fade}@keyframes sim-fade{0%{opacity:0;transform:translateY(4px)}}.sim svg rect,.sim svg path,.sim svg line,.sim svg circle,.sim svg ellipse{transition:fill .25s,stroke .25s,stroke-width .15s,opacity .25s}.sim svg text{transition:fill .25s,opacity .25s}.sim svg .on rect{stroke-width:3px}.steps{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}@media (width>=720px){.steps.two{grid-template-columns:minmax(0, var(--l,1.2fr)) minmax(0, var(--r,1fr))}}.step-list{border:1px solid var(--border-2);border-radius:var(--radius);background:var(--bg);max-height:340px;margin:0;padding:0;font-size:.84rem;list-style:none;overflow:auto}.step-list li{border-bottom:1px solid var(--border);color:var(--text-2);cursor:pointer;grid-template-columns:2.2em 1fr auto;align-items:baseline;gap:8px;padding:7px 12px;display:grid}.step-list li:last-child{border-bottom:0}.step-list li .n{font-family:var(--mono);color:var(--text-3);font-variant-numeric:tabular-nums;font-size:.76rem}.step-list li[aria-current=step]{background:var(--surface);color:var(--text);font-weight:700}.step-list li.done{color:var(--text-2)}.step-list li .ev{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;font-weight:700}.step-list li .ev.event{color:var(--ok)}.step-list li .ev.intx{color:var(--a)}.step-list li .ev.inferred{color:var(--text-3)}.step-card{border:1px solid var(--border-2);border-radius:var(--radius);background:var(--bg);min-height:var(--card-min,120px);padding:14px 16px;font-size:.94rem}.step-card .phase{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-3);font-size:.66rem;font-weight:600}.step-card h4{font-family:var(--display);margin:4px 0 6px;font-size:1.1rem;font-weight:600}.step-card p{margin:0 0 6px}.step-card .proto{color:var(--text-2);border-top:1px dashed var(--border-2);margin-top:8px;padding-top:6px;font-size:.86rem}.cards{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin:1rem 0 1.4rem;display:grid}.card{border:1px solid var(--border-2);border-radius:var(--radius-lg);background:var(--surface);box-shadow:0 1px 0 var(--border-2);padding:14px 16px;font-size:.9rem}.card h4{font-family:var(--display);align-items:center;gap:8px;margin:0 0 4px;font-size:1.05rem;font-weight:600;display:flex}.card .swatch{border-radius:3px;width:12px;height:12px;display:inline-block}.card p{color:var(--text-2);margin:0}.card details{margin-top:6px}.card summary{cursor:pointer;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--link);font-size:.68rem}.card .more{color:var(--text-2);margin-top:6px;font-size:.86rem}.choices{flex-wrap:wrap;gap:8px;margin:0 0 10px;display:flex}.result{border:1px solid var(--border-2);border-radius:var(--radius);background:var(--bg);padding:14px 16px;font-size:.94rem}.result h4{font-family:var(--display);margin:0 0 8px;font-size:1.1rem;font-weight:600}.result .row{grid-template-columns:10em 1fr;gap:6px 12px;margin:4px 0;font-size:.88rem;display:grid}.result .row b{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);padding-top:3px;font-size:.66rem;font-weight:600}@media (width<=520px){.result .row{grid-template-columns:1fr;gap:2px}.result .row b{font-size:.8rem}}.d-a{fill:var(--a-soft);stroke:var(--a)}.d-b{fill:var(--b-soft);stroke:var(--b)}.d-c{fill:var(--c-soft);stroke:var(--c)}.d-ok{fill:var(--ok-soft);stroke:var(--ok)}.d-bad{fill:var(--bad-soft);stroke:var(--bad)}.d-money{fill:var(--money-soft);stroke:var(--money)}.d-grey{fill:var(--grey-soft);stroke:var(--border-2)}.d-surface{fill:var(--surface);stroke:var(--border-2)}.t{fill:var(--text);font-family:var(--font);font-size:13px}.t.small{fill:var(--text-2);font-size:11.5px}.t.mono{font-family:var(--mono);font-size:11px}.t.b{font-family:var(--display);font-size:13.5px;font-weight:700}.t.b.small{font-size:11.5px}.t.muted{fill:var(--text-3)}.t.center{text-anchor:middle}.t.end{text-anchor:end}.t.take{font-family:var(--mono);fill:var(--text-2);font-size:11px}.t.a{fill:var(--a)}.t.b-col{fill:var(--b)}.t.c{fill:var(--c)}.t.ok{fill:var(--ok)}.t.bad{fill:var(--bad)}.t.money{fill:var(--money)}.line{stroke:var(--border-2);stroke-width:1.5px;fill:none}.line.a{stroke:var(--a)}.line.b{stroke:var(--b)}.line.c{stroke:var(--c)}.line.ok{stroke:var(--ok)}.line.bad{stroke:var(--bad)}.line.money{stroke:var(--money)}.line.dash{stroke-dasharray:5 4}.dim{opacity:.35;transition:opacity .25s}.lit{opacity:1;transition:opacity .25s}.provenance{border:1px solid var(--border-2);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);margin:2.5rem 0 1rem;padding:16px 18px;font-size:.9rem}.provenance h3{font-family:var(--display);margin:0 0 6px;font-size:1.1rem;font-weight:600}.provenance table{font-size:.82rem}.provenance td code{font-size:.72rem}footer.site{border-top:1px solid var(--border);color:var(--text-2);margin-top:48px;padding-top:20px;font-size:.86rem}footer.site p{margin:0 0 6px}.doors{grid-template-columns:1fr;gap:12px;margin:1.2rem 0;display:grid}@media (width>=640px){.doors{grid-template-columns:1fr 1fr}}.door{border:1px solid var(--border-2);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);color:inherit;padding:16px 18px;text-decoration:none;transition:border-color .12s;display:block}.door:hover{border-color:var(--text)}.door h3{font-family:var(--display);margin:0 0 4px;font-size:1.1rem;font-weight:600}.door p{color:var(--text-2);margin:0;font-size:.9rem}.drift{border-left-color:var(--bad)!important}html.js .reveal{opacity:0;transition:opacity .52s cubic-bezier(.2,.7,.2,1),transform .52s cubic-bezier(.2,.7,.2,1);transform:translateY(14px)}html.js .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html.js .reveal{opacity:1;transition:none;transform:none}.btn:hover,.btn:active{box-shadow:var(--lift-sm);transform:none}}.dg .t.small{font-size:12.4px}.dg .t.mono{font-size:12.6px}.dg .t.b.small{font-size:12.4px}.dg .t.b{font-size:14px}@font-face{font-family:Sora;src:url(/plumbing/_astro/sora-latin-wght-normal.CIFTEUp5.woff2)format("woff2");font-weight:100 800;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/plumbing/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/plumbing/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2");font-weight:500;font-display:swap}html[lang]:root{color-scheme:light;--bg:light-dark(#f6f5fb,#0c0b1d);--bg-2:light-dark(#eeecf6,#111025);--surface:light-dark(#fff,#16152e);--fg:light-dark(#120f2c,#fff);--text:light-dark(#120f2c,#f4f3f8);--text-2:light-dark(#4f4c69,#a3a1b8);--text-3:light-dark(#67647f,#8f8cab);--border:light-dark(#120f2c1a,#ffffff14);--border-2:light-dark(#120f2c33,#ffffff29);--link:light-dark(#5b45e0,#b5abff);--focus:light-dark(#5b45e0,#8b7bff);--dots:light-dark(#120f2c0f,#ffffff0f);--tint:10%;--shadow:0 1px 2px light-dark(#120f2c0d,#0000), 0 1px 0 light-dark(#0000,#ffffff0a) inset;--lift:none;--lift-sm:none;--a:light-dark(#5b45e0,#8b7bff);--a-soft:light-dark(#ecebfd,#8b7bff2e);--b:light-dark(#c0267a,#f27fbd);--b-soft:light-dark(#fbe8f2,#f27fbd29);--c:light-dark(#9b36a8,#d56ad8);--c-soft:light-dark(#f5e8f8,#d56ad82e);--ok:light-dark(#127a55,#4fd8a8);--ok-soft:light-dark(#e2f4ec,#4fd8a829);--bad:light-dark(#b8322a,#ff6b5e);--bad-soft:light-dark(#fbe5e3,#ff6b5e29);--money:light-dark(#a84a2a,#ffb49a);--money-soft:light-dark(#fbebe3,#ffb49a29);--grey:light-dark(#6e6a8a,#8f8cab);--grey-soft:light-dark(#efeef5,#ffffff0f);--display:"Sora", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font:"Sora", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--radius:.625rem;--radius-lg:1.25rem;--signal:light-dark(#5b45e0,#8b7bff);--signal-ink:light-dark(#5b45e0,#b5abff);--signal-glow:light-dark(#6a55e8,#9d8bff);--proof-glow:light-dark(#d23a8a,#f27fbd);--peach:light-dark(#c95f3a,#ffb49a);--line:light-dark(#120f2c1a,#ffffff14);--line-strong:light-dark(#120f2c33,#ffffff29);--mist:light-dark(#120f2c09,#ffffff09);--panel:linear-gradient(180deg, light-dark(#ffffffd9,#ffffff09), light-dark(#ffffffd9,#ffffff03)), light-dark(#0000,#161232cc);--gradient-brand:linear-gradient(100deg, light-dark(#5b45e0,#9d8bff) 0%, light-dark(#a43bb0,#d56ad8) 42%, light-dark(#d23a8a,#ff6fa5) 70%, light-dark(#c95f3a,#ffb49a) 100%);--headline:linear-gradient(180deg, light-dark(#120f2c,#fff) 30%, light-dark(#3f22d7cc,#d6d2f09e) 110%);--header-bg:light-dark(#f6f5fbcc,#0c0b1db8);--footer-bg:light-dark(#eeecf6d9,#0c0b1dd9);--footer-text:light-dark(#120f2cb3,#ffffffb3);--footer-link:light-dark(#4f4c69,#ffffff8c);--footer-faint:light-dark(#67647f,#ffffff80);--footer-legal:light-dark(#67647f,#ffffff73);--plate:linear-gradient(180deg, light-dark(#ffffffd9,#ffffff0a), light-dark(#ffffffd9,#ffffff03)), light-dark(#0000,#1612328c);--plate-shadow:0 1px 2px light-dark(#120f2c0d,#0000), 0 1px 0 light-dark(#0000,#ffffff0a) inset;--art-fill:light-dark(#fff,#0b0a13);--logo-light:inline;--logo-dark:none}html[lang]:root[data-theme=dark]{color-scheme:dark;--tint:16%;--logo-light:none;--logo-dark:inline}html[lang]:root[data-theme=system]{color-scheme:light dark}@media (prefers-color-scheme:dark){html[lang]:root[data-theme=system]{--tint:16%;--logo-light:none;--logo-dark:inline}}html body{background:radial-gradient(ellipse 72rem 44rem at 82% -14rem, light-dark(#5b45e01f,#3f22d74d), transparent 70%), radial-gradient(ellipse 48rem 32rem at 104% 6rem, light-dark(#c82a800f,#c82a801f), transparent 70%), var(--bg);background-repeat:no-repeat;font-size:1.0625rem}@media (width>=720px){html body{font-size:1.0625rem;line-height:1.7}}html .progress{z-index:50}html .progress>i{background:var(--gradient-brand)}html main>section{scroll-margin-top:7.5rem}@media (width>=1100px){html .page>.toc-col{max-height:calc(100vh - 6.75rem);padding-top:28px;top:6.75rem}}html .shell{width:100%;max-width:76rem;margin-inline:auto;padding-inline:1.25rem}@media (width>=40rem){html .shell{padding-inline:2rem}}html .site-header{z-index:40;color:var(--fg);border-bottom:1px solid var(--line);background:var(--header-bg);backdrop-filter:blur(24px)saturate(150%);position:sticky;top:0}html .site-header .shell{grid-template-columns:1fr auto;align-items:center;gap:1.5rem;height:4rem;display:grid}@media (width>=64rem){html .site-header .shell{grid-template-columns:1fr auto 1fr}}html .site-header .brand{color:var(--fg);justify-self:start;align-items:center;gap:.625rem;text-decoration:none;display:inline-flex}html .site-header .brand svg{flex-shrink:0;width:auto;height:1.25rem}html .site-header .brand .name{letter-spacing:-.01em;font-size:1.125rem;font-weight:600}html .site-nav{display:none}@media (width>=64rem){html .site-nav{display:block}}html .site-nav ul{border:1px solid var(--line);background:color-mix(in srgb, var(--fg) 3%, transparent);border-radius:999px;align-items:center;margin:0;padding:.25rem;list-style:none;display:flex}html .site-nav li{margin:0}html .site-nav a{color:color-mix(in srgb, var(--fg) 60%, transparent);border-radius:999px;padding:.375rem .875rem;font-size:.875rem;text-decoration:none;transition:color .15s,background-color .15s;display:block}html .site-nav a:hover{color:var(--fg)}html .site-nav a[aria-current=page]{color:var(--fg);background:color-mix(in srgb, var(--fg) 9%, transparent);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--fg) 8%, transparent)}html .site-header .actions{justify-self:end;align-items:center;gap:.5rem;display:flex}html .site-btn{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.5rem;padding:.4rem .875rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}html .site-btn svg{flex-shrink:0;width:1rem;height:1rem}html .site-btn.ghost{color:color-mix(in srgb, var(--fg) 80%, transparent)}html .site-btn.ghost:hover{color:var(--fg);background:color-mix(in srgb, var(--fg) 6%, transparent)}html .site-btn.primary{background:var(--fg);color:var(--bg)}html .site-btn.primary:hover{background:light-dark(#2a2550,#ece9ff)}@media (width<=40rem){html .site-btn.primary{display:none}}html .theme-switch{border:1px solid color-mix(in srgb, var(--fg) 10%, transparent);background:color-mix(in srgb, var(--fg) 3%, transparent);border-radius:999px;align-items:center;gap:.125rem;padding:.125rem;display:inline-flex}html .theme-switch button{width:1.75rem;height:1.75rem;color:color-mix(in srgb, var(--fg) 55%, transparent);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:color .15s,background-color .15s;display:inline-flex}html .theme-switch button:hover{color:var(--fg)}html .theme-switch svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:.875rem;height:.875rem}html:not([data-theme=dark]):not([data-theme=system]) .theme-switch [data-theme-choice=light],html[data-theme=dark] .theme-switch [data-theme-choice=dark],html[data-theme=system] .theme-switch [data-theme-choice=system]{background:color-mix(in srgb, var(--fg) 9%, transparent);color:var(--fg)}html .site-subnav{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--fg) 2%, transparent)}html .site-subnav .shell{min-height:3rem;font-family:var(--font);letter-spacing:0;text-transform:none;flex-wrap:wrap;align-items:center;gap:.25rem;font-size:.8125rem;display:flex}html .site-subnav .label{color:var(--text-3);align-items:center;gap:.625rem;margin-right:.75rem;display:inline-flex}html .site-subnav .label:before{content:"";background:linear-gradient(90deg, var(--signal-glow), var(--proof-glow));width:1.5rem;height:1px}html .site-subnav a{color:color-mix(in srgb, var(--fg) 60%, transparent);border-radius:999px;padding:.375rem .875rem;text-decoration:none;transition:color .15s,background-color .15s}html .site-subnav a:hover{color:var(--fg)}html .site-subnav a[aria-current=page]{color:var(--fg);background:color-mix(in srgb, var(--fg) 9%, transparent);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--fg) 8%, transparent)}@media (width<=40rem){html .site-subnav .label{display:none}}html .hero{border-bottom:1px solid var(--line)}html :is(.hero .kicker,.part-tag,.act-band .act-no,.read-pct){font-family:var(--font);letter-spacing:0;text-transform:none;color:var(--text-2);font-size:.8125rem;font-weight:500}html .hero .kicker{align-items:center;gap:.625rem;display:inline-flex}html :is(.hero .kicker,.part-tag):before{content:"";background:linear-gradient(90deg, var(--signal-glow), var(--proof-glow));flex:none;width:1.5rem;height:1px}html .part-tag .num{font-family:var(--font)}html .hero h1{letter-spacing:-.04em;background-image:var(--headline);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:300}html .hero h1 em{background-image:var(--gradient-brand);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal;font-weight:400}html .hero .lede{color:var(--text-2)}html .route a{border:1px solid var(--line-strong);background:var(--mist);color:var(--fg);font-family:var(--font);letter-spacing:0;text-transform:none;border-radius:999px;padding:.5rem 1rem;font-size:.875rem;font-weight:400}html .route a b{font-family:var(--mono);color:var(--text-3);font-weight:500}html .route a:hover{border-color:var(--fg)}html :is(.act-band h2,main>section>h2){letter-spacing:-.035em;background-image:var(--headline);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:300}html main>section>h2{letter-spacing:-.03em;font-weight:400}html main>section>h3,html .sim__head h3,html .sim__head h4,html .step-card h4,html .check summary{letter-spacing:-.02em;font-weight:500}html .act-band .act-no:after{background:var(--line-strong)}html .toc-inline{border-color:var(--line);background:var(--panel)}html .toc .kicker{font-family:var(--font);letter-spacing:0;text-transform:none;color:var(--text-2);font-size:.8125rem;font-weight:500}html .toc h2{align-items:center;gap:.625rem;margin-bottom:.75rem;display:flex}html .toc h2:before{content:"";background:linear-gradient(90deg, var(--signal-glow), var(--proof-glow));width:1.5rem;height:1px}html .toc .toc__act,html .toc .read-pct{color:var(--text-3);font-size:.75rem}html .toc .toc__act{margin-top:1.25rem}html .toc a[aria-current=true]{font-weight:inherit;color:var(--fg);border-left-color:var(--signal)}html .toc a[aria-current=true] .num{color:var(--signal-ink)}html .toc a.done:after{font-weight:400}html .wide,html .check,html .table-wrap,html .step-list{border-color:var(--line);background:var(--panel)}html :is(.fig,.sim){border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--plate-shadow);background:var(--plate);backdrop-filter:blur(18px)saturate(1.4)}html .sim__head,html .sim__controls,html .sim__log{border-color:var(--line)}@media (width>=1240px){html main .sim:is(.journey,.archmap){margin-right:calc(-1*clamp(0px,50vw - 566px,140px))}}html .callout{border-color:var(--line)}html .callout.key{border-left-color:var(--signal)}html .check .a{border-left-color:var(--ok)}html .step-card{background:var(--bg-2);border-color:var(--line)}html .step-list li:hover{background:color-mix(in srgb, var(--fg) 4%, transparent)}html .step-list li[aria-current=step]{background:var(--surface);box-shadow:inset 3px 0 0 var(--signal)}html svg .t:not(.mono):not(.take){letter-spacing:-.01em}html svg .t.b{font-weight:600}html table{background:0 0}html .table-wrap th{background:var(--bg-2)}html code{background:color-mix(in srgb, var(--fg) 7%, transparent);border-color:#0000}html pre,html .astro-code{border-color:var(--line);border-radius:var(--radius);background:var(--bg-2)!important}html[lang]:root .astro-code,html[lang]:root .astro-code span{color:light-dark(var(--shiki-light),var(--shiki-dark))!important}html a{text-decoration-color:color-mix(in srgb, var(--link) 45%, transparent)}html .skip{background:var(--surface)}html .btn{font-family:var(--font);letter-spacing:0;border:1px solid var(--line-strong);background:var(--mist);color:var(--fg);box-shadow:none;border-radius:999px;padding:.4rem .85rem;font-size:.8rem;font-weight:500}html .btn:hover{box-shadow:none;background:color-mix(in srgb, var(--fg) 9%, transparent);border-color:color-mix(in srgb, var(--fg) 30%, transparent);transform:none}html .btn:active{box-shadow:none;transform:none}html .btn[aria-pressed=true],html .btn.primary{background:var(--fg);color:var(--bg);border-color:var(--fg)}html .btn.danger{border-color:var(--bad);color:var(--bad);background:0 0}html .btn.danger:hover{background:var(--bad-soft)}html .btn.danger[aria-pressed=true]{background:var(--bad);color:#fff}html .seg{border:1px solid var(--line-strong);background:var(--mist);box-shadow:none;border-radius:999px}html .seg .btn+.btn{border-left-color:var(--line)}html .range input[type=range],html .range input[type=checkbox]{accent-color:var(--signal)}html .theme-toggle{display:none}@property --mx{syntax:"<length-percentage>";inherits:true;initial-value:50%}@property --my{syntax:"<length-percentage>";inherits:true;initial-value:50%}html .site-footer{border-top:1px solid color-mix(in srgb, var(--fg) 7%, transparent);background:var(--footer-bg);color:var(--footer-text);margin-top:2rem;line-height:1.65;position:relative;overflow-x:clip}html .site-footer:before{content:"";pointer-events:none;background:radial-gradient(at top,light-dark(#5b45e014,#6c37eb24),#0000 70%);width:64rem;max-width:100%;height:18rem;position:absolute;top:0;left:50%;transform:translate(-50%)}html .site-footer .shell{position:relative}html .site-footer p{margin:0}html .site-footer a{text-decoration:none}html .site-footer .site-footer__edge{inset-inline:0;pointer-events:none;align-items:center;display:flex;position:absolute;top:0;transform:translateY(-50%)}html .site-footer__edge .hex{flex-shrink:0;width:1.125rem;height:1.125rem}html .site-footer__edge .channel{flex:1;height:1.25rem;position:relative}html .site-footer__edge .channel svg{width:100%;max-width:none;height:100%;position:absolute;inset:0}html .site-footer__edge .packet{opacity:0;background:light-dark(#6a55e8,#fff);border-radius:999px;width:.375rem;height:.375rem;position:absolute;top:50%;left:0;transform:translate(-50%,-50%);box-shadow:0 0 10px 3px #9d8bffcc}html .site-footer__edge .packet.back{background:var(--peach);box-shadow:0 0 10px 3px #ffb49a99}@keyframes footer-packet{0%{opacity:0;left:0%}4%,40%{opacity:1}44%,to{opacity:0;left:100%}}@media (prefers-reduced-motion:no-preference){html .site-footer__edge .packet{animation:9s cubic-bezier(.45,0,.55,1) infinite footer-packet}html .site-footer__edge .packet.back{animation-direction:reverse}}html .site-footer__main{padding-top:4rem}html .site-footer__top{gap:3rem;display:grid}html .site-footer__brand a{color:var(--fg);letter-spacing:-.01em;align-items:center;gap:.625rem;font-size:1.25rem;font-weight:600;line-height:1.4;display:inline-flex}html .site-footer__brand svg{width:auto;height:1.5rem}html .site-footer__brand .expansion{color:var(--footer-faint);margin-top:.5rem;font-size:.875rem}html .site-footer__brand .tagline{max-width:20rem;color:var(--footer-text);margin-top:1.25rem;font-size:.9375rem;line-height:1.625}html .site-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem 2rem;display:grid}html .site-footer__cols h2{font-size:.8125rem;font-weight:500;line-height:inherit;letter-spacing:0;color:var(--fg);margin:0}html .site-footer__cols ul{margin:1rem 0 0;padding:0;list-style:none}html .site-footer__cols li{margin:0}html .site-footer__cols li+li{margin-top:.625rem}html .site-footer__cols a{color:var(--footer-link);font-size:.9375rem;line-height:1.375;transition:color .15s}html .site-footer__cols a:hover{color:var(--fg)}html .site-footer__cols .ext{vertical-align:-.15em;width:.875rem;height:.875rem;color:color-mix(in srgb, var(--fg) 30%, transparent);fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;margin-left:.25rem;transition:color .15s,transform .15s;display:inline-block}html .site-footer__cols a:hover .ext{color:var(--fg);transform:translate(1px,-1px)}html .site-footer__backing{border-top:1px solid color-mix(in srgb, var(--fg) 7%, transparent);gap:1.5rem;margin-top:3.5rem;padding-top:2rem;display:grid}html .site-footer__backing p{color:var(--text-3);font-size:.75rem}html .site-footer__backing .logos{flex-wrap:wrap;align-items:center;column-gap:1.5rem;display:flex}html .site-footer__backing a{align-items:center;min-height:2.5rem;transition:opacity .15s;display:flex}html .site-footer__backing a:hover{opacity:.75}html .site-footer__backing img{width:auto;max-width:none}html .site-footer__backing img.on-light{display:var(--logo-light)}html .site-footer__backing img.on-dark{display:var(--logo-dark)}html .site-footer__backing img.lfdt{height:.875rem}html .site-footer__backing img.hashgraph{height:1.5rem}html .site-footer__backing img.hedera,html .site-footer__backing img.hiero{height:2rem}html .site-footer .site-footer__wordmark{--mx:30%;--my:85%;letter-spacing:-.065em;text-align:center;color:#0000;user-select:none;background-image:radial-gradient(30rem circle at var(--mx) var(--my), #9d8bfff2, #f27fbdb3 36%, transparent 66%), linear-gradient(180deg, light-dark(#120f2c14,#ffffff1a), light-dark(#120f2c05,#ffffff05) 85%);-webkit-background-clip:text;background-clip:text;margin:3.5rem 0 -.04em;font-size:clamp(6.5rem,31vw,27rem);font-weight:600;line-height:.8;-webkit-mask-image:linear-gradient(#000 40%,#0000 100%);mask-image:linear-gradient(#000 40%,#0000 100%)}@keyframes wordmark-sweep{0%{--mx:8%;--my:90%}to{--mx:92%;--my:35%}}@media (hover:none) and (prefers-reduced-motion:no-preference){html .site-footer .site-footer__wordmark{animation:9s ease-in-out infinite alternate wordmark-sweep}}html .site-footer__legal{border-top:1px solid color-mix(in srgb, var(--fg) 7%, transparent);color:var(--footer-legal);flex-direction:column;gap:1rem;padding:1.5rem 0;font-size:.8125rem;display:flex}html .site-footer__legal>div{max-width:48rem}html .site-footer__legal .about{margin-bottom:.75rem}html .site-footer__legal .affiliation{color:var(--footer-text);font-weight:500}html .site-footer__legal p:not(.about)+p{margin-top:.5rem}html .site-footer__legal p a{color:var(--footer-text);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--fg) 25%, transparent)}html .site-footer__legal p a:hover{color:var(--fg);text-decoration-color:currentColor}html .site-footer__legal>a{color:var(--footer-text);flex-shrink:0;align-items:center;gap:.375rem;transition:color .15s;display:inline-flex}html .site-footer__legal>a:hover{color:var(--fg)}html .site-footer__legal>a svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:.875rem;height:.875rem}@media (width>=40rem){html .site-footer__cols{grid-template-columns:repeat(4,minmax(0,1fr))}html .site-footer__backing{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=48rem){html .site-footer__legal{flex-direction:row;justify-content:space-between;align-items:center;gap:2.5rem}}@media (width>=64rem){html .site-footer__main{padding-top:5rem}html .site-footer__top{grid-template-columns:repeat(12,minmax(0,1fr));gap:2rem}html .site-footer__brand{grid-column:span 4}html .site-footer__cols{grid-column:span 8}html .site-footer__backing,html .site-footer .site-footer__wordmark{margin-top:4rem}}html :is(.fig,.sim,.trailer) svg :is(.d-a,.d-b,.d-c,.d-ok,.d-bad,.d-money){stroke-width:1.25px;filter:drop-shadow(0 0 6px var(--glow,transparent))}html svg .d-a{fill:light-dark(#ecebfd,#221e49);--glow:light-dark(#6a55e82e,#8b7bff66)}html svg .d-b{fill:light-dark(#fbe8f2,#2f1e41);--glow:light-dark(#d23a8a2e,#f27fbd66)}html svg .d-c{fill:light-dark(#f5e8f8,#2b1c44);--glow:light-dark(#9b36a82e,#d56ad866)}html svg .d-ok{fill:light-dark(#e2f4ec,#1b293e);--glow:light-dark(#127a5529,#4fd8a859)}html svg .d-bad{fill:light-dark(#fbe5e3,#301c36);--glow:light-dark(#b8322a29,#ff6b5e59)}html svg .d-money{fill:light-dark(#fbebe3,#30253d);--glow:light-dark(#a84a2a29,#ffb49a59)}html svg .d-surface,html svg .d-grey{fill:light-dark(#fff,#100d26);stroke:light-dark(#120f2c2e,#ffffff24)}html :is(.fig,.sim,.trailer) svg .line{stroke-linecap:round;filter:drop-shadow(0 0 3px var(--glow,transparent))}html svg .line.a{--glow:light-dark(#6a55e840,#8b7bff99)}html svg .line.b{--glow:light-dark(#d23a8a40,#f27fbd99)}html svg .line.c{--glow:light-dark(#9b36a840,#d56ad899)}html svg .line.ok{--glow:light-dark(#127a5533,#4fd8a880)}html svg .line.money{--glow:light-dark(#a84a2a33,#ffb49a80)}html svg .art-orb{fill:var(--tone-wash);stroke:var(--tone-line);stroke-width:1px}html svg .art-validator{fill:light-dark(var(--tone),#fff);opacity:.8;filter:drop-shadow(0 0 3px var(--tone))}html svg .art-star{fill:light-dark(var(--tone),#fff);filter:drop-shadow(0 0 4px var(--tone)) drop-shadow(0 0 10px var(--tone-glow))}html svg .art-halo{fill:none;stroke:var(--tone-line);stroke-width:1px}html svg .art-endpoint{fill:var(--art-fill);stroke:var(--tone);stroke-width:1.5px;filter:drop-shadow(0 0 4px var(--tone-glow))}html svg .art-verifier{fill:var(--art-fill);stroke:var(--proof-glow);stroke-width:1.4px;filter:drop-shadow(0 0 4px light-dark(#d23a8a4d,#f27fbd80))}html svg .art-fibre{fill:none;stroke-width:.9px;stroke-linecap:round;opacity:.55}html svg .art-fibre:not(.lane){stroke:var(--tone)}html svg linearGradient[id$=lane] stop:first-child{stop-color:var(--signal-glow)}html svg linearGradient[id$=lane] stop:last-child{stop-color:var(--proof-glow)}html svg .art-coin{fill:var(--art-fill);stroke:var(--peach);stroke-width:1.6px}html svg .art-coin-dot{fill:var(--peach)}html svg .art-ring{fill:none;stroke:var(--proof-glow);stroke-width:1.4px;filter:drop-shadow(0 0 4px light-dark(#d23a8a59,#f27fbd99))}html svg :is(.art-orb,.art-validator,.art-star,.art-halo,.art-endpoint,.art-fibre){--tone:light-dark(#6a55e8,#9d8bff);--tone-line:light-dark(#6a55e880,#9d8bff80);--tone-wash:light-dark(#6a55e812,#8b7bff17);--tone-glow:light-dark(#6a55e84d,#9d8bff80)}html svg :is(.art-orb,.art-validator,.art-star,.art-halo,.art-endpoint,.art-fibre).b{--tone:light-dark(#d23a8a,#f27fbd);--tone-line:light-dark(#d23a8a80,#f27fbd80);--tone-wash:light-dark(#d23a8a12,#f27fbd17);--tone-glow:light-dark(#d23a8a4d,#f27fbd80)}html svg :is(.art-orb,.art-validator,.art-star,.art-halo,.art-endpoint,.art-fibre).c{--tone:light-dark(#b84fc0,#d56ad8);--tone-line:light-dark(#b84fc080,#d56ad880);--tone-wash:light-dark(#b84fc012,#d56ad817);--tone-glow:light-dark(#b84fc04d,#d56ad880)}html svg :is(.art-orb,.art-validator,.art-star,.art-halo,.art-endpoint,.art-fibre).money{--tone:light-dark(#c95f3a,#ffb49a);--tone-line:light-dark(#c95f3a80,#ffb49a80);--tone-wash:light-dark(#c95f3a12,#ffb49a17);--tone-glow:light-dark(#c95f3a4d,#ffb49a80)}html svg :is(.art-orb,.art-validator,.art-star,.art-halo,.art-endpoint,.art-fibre).ok{--tone:light-dark(#1f9d6e,#4fd8a8);--tone-line:light-dark(#1f9d6e80,#4fd8a880);--tone-wash:light-dark(#1f9d6e12,#4fd8a814);--tone-glow:light-dark(#1f9d6e47,#4fd8a873)}html svg :is(.art-orb,.art-validator,.art-star,.art-halo,.art-endpoint,.art-fibre).bad{--tone:light-dark(#d6453a,#ff6b5e);--tone-line:light-dark(#d6453a80,#ff6b5e80);--tone-wash:light-dark(#d6453a12,#ff6b5e14);--tone-glow:light-dark(#d6453a47,#ff6b5e73)}html svg .art-validator.dim{opacity:.35}@keyframes art-travel{0%{offset-distance:0%}to{offset-distance:100%}}@keyframes art-pulse{0%,to{opacity:.25}50%{opacity:1}}html svg .art-move{offset-rotate:0deg;animation:art-travel var(--dur,4s) var(--delay,0s) ease-in-out infinite both}html svg .art-breathe{animation:art-pulse var(--dur,3s) var(--delay,0s) ease-in-out infinite}@media (prefers-reduced-motion:reduce){html svg .art-move{offset-distance:var(--rest,50%);animation:none}html svg .art-breathe{opacity:1;animation:none}}html svg .art-bundle{fill:light-dark(#ffffffb3,#0b0a1399);stroke:var(--proof-glow);stroke-width:1.3px;stroke-dasharray:3 3}.trailer{max-width:560px;margin:22px 0 6px}.trailer svg{cursor:pointer;width:100%;height:auto;display:block}.trailer .tr-l,.trailer .tr-s{font-size:16px}.trailer .tr-dash{stroke-dasharray:5 4}.trailer__phases{height:1.6em;font-family:var(--mono);letter-spacing:.04em;color:var(--text-2);margin:8px 0 0;font-size:.78rem;position:relative}.trailer .tr-phase{opacity:0;position:absolute;top:0;left:0}.trailer__foot{font-family:var(--mono);justify-content:space-between;align-items:center;gap:12px;margin:4px 0 0;font-size:.78rem;display:flex}.trailer__foot .btn{padding:4px 9px;font-size:.66rem}.trailer .tr-env{transform:translate(496px,58px)}.trailer .tr-reply{transform:translate(64px,58px)}.trailer .tr-check{transform-box:fill-box;transform-origin:50%}.trailer .tr-glow{stroke-width:1.4px}.trailer .tr-phase-5{opacity:1}@keyframes tr-env{0%,3%{opacity:0;transform:translate(120px,58px)}6%,18%{opacity:1;transform:translate(120px,58px)}22%,30%{transform:translate(178px,96px)}36%,42%{transform:translate(322px,96px)}48%,54%{opacity:1;transform:translate(468px,108px)}58%,60%{opacity:1;transform:translate(496px,58px)}62%,to{opacity:0;transform:translate(496px,58px)}}@keyframes tr-seal{0%,11%{opacity:0}14%,to{opacity:1}}@keyframes tr-reply{0%,63%{opacity:0;transform:translate(496px,58px)}66%,68%{opacity:1;transform:translate(496px,58px)}72%,78%{transform:translate(322px,96px)}82%,86%{transform:translate(178px,96px)}89%,93%{opacity:1;transform:translate(92px,108px)}97%,98%{opacity:1;transform:translate(64px,58px)}to{opacity:0;transform:translate(64px,58px)}}@keyframes tr-checkB{0%,48%{opacity:0;transform:scale(.5)}52%,to{opacity:1;transform:scale(1)}}@keyframes tr-checkA{0%,90%{opacity:0;transform:scale(.5)}94%,to{opacity:1;transform:scale(1)}}@keyframes tr-glowB{0%,46%{stroke-width:1.5px}49%,55%{stroke-width:4px}58%,to{stroke-width:1.5px}}@keyframes tr-glowA{0%,88%{stroke-width:1.5px}90%,95%{stroke-width:4px}98%,to{stroke-width:1.5px}}@keyframes tr-p1{0%,2%{opacity:0}5%,19%{opacity:1}21%,to{opacity:0}}@keyframes tr-p2{0%,21%{opacity:0}23%,33%{opacity:1}35%,to{opacity:0}}@keyframes tr-p3{0%,35%{opacity:0}37%,45%{opacity:1}46%,to{opacity:0}}@keyframes tr-p4{0%,46%{opacity:0}47%,56%{opacity:1}57%,to{opacity:0}}@keyframes tr-p5{0%,57%{opacity:0}59%,97%{opacity:1}99%,to{opacity:0}}.trailer .tr-env{animation:12s linear infinite tr-env}.trailer .tr-env .tr-seal{animation:12s linear infinite tr-seal}.trailer .tr-reply{animation:12s linear infinite tr-reply}.trailer .tr-checkB{animation:12s linear infinite tr-checkB}.trailer .tr-checkA{animation:12s linear infinite tr-checkA}.trailer .tr-glowB{animation:12s linear infinite tr-glowB}.trailer .tr-glowA{animation:12s linear infinite tr-glowA}.trailer .tr-phase-1{animation:12s linear infinite tr-p1}.trailer .tr-phase-2{animation:12s linear infinite tr-p2}.trailer .tr-phase-3{animation:12s linear infinite tr-p3}.trailer .tr-phase-4{animation:12s linear infinite tr-p4}.trailer .tr-phase-5{animation:12s linear infinite tr-p5}.trailer[data-paused=true] .tr-env,.trailer[data-paused=true] .tr-seal,.trailer[data-paused=true] .tr-reply,.trailer[data-paused=true] .tr-check,.trailer[data-paused=true] .tr-glow,.trailer[data-paused=true] .tr-phase{animation-play-state:paused}@media (hover:hover){.trailer:hover .tr-env,.trailer:hover .tr-seal,.trailer:hover .tr-reply,.trailer:hover .tr-check,.trailer:hover .tr-glow,.trailer:hover .tr-phase{animation-play-state:paused}}@media (prefers-reduced-motion:reduce){.trailer .tr-env,.trailer .tr-seal,.trailer .tr-reply,.trailer .tr-check,.trailer .tr-glow,.trailer .tr-phase{animation:none!important}.trailer .tr-env,.trailer .tr-reply{opacity:1}.trailer .tr-check{opacity:1;transform:none}.trailer__foot .btn{display:none}}@media (width<=1239.98px){.journey[data-astro-cid-mh2lhvgy] .sim__scroll[data-astro-cid-mh2lhvgy]>svg[data-astro-cid-mh2lhvgy]{min-width:920px}}@media (width>=1240px){.journey[data-astro-cid-mh2lhvgy] .sim__scroll[data-astro-cid-mh2lhvgy]>svg[data-astro-cid-mh2lhvgy]{min-width:0}}.journey__token[data-astro-cid-mh2lhvgy]{color:var(--text);transition:transform .6s cubic-bezier(.4,.1,.2,1)}.journey[data-astro-cid-mh2lhvgy] .node[data-astro-cid-mh2lhvgy]{transition:opacity .25s}.journey[data-astro-cid-mh2lhvgy] .node[data-astro-cid-mh2lhvgy].off{opacity:.32}.journey[data-astro-cid-mh2lhvgy] .node[data-astro-cid-mh2lhvgy].on rect[data-astro-cid-mh2lhvgy]{stroke-width:2.5px}.journey[data-astro-cid-mh2lhvgy] .node[data-astro-cid-mh2lhvgy].pulse>rect[data-astro-cid-mh2lhvgy]{animation:.45s ease-out journey-pulse}@keyframes journey-pulse{40%{stroke-width:6px}}.journey[data-astro-cid-mh2lhvgy] g[data-astro-cid-mh2lhvgy][data-node=qA].on .mono[data-astro-cid-mh2lhvgy]{fill:var(--a)}.journey[data-astro-cid-mh2lhvgy] g[data-astro-cid-mh2lhvgy][data-node=qB].on .mono[data-astro-cid-mh2lhvgy]{fill:var(--b)}.journey__track[data-astro-cid-mh2lhvgy]{height:4px;position:relative}.journey__track[data-astro-cid-mh2lhvgy] .tick[data-astro-cid-mh2lhvgy]{background:var(--surface);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.journey[data-astro-cid-mh2lhvgy] .phase-row[data-astro-cid-mh2lhvgy]{pointer-events:none}.sim.rhash .rhash__wrap td,.sim.rhash .rhash__wrap th{white-space:normal}.sim.rhash .rhash__wrap td:nth-child(2),.sim.rhash .rhash__wrap td:nth-child(3){white-space:nowrap}.sim.rhash td{transition:background-color .3s}.sim.rhash tr.broken td{background:var(--bad-soft);background:color-mix(in srgb, var(--bad-soft) 55%, transparent)}.sim.rhash code.bad{color:var(--bad)}.sim.rhash code.pending{color:var(--text-3);animation:1.2s ease-in-out infinite rhash-shimmer}@keyframes rhash-shimmer{50%{opacity:.35}}.sim.rhash td.hash{padding-left:26px;position:relative}.sim.rhash td.hash:before{content:"";border-left:2px dotted var(--border-2);position:absolute;top:0;bottom:0;left:11px}.sim.rhash tr.first td.hash:before{top:50%}.sim.rhash tr.last td.hash:before{bottom:50%}.sim.rhash tr:not(.first) td.hash:after{content:"";border:4px solid #0000;border-top:5px solid var(--border-2);border-bottom:0;position:absolute;top:3px;left:8px}.sim.rhash tr.broken td.hash:before{border-color:var(--bad)}.sim.rhash tr.broken td.hash:after{border-top-color:var(--bad)}.sim.rhash .break{font-family:var(--mono);color:var(--bad);text-transform:uppercase;letter-spacing:.06em;white-space:normal;margin-top:2px;font-size:.68rem;display:block}.sim.rhash .break[hidden]{display:none}.sim.rhash .anchor{font-family:var(--mono);color:var(--ok);margin:8px 0 0;font-size:.78rem}.sim.rhash .anchor code{color:var(--ok)}@media (width<=560px){.sim.rhash th:nth-child(4),.sim.rhash td:nth-child(4){display:none}}@media (width>=720px){.sim.rhash .sim__log{min-height:8em}}.money__inputs[data-astro-cid-ud4e4uv6]{align-content:start;gap:10px;display:grid}.money[data-astro-cid-ud4e4uv6] .range[data-astro-cid-ud4e4uv6]{flex-wrap:wrap;gap:4px 8px;display:flex}.money[data-astro-cid-ud4e4uv6] .range[data-astro-cid-ud4e4uv6]>span[data-astro-cid-ud4e4uv6]{flex:100%}.money[data-astro-cid-ud4e4uv6] .range[data-astro-cid-ud4e4uv6] input[data-astro-cid-ud4e4uv6][type=range]{flex:140px;width:auto}.money[data-astro-cid-ud4e4uv6] .range[data-astro-cid-ud4e4uv6] output[data-astro-cid-ud4e4uv6]{text-align:right;min-width:7ch}.money[data-astro-cid-ud4e4uv6] .money__check[data-astro-cid-ud4e4uv6]{flex-wrap:nowrap;align-items:start}.money[data-astro-cid-ud4e4uv6] .money__check[data-astro-cid-ud4e4uv6]>span[data-astro-cid-ud4e4uv6]{flex:auto}.money__formula[data-astro-cid-ud4e4uv6]{font-family:var(--mono);margin:0;font-size:.8rem}.money[data-astro-cid-ud4e4uv6] .result[data-astro-cid-ud4e4uv6]{border-left:4px solid var(--ok)}.money[data-astro-cid-ud4e4uv6] .result[data-astro-cid-ud4e4uv6].bad{border-left-color:var(--bad)}.money[data-astro-cid-ud4e4uv6] .row[data-astro-cid-ud4e4uv6] span[data-astro-cid-ud4e4uv6]{font-variant-numeric:tabular-nums}@media (width<=520px){.money[data-astro-cid-ud4e4uv6] .result[data-astro-cid-ud4e4uv6] .row[data-astro-cid-ud4e4uv6]{grid-template-columns:1fr;gap:2px}}.money__meter[data-astro-cid-ud4e4uv6]{border-radius:4px;height:8px;margin:2px 0;position:relative;overflow:hidden}.money__meter[data-astro-cid-ud4e4uv6]>i[data-astro-cid-ud4e4uv6]{border-radius:4px;transition:width .25s,left .25s;display:block;position:absolute;top:0;bottom:0;left:0}.money__meter[data-astro-cid-ud4e4uv6]>.track[data-astro-cid-ud4e4uv6]{background:var(--grey-soft)}.money__meter[data-astro-cid-ud4e4uv6]>.fill[data-astro-cid-ud4e4uv6]{background:var(--money)}.money__meter[data-astro-cid-ud4e4uv6]>.over[data-astro-cid-ud4e4uv6]{background:var(--bad)}.money__meter-cap[data-astro-cid-ud4e4uv6]{font-family:var(--mono);color:var(--text-3);margin:0 0 8px;font-size:.75rem}.money__pos[data-astro-cid-ud4e4uv6]{color:var(--ok)}.money__neg[data-astro-cid-ud4e4uv6]{color:var(--bad)}.money[data-astro-cid-ud4e4uv6] [data-astro-cid-ud4e4uv6][data-out]{border-radius:3px}.money[data-astro-cid-ud4e4uv6] [data-astro-cid-ud4e4uv6][data-out].changed{animation:.6s ease-out money-flash}@keyframes money-flash{0%{background-color:var(--a-soft)}}.failures[data-astro-cid-umrccmqc] .sim__controls[data-astro-cid-umrccmqc].picker{border-top:0;border-bottom:1px solid var(--border);flex-direction:column;align-items:stretch;gap:10px}.failures[data-astro-cid-umrccmqc] .sim__controls[data-astro-cid-umrccmqc] .group[data-astro-cid-umrccmqc]{flex-wrap:wrap;gap:6px;display:flex}.failures[data-astro-cid-umrccmqc] .sim__controls[data-astro-cid-umrccmqc] .group[data-astro-cid-umrccmqc] .kicker[data-astro-cid-umrccmqc]{flex-basis:100%}.failures[data-astro-cid-umrccmqc] .btn[data-astro-cid-umrccmqc]{text-align:left}.failures[data-astro-cid-umrccmqc] .btn[data-astro-cid-umrccmqc]:hover{background:var(--bg-2)}.failures[data-astro-cid-umrccmqc] .btn[data-astro-cid-umrccmqc][aria-pressed=true]{box-shadow:inset 4px 0 0 var(--bad);background:var(--text)}.failures[data-astro-cid-umrccmqc] .btn[data-astro-cid-umrccmqc][aria-pressed=true]:hover{background:var(--text)}.failures[data-astro-cid-umrccmqc] .result[data-astro-cid-umrccmqc]:not([hidden]){animation:.18s ease-out sim-fade}.failures[data-astro-cid-umrccmqc] .sw[data-astro-cid-umrccmqc]{vertical-align:0;border-radius:2px;width:9px;height:9px;margin-right:6px;display:inline-block}.failures[data-astro-cid-umrccmqc] .sw[data-astro-cid-umrccmqc].money{background:var(--money)}.failures[data-astro-cid-umrccmqc] .sw[data-astro-cid-umrccmqc].ok{background:var(--ok)}.failures[data-astro-cid-umrccmqc] .sw[data-astro-cid-umrccmqc].bad{background:var(--bad)}@media (width<=520px){.failures[data-astro-cid-umrccmqc] .sim__controls[data-astro-cid-umrccmqc] .group[data-astro-cid-umrccmqc] .btn[data-astro-cid-umrccmqc]{width:100%}.failures[data-astro-cid-umrccmqc] .result[data-astro-cid-umrccmqc] .row[data-astro-cid-umrccmqc]{grid-template-columns:1fr;gap:2px}}.extend[data-astro-cid-bof4enew] .sim__head[data-astro-cid-bof4enew] .sim__track[data-astro-cid-bof4enew]{flex-basis:100%}.extend[data-astro-cid-bof4enew] .part[data-astro-cid-bof4enew]{opacity:.12;transform-box:fill-box;transition:opacity .3s,transform .3s;transform:translateY(6px)}.extend[data-astro-cid-bof4enew] .part[data-astro-cid-bof4enew].on{opacity:1;transform:none}.sim[data-astro-cid-bof4enew].extend svg[data-astro-cid-bof4enew] .part[data-astro-cid-bof4enew].on rect[data-astro-cid-bof4enew]{stroke-width:1.5px}.sim[data-astro-cid-bof4enew].extend svg[data-astro-cid-bof4enew] .part[data-astro-cid-bof4enew].now rect[data-astro-cid-bof4enew]{animation:.6s extend-pop}@keyframes extend-pop{50%{stroke-width:3.5px}}.extend[data-astro-cid-bof4enew] .part[data-astro-cid-bof4enew].now line[data-astro-cid-bof4enew]{stroke-dasharray:1;animation:.35s ease-out extend-draw}@keyframes extend-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.extend[data-astro-cid-bof4enew] .part[data-astro-cid-bof4enew].now path[data-astro-cid-bof4enew].dash{animation:.45s linear extend-march}@keyframes extend-march{0%{stroke-dashoffset:18px}to{stroke-dashoffset:0}}.extend[data-astro-cid-bof4enew] .sim__log[data-astro-cid-bof4enew] .line[data-astro-cid-bof4enew][hidden]{display:none}.extend[data-astro-cid-bof4enew] .sim__log[data-astro-cid-bof4enew]{min-height:2.4em}.archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk]{cursor:pointer;transition:opacity .2s}.archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk] rect[data-astro-cid-ziocv4gk]{transition:fill .2s,stroke .2s,stroke-width .15s,filter .15s,opacity .2s}.archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk] text[data-astro-cid-ziocv4gk]{transition:fill .2s,opacity .2s}.archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk]:hover rect[data-astro-cid-ziocv4gk]{stroke-width:2.5px}.archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk]:not(.on):hover rect[data-astro-cid-ziocv4gk]{filter:brightness(1.04)}:root[data-theme=dark] .archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk]:not(.on):hover rect[data-astro-cid-ziocv4gk]{filter:brightness(1.15)}@media (prefers-color-scheme:dark){:root[data-theme=system] .archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk]:not(.on):hover rect[data-astro-cid-ziocv4gk]{filter:brightness(1.15)}}.archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk].on rect[data-astro-cid-ziocv4gk]{stroke-width:3px;filter:drop-shadow(0 0 3px color-mix(in srgb, var(--text) 35%, transparent))}.archmap[data-astro-cid-ziocv4gk].has-sel .part[data-astro-cid-ziocv4gk]:not(.on){opacity:.55}.archmap[data-astro-cid-ziocv4gk].has-sel .part[data-astro-cid-ziocv4gk]:not(.on):hover,.archmap[data-astro-cid-ziocv4gk].has-sel .part[data-astro-cid-ziocv4gk]:not(.on):focus-visible{opacity:1}.archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk]:focus-visible{outline:none}.archmap[data-astro-cid-ziocv4gk] .part[data-astro-cid-ziocv4gk]:focus-visible rect[data-astro-cid-ziocv4gk]{stroke:var(--focus);stroke-width:2.5px}@media (width<=1239.98px){.archmap[data-astro-cid-ziocv4gk] .sim__scroll[data-astro-cid-ziocv4gk]>svg[data-astro-cid-ziocv4gk]{min-width:940px}}@media (width>=1240px){.archmap[data-astro-cid-ziocv4gk] .sim__scroll[data-astro-cid-ziocv4gk]>svg[data-astro-cid-ziocv4gk]{min-width:0}}.archmap[data-astro-cid-ziocv4gk] [data-astro-cid-ziocv4gk][data-role=channel]{transition:stroke .25s,stroke-width .15s}.archmap[data-astro-cid-ziocv4gk] [data-astro-cid-ziocv4gk][data-role=channel].ok{stroke-width:2.5px}@media (width>=720px){.archmap[data-astro-cid-ziocv4gk] .result[data-astro-cid-ziocv4gk]{min-height:var(--card-min,0)}}.roles-table[data-astro-cid-3fqf5c22] td[data-astro-cid-3fqf5c22].wrap{min-width:26ch}.sim.stories .choices{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:10px;display:flex}.sim.stories .kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-size:.7rem;font-weight:700}.sim.stories .seg{flex-wrap:wrap;gap:6px;display:flex}.sim.stories g[data-actor]{opacity:.35;transition:opacity .25s}.sim.stories g[data-actor].on{opacity:1}.sim.stories g[data-actor].on rect{stroke-width:2.5px}.sim.stories .step-card{margin-top:10px}
