/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
:root{--font-sans:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--font-serif:"IBM Plex Serif",Georgia,serif;--font-display:var(--font-sans);--font-body:var(--font-sans);--font-label:var(--font-mono);--font-code:var(--font-mono);--font-quote:var(--font-serif);--n-1000:#07080a;--n-950:#0b0c0e;--n-900:#121418;--n-850:#181b21;--n-800:#1e222a;--n-700:#262b34;--n-600:#343a45;--n-500:#4c545f;--n-400:#7b8592;--n-300:#9aa2ad;--n-200:#c4cad2;--n-100:#e2e6ea;--n-050:#f1f3f5;--n-000:#fff;--ember-700:#7c2e14;--ember-600:#93381a;--ember-500:#b4451f;--ember-400:#d3663d;--ember-300:#de7a50;--ember-100:#f0c6b3;--ember-tint:#b4451f1f;--ember-tint-strong:#b4451f3d;--sig-ok:#3f8f6e;--sig-warn:#c08a2e;--sig-err:#c0453e;--sig-info:#4a7fa8;--surface-page:var(--n-950);--surface-sunken:var(--n-1000);--surface-card:var(--n-900);--surface-raised:var(--n-850);--surface-inset:#ffffff08;--surface-accent:var(--ember-tint);--text-display:var(--n-000);--text-body:#d5dae0;--text-muted:var(--n-300);--text-faint:var(--n-400);--text-accent:var(--ember-400);--text-inverse:var(--n-950);--line-hairline:#ffffff12;--line-rule:var(--n-700);--line-strong:var(--n-600);--line-accent:var(--ember-500);--focus-ring:var(--ember-400);--grid-line:#ffffff0b}[data-theme=light]{--surface-page:var(--n-000);--surface-sunken:var(--n-050);--surface-card:var(--n-000);--surface-raised:var(--n-050);--surface-inset:#0b0c0e08;--text-display:var(--n-950);--text-body:#2a303a;--text-muted:var(--n-500);--text-faint:var(--n-400);--text-accent:var(--ember-500);--text-inverse:var(--n-000);--line-hairline:#0b0c0e17;--line-rule:var(--n-200);--line-strong:var(--n-300);--grid-line:#0b0c0e0d}:root{--size-3xs:11px;--size-2xs:12px;--size-xs:13px;--size-sm:15px;--size-md:17px;--size-lg:20px;--size-xl:25px;--size-2xl:32px;--size-3xl:42px;--size-4xl:56px;--size-5xl:76px;--size-6xl:104px;--lh-tight:1.04;--lh-snug:1.18;--lh-normal:1.5;--lh-loose:1.68;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--track-mega:-.035em;--track-display:-.02em;--track-normal:0;--track-label:.14em;--track-mono:.02em;--type-hero-size:var(--size-5xl);--type-hero-weight:var(--weight-light);--type-hero-track:var(--track-mega);--type-h1-size:var(--size-3xl);--type-h2-size:var(--size-2xl);--type-h3-size:var(--size-lg);--type-kicker-size:var(--size-2xs);--type-kicker-track:var(--track-label);--type-kicker-weight:var(--weight-medium);--type-body-size:var(--size-md);--type-body-lh:var(--lh-loose);--type-meta-size:var(--size-xs);--type-code-size:var(--size-xs);--space-0:0px;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-7:14px;--space-8:16px;--space-10:20px;--space-12:24px;--space-14:28px;--space-16:32px;--space-20:40px;--space-24:48px;--space-32:64px;--space-40:80px;--space-48:96px;--space-64:128px;--space-80:160px;--gutter:var(--space-12);--stack-tight:var(--space-6);--stack:var(--space-12);--stack-loose:var(--space-24);--section-y:var(--space-48);--section-y-lg:var(--space-80);--measure-prose:66ch;--measure-narrow:48ch;--container:1180px;--container-wide:1400px;--rail:56px;--radius-0:0px;--radius-1:2px;--radius-2:3px;--radius-3:5px;--radius-4:8px;--radius-pill:999px;--radius-card:var(--radius-3);--radius-control:var(--radius-2);--radius-tag:var(--radius-1);--radius-media:var(--radius-3);--border-width:1px;--border-width-strong:2px;--shadow-0:none;--shadow-1:0 1px 0 #00000059;--shadow-2:0 2px 6px #0000004d;--shadow-3:0 12px 32px -12px #0000008c;--shadow-inset-hair:inset 0 1px 0 #ffffff0a;--shadow-focus:0 0 0 2px #b4451f73;--shadow-accent-glow:0 0 0 1px var(--ember-500),0 8px 24px -14px #b4451fb3;--scrim-top:linear-gradient(to bottom,#07080ad9,#07080a00);--scrim-bottom:linear-gradient(to top,#07080aeb,#07080a00 70%);--blur-panel:saturate(140%) blur(14px);--overlay-veil:#07080ab8;--dur-1:90ms;--dur-2:.16s;--dur-3:.24s;--dur-4:.42s;--ease-standard:cubic-bezier(.2,0,.2,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--transition-control:color var(--dur-2) var(--ease-standard),background-color var(--dur-2) var(--ease-standard),border-color var(--dur-2) var(--ease-standard);--transition-lift:transform var(--dur-2) var(--ease-standard),border-color var(--dur-2) var(--ease-standard)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--surface-page);color:var(--text-body);font-family:var(--font-body);font-size:var(--type-body-size);line-height:var(--type-body-lh);-webkit-font-smoothing:antialiased;text-wrap:pretty;margin:0}h1,h2,h3,h4,h5,h6{color:var(--text-display);font-family:var(--font-display);font-weight:var(--weight-light);letter-spacing:var(--track-display);line-height:var(--lh-snug);margin:0}p{margin:0}a{color:var(--text-accent);border-bottom:1px solid var(--ember-tint-strong);transition:var(--transition-control);text-decoration:none}a:hover{color:var(--ember-300);border-bottom-color:var(--ember-400)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{box-shadow:var(--shadow-focus);outline:none}code,kbd,pre,samp{font-family:var(--font-code);font-size:var(--type-code-size)}hr{border:0;border-top:var(--border-width) solid var(--line-rule);margin:var(--space-24) 0}::selection{background:var(--ember-tint-strong);color:var(--text-display)}.kicker{font-family:var(--font-label);font-size:var(--type-kicker-size);font-weight:var(--type-kicker-weight);letter-spacing:var(--type-kicker-track);text-transform:uppercase;color:var(--text-accent)}.kicker--muted{color:var(--text-muted)}.section-heading__title{font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--type-h2-size);letter-spacing:var(--track-display);color:var(--text-display);margin:0}.section-heading__lede{margin-top:var(--space-4);color:var(--text-muted);font-size:var(--size-md);line-height:var(--lh-loose);max-width:var(--measure-prose)}.rule{background:var(--line-hairline);width:100%;height:1px;margin:var(--space-24) 0}.rule--strong{background:var(--line-rule)}.btn{justify-content:center;align-items:center;gap:var(--space-5);font-family:var(--font-label);font-weight:var(--weight-medium);letter-spacing:var(--track-label);text-transform:uppercase;border-radius:var(--radius-control);border:var(--border-width) solid transparent;cursor:pointer;white-space:nowrap;line-height:1;font-size:var(--size-xs);transition:var(--transition-control), transform var(--dur-1) var(--ease-standard);padding:10px 18px;display:inline-flex;text-decoration:none!important}.btn:active{transform:translateY(1px)}.btn-sm{font-size:var(--size-2xs);padding:6px 12px}.btn-lg{font-size:var(--size-sm);padding:14px 26px}.btn-primary{background:var(--ember-500);color:#fff;border-color:#0000}.btn-primary:hover{background:var(--ember-400);color:#fff}.btn-primary:active{background:var(--ember-600)}.btn-secondary{color:var(--text-display);border-color:var(--line-rule);background:0 0}.btn-secondary:hover{background:var(--surface-inset);color:var(--text-display);border-color:var(--line-strong)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-inset);color:var(--text-display)}.tag{font-family:var(--font-label);font-size:var(--size-2xs);letter-spacing:.06em;color:var(--text-muted);border:var(--border-width) solid var(--line-rule);border-radius:var(--radius-tag);white-space:nowrap;transition:var(--transition-control);background:0 0;align-items:center;padding:5px 10px;line-height:1;display:inline-flex;text-decoration:none!important}a.tag:hover{color:var(--text-display);border-color:var(--line-strong)}.tag-accent{color:var(--ember-300);background:var(--ember-tint);border-color:var(--ember-600)}.tag-solid{color:var(--text-display);background:var(--surface-raised);border-color:var(--line-strong)}.tag--sm{font-size:var(--size-3xs);padding:3px 7px}.status-pill{align-items:center;gap:var(--space-3);font-family:var(--font-label);font-size:var(--size-3xs);letter-spacing:var(--track-label);text-transform:uppercase;border:var(--border-width) solid currentColor;border-radius:var(--radius-pill);color:var(--ember-400);padding:4px 10px;line-height:1;display:inline-flex}.status-pill__dot{border-radius:var(--radius-pill);background:currentColor;width:5px;height:5px;display:inline-block}.card{gap:var(--space-6);background:var(--surface-card);border:var(--border-width) solid var(--line-hairline);border-radius:var(--radius-card);padding:var(--space-14);color:inherit;transition:var(--transition-lift), background-color var(--dur-2) var(--ease-standard);flex-direction:column;display:flex;text-decoration:none!important}a.card:hover,.card:hover{background:var(--surface-raised);border-color:var(--line-strong);transform:translateY(-2px)}.card__index{font-family:var(--font-mono);font-size:var(--size-2xs);color:var(--text-faint);letter-spacing:var(--track-mono)}.card__title{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--size-lg);letter-spacing:var(--track-display);color:var(--text-display);margin:0}.card__body{color:var(--text-muted);font-size:var(--size-sm);line-height:var(--lh-loose);margin:0}.post-card{padding:0;overflow:hidden}.post-card__media{aspect-ratio:3/2;filter:saturate(.85);border-bottom:var(--border-width) solid var(--line-hairline);background:linear-gradient(120deg,#1b2430,#2b3644 60%,#38414d) 50%/cover;position:relative}.post-card__media:after{content:"";background:var(--scrim-bottom);opacity:.7;position:absolute;inset:0}.post-card__content{gap:var(--space-5);padding:var(--space-12);flex-direction:column;display:flex}.post-card__date{font-family:var(--font-mono);font-size:var(--size-3xs);color:var(--text-faint);letter-spacing:var(--track-mono)}.post-card__readmore{margin-top:var(--space-4);font-family:var(--font-label);font-size:var(--size-2xs);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ember-400)}.post-card:hover .post-card__readmore{color:var(--ember-300)}.focus-panel{background:var(--surface-card);border:var(--border-width) solid var(--line-hairline);border-radius:var(--radius-card);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.focus-panel__body{padding:var(--space-24);gap:var(--space-10);flex-direction:column;display:flex}.focus-panel__title{font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--size-2xl);letter-spacing:var(--track-display);color:var(--text-display);margin:0}.focus-panel__text{color:var(--text-muted);font-size:var(--size-sm);line-height:var(--lh-loose);margin:0}.focus-panel__media{filter:saturate(.85);border-left:var(--border-width) solid var(--line-hairline);background:linear-gradient(140deg,#161d27,#232c39 50%,#2f3947);min-height:260px;position:relative}.focus-panel__media:after{content:"";background:var(--scrim-bottom);position:absolute;inset:0}.focus-panel__status{left:var(--space-16);bottom:var(--space-14);z-index:1;position:absolute}.focus-panel__status-label{font-family:var(--font-label);font-size:var(--size-3xs);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ember-300)}.focus-panel__status-value{font-family:var(--font-mono);font-size:var(--size-sm);color:var(--text-display);margin-top:var(--space-2)}@media (max-width:720px){.focus-panel{grid-template-columns:1fr}}.bullet-list{gap:var(--space-6);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.bullet-list__item{gap:var(--space-4);color:var(--text-body);font-size:var(--size-sm);line-height:var(--lh-loose);grid-template-columns:18px minmax(0,1fr);display:grid}.bullet-list__marker{color:var(--ember-500);font-family:var(--font-mono)}.timeline-entry{gap:var(--space-24);padding:var(--space-16) 0 var(--space-20);border-top:var(--border-width) solid var(--line-hairline);grid-template-columns:160px minmax(0,1fr);display:grid}.timeline-entry--current{position:relative}.timeline-entry--current:before{content:"";left:calc(-1 * var(--space-12));width:var(--border-width-strong);background:var(--ember-500);position:absolute;top:0;bottom:0}.timeline-entry__dates{gap:var(--space-4);flex-direction:column;display:flex}.timeline-entry__start{font-family:var(--font-mono);font-size:var(--size-2xs);color:var(--text-display);letter-spacing:var(--track-mono)}.timeline-entry__end{font-family:var(--font-mono);font-size:var(--size-2xs);color:var(--text-faint)}.timeline-entry__current-label{margin-top:var(--space-3);font-family:var(--font-label);font-size:var(--size-3xs);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ember-400)}.timeline-entry__body{gap:var(--space-4);flex-direction:column;display:flex}.timeline-entry__role{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--size-lg);letter-spacing:var(--track-display);color:var(--text-display);margin:0}.timeline-entry__org{font-family:var(--font-label);font-size:var(--size-2xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.timeline-entry__bullets{margin:var(--space-8) 0 0;gap:var(--space-6);flex-direction:column;padding:0;list-style:none;display:flex}.timeline-entry__bullets li{gap:var(--space-4);color:var(--text-body);font-size:var(--size-sm);line-height:var(--lh-loose);grid-template-columns:14px minmax(0,1fr);display:grid}@media (max-width:640px){.timeline-entry{gap:var(--space-6);grid-template-columns:1fr}}.skill-block{gap:var(--space-4);padding-top:var(--space-8);border-top:var(--border-width) solid var(--line-hairline);flex-direction:column;display:flex}.skill-block__label{font-family:var(--font-label);font-size:var(--size-2xs);font-weight:var(--weight-medium);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--text-accent)}.skill-block__body{color:var(--text-muted);font-size:var(--size-xs);line-height:var(--lh-loose);margin:0}.site-nav{z-index:20;-webkit-backdrop-filter:var(--blur-panel);border-bottom:var(--border-width) solid var(--line-hairline);background:#0b0c0eb8;position:sticky;top:0}[data-theme=light] .site-nav{background:#ffffffb8}.site-nav__inner{max-width:var(--container);padding:var(--space-7) var(--space-12);justify-content:space-between;align-items:center;gap:var(--space-24);margin:0 auto;display:flex}.site-nav__brand{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--size-md);letter-spacing:var(--track-display);color:var(--text-display);border-bottom:none!important;text-decoration:none!important}.site-nav__items{gap:var(--space-2);display:flex}.site-nav__item{font-family:var(--font-label);font-size:var(--size-2xs);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--text-muted);padding:var(--space-4) var(--space-8);border-radius:var(--radius-control);transition:var(--transition-control);border-bottom:none!important;text-decoration:none!important}.site-nav__item:hover{color:var(--text-display)}.site-nav__item--active{color:var(--ember-400);background:var(--ember-tint)}.site-footer{border-top:var(--border-width) solid var(--line-hairline);background:var(--surface-sunken)}.site-footer__inner{max-width:var(--container);padding:var(--space-24) var(--space-12);justify-content:space-between;align-items:center;gap:var(--space-24);flex-wrap:wrap;margin:0 auto;display:flex}.site-footer__brand{font-family:var(--font-mono);font-weight:var(--weight-medium);font-size:var(--size-md);color:var(--text-display)}.site-footer__brand em{color:var(--ember-400);font-style:normal}.site-footer__links{gap:var(--space-16);flex-wrap:wrap;display:flex}.social-link{align-items:center;gap:var(--space-5);font-family:var(--font-mono);font-size:var(--size-xs);color:var(--text-muted);transition:var(--transition-control);display:inline-flex;border-bottom:none!important;text-decoration:none!important}.social-link:hover{color:var(--ember-300)}.social-link__icon{filter:invert(66%)sepia(6%)saturate(300%)hue-rotate(180deg)brightness(95%);width:16px;height:16px}.social-link:hover .social-link__icon{filter:invert(62%)sepia(41%)saturate(1200%)hue-rotate(330deg)brightness(95%)}.prose-body :where(p){color:var(--text-body);font-size:var(--size-md);line-height:var(--lh-loose);margin:0 0 var(--space-10)}.prose-body :where(p):last-child{margin-bottom:0}.prose-body :where(a){color:var(--text-accent)}.prose-body :where(strong){color:var(--text-display);font-weight:var(--weight-semibold)}.prose-body :where(h2){font-size:var(--type-h2-size);margin:var(--space-24) 0 var(--space-10)}.prose-body :where(h3){font-size:var(--type-h3-size);margin:var(--space-20) 0 var(--space-8)}.prose-body :where(ul,ol){color:var(--text-body);font-size:var(--size-md);line-height:var(--lh-loose);padding-left:1.2em}.prose-body :where(blockquote){border-left:var(--border-width-strong) solid var(--ember-500);padding-left:var(--space-14);margin:var(--space-16) 0;font-family:var(--font-quote);color:var(--text-muted)}.prose-body :where(code){font-family:var(--font-code);font-size:var(--type-code-size);background:var(--surface-inset);border-radius:var(--radius-tag);padding:2px 5px}.code-block{border:var(--border-width) solid var(--line-hairline);border-radius:var(--radius-card);margin:var(--space-16) 0;overflow:hidden}.code-block__name{font-family:var(--font-mono);font-size:var(--size-3xs);color:var(--text-faint);padding:var(--space-6) var(--space-10);border-bottom:var(--border-width) solid var(--line-hairline);background:var(--surface-raised)}.code-block__body{background:var(--surface-card);position:relative}.code-block__pre{padding:var(--space-12);margin:0;overflow-x:auto}.code-block__pre code{font-family:var(--font-code);font-size:var(--type-code-size);background:0 0;border-radius:0;padding:0;display:block}.code-block__copy{top:var(--space-6);right:var(--space-6);font-family:var(--font-label);font-size:var(--size-3xs);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--text-faint);background:var(--surface-raised);border:var(--border-width) solid var(--line-hairline);border-radius:var(--radius-control);padding:var(--space-3) var(--space-6);cursor:pointer;opacity:0;transition:var(--transition-control), opacity var(--dur-2) var(--ease-standard);position:absolute}.code-block__body:hover .code-block__copy,.code-block__copy:focus-visible{opacity:1}.code-block__copy:hover{color:var(--text-display);border-color:var(--line-strong)}.code-block__copy[data-copied]{color:var(--sig-ok);border-color:var(--sig-ok);opacity:1}.figure-block{margin:var(--space-16) 0}.figure-block img{border-radius:var(--radius-media);border:var(--border-width) solid var(--line-hairline);filter:saturate(.85);width:100%;display:block}.figure-block figcaption{margin-top:var(--space-5);font-family:var(--font-mono);font-size:var(--size-3xs);color:var(--text-faint);text-align:center}.grid-texture{background:repeating-linear-gradient(90deg, var(--grid-line) 0 1px, transparent 1px 72px);pointer-events:none;position:absolute;inset:0}.grid-texture--drift{animation:14s linear infinite hero-grid-drift}.hero{border-bottom:var(--border-width) solid var(--line-hairline);position:relative}.hero__inner{max-width:var(--container);padding:var(--space-80) var(--space-12) var(--space-64);margin:0 auto;position:relative}.hero__title{font-size:var(--type-hero-size);font-weight:var(--weight-light);letter-spacing:var(--track-mega);line-height:var(--lh-tight);max-width:18ch;margin:0}.hero__accent{color:var(--ember-500)}.hero__lede{margin-top:var(--space-16);color:var(--text-muted);font-size:var(--size-lg);line-height:var(--lh-normal);max-width:48ch}.hero__actions{gap:var(--space-6);margin-top:var(--space-24);flex-wrap:wrap;display:flex}.hero__inner--stagger>*{opacity:0;animation:hero-rise-in .64s var(--ease-standard) forwards}.hero__inner--stagger>:first-child{animation-delay:0s}.hero__inner--stagger>:nth-child(2){animation-delay:.14s}.hero__inner--stagger>:nth-child(3){animation-delay:.28s}.hero__inner--stagger>:nth-child(4){animation-delay:.42s}@keyframes hero-rise-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-grid-drift{0%{background-position:0 0}to{background-position:72px 0}}@media (prefers-reduced-motion:reduce){.hero__inner--stagger>*{opacity:1;animation:none;transform:none}.grid-texture--drift{animation:none}}.container{max-width:var(--container);padding-left:var(--space-12);padding-right:var(--space-12);margin:0 auto}.section{padding-top:var(--space-64);padding-bottom:var(--space-64)}.section--sunken{background:var(--surface-sunken);border-top:var(--border-width) solid var(--line-hairline)}.section-grid{gap:var(--space-48);grid-template-columns:7fr 5fr;align-items:start;display:grid}@media (max-width:860px){.section-grid{grid-template-columns:1fr}}.card-grid-3{gap:var(--space-12);grid-template-columns:repeat(3,1fr);display:grid}@media (max-width:860px){.card-grid-3{grid-template-columns:1fr 1fr}}@media (max-width:560px){.card-grid-3{grid-template-columns:1fr}}.skill-grid-3{gap:var(--space-20) var(--space-24);grid-template-columns:repeat(3,1fr);display:grid}@media (max-width:720px){.skill-grid-3{grid-template-columns:1fr}}.about-card{background:var(--surface-card);border:var(--border-width) solid var(--line-hairline);border-radius:var(--radius-card);overflow:hidden}.about-card__media{filter:saturate(.85);border-bottom:var(--border-width) solid var(--line-hairline);background:linear-gradient(140deg,#161d27,#232c39 55%,#2f3947);height:190px;position:relative}.about-card__media:after{content:"";background:var(--scrim-bottom);position:absolute;inset:0}.about-card__body{padding:var(--space-14)}.about-card__name{font-family:var(--font-display);font-size:var(--size-xl);font-weight:var(--weight-light);letter-spacing:var(--track-display);color:var(--text-display)}.about-card__role{margin-top:var(--space-4);font-family:var(--font-mono);font-size:var(--size-xs);color:var(--ember-400)}.about-card__meta{gap:var(--space-3);font-family:var(--font-mono);font-size:var(--size-xs);color:var(--text-muted);flex-direction:column;display:flex}.form-field{gap:var(--space-4);flex-direction:column;display:flex}.form-field__label{font-family:var(--font-label);font-size:var(--size-3xs);font-weight:var(--weight-medium);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--text-muted);transition:var(--transition-control)}.form-field:focus-within .form-field__label{color:var(--text-accent)}.form-field__required{color:var(--ember-500)}.form-field__hint{font-family:var(--font-mono);font-size:var(--size-3xs);color:var(--text-faint)}.form-field__hint--error{color:var(--sig-err)}.form-input,.form-textarea{font-family:var(--font-body);font-size:var(--size-sm);color:var(--text-display);background:var(--surface-raised);border:var(--border-width) solid var(--line-rule);border-radius:var(--radius-control);padding:var(--space-6) var(--space-8);transition:var(--transition-control);outline:none}.form-input:focus,.form-textarea:focus{border-color:var(--ember-500);box-shadow:var(--shadow-focus)}.form-input.has-error,.form-textarea.has-error{border-color:var(--sig-err)}.form-textarea{resize:vertical;line-height:var(--lh-normal)}.contact-form{background:var(--surface-card);border:var(--border-width) solid var(--line-hairline);border-radius:var(--radius-card);padding:var(--space-20);gap:var(--space-14);flex-direction:column;display:flex}.hp-field{position:absolute;top:-9999px;left:-9999px}mark{background:var(--ember-tint);color:var(--ember-300);border-radius:2px;padding:0 2px}.reading-progress{background:var(--ember-500);z-index:100;width:0%;height:3px;transition:width 80ms linear;position:fixed;top:0;left:0}.share-button{align-items:center;gap:var(--space-6);display:inline-flex}.share-button[data-copied]{color:var(--ember-400);border-color:var(--ember-600)}.command-palette{z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b0c0e99;justify-content:center;align-items:flex-start;padding-top:14vh;display:flex;position:fixed;inset:0}.command-palette[hidden]{display:none}.command-palette__panel{background:var(--surface-card);border:var(--border-width) solid var(--line-strong);border-radius:var(--radius-card);width:min(560px,90vw);overflow:hidden;box-shadow:0 20px 60px #0006}.command-palette__input{border:none;border-bottom:var(--border-width) solid var(--line-hairline);width:100%;color:var(--text-display);font-family:var(--font-body);font-size:var(--size-md);padding:var(--space-14) var(--space-16);background:0 0;outline:none}.command-palette__results{max-height:50vh;padding:var(--space-6);overflow-y:auto}.command-palette__item{padding:var(--space-8) var(--space-10);border-radius:var(--radius-control);color:var(--text-body);font-size:var(--size-sm);text-decoration:none;display:block}.command-palette__item small{color:var(--text-faint);font-family:var(--font-mono);font-size:var(--size-3xs);margin-top:2px;display:block}.command-palette__item[data-active],.command-palette__item:hover{background:var(--surface-inset);color:var(--text-display)}.command-palette__empty{padding:var(--space-16);color:var(--text-muted);font-size:var(--size-sm)}.command-palette-trigger{color:var(--text-faint);font-family:var(--font-mono);font-size:var(--size-3xs);background:var(--surface-raised);border:var(--border-width) solid var(--line-rule);border-radius:var(--radius-control);cursor:pointer;padding:2px 6px}.skip-link{top:-100%;left:var(--space-16);z-index:300;background:var(--ember-500);color:#fff;padding:var(--space-8) var(--space-16);border-radius:var(--radius-control);font-family:var(--font-label);font-size:var(--size-xs);text-decoration:none;transition:top .12s;position:absolute}.skip-link:focus{top:var(--space-16)}.hljs{color:var(--text-body);background:0 0}.hljs-comment,.hljs-quote{color:var(--text-faint);font-style:italic}.hljs-keyword,.hljs-doctag,.hljs-formula,.hljs-selector-tag{color:var(--ember-400)}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:var(--sig-ok)}.hljs-number,.hljs-literal{color:var(--sig-info)}.hljs-built_in,.hljs-type,.hljs-class .hljs-title,.hljs-title.class_{color:var(--sig-warn)}.hljs-title,.hljs-title.function_,.hljs-section{color:var(--text-display);font-weight:var(--weight-medium)}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-params{color:var(--ember-300)}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-name,.hljs-deletion{color:var(--sig-err)}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:var(--weight-bold)}.hljs-link{text-decoration:underline}