:root{--aqua-400:#4fb3f0;--aqua-500:#2f95e0;--aqua-700:#0a5aa8;--aqua-900:#063a6e;--platinum-100:#f4f5f6;--platinum-300:#e2e5e7;--platinum-500:#c7cbce;--graphite-500:#7d848a;--graphite-800:#4a5056;--ink-900:#171a1c;--paper-white:#fff;--piano-900:#0a0a0b;--red-glossy-light:#ff8a80;--red-glossy:#ff5f57;--red-glossy-dark:#d33a32;--yellow-glossy-light:#ffe08a;--yellow-glossy:#ffbd2e;--yellow-glossy-dark:#dc9615;--green-glossy-light:#8ef2a0;--green-glossy:#28c840;--green-glossy-dark:#1a9c2e;--color-paper:#eef1f3;--color-paper-deep:#dfe3e6;--color-surface:var(--paper-white);--color-text:#1c1f22;--color-text-secondary:#6b7278;--color-text-tertiary:#70767c;--color-hairline:#0000001f;--color-hairline-strong:#0003;--color-separator:#00000014;--color-accent-top:var(--aqua-400);--color-accent-bottom:var(--aqua-700);--color-accent-border:#063a6e73;--color-accent-solid:var(--aqua-700);--color-accent-pressed-top:var(--aqua-700);--color-accent-pressed-bottom:var(--aqua-900);--gradient-accent:linear-gradient(180deg, var(--color-accent-top) 0%, var(--color-accent-bottom) 100%);--gradient-accent-pressed:linear-gradient(180deg, var(--color-accent-pressed-top) 0%, var(--color-accent-pressed-bottom) 100%);--color-accent-flash:#4fb3f02e;--color-row-stripe:#4fb3f012;--color-row-hover:#4fb3f038;--color-white:#fff;--color-black:#000;--gradient-page:linear-gradient(180deg, #eef1f3 0%, #dfe3e6 40%, #d3d8db 100%);--gradient-surface:linear-gradient(180deg, #fff 0%, #f6f7f8 100%);--gradient-metal:linear-gradient(180deg, #f2f3f4 0%, #d3d6d8 100%);--gradient-metal-light:linear-gradient(180deg, #fafbfb 0%, #e9ebec 100%);--pattern-metal-striation:repeating-linear-gradient(180deg, #0000000f 0px, #0000000f 1px, #fff6 1px, #fff6 2px);--pattern-metal-striation-dark:repeating-linear-gradient(180deg, #ffffff0d 0px, #ffffff0d 1px, #0000001f 1px, #0000001f 2px);--pattern-pinstripe:repeating-linear-gradient(90deg, #0000000f 0px, #0000000f 1px, transparent 1px, transparent 4px);--pattern-pinstripe-subtle:repeating-linear-gradient(90deg, #00000007 0px, #00000007 1px, transparent 1px, transparent 4px);--gradient-glass:linear-gradient(180deg, #fff 0%, #dfe3e6 46%, #aab0b5 50%, #eef1f3 100%);--gradient-piano:linear-gradient(160deg, #2a2a2c 0%, #0a0a0b 55%, #1c1c1e 100%);--gradient-glass-sheen:linear-gradient(180deg, #ffffffbf 0%, #fff0 100%);--gradient-button-gloss:linear-gradient(180deg, #ffffff80 0%, #fff0 55%);--gradient-chrome:linear-gradient(180deg, #6e6e73 0%, #3a3a3d 100%);--gradient-chrome-active:linear-gradient(180deg, #000 0%, #1c1c1e 100%);--color-chrome-border:#222224;--color-chrome-divider:#0006;--color-chrome-divider-highlight:#ffffff14;--color-chrome-text:#f5f5f7;--shadow-chrome-active-inset:inset 0 2px 4px #000000b3;--text-shadow-on-chrome:0 1px 1px #00000080;--shadow-inset-highlight:inset 0 1px 0 #fffc;--shadow-inset-highlight-soft:inset 0 1px 0 #ffffff80;--shadow-surface:0 3px 8px #14191e14;--shadow-panel:0 10px 24px #14191e1a;--shadow-raised:0 6px 14px #14191e2e;--shadow-window:0 18px 34px #0f141947;--shadow-icon:0 5px 10px #0f14194d;--shadow-accent-raised:0 3px 6px #0a284659;--shadow-accent-raised-hover:0 4px 9px #0a284661;--shadow-surface-hover:0 4px 10px #14191e1f;--shadow-inset-track:inset 0 1px 2px #00000026;--shadow-inset-groove:inset 0 1px 3px #00000038;--shadow-pressed:inset 0 1px 2px #00000059;--text-shadow-letterpress:0 1px 0 #fff9;--text-shadow-on-accent:0 -1px 0 #00000040;--border-hairline-width:1px;--radius-sm:6px;--radius-md:10px;--radius-lg:12px;--radius-pill:999px;--radius-icon:22%;--radius-surface:var(--radius-md);--radius-control:var(--radius-sm);--font-body:"Lucida Sans Unicode", "Lucida Grande", "Lucida Sans", "Open Sans", sans-serif;--font-heading:"Helvetica Neue", Helvetica, Arial, "Inter", sans-serif;--font-caption:"Helvetica Neue", Helvetica, Arial, "Inter", sans-serif;--font-mono:"Lucida Console", Monaco, "SF Mono", ui-monospace, Menlo, Consolas, monospace;--font-system:var(--font-body);--font-ui:var(--font-caption);--font-size-body-mobile:17px;--font-size-body-desktop:19px;--font-size-prose-mobile:16px;--font-size-prose-desktop:18px;--line-height-body:1.55;--measure:68ch;--font-weight-thin:200;--font-weight-light:300;--font-weight-regular:400;--font-weight-bold:700;--font-weight-display:var(--font-weight-thin);--font-weight-heading:var(--font-weight-light);--font-weight-control:var(--font-weight-regular);--font-weight-chrome:var(--font-weight-bold);--letter-spacing-display:-.02em;--letter-spacing-heading:-.01em;--letter-spacing-kicker:3px;--font-size-h1-mobile:30px;--font-size-h1-desktop:40px;--font-size-h2-mobile:22px;--font-size-h2-desktop:26px;--font-size-h3-mobile:18px;--font-size-h3-desktop:20px;--font-size-nav-title:17px;--font-size-chrome:12px;--font-size-small:13px;--font-size-caption:11px;--font-size-tab-label:10px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:48px;--space-10:64px;--space-section-mobile:var(--space-8);--space-section-desktop:var(--space-10);--list-row-padding-y:var(--space-3);--track-date-col:8.5em;--list-row-min-height:44px;--list-separator-inset:var(--space-4);--tap-target-min:44px;--social-icon-size:18px;--desktop-nav-height:78px;--nav-height-compact:62px;--duration-press:.12s;--duration-fast:.2s;--duration-control:.25s;--duration-reveal:.32s;--duration-shine:.8s;--fx-ripple-duration:900;--fx-rise:.45s;--fx-light:255 255 255;--duration-spring:.4s;--ease-standard:cubic-bezier(.25, .1, .25, 1);--ease-decelerate:cubic-bezier(.16, 1, .3, 1);--ease-expo:cubic-bezier(.87, 0, .13, 1);--ease-spring:cubic-bezier(.17, .67, .32, 1.28)}@media (prefers-reduced-motion:reduce){:root{--duration-press:0s;--duration-fast:0s;--duration-control:0s;--duration-reveal:0s;--duration-shine:0s;--duration-spring:0s;--fx-ripple-duration:0}}.prose{margin-top:var(--space-7);font-size:var(--font-size-prose-mobile);overflow-wrap:break-word}@media (width>=768px){.prose{font-size:var(--font-size-prose-desktop)}}.prose>*+*{margin-top:var(--space-6)}.prose h2,.prose h3{margin-top:var(--space-9);font-weight:var(--font-weight-light);letter-spacing:var(--letter-spacing-display)}.prose ul,.prose ol{padding-left:1.4em;list-style:outside}.prose ol{list-style:decimal}.prose li+li{margin-top:var(--space-2)}.prose strong{font-weight:var(--font-weight-bold)}.prose :not(pre)>code{overflow-wrap:anywhere;font-family:var(--font-mono);background:var(--platinum-100);border:var(--border-hairline-width) solid var(--color-hairline);border-radius:var(--radius-sm);padding:.1em .4em;font-size:.88em}.prose pre{contain:layout;background:var(--platinum-100);color:var(--color-text);border:var(--border-hairline-width) solid var(--color-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-inset-track);padding:var(--space-4);padding-right:calc(var(--tap-target-min) + var(--space-2));position:relative;overflow:auto hidden}.prose pre code{font-family:var(--font-mono);background:0 0;border:none;padding:0;font-size:.85em;line-height:1.6}.prose .katex-display{contain:layout;background:var(--platinum-100);border:var(--border-hairline-width) solid var(--color-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-inset-track);padding:var(--space-6) var(--space-4);margin-top:var(--space-6);margin-bottom:0;position:relative;overflow:auto hidden}.prose .katex-display>.katex{white-space:normal}.copy-btn{min-width:var(--tap-target-min);min-height:var(--tap-target-min);-webkit-tap-highlight-color:transparent;top:var(--space-2);right:var(--space-2);width:var(--tap-target-min);height:var(--tap-target-min);color:var(--color-text-tertiary);cursor:pointer;transition:transform var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute}.copy-btn:hover{color:var(--color-text)}.copy-btn:active{opacity:.7;transition-duration:var(--duration-press);transform:translateY(1px)}.copy-btn[data-copied=true]{color:var(--color-accent-solid)}.copy-btn svg{pointer-events:none}.copy-btn .copy-icon-check,.copy-btn[data-copied=true] .copy-icon-default{display:none}.copy-btn[data-copied=true] .copy-icon-check{display:block}.prose blockquote{border-left:3px solid var(--aqua-500);background:var(--platinum-100);color:var(--color-text-secondary);padding:var(--space-4) var(--space-6);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic}.prose blockquote p{margin:0}.prose blockquote strong{color:var(--color-text);font-style:normal}.prose hr{border:none;border-top:var(--border-hairline-width) solid var(--color-hairline);margin-block:var(--space-8)}.prose img{border-radius:var(--radius-md);border:var(--border-hairline-width) solid var(--color-hairline);box-shadow:var(--shadow-surface);width:100%}.prose table{contain:layout;border-collapse:collapse;width:100%;display:block;overflow:auto hidden}.prose th,.prose td{border:var(--border-hairline-width) solid var(--color-hairline);padding:var(--space-2) var(--space-4);text-align:left}.prose th{background:var(--platinum-100);font-family:var(--font-ui);font-size:var(--font-size-caption);font-weight:var(--font-weight-chrome);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-tertiary)}.prose .footnotes{margin-top:var(--space-9);padding-top:var(--space-6);border-top:var(--border-hairline-width) solid var(--color-hairline);font-size:var(--font-size-small);color:var(--color-text-secondary)}.prose sup>a{scroll-margin-top:var(--space-9)}.prose .desmos{margin:var(--space-6) 0 0}.prose .desmos-stage{contain:layout;background:var(--platinum-100);border:var(--border-hairline-width) solid var(--color-hairline);border-radius:var(--radius-md);height:min(60vh,420px);box-shadow:var(--shadow-inset-track);position:relative;overflow:hidden}.prose .desmos-mount,.prose .desmos-fallback{position:absolute;inset:0}.prose .desmos-fallback{justify-content:center;gap:var(--space-4);padding:var(--space-6) var(--space-4);flex-direction:column;display:flex;overflow-y:auto}.prose .desmos-source{font-family:var(--font-mono);font-size:var(--font-size-small);color:var(--color-text-secondary);white-space:pre;margin:0;overflow-x:auto}.prose .desmos.is-live .desmos-fallback{display:none}.prose .desmos figcaption{margin-top:var(--space-2);font-family:var(--font-caption);font-size:var(--font-size-small);color:var(--color-text-secondary)}.post-date[data-astro-cid-ssdmjifj]{font-family:var(--font-ui);color:var(--color-text-secondary);font-size:var(--font-size-small);margin-bottom:var(--space-2)}
