@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
@font-face{font-family:Pilat;src:url(/fonts/Pilat-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Pilat;src:url(/fonts/Pilat-Book.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Pilat;src:url(/fonts/Pilat-Regular.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Pilat;src:url(/fonts/Pilat-Demi.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Pilat;src:url(/fonts/Pilat-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Pilat;src:url(/fonts/Pilat-Heavy.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Pilat Wide;src:url(/fonts/PilatWide-Demi.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Pilat Wide;src:url(/fonts/PilatWide-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Pilat Wide;src:url(/fonts/PilatWide-Heavy.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}:root{--xui-font-heading:"Pilat", "Aktiv Grotesk", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--xui-font-display:"Pilat Wide", "Pilat", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--xui-font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--xui-font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Code", "Roboto Mono", monospace;--xui-display-size:64px;--xui-display-lh:78px;--xui-display-weight:400;--xui-h1-size:56px;--xui-h1-lh:68px;--xui-h1-weight:400;--xui-h2-size:48px;--xui-h2-lh:58px;--xui-h2-weight:400;--xui-h3-size:32px;--xui-h3-lh:38px;--xui-h3-weight:400;--xui-h4-size:24px;--xui-h4-lh:28px;--xui-h4-weight:400;--xui-h5-size:20px;--xui-h5-lh:24px;--xui-h5-weight:600;--xui-body-lg-size:18px;--xui-body-lg-lh:24px;--xui-body-md-size:16px;--xui-body-md-lh:20px;--xui-body-sm-size:14px;--xui-body-sm-lh:18px;--xui-body-xs-size:12px;--xui-body-xs-lh:16px;--xui-body-weight:400;--xui-body-accent-weight:500;--xui-space-xs:4px;--xui-space-s:8px;--xui-space-m:16px;--xui-space-l:24px;--xui-space-xl:32px;--xui-radius-button:4px;--xui-radius-input:4px;--xui-radius-card:12px;--xui-radius-tag-sm:4px;--xui-radius-tag-md:6px;--xui-radius-tag-lg:8px;--xui-radius-avatar-sm:4px;--xui-radius-avatar-lg:8px;--xui-radius-avatar-circle:9999px;--xui-shadow-active:0px 1px 2px #07070833, 0px 1px 3px 1px #0707081a;--xui-shadow-surface:0px 1px 2px #07070833, 0px 2px 6px 2px #0707081a;--xui-shadow-surface-hover:0px 4px 8px 3px #0707081a, 0px 1px 3px #07070833;--xui-shadow-popover:0px 6px 10px 4px #0707081a, 0px 2px 3px #07070833;--xui-shadow-modal:0px 8px 12px 6px #0707081a, 0px 4px 4px #07070833;--xui-brand-cyan-100:#b2f2ff;--xui-brand-cyan-80:#80eaff;--xui-brand-cyan-60:#55dcf6;--xui-brand-cyan-40:#31cae8;--xui-brand-cyan-20:#22a8c3;--xui-brand-cyan-deep:#0b3841;--xui-brand-lime-100:#dfff80;--xui-brand-lime-80:#cef655;--xui-brand-lime-60:#bae831;--xui-brand-lime-40:#9bc323;--xui-brand-lime-20:#79971b;--xui-bg-primary:#1b2628;--xui-bg-secondary:#141d1f;--xui-bg-inverse:#fff;--xui-bg-float:#1b2628;--xui-bg-brand:#80eaff;--xui-bg-brand-sub:#0b3841;--xui-bg-brand2:#cef655;--xui-bg-brand2-sub:#566c13;--xui-bg-success:#95ff80;--xui-bg-success-sub:#14410b;--xui-bg-warning:#ffc380;--xui-bg-warning-sub:#6c4313;--xui-bg-alert:#e84f30;--xui-bg-alert-sub:#6c2213;--xui-bg-neutral:#99aeb2;--xui-bg-neutral-sub:#34474b;--xui-fg-primary:#fff;--xui-fg-secondary:#ffffffb8;--xui-fg-tertiary:#ffffff94;--xui-fg-inverse:#000;--xui-fg-brand:#55dcf6;--xui-fg-brand2:#cef655;--xui-fg-success:#70f655;--xui-fg-warning:#f6ab55;--xui-fg-alert:#f67055;--xui-fg-neutral:#99aeb2;--xui-border-primary:#fff;--xui-border-secondary:#ffffff29;--xui-border-brand:#55dcf6;--xui-border-brand2:#cef655;--xui-border-alert:#f67055;--xui-overlay-mono:#ffffff1a;--xui-overlay-brand:#80eaff33;--xui-overlay-brand2:#cef6554d;--xui-scrim:#00000080;--xui-input-bg:#ffffff1f;--xui-input-border:#ffffff1a;--xui-input-placeholder:#ffffff8f;--xui-link:#55dcf6;--xui-link-hover:#80eaff}[data-xui-theme=light]{--xui-bg-primary:#fff;--xui-bg-secondary:#f3f3f2;--xui-bg-inverse:#000;--xui-bg-float:#fff;--xui-bg-brand-sub:#b2f2ff;--xui-bg-brand2-sub:#dfff80;--xui-bg-success-sub:#bfffb2;--xui-bg-warning-sub:#ffdbb2;--xui-bg-alert-sub:#ffbfb2;--xui-bg-neutral-sub:#d7dee0;--xui-fg-primary:#000;--xui-fg-secondary:#000000bf;--xui-fg-tertiary:#0009;--xui-fg-inverse:#fff;--xui-fg-brand:#22a8c3;--xui-fg-brand2:#79971b;--xui-fg-success:#30981b;--xui-fg-warning:#c37822;--xui-fg-alert:#e84f30;--xui-fg-neutral:#34474b;--xui-border-primary:#000;--xui-border-secondary:#0000001a;--xui-border-brand:#31cae8;--xui-border-brand2:#bae831;--xui-border-alert:#e84f30;--xui-overlay-mono:#0000000d;--xui-scrim:#000000bf;--xui-input-bg:#0000001a;--xui-input-border:#0000001a;--xui-input-placeholder:#0009;--xui-link:#22a8c3;--xui-link-hover:#31cae8}*{box-sizing:border-box}*,:before,:after{font-variant-ligatures:no-common-ligatures no-discretionary-ligatures no-historical-ligatures no-contextual;font-feature-settings:"liga" 0, "clig" 0, "dlig" 0, "hlig" 0, "calt" 0}html,body{margin:0;padding:0}html{scrollbar-gutter:stable;overflow-y:scroll}body{background:var(--xui-bg-primary);min-height:100vh;color:var(--xui-fg-primary);font-family:var(--xui-font-body);font-size:var(--xui-body-md-size);line-height:var(--xui-body-md-lh);font-weight:var(--xui-body-weight);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:normal;font-variant-ligatures:no-common-ligatures no-discretionary-ligatures no-historical-ligatures no-contextual;overflow-x:clip}.nav,.hero,.footer{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0;padding:0}.shell{max-width:1240px;padding:0 var(--xui-space-xl);margin:0 auto}@media (max-width:720px){.shell{padding:0 var(--xui-space-m)}}.nav{z-index:50;-webkit-backdrop-filter:blur(12px);background:color-mix(in srgb, var(--xui-bg-primary) 80%, transparent);border-bottom:1px solid var(--xui-border-secondary);position:sticky;top:0}.nav-row{align-items:center;gap:var(--xui-space-l);height:64px;display:flex}.nav-brand{align-items:center;gap:var(--xui-space-s);font-family:"Pilat Wide", var(--xui-font-heading);letter-spacing:-.01em;font-weight:700;display:flex}.nav-brand-mark{background:var(--xui-brand-cyan-80);color:#0b3841;width:28px;height:28px;font-family:var(--xui-font-mono);border-radius:6px;place-items:center;font-size:13px;font-weight:700;display:grid}.nav-links{gap:var(--xui-space-l);align-items:center;margin-left:auto;display:flex}.nav-link{color:var(--xui-fg-secondary);padding:6px 2px;font-size:14px;font-weight:500;transition:color .12s;position:relative}.nav-link:hover,.nav-link.is-active{color:var(--xui-fg-primary)}.nav-link.is-active:after{content:"";background:var(--xui-brand-cyan-80);height:2px;position:absolute;bottom:-22px;left:0;right:0}.theme-toggle{border-radius:var(--xui-radius-button);width:36px;height:36px;color:var(--xui-fg-secondary);justify-content:center;align-items:center;transition:background .12s;display:inline-flex}.theme-toggle:hover{background:var(--xui-overlay-mono);color:var(--xui-fg-primary)}.hero{border-bottom:1px solid var(--xui-border-secondary);padding:96px 0 64px}.hero-grid{grid-template-columns:1.1fr 1fr;align-items:end;gap:64px;display:grid}@media (max-width:960px){.hero-grid{grid-template-columns:1fr;gap:48px}.hero{padding:56px 0 40px}}.hero-eyebrow{font-family:var(--xui-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--xui-fg-brand);margin-bottom:var(--xui-space-l);align-items:center;gap:var(--xui-space-s);font-size:12px;display:flex}.hero-eyebrow:before{content:"";background:var(--xui-fg-brand);width:24px;height:1px}.hero-title{font-family:var(--xui-font-heading);letter-spacing:-.02em;margin:0 0 var(--xui-space-l);color:var(--xui-fg-primary);text-wrap:balance;font-size:clamp(40px,6vw,72px);font-weight:300;line-height:1.05}.hero-title em{background:linear-gradient(180deg, transparent 60%, var(--xui-overlay-brand) 60%);margin:0 -4px;padding:0 4px;font-style:normal;font-weight:600}.hero-bio{color:var(--xui-fg-secondary);max-width:48ch;margin:0 0 var(--xui-space-xl);text-wrap:pretty;font-size:17px;line-height:1.6}.hero-meta{gap:var(--xui-space-l);color:var(--xui-fg-tertiary);font-size:13px;font-family:var(--xui-font-mono);align-items:center;display:flex}.hero-meta .dot{background:var(--xui-fg-tertiary);border-radius:50%;width:4px;height:4px}.hero-meta .live{color:var(--xui-fg-success);align-items:center;gap:6px;display:inline-flex}.hero-meta .live-dot{background:var(--xui-fg-success);width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in srgb, var(--xui-fg-success) 30%, transparent);border-radius:50%;animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.featured{border-radius:var(--xui-radius-card);background:var(--xui-bg-secondary);border:1px solid var(--xui-border-secondary);transition:transform .2s,border-color .2s;display:block;position:relative;overflow:hidden}.featured:hover{border-color:color-mix(in srgb, var(--xui-brand-cyan-80) 50%, transparent)}.featured-art{aspect-ratio:16/10;background:radial-gradient(circle at 20% 80%, var(--xui-brand-cyan-deep), transparent 50%), radial-gradient(circle at 80% 20%, color-mix(in srgb, var(--xui-brand-lime-80) 40%, transparent), transparent 55%), linear-gradient(135deg, #0b3841 0%, #1b2628 60%, #141d1f 100%);position:relative;overflow:hidden}.featured-art:before{content:"";background-image:linear-gradient(var(--xui-border-secondary) 1px, transparent 1px), linear-gradient(90deg, var(--xui-border-secondary) 1px, transparent 1px);opacity:.5;background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 75%);mask-image:radial-gradient(#000 30%,#0000 75%)}.featured-art-badge{top:var(--xui-space-m);left:var(--xui-space-m);background:var(--xui-bg-brand2);color:#141d1f;font-family:var(--xui-font-mono);border-radius:var(--xui-radius-tag-sm);letter-spacing:.04em;padding:4px 10px;font-size:11px;font-weight:700;position:absolute}.featured-art-glyph{font-family:var(--xui-font-mono);color:var(--xui-brand-cyan-80);opacity:.4;letter-spacing:-.08em;place-items:center;font-size:72px;font-weight:300;display:grid;position:absolute;inset:0}.featured-body{padding:var(--xui-space-l);gap:var(--xui-space-s);flex-direction:column;display:flex}.featured-meta{gap:var(--xui-space-m);font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);font-size:12px;display:flex}.featured-title{font-family:var(--xui-font-heading);color:var(--xui-fg-primary);margin:0;font-size:22px;font-weight:500;line-height:1.25}.featured-excerpt{color:var(--xui-fg-secondary);margin:0;font-size:14px;line-height:1.5}.toolbar{padding:var(--xui-space-xl) 0 var(--xui-space-l);gap:var(--xui-space-m);flex-wrap:wrap;align-items:center;display:flex}.search{flex:1;min-width:240px;max-width:360px;position:relative}.search input{background:var(--xui-input-bg);border:1px solid var(--xui-input-border);border-radius:var(--xui-radius-input);width:100%;font:inherit;color:var(--xui-fg-primary);outline:none;padding:10px 14px 10px 38px;font-size:14px;transition:border-color .12s,box-shadow .12s}.search input::placeholder{color:var(--xui-input-placeholder)}.search input:focus{border-color:var(--xui-border-brand);box-shadow:0 0 0 3px color-mix(in srgb, var(--xui-brand-cyan-80) 20%, transparent)}.search .search-icon{width:16px;height:16px;color:var(--xui-fg-tertiary);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.tags{flex-wrap:wrap;gap:6px;display:flex}.tag{border-radius:var(--xui-radius-tag-lg);background:var(--xui-overlay-mono);color:var(--xui-fg-secondary);cursor:pointer;border:1px solid #0000;align-items:baseline;gap:6px;height:32px;padding:7px 12px;font-size:13px;font-weight:500;line-height:1;transition:background .12s,color .12s;display:inline-flex}.tag:hover{color:var(--xui-fg-primary);background:color-mix(in srgb, var(--xui-overlay-mono) 200%, transparent)}.tag.is-active{background:var(--xui-brand-cyan-80);color:#0b3841}.tag-count{font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);font-feature-settings:"tnum";font-size:12px;font-weight:500;line-height:inherit}.tag.is-active .tag-count{color:#0b3841;opacity:.75}.posts{padding:var(--xui-space-m) 0 96px}.post{gap:var(--xui-space-xl);padding:var(--xui-space-l) 0;border-bottom:1px solid var(--xui-border-secondary);cursor:pointer;grid-template-columns:120px 1fr auto;align-items:start;transition:background .12s;display:grid}.post:hover{background:color-mix(in srgb, var(--xui-overlay-mono) 60%, transparent);margin:0 calc(-1 * var(--xui-space-m));padding-left:var(--xui-space-m);padding-right:var(--xui-space-m)}.post:hover .post-title{color:var(--xui-fg-brand)}.post:hover .post-arrow{color:var(--xui-fg-primary);transform:translate(4px)}@media (max-width:720px){.post{gap:var(--xui-space-s);grid-template-columns:1fr}.post-arrow{display:none!important}}.post-date{font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);letter-spacing:.02em;padding-top:4px;font-size:12px}.post-date-year{color:var(--xui-fg-secondary);font-size:14px;font-weight:500;display:block}.post-body{min-width:0}.post-tags{margin-bottom:var(--xui-space-s);flex-wrap:wrap;gap:6px;display:flex}.post-tag{font-family:var(--xui-font-mono);letter-spacing:.04em;color:var(--xui-fg-brand);text-transform:uppercase;font-size:11px;font-weight:500}.post-tag+.post-tag{color:var(--xui-fg-tertiary)}.post-title{font-family:var(--xui-font-heading);letter-spacing:-.01em;margin:0 0 var(--xui-space-s);color:var(--xui-fg-primary);text-wrap:balance;font-size:26px;font-weight:400;line-height:1.25;transition:color .12s}.post-excerpt{color:var(--xui-fg-secondary);margin:0 0 var(--xui-space-s);text-wrap:pretty;max-width:62ch;font-size:15px;line-height:1.55}.post-meta{font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);gap:var(--xui-space-m);font-size:12px;display:flex}.post-arrow{color:var(--xui-fg-tertiary);align-self:center;width:20px;height:20px;transition:transform .15s,color .12s}.footer{border-top:1px solid var(--xui-border-secondary);padding:var(--xui-space-xl) 0;color:var(--xui-fg-tertiary);font-size:13px;font-family:var(--xui-font-mono)}.footer .shell{justify-content:space-between;align-items:center;gap:var(--xui-space-m);flex-wrap:wrap;display:flex}.footer a:hover{color:var(--xui-fg-primary)}.footer-links{gap:var(--xui-space-l);display:flex}.article{padding:64px 0 96px}.article-header{max-width:720px;margin:0 auto var(--xui-space-xl)}.article-back{font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);margin-bottom:var(--xui-space-l);align-items:center;gap:6px;font-size:12px;transition:color .12s;display:inline-flex}.article-back:hover{color:var(--xui-fg-primary)}.article-tags{gap:var(--xui-space-s);margin-bottom:var(--xui-space-m);display:flex}.article-tag{font-family:var(--xui-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--xui-fg-brand);font-size:12px;font-weight:500}.article-title{font-family:var(--xui-font-heading);letter-spacing:-.015em;margin:0 0 var(--xui-space-l);color:var(--xui-fg-primary);text-wrap:balance;font-size:clamp(32px,5vw,52px);font-weight:500;line-height:1.1}.article-lede{color:var(--xui-fg-secondary);margin:0 0 var(--xui-space-xl);text-wrap:pretty;font-size:20px;line-height:1.5}.article-byline{align-items:center;gap:var(--xui-space-m);padding:var(--xui-space-m) 0;border-top:1px solid var(--xui-border-secondary);border-bottom:1px solid var(--xui-border-secondary);font-size:14px;display:flex}.avatar{background:linear-gradient(135deg, var(--xui-brand-cyan-80), var(--xui-brand-cyan-20));color:#0b3841;width:40px;height:40px;font-family:var(--xui-font-heading);border-radius:50%;flex-shrink:0;place-items:center;font-size:15px;font-weight:600;display:grid}.byline-meta{flex-direction:column;gap:2px;display:flex}.byline-name{color:var(--xui-fg-primary);font-weight:500}.byline-info{color:var(--xui-fg-tertiary);font-family:var(--xui-font-mono);font-size:12px}.article-layout{grid-template-columns:200px minmax(0,720px);justify-content:center;gap:64px;max-width:1040px;margin:0 auto;display:grid}@media (max-width:960px){.article-layout{gap:var(--xui-space-xl);grid-template-columns:minmax(0,1fr);max-width:720px}.toc{position:static!important}.prose,.toc{min-width:0}}.toc{align-self:start;font-size:13px;position:sticky;top:88px}.toc-label{font-family:var(--xui-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--xui-fg-tertiary);margin-bottom:var(--xui-space-m);font-size:11px}.toc-list{border-left:1px solid var(--xui-border-secondary);flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.toc-item a{padding:2px var(--xui-space-m);color:var(--xui-fg-tertiary);border-left:1px solid #0000;margin-left:-1px;line-height:1.4;transition:color .12s,border-color .12s;display:block}.toc-item a:hover{color:var(--xui-fg-primary)}.toc-item a.is-active{color:var(--xui-fg-brand);border-left-color:var(--xui-brand-cyan-80)}.prose{color:var(--xui-fg-secondary);overflow-wrap:break-word;font-size:17px;line-height:1.7}.prose h2{font-family:var(--xui-font-heading);color:var(--xui-fg-primary);letter-spacing:-.01em;margin:48px 0 16px;scroll-margin-top:88px;font-size:28px;font-weight:500;line-height:1.25}.prose h2:first-child{margin-top:0}.prose h3{font-family:var(--xui-font-heading);color:var(--xui-fg-primary);margin:32px 0 12px;font-size:20px;font-weight:500;line-height:1.3}.prose p{text-wrap:pretty;margin:0 0 20px}.prose a{color:var(--xui-link);border-bottom:1px solid color-mix(in srgb, var(--xui-link) 40%, transparent);transition:border-color .12s}.prose a:hover{border-color:var(--xui-link-hover);color:var(--xui-link-hover)}.prose ul,.prose ol{margin:0 0 20px;padding-left:20px}.prose li{margin-bottom:8px}.prose strong{color:var(--xui-fg-primary);font-weight:600}.prose em{color:var(--xui-fg-primary)}.prose code:not(pre code){font-family:var(--xui-font-mono);background:var(--xui-overlay-mono);color:var(--xui-fg-brand);border:1px solid var(--xui-border-secondary);border-radius:4px;padding:2px 6px;font-size:.88em}.prose blockquote{border-left:2px solid var(--xui-brand-cyan-80);color:var(--xui-fg-primary);font-family:var(--xui-font-heading);margin:24px 0;padding:4px 0 4px 20px;font-size:20px;font-weight:400;line-height:1.45}.codeblock{border-radius:var(--xui-radius-card);background:var(--xui-bg-secondary);border:1px solid var(--xui-border-secondary);max-width:100%;font-family:var(--xui-font-mono);margin:24px 0;font-size:13.5px;line-height:1.65;overflow:hidden}.codeblock-head{border-bottom:1px solid var(--xui-border-secondary);background:color-mix(in srgb, var(--xui-bg-primary) 50%, var(--xui-bg-secondary));justify-content:space-between;align-items:center;padding:8px 12px 8px 14px;display:flex}.codeblock-lang{letter-spacing:.08em;text-transform:uppercase;color:var(--xui-fg-tertiary);font-size:11px;font-weight:500}.codeblock-copy{color:var(--xui-fg-tertiary);border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;transition:color .12s,background .12s;display:inline-flex}.codeblock-copy:hover{color:var(--xui-fg-primary);background:var(--xui-overlay-mono)}.codeblock pre{color:var(--xui-fg-primary);margin:0;padding:16px 18px;overflow-x:auto}.codeblock pre code{color:inherit;font-family:inherit;font-size:inherit;background:0 0;border:0;padding:0}.tok-kw{color:var(--xui-brand-cyan-80)}.tok-fn{color:var(--xui-brand-lime-80)}.tok-str{color:#ffc380}.tok-num{color:#f6ab55}.tok-com{color:var(--xui-fg-tertiary);font-style:italic}.tok-op{color:var(--xui-fg-secondary)}.tok-ty{color:#b2f2ff}.tok-var{color:var(--xui-fg-primary)}.tok-pun{color:var(--xui-fg-secondary)}[data-xui-theme=light] .tok-kw{color:#22a8c3}[data-xui-theme=light] .tok-fn{color:#79971b}[data-xui-theme=light] .tok-str,[data-xui-theme=light] .tok-num{color:#c37822}[data-xui-theme=light] .tok-com{color:#00000073}[data-xui-theme=light] .tok-ty{color:#31cae8}.callout{gap:var(--xui-space-m);padding:var(--xui-space-m) var(--xui-space-l);background:var(--xui-overlay-brand);border-left:2px solid var(--xui-brand-cyan-80);border-radius:0 var(--xui-radius-card) var(--xui-radius-card) 0;color:var(--xui-fg-primary);margin:24px 0;font-size:15px;display:flex}.callout-icon{color:var(--xui-fg-brand);flex-shrink:0;padding-top:2px}.callout p{margin:0;line-height:1.55}.article-footer{max-width:720px;padding-top:var(--xui-space-xl);border-top:1px solid var(--xui-border-secondary);margin:64px auto 0}.next-up{padding:var(--xui-space-l);border-radius:var(--xui-radius-card);background:var(--xui-bg-secondary);border:1px solid var(--xui-border-secondary);margin-top:var(--xui-space-l);transition:border-color .15s;display:block}.next-up:hover{border-color:var(--xui-brand-cyan-80)}.next-up-label{font-family:var(--xui-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--xui-fg-tertiary);margin-bottom:8px;font-size:11px}.next-up-title{font-family:var(--xui-font-heading);color:var(--xui-fg-primary);margin:0 0 8px;font-size:22px;font-weight:500;line-height:1.3}.next-up-meta{font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);font-size:12px}.author-page{padding:64px 0 96px}.author-hero{gap:var(--xui-space-xl);padding-bottom:var(--xui-space-xl);border-bottom:1px solid var(--xui-border-secondary);margin-bottom:var(--xui-space-xl);grid-template-columns:auto 1fr;align-items:start;display:grid}@media (max-width:720px){.author-hero{grid-template-columns:1fr}}.avatar-lg{background:linear-gradient(135deg, var(--xui-brand-cyan-80), var(--xui-brand-cyan-20));color:#0b3841;width:120px;height:120px;font-family:var(--xui-font-heading);border-radius:50%;place-items:center;font-size:48px;font-weight:600;display:grid;position:relative}.avatar-lg:after{content:"";background:var(--xui-fg-success);border:3px solid var(--xui-bg-primary);border-radius:50%;width:20px;height:20px;position:absolute;bottom:4px;right:6px}.author-name{font-family:var(--xui-font-heading);letter-spacing:-.015em;margin:0 0 var(--xui-space-s);font-size:44px;font-weight:400;line-height:1.1}.author-role{font-family:var(--xui-font-mono);color:var(--xui-fg-brand);letter-spacing:.04em;margin-bottom:var(--xui-space-m);font-size:13px}.author-bio{color:var(--xui-fg-secondary);max-width:62ch;margin:0 0 var(--xui-space-l);text-wrap:pretty;font-size:17px;line-height:1.6}.author-links{gap:var(--xui-space-s);flex-wrap:wrap;display:flex}.chip{border-radius:var(--xui-radius-tag-lg);border:1px solid var(--xui-border-secondary);color:var(--xui-fg-secondary);align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .12s;display:inline-flex}.chip:hover{border-color:var(--xui-border-brand);color:var(--xui-fg-primary)}.stats-grid{gap:var(--xui-space-m);margin-bottom:var(--xui-space-xl);grid-template-columns:repeat(4,1fr);display:grid}@media (max-width:720px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.stat{padding:var(--xui-space-l);background:var(--xui-bg-secondary);border-radius:var(--xui-radius-card);border:1px solid var(--xui-border-secondary)}.stat-value{font-family:var(--xui-font-heading);color:var(--xui-fg-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:36px;font-weight:400;line-height:1}.stat-value .unit{color:var(--xui-fg-tertiary);margin-left:2px;font-size:18px}.stat-label{font-family:var(--xui-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--xui-fg-tertiary);font-size:11px}.stat-accent .stat-value{color:var(--xui-fg-brand)}.section-title{font-family:var(--xui-font-heading);margin:0 0 var(--xui-space-m);letter-spacing:-.01em;justify-content:space-between;align-items:baseline;font-size:24px;font-weight:500;display:flex}.section-title .count{font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);font-size:13px;font-weight:400}.project-grid{gap:var(--xui-space-m);margin-bottom:var(--xui-space-xl);grid-template-columns:repeat(2,1fr);display:grid}@media (max-width:720px){.project-grid{grid-template-columns:1fr}}.project{padding:var(--xui-space-l);background:var(--xui-bg-secondary);border-radius:var(--xui-radius-card);border:1px solid var(--xui-border-secondary);cursor:pointer;transition:border-color .15s}.project:hover{border-color:var(--xui-brand-cyan-80)}.project-head{margin-bottom:var(--xui-space-s);justify-content:space-between;align-items:start;display:flex}.project-name{font-family:var(--xui-font-heading);color:var(--xui-fg-primary);margin:0;font-size:18px;font-weight:500}.project-lang{font-family:var(--xui-font-mono);background:var(--xui-overlay-brand);color:var(--xui-fg-brand);border-radius:4px;padding:2px 6px;font-size:11px;font-weight:500}.project-lang.lime{background:var(--xui-overlay-brand2);color:var(--xui-fg-brand2)}.project-lang.neutral{background:var(--xui-overlay-mono);color:var(--xui-fg-secondary)}.project-desc{color:var(--xui-fg-secondary);margin:0 0 var(--xui-space-m);font-size:14px;line-height:1.5}.project-meta{gap:var(--xui-space-m);font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);font-size:12px;display:flex}.project-meta span{align-items:center;gap:4px;display:inline-flex}.timeline{gap:var(--xui-space-m);flex-direction:column;display:flex}.timeline-item{gap:var(--xui-space-l);padding:var(--xui-space-m) 0;border-bottom:1px solid var(--xui-border-secondary);grid-template-columns:140px 1fr;display:grid}@media (max-width:720px){.timeline-item{gap:var(--xui-space-s);grid-template-columns:1fr}}.timeline-date{font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);padding-top:2px;font-size:12px}.timeline-role{font-family:var(--xui-font-heading);margin:0 0 2px;font-size:17px;font-weight:500}.timeline-company{color:var(--xui-fg-brand);margin-bottom:6px;font-size:14px;font-weight:500}.timeline-desc{color:var(--xui-fg-secondary);margin:0;font-size:14px;line-height:1.55}.timeline-item.is-redacted .timeline-content{position:relative}.timeline-item.is-redacted .timeline-role,.timeline-item.is-redacted .timeline-company,.timeline-item.is-redacted .timeline-desc{filter:blur(5px);-webkit-user-select:none;user-select:none;pointer-events:none}.timeline-item.is-redacted .timeline-content:before{content:"";border-radius:var(--xui-radius-card);background:color-mix(in srgb, var(--xui-bg-secondary) 50%, transparent);-webkit-backdrop-filter:blur(2px);border:1px solid var(--xui-border-secondary);pointer-events:none;position:absolute;inset:-4px -8px}.timeline-redacted-mark{font-family:var(--xui-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--xui-fg-tertiary);background:var(--xui-bg-primary);border:1px solid var(--xui-border-secondary);border-radius:var(--xui-radius-tag-lg);white-space:nowrap;z-index:1;padding:6px 12px;font-size:11px;font-weight:500;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.portfolio-page{padding:64px 0 96px}.portfolio-header{max-width:720px;margin:0 auto var(--xui-space-xl);padding-bottom:var(--xui-space-xl);border-bottom:1px solid var(--xui-border-secondary)}.portfolio-eyebrow{font-family:var(--xui-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--xui-fg-brand);margin-bottom:var(--xui-space-m);align-items:center;gap:var(--xui-space-s);font-size:12px;display:flex}.portfolio-eyebrow:before{content:"";background:var(--xui-fg-brand);width:24px;height:1px}.portfolio-title{font-family:var(--xui-font-heading);letter-spacing:-.02em;margin:0 0 var(--xui-space-l);color:var(--xui-fg-primary);text-wrap:balance;font-size:clamp(36px,5vw,56px);font-weight:300;line-height:1.05}.portfolio-title em{background:linear-gradient(180deg, transparent 60%, var(--xui-overlay-brand) 60%);margin:0 -4px;padding:0 4px;font-style:normal;font-weight:600}.portfolio-lede{color:var(--xui-fg-secondary);text-wrap:pretty;max-width:62ch;margin:0;font-size:18px;line-height:1.6}.app-grid{gap:var(--xui-space-l);margin-bottom:var(--xui-space-xl);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (max-width:840px){.app-grid{grid-template-columns:1fr}}.app-card{border-radius:var(--xui-radius-card);background:var(--xui-bg-secondary);border:1px solid var(--xui-border-secondary);cursor:pointer;flex-direction:column;transition:border-color .2s,transform .2s;display:flex;overflow:hidden}.app-card:hover{border-color:color-mix(in srgb, var(--xui-brand-cyan-80) 50%, transparent)}.app-card[data-static=true]:hover{cursor:default}.app-art{aspect-ratio:16/9;background:linear-gradient(135deg,#0b3841 0%,#1b2628 60%,#141d1f 100%);position:relative;overflow:hidden}.app-art[data-accent=cyan]{background:radial-gradient(circle at 20% 80%, var(--xui-brand-cyan-deep), transparent 55%), radial-gradient(circle at 80% 25%, color-mix(in srgb, var(--xui-brand-cyan-80) 35%, transparent), transparent 60%), linear-gradient(135deg, #0b3841 0%, #1b2628 60%, #141d1f 100%)}.app-art[data-accent=lime]{background:radial-gradient(circle at 25% 75%, color-mix(in srgb, var(--xui-brand-lime-80) 50%, transparent), transparent 55%), radial-gradient(circle at 80% 30%, color-mix(in srgb, var(--xui-brand-lime-100) 30%, transparent), transparent 60%), linear-gradient(135deg, #1b2628 0%, #141d1f 60%, #0b1a0b 100%)}.app-art[data-accent=mixed]{background:radial-gradient(circle at 15% 80%, var(--xui-brand-cyan-deep), transparent 50%), radial-gradient(circle at 85% 20%, color-mix(in srgb, var(--xui-brand-lime-80) 45%, transparent), transparent 55%), linear-gradient(135deg, #0b3841 0%, #1b2628 55%, #141d1f 100%)}.app-art:before{content:"";background-image:linear-gradient(var(--xui-border-secondary) 1px, transparent 1px), linear-gradient(90deg, var(--xui-border-secondary) 1px, transparent 1px);opacity:.5;background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 75%);mask-image:radial-gradient(#000 30%,#0000 75%)}.app-art-glyph{font-family:var(--xui-font-mono);color:var(--xui-brand-cyan-80);opacity:.45;letter-spacing:-.08em;place-items:center;font-size:88px;font-weight:300;display:grid;position:absolute;inset:0}.app-art[data-accent=lime] .app-art-glyph{color:var(--xui-brand-lime-80)}.app-art-period{top:var(--xui-space-m);left:var(--xui-space-m);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--xui-fg-primary);font-family:var(--xui-font-mono);border-radius:var(--xui-radius-tag-sm);letter-spacing:.04em;border:1px solid var(--xui-border-secondary);background:#00000059;padding:4px 10px;font-size:11px;position:absolute}.app-body{gap:var(--xui-space-s);padding:var(--xui-space-l);flex-direction:column;display:flex}.app-meta{font-family:var(--xui-font-mono);color:var(--xui-fg-brand);letter-spacing:.04em;text-transform:uppercase;font-size:12px}.app-name{font-family:var(--xui-font-heading);color:var(--xui-fg-primary);letter-spacing:-.01em;margin:0;font-size:24px;font-weight:500;line-height:1.2}.app-role{color:var(--xui-fg-secondary);margin:0;font-size:14px}.app-blurb{color:var(--xui-fg-secondary);margin:var(--xui-space-xs) 0 0;text-wrap:pretty;font-size:15px;line-height:1.55}.app-tech{margin-top:var(--xui-space-s);flex-wrap:wrap;gap:6px;display:flex}.app-tech-chip{font-family:var(--xui-font-mono);letter-spacing:.04em;background:var(--xui-overlay-mono);color:var(--xui-fg-tertiary);border-radius:var(--xui-radius-tag-sm);text-transform:uppercase;padding:3px 8px;font-size:11px}.portfolio-section-head{margin:var(--xui-space-xl) 0 var(--xui-space-l);padding-top:var(--xui-space-l);border-top:1px solid var(--xui-border-secondary);justify-content:space-between;align-items:baseline;display:flex}.portfolio-section-head:first-of-type{border-top:0;margin-top:0;padding-top:0}.portfolio-section-title{font-family:var(--xui-font-heading);letter-spacing:-.01em;margin:0;font-size:28px;font-weight:500}.portfolio-section-count{font-family:var(--xui-font-mono);color:var(--xui-fg-tertiary);letter-spacing:.04em;text-transform:uppercase;font-size:12px}::selection{background:var(--xui-brand-cyan-80);color:#0b3841}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--xui-overlay-mono);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--xui-overlay-mono) 200%, transparent)}
