/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@view-transition{navigation:auto}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.max-w-none{max-width:none}}:root{color-scheme:light dark;--paper:#fff;--surface:#f0f5fa;--ink:#172b43;--muted:#50627a;--accent:#235aa2;--border:#c9d5e2;--code:#162a40;--code-ink:#eef5ff;--keyword:#aaceff;--string:#b8e4ba;--number:#ffd7a8;background:var(--paper);color:var(--ink);font-family:Avenir Next,Avenir,Segoe UI,sans-serif;font-size:16px;line-height:1.7}@media (prefers-color-scheme:dark){:root{--paper:#14202e;--surface:#1d2e41;--ink:#edf3fc;--muted:#b1c1d5;--accent:#9fc8ff;--border:#52667f;--code:#0d1724}}body{background:var(--paper);margin:0}*{box-sizing:border-box}a{color:var(--accent);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}a,summary,input,pre{scroll-margin-top:90px}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3{color:var(--ink);letter-spacing:-.035em;text-wrap:balance;font-weight:650;line-height:1.2}h1{margin:0 0 24px;font-size:clamp(2.25rem,4.9vw,4.2rem)}h2{margin:0 0 18px;font-size:clamp(1.6rem,2.5vw,2.2rem)}h3{font-size:1.2rem}h2[id],h3[id]{scroll-margin-top:88px}p{max-width:72ch;margin:0 0 18px}img{max-width:100%}main{max-width:1240px;margin:auto;padding:0 32px}[data-site-header]{border-bottom:1px solid var(--border);background:var(--paper);z-index:5;view-transition-name:site-header;position:sticky;top:0}[data-header]{justify-content:space-between;align-items:center;gap:24px;max-width:1240px;height:60px;margin:auto;padding:0 32px;display:flex}[data-brand]{color:var(--ink);align-items:center;gap:9px;font-size:1.2rem;font-weight:750;text-decoration:none;display:inline-flex}[data-brand] img{width:28px;height:28px}[data-desktop-nav]{align-items:center;gap:24px;font-size:.84rem;display:flex}[data-desktop-nav] a{color:var(--ink);padding:10px 0;text-decoration:none}[data-mobile-nav],[data-mobile-sections],[data-mobile-toc]{display:none}summary{cursor:pointer;font-weight:600}[data-skip]{background:var(--paper);z-index:6;padding:12px;position:absolute;top:-100px}[data-skip]:focus{top:0}[data-hero]{grid-template-columns:1.6fr .9fr;align-items:center;gap:64px;padding:64px 0 56px;display:grid}[data-hero] h1{max-width:15ch}[data-pitch]{max-width:38ch;font-size:1.35rem;line-height:1.5}[data-hero] p{color:var(--muted)}[data-joint]{background:var(--surface);border-radius:28px;place-items:center;padding:28px;display:grid}[data-joint] img{width:190px;height:auto}[data-joint] p{margin:14px 0 0;font-size:.85rem}[data-button]{background:var(--accent);color:var(--paper);border-radius:6px;margin-top:8px;padding:10px 18px;font-weight:650;text-decoration:none;display:inline-block}[data-secondary]{margin:12px 0 0 24px;display:inline-block}[data-start]{background:var(--surface);border-radius:12px;grid-template-columns:.9fr 1.3fr;align-items:center;gap:32px;padding:28px;display:grid}[data-start] h2{font-size:1.65rem}[data-start]>div{min-width:0}[data-start] p{font-size:.92rem}[data-section],[data-results]{padding:56px 0}[data-principles]{grid-template-columns:repeat(2,1fr);gap:20px 48px;display:grid}[data-principles] article{border-top:2px solid var(--border);padding-top:12px}[data-principles] p{color:var(--muted)}[data-reading-path]{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:28px;display:grid}[data-reading-path] a{background:var(--surface);border-radius:8px;padding:20px;text-decoration:none;display:grid}[data-reading-path] span{color:var(--muted);font-size:.88rem}[data-boundaries]{color:var(--muted);max-width:85ch;font-size:.95rem}[data-results]{border-top:1px solid var(--border);max-width:850px;margin-top:40px}table{border-collapse:collapse;width:100%;margin:24px 0;font-size:.9rem}caption{text-align:left;color:var(--muted);margin-bottom:12px}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:12px}th{color:var(--ink)}thead{background:var(--surface)}[data-footer]{border-top:1px solid var(--border);max-width:1240px;color:var(--muted);justify-content:space-between;gap:24px;margin:56px auto 0;padding:28px 32px;font-size:.82rem;display:flex}[data-footer] p{margin:0}[data-reading]{max-width:900px;padding-top:48px}[data-reading]>h1{font-size:clamp(2.2rem,4vw,3.2rem)}[data-doc-layout]{grid-template-columns:190px minmax(0,1fr);gap:32px;padding-top:40px;display:grid}[data-sidebar]{view-transition-name:site-sidebar;align-self:start;max-height:calc(100vh - 125px);position:sticky;top:100px;overflow-y:auto}[data-nav-title]{color:var(--ink);margin-bottom:12px;font-size:.85rem;font-weight:700}[data-sidebar] ul,[data-toc] ul,[data-mobile-sections] ul,[data-mobile-toc] ul{margin:0;padding:0;list-style:none}[data-sidebar] a,[data-toc] a{color:var(--muted);border-radius:4px;padding:7px 10px;font-size:.82rem;line-height:1.5;text-decoration:none;display:block}[data-sidebar] a[aria-current=page],[data-mobile-sections] a[aria-current=page]{background:var(--surface);color:var(--accent);font-weight:700}[data-article-grid]{grid-template-columns:minmax(0,1fr) 165px;align-items:start;gap:28px;display:grid}[data-article-column]{min-width:0}[data-toc]{max-height:calc(100vh - 125px);position:sticky;top:100px;overflow-y:auto}[data-depth="3"]{padding-left:10px}.prose{min-width:0;max-width:74ch;color:var(--ink);--tw-prose-body:var(--ink);--tw-prose-headings:var(--ink);--tw-prose-links:var(--accent);--tw-prose-bold:var(--ink);--tw-prose-code:var(--ink);--tw-prose-quotes:var(--muted);--tw-prose-bullets:var(--muted);--tw-prose-counters:var(--muted);--tw-prose-th-borders:var(--border);--tw-prose-td-borders:var(--border);--tw-prose-quote-borders:var(--border);--tw-prose-hr:var(--border)}.prose h1{margin-top:12px;margin-bottom:20px;font-size:clamp(2rem,3.6vw,3rem)}.prose h2{margin-top:2.2em}.prose table{max-width:100%;display:block;overflow-x:auto}.prose a{color:var(--accent)}.prose code{overflow-wrap:anywhere}.prose code:before,.prose code:after{content:none}[data-description]{color:var(--muted);font-size:1.13rem;line-height:1.65}[data-breadcrumb],[data-edit]{font-size:.82rem;text-decoration:none}[data-edit]{margin-top:28px;display:inline-block}[data-pagination]{border-top:1px solid var(--border);justify-content:space-between;gap:24px;margin-top:28px;padding-top:24px;display:flex}[data-pagination] a{gap:4px;max-width:48%;font-size:.88rem;text-decoration:none;display:grid}[data-pagination] small{color:var(--muted)}[data-chapter-list]{counter-reset:chapters;margin-top:40px;padding:0;list-style:none}[data-chapter-list] li{counter-increment:chapters;border-top:1px solid var(--border);padding:24px 0 12px}[data-chapter-list] h2{font-size:1.5rem}[data-chapter-list] h2:before{content:counter(chapters) ". ";color:var(--muted)}[data-code]{background:var(--code);color:var(--code-ink);border-radius:8px;margin:24px 0;overflow:hidden}[data-code] figcaption{color:#b6c9e0;border-bottom:1px solid #405469;padding:9px 18px;font:.72rem SFMono-Regular,Consolas,monospace}[data-code] pre{color:var(--code-ink);tab-size:2;background:0 0;border-radius:0;margin:0;padding:18px;font:.8rem/1.8 SFMono-Regular,Consolas,monospace;overflow-x:auto}[data-code] code{color:inherit;white-space:pre;overflow-wrap:normal}.hljs-keyword,.hljs-literal,.hljs-selector-tag{color:var(--keyword)}.hljs-string,.hljs-regexp,.hljs-attr{color:var(--string)}.hljs-number,.hljs-built_in,.hljs-type{color:var(--number)}.hljs-comment{color:#b3c1d1}.hljs-title,.hljs-variable{color:#eac1ff}[data-explorer],[data-render-explorer]{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin:32px 0;padding:24px}[data-explorer] h2,[data-render-explorer] h2{margin:0 0 12px;font-size:1.45rem}[data-explorer] h3,[data-render-explorer] h3{margin:0 0 8px;font-size:1.12rem}[data-explorer] p,[data-render-explorer] p{margin:0 0 16px;font-size:.9rem}[data-mobile-diagram]{display:none}[data-diagram]{width:100%;height:auto;margin:16px 0;display:block}fieldset{border:0;flex-wrap:wrap;gap:8px;margin:16px 0;padding:0;display:flex}legend{padding-bottom:8px;font-size:.88rem;font-weight:650}fieldset label{border:1px solid var(--border);cursor:pointer;background:var(--paper);border-radius:6px;align-items:center;gap:8px;padding:7px 11px;font-size:.82rem;display:inline-flex}input[type=radio]{accent-color:var(--accent)}label:has(input:checked){border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}[data-stage],[data-render-result]{background:var(--paper);border-radius:6px;padding:18px;display:none}[data-explorer]:has(input[value=source]:checked) [data-stage=source],[data-explorer]:has(input[value=ir]:checked) [data-stage=ir],[data-explorer]:has(input[value=validator]:checked) [data-stage=validator],[data-explorer]:has(input[value=compiler]:checked) [data-stage=compiler],[data-explorer]:has(input[value=runtime]:checked) [data-stage=runtime],[data-render-explorer]:has(input[value=user]:checked) [data-render-result=user],[data-render-explorer]:has(input[value=public]:checked):has(input[value=static]:checked) [data-render-result=static],[data-render-explorer]:has(input[value=public]:checked):has(input[value=isr]:checked) [data-render-result=isr],[data-render-explorer]:has(input[value=public]:checked):has(input[value=swr]:checked) [data-render-result=swr],[data-render-explorer]:has(input[value=public]:checked):has(input[value=live]:checked) [data-render-result=live]{display:block}[data-render-explorer] [data-explorer-note]{color:var(--muted);margin-top:16px}@supports not selector(:has(*)){[data-stage],[data-render-result]{margin:12px 0;display:block}}::view-transition-group(site-header){animation:none}::view-transition-group(site-sidebar){animation:none}::view-transition-old(site-header){mix-blend-mode:normal;animation:none}::view-transition-new(site-header){mix-blend-mode:normal;animation:none}::view-transition-old(site-sidebar){mix-blend-mode:normal;animation:none}::view-transition-new(site-sidebar){mix-blend-mode:normal;animation:none}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none}::view-transition-old(*){animation:none}::view-transition-new(*){animation:none}}@media (max-width:1100px){[data-article-grid]{grid-template-columns:minmax(0,1fr)}[data-toc]{display:none}[data-mobile-toc]{border:1px solid var(--border);border-radius:6px;margin:24px 0;padding:12px 16px;font-size:.9rem;display:block}[data-mobile-toc] nav{padding-top:12px}[data-mobile-toc] a{padding:5px 0;display:block}}@media (max-width:850px){[data-desktop-nav]{display:none}[data-mobile-nav]{font-size:.9rem;display:block}[data-mobile-nav] summary{padding:8px 0 8px 16px}[data-mobile-nav] nav{background:var(--paper);border-bottom:1px solid var(--border);grid-template-columns:repeat(2,1fr);gap:8px;padding:16px 24px;display:grid;position:absolute;top:60px;left:0;right:0}[data-mobile-nav] a{padding:8px}[data-hero]{gap:32px}[data-start]{grid-template-columns:1fr;gap:8px}[data-doc-layout]{grid-template-columns:1fr;padding-top:24px}[data-sidebar]{display:none}[data-mobile-sections]{border-bottom:1px solid var(--border);margin-bottom:24px;padding-bottom:12px;font-size:.9rem;display:block}[data-mobile-sections] nav{padding-top:12px}[data-mobile-sections] a{padding:8px;text-decoration:none;display:block}}@media (max-width:600px){main,[data-header],[data-footer]{padding-left:20px;padding-right:20px}[data-hero]{grid-template-columns:1fr;padding:40px 0 32px}[data-joint]{display:none}[data-hero] h1{font-size:2.65rem}[data-principles],[data-reading-path]{grid-template-columns:1fr;gap:16px}[data-start]{padding:20px}[data-secondary]{margin-left:16px}[data-section],[data-results]{padding:36px 0}[data-footer]{flex-direction:column;gap:12px;margin-top:36px}[data-reading]{padding-top:32px}[data-explorer],[data-render-explorer]{padding:16px}[data-diagram]{display:none}[data-mobile-diagram]{width:100%;max-width:300px;height:auto;margin:16px auto;display:block}.prose table{font-size:.8rem}.prose td,.prose th{padding:8px}}[data-lab]{--lab-blue:#204a88;--lab-blue-text:#eef5ff;--lab-error:#9e2d25;--lab-success:#24623c;padding-top:0}[data-lab-intro]{grid-template-columns:1fr 280px;align-items:center;gap:60px;padding:72px 0 64px;display:grid}[data-lab-intro] h1{white-space:pre-line;max-width:820px;font-size:clamp(2.5rem,4.8vw,4.3rem);line-height:1.06}[data-lab-kicker]{color:var(--accent);margin-bottom:16px;font-size:.88rem;font-weight:650}[data-lab-lede]{color:var(--muted);max-width:54ch;font-size:1.15rem}[data-lab-joint]{aspect-ratio:1;background:radial-gradient(circle, var(--border) 1px, transparent 1.5px) 0 0 / 18px 18px;border-radius:50%;place-items:center;display:grid;position:relative}[data-lab-joint] img{width:175px;height:175px;transform:rotate(-9deg)}[data-lab-joint] span{background:var(--paper);border:1px solid var(--border);border-radius:5px;padding:3px 12px;font-size:.9rem;position:absolute}[data-lab-joint] span:first-of-type{top:36px;left:-5px}[data-lab-joint] span:nth-of-type(2){bottom:36px;right:-5px}[data-workbench]{border:1px solid var(--border);border-radius:18px;scroll-margin-top:90px;overflow:hidden;box-shadow:0 16px 50px -30px #172b4366}[data-workbench-heading]{background:var(--surface);justify-content:space-between;align-items:center;gap:40px;padding:28px 32px;display:flex}[data-workbench-heading] h2{margin:0;font-size:1.65rem}[data-workbench-heading] [data-lab-kicker]{margin-bottom:8px}[data-workbench-heading]>p{color:var(--muted);max-width:40ch;margin:0;font-size:.85rem}[data-workbench-grid]{grid-template-columns:1fr 1fr;display:grid}[data-source-pane]{background:var(--code);color:var(--code-ink);min-width:0;padding:12px 28px 24px}[data-pane-title]{color:#b6c9e0;justify-content:space-between;gap:16px;padding:16px 0;font-family:ui-monospace,monospace;font-size:.75rem;display:flex}[data-pane-title] span:first-child{color:var(--code-ink)}[data-lab] pre{tab-size:2;max-width:100%;margin:0;font-size:.81rem;line-height:1.8;overflow-x:auto}[data-source-pane] pre{color:#b9d8ff}[data-contract-excerpt]{border-top:1px solid #50627a;min-height:226px;margin-top:24px}[data-excerpt-note]{color:#b6c9e0;margin:16px 0 0;font-size:.73rem}[data-missing-contract]{color:#ffb4ab;border:1px dashed #ffb4ab;border-radius:6px;min-height:138px;padding:18px}[data-missing-contract] p{color:var(--code-ink);margin:8px 0 0;font-size:.9rem}[data-execution-pane]{flex-direction:column;min-width:0;padding:26px 32px;display:flex}[data-execution-rail]{margin:0 0 20px;padding:0;list-style:none}[data-execution-rail] li{align-items:center;gap:16px;min-height:63px;display:flex;position:relative}[data-execution-rail] li:not(:first-child):before,[data-execution-rail] li:not(:last-child):after{content:"";background:var(--border);width:2px;position:absolute;left:18px}[data-execution-rail] li:not(:first-child):before{top:0;bottom:calc(50% + 19px)}[data-execution-rail] li:not(:last-child):after{top:calc(50% + 19px);bottom:0}[data-step-number]{border:1px solid var(--border);width:38px;height:38px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;font-size:.85rem;transition:background-color .15s,color .15s;display:grid}[data-execution-rail] li:has([data-step-current]) [data-step-number]{background:var(--lab-blue);color:var(--lab-blue-text);border-color:var(--lab-blue)}[data-execution-rail] strong,[data-execution-rail] small{display:block}[data-execution-rail] small{color:var(--muted);font-size:.8rem}[data-step-current]{color:var(--accent);margin-left:auto}[data-run-result]{border-top:1px solid var(--border);min-height:164px;padding-top:22px}[data-run-result] p{color:var(--muted);margin:0 0 10px;font-size:.9rem}[data-run-result] [data-result-title]{color:var(--ink);font-size:1.15rem;font-weight:650}[data-result-error] [data-result-title],[data-result-error] code{color:var(--lab-error)}[data-result-success] [data-result-title]{color:var(--lab-success)}[data-result-error] code{margin-bottom:10px;font-size:.8rem;display:block}[data-run-controls]{flex-wrap:wrap;align-items:center;gap:12px;min-height:56px;margin-top:auto;display:flex}[data-lab] button{cursor:pointer;font:inherit;border-radius:7px;padding:10px 16px;line-height:1.5}[data-lab-primary]{border:1px solid var(--lab-blue);background:var(--lab-blue);color:var(--lab-blue-text);font-weight:650}[data-lab-secondary]{border:1px solid var(--border);color:var(--ink);background:var(--paper)}[data-lab] button:hover{box-shadow:0 0 0 2px var(--border)}[data-run-progress]{color:var(--accent);margin:0;font-size:.85rem;animation:1.1s ease-in-out infinite alternate lab-pulse}@keyframes lab-pulse{0%{opacity:.6}to{opacity:1}}[data-render-lab]{grid-template-columns:.8fr 1.2fr;align-items:start;gap:64px;padding:110px 0;display:grid}[data-render-intro]{padding-top:16px}[data-render-intro] h2{white-space:pre-line;font-size:clamp(2rem,3vw,2.9rem)}[data-render-intro]>p:not([data-lab-kicker]){color:var(--muted)}[data-render-workspace]{min-width:0}[data-render-settings]{flex-wrap:wrap;gap:18px;margin-bottom:24px;display:flex}[data-render-settings] fieldset{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;display:flex}[data-render-settings] legend{color:var(--muted);margin-bottom:8px;font-size:.8rem}[data-render-settings] button{background:var(--paper);color:var(--ink);border:1px solid var(--border);padding:7px 10px;font-family:ui-monospace,monospace;font-size:.78rem}[data-render-settings] button[aria-pressed=true]{color:var(--lab-blue-text);background:var(--lab-blue);border-color:var(--lab-blue)}[data-render-preview]{border:1px solid var(--border);border-radius:12px;overflow:hidden}[data-preview-bar]{background:var(--surface);color:var(--muted);border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:12px 18px;font-size:.8rem;display:flex}[data-preview-shell]{padding:24px}[data-shell-label]{margin-bottom:20px}[data-shell-label] span,[data-shell-label] small{display:block}[data-shell-label] small{color:var(--muted);font-size:.8rem}[data-preview-data]{background:var(--surface);border-left:4px solid var(--accent);min-height:170px;margin-bottom:16px;padding:18px 20px;transition:border-color .16s}[data-preview-data] small{color:var(--muted)}[data-preview-data] h3{margin:8px 0 12px}[data-preview-data] p,[data-preview-island] p{color:var(--muted);margin:0;font-size:.85rem}[data-preview-data].lab-private{border-left-color:var(--lab-error)}[data-preview-data].lab-private h3{color:var(--lab-error)}[data-preview-island]{border:2px dashed var(--border);padding:16px 18px;transition:background-color .16s,border-color .16s}[data-preview-island].lab-bound{border-style:solid;border-color:var(--accent);background:var(--surface)}[data-preview-island].lab-bound strong{color:var(--accent)}[data-plan-summary]{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;gap:6px 20px;padding:12px 18px;font-size:.75rem;display:flex}[data-lab-note]{color:var(--muted);margin:14px 0 0;font-size:.78rem}[data-design-chapters]{border-top:1px solid var(--border);padding-top:48px;scroll-margin-top:90px}[data-design-chapters]>div:first-child{max-width:640px}[data-design-chapters] ol{grid-template-columns:1fr 1fr;gap:0 48px;margin:32px 0;padding:0;list-style:none;display:grid}[data-design-chapters] li{border-top:1px solid var(--border)}[data-design-chapters] li a{color:var(--ink);align-items:baseline;gap:18px;padding:24px 0;text-decoration:none;display:flex}[data-design-chapters][id] h3{margin:0 0 10px}[data-design-chapters] li a:hover h3{color:var(--accent);text-decoration:underline}[data-design-chapters] li p{color:var(--muted);margin:0;font-size:.9rem}[data-chapter-number]{color:var(--muted);font-family:ui-monospace,monospace;font-size:.85rem}[data-chapter-arrow]{color:var(--accent);margin-left:auto}[data-lab-next]{flex-wrap:wrap;align-items:center;gap:24px;display:flex}@media (prefers-color-scheme:dark){[data-lab]{--lab-blue:#a8ccff;--lab-blue-text:#14202e;--lab-error:#ffb4ab;--lab-success:#a4dcba}}@media (max-width:1000px){[data-lab-intro]{grid-template-columns:1fr 180px;gap:28px}[data-lab-joint] img{width:120px;height:120px}[data-workbench-heading]{display:block}[data-workbench-heading]>p{max-width:70ch;margin-top:12px}[data-render-lab]{grid-template-columns:1fr;gap:24px;padding:70px 0}}@media (max-width:700px){[data-lab-intro]{grid-template-columns:1fr;padding:40px 0}[data-lab-joint]{display:none}[data-lab-intro] h1{font-size:2.6rem}[data-lab-lede]{font-size:1rem}[data-workbench-grid]{grid-template-columns:1fr}[data-workbench-heading]{padding:24px 20px}[data-source-pane]{padding:8px 20px 20px}[data-source-pane]>pre{max-height:230px}[data-contract-excerpt]{margin-top:18px}[data-execution-pane]{padding:24px 20px}[data-preview-shell]{padding:18px}[data-preview-bar]{flex-wrap:wrap}[data-design-chapters] ol{grid-template-columns:1fr}[data-run-controls]{gap:10px}[data-lab] button{font-size:.85rem}}@media (prefers-reduced-motion:reduce){[data-lab] *,[data-lab] :before,[data-lab] :after{transition:none;animation:none}}[data-workbench]>noscript>[data-lab-note]{border-top:1px solid var(--border);margin:0;padding:12px 24px}[data-run-controls]:has([data-run-progress]) button{opacity:.6;cursor:wait}[data-run-progress]{flex-basis:100%;animation:none}@media (max-width:700px){[data-execution-pane]{order:-1}[data-run-controls]{order:-1;margin-top:0;margin-bottom:20px}}