.bg{color:#cad3f5;background-color:#24273a}.chroma{color:#cad3f5;background-color:#24273a;-webkit-text-size-adjust:none}.chroma .x{color:#cad3f5}.chroma .err{color:#ed8796}.chroma .cl{color:#cad3f5}.chroma .lnlinks{outline:none;text-decoration:none;color:inherit}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#494d64}.chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8087a2}.chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#8087a2}.chroma .line{display:flex}.chroma .k{color:#c6a0f6}.chroma .kc{color:#f5a97f}.chroma .kd{color:#ed8796}.chroma .kn{color:#8bd5ca}.chroma .kp{color:#c6a0f6}.chroma .kr{color:#c6a0f6}.chroma .kt{color:#ed8796}.chroma .na{color:#8aadf4}.chroma .nc{color:#eed49f}.chroma .no{color:#eed49f}.chroma .nd{color:#8aadf4;font-weight:700}.chroma .ni{color:#8bd5ca}.chroma .ne{color:#f5a97f}.chroma .nl{color:#91d7e3}.chroma .nn{color:#f5a97f}.chroma .nx{color:#cad3f5}.chroma .py{color:#f5a97f}.chroma .nt{color:#c6a0f6}.chroma .nb{color:#91d7e3}.chroma .bp{color:#91d7e3}.chroma .nv{color:#f4dbd6}.chroma .vc{color:#f4dbd6}.chroma .vg{color:#f4dbd6}.chroma .vi{color:#f4dbd6}.chroma .vm{color:#f4dbd6}.chroma .nf{color:#8aadf4}.chroma .fm{color:#8aadf4}.chroma .ld{color:#cad3f5}.chroma .s{color:#a6da95}.chroma .sa{color:#ed8796}.chroma .sb{color:#a6da95}.chroma .sc{color:#a6da95}.chroma .dl{color:#8aadf4}.chroma .sd{color:#6e738d}.chroma .s2{color:#a6da95}.chroma .se{color:#8aadf4}.chroma .sh{color:#6e738d}.chroma .si{color:#a6da95}.chroma .sx{color:#a6da95}.chroma .sr{color:#8bd5ca}.chroma .s1{color:#a6da95}.chroma .ss{color:#a6da95}.chroma .m{color:#f5a97f}.chroma .mb{color:#f5a97f}.chroma .mf{color:#f5a97f}.chroma .mh{color:#f5a97f}.chroma .mi{color:#f5a97f}.chroma .il{color:#f5a97f}.chroma .mo{color:#f5a97f}.chroma .o{color:#91d7e3;font-weight:700}.chroma .ow{color:#91d7e3;font-weight:700}.chroma .or{color:#91d7e3;font-weight:700}.chroma .c{color:#6e738d;font-style:italic}.chroma .ch{color:#5b6078;font-style:italic}.chroma .cm{color:#6e738d;font-style:italic}.chroma .c1{color:#6e738d;font-style:italic}.chroma .cs{color:#6e738d;font-style:italic}.chroma .cp{color:#6e738d;font-style:italic}.chroma .cpf{color:#6e738d;font-weight:700;font-style:italic}.chroma .gd{color:#ed8796;background-color:#363a4f}.chroma .ge{font-style:italic}.chroma .gr{color:#ed8796}.chroma .gh{color:#f5a97f;font-weight:700}.chroma .gi{color:#a6da95;background-color:#363a4f}.chroma .go{color:#cad3f5}.chroma .gp{color:#cad3f5}.chroma .gs{font-weight:700}.chroma .gu{color:#f5a97f;font-weight:700}.chroma .gt{color:#ed8796}.chroma .gl{text-decoration:underline}:root{color-scheme:light;--font-sans:"Inter Tight","IBM Plex Sans Arabic",ui-sans-serif,system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono","IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--bg:#ffffff;--bg-alt:#f1f3f4;--ink:#1f1f1f;--ink-soft:#444746;--ink-mute:#5f6368;--rule:#dadce0;--rule-soft:#e8eaed;--media-ground:#000000;--media-ink:#ffffff;--code-comment:#9399b2;--code-ground:#202124;--accent:#a8431a;--ink-gain:#0a4fd0;--ink-loss:#c1121f;--t-display-s:2.125rem;--t-heading:1.5rem;--t-subhead:1.25rem;--t-section:calc(var(--prose-size) * 1.3);--t-body-l:1.125rem;--t-body:1rem;--t-caption:0.875rem;--t-eyebrow:0.75rem;--lh-body:1.6;--fl-display-m:clamp(1.875rem,1.35rem + 2.6vw,3rem);--fl-display-l:clamp(2.25rem,1.5rem + 3.2vw,4rem);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--flow-tight:var(--space-3);--flow-block:var(--space-6);--flow-section:var(--space-7);--container-text:900px;--container-content:1200px;--gap:var(--space-5);--header-height:60px;--prose-size:clamp(1.125rem, 1.017rem + 0.462vw, 1.3125rem);--label-col:150px;--radius-xs:4px;--radius-sm:8px;--radius-md:16px;--radius-pill:999px;--hairline:1px;--hairline-strong:1.5px;--category-bar:4px;--shadow-pop:0 4px 12px rgba(60,64,67,.15),0 12px 32px rgba(60,64,67,.15);--dur-1:120ms;--dur-2:200ms;--ease-standard:cubic-bezier(.2,0,0,1);--ease-spring:cubic-bezier(.34,1.36,.64,1)}@media screen{.dark{--bg:#131314;--bg-alt:#1e1f20;--ink:#e3e3e3;--ink-soft:#c4c7c5;--ink-mute:#9aa0a6;--rule:#3c4043;--rule-soft:#282a2c;--accent:#e2876a;--code-ground:#1e1f20;color-scheme:dark;--ink-gain:#58a9ff;--ink-loss:#ff5c5c;--shadow-pop:0 4px 12px rgba(0,0,0,.5),0 12px 32px rgba(0,0,0,.5)}}@media print{html{font-size:8.5pt}:root{--space-1:2px;--space-2:3px;--space-3:5px;--space-4:7px;--space-5:9px;--space-6:12px;--space-7:14px;--prose-size:1rem;--fl-display-m:2rem;--fl-display-l:2rem;--t-display-s:1.5rem;--label-col:110px}}@media screen and (max-width:600px){:root{--flow-block:var(--space-5);--flow-section:calc(var(--space-6) + var(--space-2));--gap:var(--space-4);--header-height:52px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition-duration:.01ms!important}}[lang=ar]{--t-eyebrow:0.875rem}@font-face{font-family:inter tight;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-tight-400-latin-ext.woff2)format('woff2');unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:inter tight;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-tight-400-latin.woff2)format('woff2');unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono-400-latin-ext.woff2)format('woff2');unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono-400-latin.woff2)format('woff2');unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:ibm plex sans arabic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-400-arabic.woff2)format('woff2');unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:ibm plex sans arabic;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-arabic-600-arabic.woff2)format('woff2');unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}*,::before,::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overflow-y:scroll}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}@view-transition{navigation:auto;}}body{display:flex;flex-direction:column;min-height:100dvh;margin:0;font-family:var(--font-sans);font-size:var(--t-body-l);line-height:var(--lh-body);color:var(--ink);background:var(--bg);overflow-wrap:break-word}h1,h2,h3,h4{margin:0;line-height:1.2;color:var(--ink);text-wrap:balance}p,figure,ul{margin:0}p,li,dd{text-wrap:pretty}ul{padding:0}a{color:var(--ink);text-decoration:none}button,input{padding:0;font:inherit;color:inherit;background:0 0;border:0}button{cursor:pointer}img{display:block;max-width:100%}.main{--measure:var(--container-text);position:relative;flex:1 0 auto;width:100%;max-width:calc(var(--container-content) + var(--gap) * 2);margin-inline:auto;padding:var(--flow-block)var(--gap)var(--flow-section)}.main--wide{--measure:var(--container-content)}.main>:not(.post-single),.post-single>:not(.post-content),.post-content.post-content>*{max-inline-size:var(--measure);margin-inline:auto}.logo>a,.page-header h1,.profile h1,.entry-title,.post-content h2,.post-content h3{font-weight:500;letter-spacing:-.015em}:is(h1,h2,h3,.entry-title):lang(ar){letter-spacing:0;font-weight:600}:is(.page-header h1,.profile h1):lang(ar){line-height:1.35}code,pre{font-family:var(--font-mono)}code{direction:ltr}li::marker{color:var(--ink-mute)}.page-header{display:flex;flex-direction:column;gap:var(--flow-tight);margin-block:0 var(--flow-block)}.page-header h1{font-size:var(--fl-display-m);line-height:1.1;letter-spacing:-.025em}.page-header__description{max-width:60ch;font-size:var(--t-subhead);line-height:1.45;color:var(--ink-soft)}@media(max-width:600px){.page-header__description{font-size:var(--t-body-l)}}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-xs)}.post-content a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em;text-decoration-color:color-mix(in srgb,var(--accent) 45%,transparent);transition:text-decoration-color var(--dur-1)var(--ease-standard),color var(--dur-1)var(--ease-standard)}.post-content a:hover{text-decoration-color:var(--accent);text-decoration-thickness:2px}.post-content figure a{text-decoration:none}.highlight{position:relative;border-radius:var(--radius-sm);overflow:hidden;direction:ltr;background:var(--code-ground)}.chroma{background:0 0}.u-card{background:var(--bg-alt);border-radius:var(--radius-md)}.card-grid{display:grid;gap:var(--space-7)var(--space-6);grid-template-columns:repeat(auto-fill,minmax(min(100%,max(320px,(100% - var(--space-6))/2)),1fr))}.post-entry{position:relative;display:flex;flex-direction:column;gap:var(--space-4)}.entry-cover{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;background:var(--bg-alt)}.entry-cover img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-2)var(--ease-standard)}.post-entry:hover .entry-cover img{transform:scale(1.03)}.entry-text{display:flex;flex-direction:column;gap:var(--space-2)}.entry-eyebrow>*{white-space:nowrap}.entry-title{font-size:var(--t-heading);line-height:1.25;transition:color var(--dur-1)var(--ease-standard)}@media(max-width:600px){.entry-title{font-size:var(--t-subhead)}}.post-entry:hover .entry-title{color:var(--accent)}.entry-content{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:var(--t-body);color:var(--ink-soft)}.entry-link{position:absolute;inset:0}.u-eyebrow{font-size:var(--t-caption);color:var(--ink-mute)}.u-dot{font-weight:400}.u-heading{margin:0 0 var(--space-5);font-size:var(--t-section);font-weight:500;line-height:1.25}.copy-code{position:absolute;inset-block-start:var(--space-2);user-select:none;inset-inline-end:var(--space-2);min-height:24px;padding:0 var(--space-2);border:var(--hairline)solid var(--rule);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink-mute);font-size:var(--t-eyebrow)}@media(hover:hover){.copy-code{opacity:0;transition:opacity var(--dur-1)var(--ease-standard)}:is(.highlight,pre):hover .copy-code,.copy-code:focus-visible{opacity:1}.copy-code:hover{color:var(--accent);border-color:var(--accent)}}.u-chip{display:inline-flex;align-items:center;gap:.5ch;font-size:var(--t-caption);padding:4px 12px;border-radius:var(--radius-sm);background:var(--bg-alt);color:var(--ink-soft)}.u-card .u-chip{background:var(--bg)}.u-chips{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-2)}.u-label-row{display:grid;grid-template-columns:var(--label-col)minmax(0,1fr);gap:var(--space-1)var(--space-4)}@media(max-width:600px){.u-label-row{grid-template-columns:minmax(0,1fr)}}.u-link{color:var(--accent);min-height:24px;display:inline-flex;align-items:center;gap:var(--space-2)}.u-link:hover{text-decoration:underline;text-underline-offset:3px}.entry-lang{display:block;margin:var(--space-2)0 0;font-size:var(--t-caption);color:var(--ink-mute)}.report-frame{display:block;width:100%;min-height:100vh;border:0;background:var(--bg)}.u-frame,.post-content figure>img{border-radius:var(--radius-sm);background:var(--bg-alt)}.nav{display:flex;flex-wrap:wrap;justify-content:space-between;max-width:calc(var(--container-content) + var(--gap) * 2);margin-inline:auto;line-height:var(--header-height)}.logo,.menu{display:flex;margin:auto var(--gap)}.logo,.tools{flex-wrap:inherit}.tools{display:inline-flex;margin:auto var(--space-1)}.menu{list-style:none;white-space:nowrap;overflow-x:auto}.menu li+li{margin-inline-start:var(--gap)}.menu a{display:block;min-width:24px;font-size:var(--t-body);text-align:center}.menu a[aria-current]{font-weight:500;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}@media(max-width:600px){.menu{flex:1 1 100%;justify-content:space-between;overflow:visible}.menu li{line-height:40px}.logo{flex:1 1 100%}.tools{margin-inline:auto calc(var(--space-1) * -2)}.menu li+li{margin-inline-start:0}}.brand-mark{display:block;color:var(--accent);flex:none}.logo>a{display:inline-flex;align-items:center;gap:var(--space-3);font-size:var(--t-subhead);transition:color var(--dur-1)var(--ease-standard)}.logo>a:hover{color:var(--accent)}#theme-toggle{margin:auto var(--space-1);padding:2px;color:var(--ink-soft)}#theme-toggle svg{display:block}#theme-toggle:hover{color:var(--accent)}.dark #theme-toggle .icon-moon,:root:not(.dark) #theme-toggle .icon-sun{display:none}.series,.toc{margin-block:0 var(--flow-block);padding:var(--space-4)var(--space-5);font-size:var(--t-body)}.series__title{margin:0 0 var(--space-2)}.series__list{margin:0;padding-inline-start:var(--space-5)}.series__item,.toc li{color:var(--ink-soft)}.series__item a{display:inline-block;vertical-align:top;color:var(--accent)}.series__item a:hover{text-decoration:underline}.series__item--current{color:var(--ink);font-weight:500}.toc summary{padding-block:var(--space-1);font-size:var(--t-caption);font-weight:500;color:var(--ink-mute);cursor:pointer;user-select:none}.toc nav{margin-block-start:var(--space-3)}.toc ul{list-style:none}.toc ul ul{padding-inline-start:var(--space-4)}.toc a{display:inline-block;color:var(--ink-soft)}.toc a:hover{color:var(--accent)}.skip-link{position:absolute;inset-inline-start:var(--space-4);inset-block-start:-100%;z-index:100;padding:var(--space-2)var(--space-4);background:var(--bg-alt);color:var(--accent);border:var(--hairline)solid var(--accent);border-radius:var(--radius-sm);font-size:var(--t-caption)}.skip-link:focus{inset-block-start:var(--space-2)}.footer{padding:18px var(--gap);text-align:center;font-size:var(--t-caption);line-height:24px;color:var(--ink-soft)}.lang-switch{display:flex;flex-wrap:inherit;list-style:none;font-size:var(--t-caption)}.lang-switch li{display:inline-flex;margin:auto var(--space-1)}.lang-switch a{min-width:24px;min-height:24px;display:inline-flex;align-items:center;justify-content:center;transition:color var(--dur-1)var(--ease-standard)}.lang-switch a:hover{color:var(--accent)}@media(pointer:coarse){:where(.u-link,.lang-switch a,#theme-toggle,.paridata-button,.copy-code,.toc summary){position:relative}:where(.u-link,.lang-switch a,#theme-toggle,.paridata-button,.copy-code,.toc summary)::after{content:"";position:absolute;inset:-10px}:where(.lang-switch a,#theme-toggle)::after{inset-block:-10px}}.profile{display:grid;grid-template-columns:minmax(0,1fr)auto;align-items:center;gap:var(--space-5)var(--space-7);padding:clamp(var(--space-5),4vw,var(--space-7));margin-block-end:var(--flow-section)}.profile__text{display:flex;flex-direction:column;gap:var(--space-4)}.profile h1{font-size:var(--fl-display-l);line-height:1.05;letter-spacing:-.03em}.profile__role{font-size:var(--t-subhead);line-height:1.45;color:var(--ink-soft);text-wrap:balance}.profile__intro{max-width:62ch;font-size:var(--t-body-l);color:var(--ink-soft)}.profile__photo{width:240px;height:auto;border-radius:var(--radius-pill)}@media(max-width:768px){.profile{grid-template-columns:minmax(0,1fr)}.profile picture{order:-1}.profile__photo{width:128px}.profile__role,.profile__intro{font-size:var(--t-body)}}.resume .page-header{display:grid;grid-template-columns:minmax(0,1fr)auto;align-items:center;gap:var(--flow-tight)var(--space-5)}.resume .page-header>*{grid-column:1}.resume .page-header>.resume__print{grid-column:2;grid-row:1}.resume .page-header>.resume__asof{grid-column:2;grid-row:2;align-self:start;justify-self:end;font-size:var(--t-caption);color:var(--ink-mute)}.resume__highlights{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--space-4)}.resume__highlight{padding:var(--space-5);font-size:var(--t-body);color:var(--ink-soft)}.resume__highlight-title{margin-block-end:var(--space-1);font-size:var(--t-body-l);font-weight:500;color:var(--ink)}.resume__highlight a{color:var(--accent);text-decoration:underline;text-underline-offset:.18em}.resume__print{min-height:40px;padding:0 var(--space-5);border:var(--hairline)solid var(--rule);border-radius:var(--radius-pill);background:var(--bg);color:var(--accent);font-size:var(--t-body);font-weight:500;transition:background var(--dur-1)var(--ease-standard)}.resume__print:hover{background:var(--bg-alt)}.resume__section{margin-block:var(--flow-section)0}.resume__skills,.resume__records{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:var(--space-5)var(--space-7)}.resume__skillgroup,.resume__record{align-content:start}.resume__skillgroup dd{margin:0;font-size:var(--t-body);color:var(--ink-soft)}.resume__record-year{grid-row:span 2;padding-top:4px}.resume__record-name{font-size:var(--t-body-l);font-weight:500}.resume__record-issuer{color:var(--ink-soft);font-size:var(--t-caption)}@media(max-width:600px){.resume__highlight{padding:var(--space-4)}.resume .page-header{grid-template-columns:auto minmax(0,1fr)}.resume .page-header>*{grid-column:1/-1}.resume .page-header>.resume__print{grid-column:1;grid-row:auto}.resume .page-header>.resume__asof{grid-column:2;grid-row:auto;align-self:center;justify-self:start}.resume__record-year{grid-row:auto;padding-top:0}}:root{--tl-rail:220px;--tl-thumb:320px}.timeline-item{display:grid;grid-template-columns:var(--tl-rail)minmax(0,1fr);gap:var(--space-2)var(--space-6)}.timeline-item+.timeline-item{margin-block-start:var(--flow-section)}.timeline-when{display:flex;flex-direction:column;gap:var(--space-1);padding-block-start:var(--space-1)}.timeline-org{font-size:var(--t-body);line-height:1.4;color:var(--ink-soft)}.timeline-org a{color:var(--accent)}.timeline-org a:hover{text-decoration:underline;text-underline-offset:3px}.timeline-title{font-weight:500;font-size:var(--t-heading);line-height:1.25}.timeline-note{margin:var(--space-2)0 0;font-size:var(--t-caption);line-height:1.5;color:var(--ink-mute)}.timeline-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:var(--space-5)var(--space-6);margin-top:var(--space-5)}.timeline-work:not(.timeline-work--media):last-child:nth-child(odd of :not(.timeline-work--media)){grid-column:1/-1}.timeline-work--media{grid-column:1/-1;display:grid;grid-template-columns:var(--tl-thumb)minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:var(--space-5);align-items:start}.timeline-work--media>.video-thumb{grid-row:span 2;width:100%}.timeline-work__title{font-size:var(--t-body-l);font-weight:500;line-height:1.3;margin:0 0 var(--space-2)}.timeline-work__title a{padding-block:2px;background:linear-gradient(var(--accent),var(--accent))0 100%/100% 1px no-repeat;transition:color var(--dur-1)var(--ease-standard)}.timeline-work__title a:hover{color:var(--accent)}.timeline-work__text{max-inline-size:75ch;font-size:var(--t-body);color:var(--ink-soft)}.video-thumb{position:relative;display:block;margin:0;line-height:0;overflow:hidden}.video-thumb img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.video-thumb__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(to top,color-mix(in srgb,var(--media-ground) 35%,transparent),color-mix(in srgb,var(--media-ground) 5%,transparent) 60%);transition:background var(--dur-2)var(--ease-standard)}.video-thumb__play svg{width:56px;height:56px;padding:14px;border-radius:50%;fill:var(--media-ink);background:color-mix(in srgb,var(--media-ground) 60%,transparent);transform:translateX(1px);transition:transform var(--dur-2)var(--ease-spring)}.video-thumb:hover .video-thumb__play{background:color-mix(in srgb,var(--media-ground) 18%,transparent)}.video-thumb:hover .video-thumb__play svg{transform:scale(1.12)translateX(1px)}.video-thumb:focus-visible{outline-offset:3px}.lightbox{inline-size:min(90vw,1100px);max-inline-size:none;padding:0;border:0;background:0 0;overflow:visible}.lightbox::backdrop{background:color-mix(in srgb,var(--media-ground) 88%,transparent)}.lightbox iframe{display:block;inline-size:100%;max-block-size:88vh;aspect-ratio:16/9;border:0;border-radius:var(--radius-md);box-shadow:var(--shadow-pop);background:var(--media-ground)}.lightbox__close{position:fixed;inset-block-start:var(--space-4);inset-inline-end:var(--space-4);display:flex;align-items:center;justify-content:center;inline-size:44px;block-size:44px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--media-ink) 16%,transparent);color:var(--media-ink);transition:background var(--dur-2)var(--ease-standard)}.lightbox__close:hover{background:color-mix(in srgb,var(--media-ink) 30%,transparent)}.lightbox__close:focus-visible{outline:2px solid var(--media-ink);outline-offset:3px}.lightbox__close svg{inline-size:22px;block-size:22px}@media(max-width:768px){.timeline-item,.timeline-work--media{grid-template-columns:minmax(0,1fr)}.timeline-work--media>.video-thumb{grid-row:auto;margin-block-end:var(--space-4)}}@media(prefers-reduced-motion:reduce){.video-thumb:hover .video-thumb__play svg{transform:translateX(1px)}}.verdict{padding:var(--space-2)var(--space-6)var(--space-5);margin-block:0 var(--flow-block)}.verdict h2{margin:var(--space-4)0 0}.verdict dl{display:grid;grid-template-columns:max-content 1fr;align-items:baseline;margin:var(--space-3)0 0}.verdict dl>div{display:contents}.verdict dt{font-size:var(--t-caption);color:var(--ink-mute);padding:var(--space-3)0}.verdict dd{font-weight:500;font-size:var(--t-body-l);margin:0;padding-block:var(--space-3);padding-inline-start:var(--space-5);text-wrap:balance}.verdict .rating dd{font-size:var(--t-display-s)}.verdict .of5{font-size:var(--t-body);color:var(--ink-mute)}@media(max-width:600px){.verdict{padding:var(--space-2)var(--space-5)var(--space-4)}.verdict dl{grid-template-columns:1fr}.verdict dt{padding-bottom:0}.verdict dd{padding-block:0 var(--space-3);padding-inline-start:0}}.paridata{--tone:var(--ink);font-variant-numeric:tabular-nums}.paridata [data-tone=gain],.paridata [data-settlement=won]{--tone:var(--ink-gain)}.paridata [data-tone=loss],.paridata [data-settlement=lost]{--tone:var(--ink-loss)}.paridata [hidden]{display:none}.paridata-amount{white-space:nowrap}.paridata-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-4);font-size:var(--t-caption);font-weight:600;color:var(--ink-mute)}.paridata-heading__aside{font-weight:400;letter-spacing:.04em}.paridata-button{font:inherit;letter-spacing:inherit;text-transform:inherit;font-weight:600;padding:6px 16px;color:var(--ink-mute);background:0 0;border:var(--hairline)solid var(--rule);border-radius:var(--radius-pill);cursor:pointer;transition:color var(--dur-2)var(--ease-standard),border-color var(--dur-2)var(--ease-standard)}.paridata-button:hover:not(:disabled){color:var(--ink);border-color:var(--accent)}.paridata-button:disabled{opacity:.35;cursor:default}.paridata-button[aria-pressed=true]{color:var(--ink);border-color:var(--accent);background:var(--bg-alt)}.paridata-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-block:0 var(--space-4);font-size:var(--t-caption);color:var(--ink-mute)}.paridata-toggle__group{display:inline-flex}.paridata-toggle__group .paridata-button{border-radius:0}.paridata-toggle__group .paridata-button+.paridata-button{border-inline-start:0}.paridata-toggle__group .paridata-button:first-child{border-start-start-radius:var(--radius-pill);border-end-start-radius:var(--radius-pill)}.paridata-toggle__group .paridata-button:last-child{border-start-end-radius:var(--radius-pill);border-end-end-radius:var(--radius-pill)}.paridata-stake{display:inline-flex;align-items:center;gap:var(--space-2);margin-inline-start:auto}.paridata-stake__box{display:inline-flex;align-items:center;gap:var(--space-1);padding:0 var(--space-3);border:var(--hairline)solid var(--rule);border-radius:var(--radius-pill);background:var(--bg);color:var(--ink);font-weight:600;letter-spacing:0}.paridata-stake__box:focus-within{outline:2px solid var(--accent);outline-offset:2px}.paridata-stake:not([data-after]) .paridata-stake__symbol{order:-1}.paridata-stake__input{inline-size:7ch;padding:5px 0;font:inherit;color:inherit;text-align:end;background:0 0;border:0;outline:0;appearance:textfield}.paridata-stake__input::-webkit-inner-spin-button,.paridata-stake__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.paridata-dash{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:var(--space-3);margin:0 0 var(--space-6)}.paridata-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-5)var(--space-4);text-align:center}.paridata-card[data-tone]{background:color-mix(in srgb,var(--tone) 10%,var(--bg))}.paridata-card__label,.paridata-card__note{margin:0;font-size:var(--t-eyebrow);font-weight:600;color:var(--ink-soft)}.paridata-card__note{font-weight:400}.paridata-card__value{margin:0;font-weight:500;font-size:clamp(1.75rem,1.3rem + 1.5vw,2.5rem);line-height:1;color:var(--tone)}.paridata-card--lead .paridata-card__value{font-size:clamp(2.5rem,1.8rem + 2.6vw,3.75rem)}.paridata-panel{padding:var(--space-5);margin:0 0 var(--space-6)}.paridata-curve__svg{display:block;width:100%;height:200px;overflow:visible}.paridata-curve__fill{fill:color-mix(in srgb,var(--tone) 22%,transparent)}.paridata-curve__zero{stroke:var(--ink-mute);stroke-dasharray:3 4;vector-effect:non-scaling-stroke}.paridata-curve__line{fill:none;stroke:var(--ink);stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke}.paridata-curve__dot{fill:var(--bg-alt);stroke:var(--ink);stroke-width:2.5;vector-effect:non-scaling-stroke}.paridata-ledger{margin:0 0 var(--space-6)}.paridata-grid{display:grid;grid-template-columns:7.5rem repeat(6,minmax(0,1fr))1rem;gap:var(--space-3);align-items:center;padding-inline:var(--space-3)var(--space-4);border-inline-start:var(--category-bar)solid transparent}.paridata-ledger__head{padding-block:0 var(--space-2);font-size:var(--t-eyebrow);font-weight:600;color:var(--ink-mute)}.paridata-ledger__head>:last-child{text-align:end}.paridata-row{margin-block-end:var(--space-2);background:color-mix(in srgb,var(--tone) 9%,var(--bg));border-inline-start:var(--category-bar)solid color-mix(in srgb,var(--tone) 70%,transparent);border-radius:var(--radius-sm)}.paridata-row:not([data-settlement=won]):not([data-settlement=lost]){background:var(--bg-alt);border-inline-start-color:var(--rule)}.paridata-row__summary{padding-block:var(--space-4);border-inline-start:0;cursor:pointer;list-style:none}.paridata-row__summary::-webkit-details-marker{display:none}.paridata-row__summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.paridata-row__summary::after{content:'';justify-self:end;inline-size:7px;block-size:7px;margin-block-end:4px;border-block-end:var(--hairline-strong)solid var(--ink-soft);border-inline-end:var(--hairline-strong)solid var(--ink-soft);transform:rotate(45deg);transition:transform var(--dur-2)var(--ease-standard)}.paridata-row[open] .paridata-row__summary::after{transform:rotate(-135deg)}[dir=rtl] .paridata-row__summary::after{transform:rotate(-45deg)}[dir=rtl] .paridata-row[open] .paridata-row__summary::after{transform:rotate(135deg)}.paridata-row__date{font-size:var(--t-caption);font-weight:500;color:var(--ink);white-space:nowrap}.paridata-row__comp{display:flex;align-items:center;gap:var(--space-2)}.paridata-row__tags{display:contents}.paridata-row__tags>*{justify-self:start;white-space:nowrap}.paridata-flag{flex:none;inline-size:24px;block-size:16px;border-radius:2px;object-fit:cover;box-shadow:0 0 0 var(--hairline)var(--rule)}.paridata-row__compname,.paridata-row__num{font-size:var(--t-caption);font-weight:600;line-height:1.3;color:var(--ink-soft);white-space:nowrap}.paridata-row__compname{font-size:var(--t-eyebrow)}.paridata-row__profit{text-align:end;white-space:nowrap;font-size:var(--t-body);font-weight:600;color:var(--tone)}.paridata-chip{font-weight:600;text-transform:uppercase;color:var(--tone);background:color-mix(in srgb,var(--tone) 14%,var(--bg))}.paridata-row:not([data-settlement=won]):not([data-settlement=lost]) .paridata-chip{color:var(--ink-soft);background:var(--bg)}.paridata-kind{font-weight:600;text-transform:uppercase;border-radius:var(--radius-xs);color:var(--ink);background:var(--bg)}.paridata-kind[data-kind=single]{color:var(--ink-soft)}.paridata-row__detail{padding-block:0 var(--space-4);padding-inline:var(--space-3)var(--space-4)}.paridata-legs{display:grid;gap:var(--space-2);margin:0;padding:var(--space-3)0 0;list-style:none;border-block-start:var(--hairline)solid color-mix(in srgb,var(--tone) 25%,transparent)}.paridata-leg{display:grid;grid-template-columns:6.5rem minmax(0,1.3fr)minmax(0,1.5fr)5rem;gap:var(--space-3);align-items:center;padding:var(--space-3);background:var(--bg);border-inline-start:var(--category-bar)solid var(--tone);border-radius:var(--radius-sm);font-size:var(--t-caption);color:var(--ink-soft)}.paridata-leg:is([data-settlement=pending],[data-settlement=void]){border-inline-start-color:var(--rule)}.paridata-leg__date{font-size:var(--t-eyebrow);white-space:nowrap}.paridata-leg__match{font-weight:600;color:var(--ink);text-align:start}.paridata-leg__score,.paridata-leg__vs{display:inline-block;margin-inline:.4ch;padding:1px 8px;font-weight:600;letter-spacing:.04em;border-radius:var(--radius-xs)}.paridata-leg__score{color:var(--tone);background:color-mix(in srgb,var(--tone) 14%,var(--bg))}.paridata-leg__vs{color:var(--ink-soft)}.paridata-leg__state{text-align:end;font-size:var(--t-eyebrow);font-weight:600;color:var(--tone)}.paridata-leg:is([data-settlement=pending],[data-settlement=void]) :is(.paridata-leg__state,.paridata-leg__score){color:var(--ink-soft)}.paridata-row__note{margin:var(--space-3)0 0;font-size:var(--t-caption);color:var(--ink-soft)}.paridata-pager{display:flex;justify-content:center;align-items:center;gap:var(--space-4);margin-block-start:var(--space-4);font-size:var(--t-eyebrow)}.paridata-pager__label{min-inline-size:4ch;text-align:center;font-weight:600;color:var(--ink-mute)}.paridata-about__text{max-width:72ch}.paridata-about .paridata-about__stack{margin-block-start:var(--space-5)}.paridata-about__text p{margin:0 0 var(--space-4);font-size:var(--t-body-l);line-height:var(--lh-body);font-weight:500;color:var(--ink)}.paridata-about__text ul{margin:0;padding-inline-start:var(--space-5);font-size:var(--t-body);line-height:var(--lh-body);color:var(--ink-soft)}.paridata-about__text li+li{margin-block-start:var(--space-2)}@media(max-width:960px){.paridata-ledger__head{display:none}.paridata-row__summary{grid-template-columns:minmax(0,1.3fr)repeat(2,minmax(0,1fr))7rem 1rem;row-gap:var(--space-3)}.paridata-row__date{grid-area:1/1}.paridata-row__tags{grid-area:1/2/2/4;display:flex;flex-wrap:wrap;gap:var(--space-2)}.paridata-row__profit{grid-area:1/4}.paridata-row__summary::after{grid-area:1/5}.paridata-row__comp{grid-area:2/1}.paridata-row__odds{grid-area:2/2/3/4;justify-self:start}.paridata-row__stake{grid-area:2/2/3/4;justify-self:end}.paridata-row__num::before{content:attr(data-label);margin-inline-end:.6ch;font-size:var(--t-eyebrow);letter-spacing:.06em;color:var(--ink-soft)}}@media(max-width:600px){.paridata-dash{grid-template-columns:1fr 1fr}.paridata-card--lead{grid-column:1/-1;order:-1}.paridata-panel{padding:var(--space-4)}.paridata-about__text p{font-size:var(--t-body)}.paridata-curve__svg{height:170px}.paridata-row__summary{grid-template-columns:minmax(0,1fr)auto 1rem;row-gap:var(--space-2)}.paridata-row__profit{grid-area:1/2}.paridata-row__summary::after{grid-area:1/3}.paridata-row__tags{grid-area:2/1/3/3}.paridata-row__comp{grid-area:3/1/4/3}.paridata-row__odds{grid-area:4/1/5/4;justify-self:start}.paridata-row__stake{grid-area:4/1/5/4;justify-self:end}.paridata-leg{grid-template-columns:minmax(0,1fr)auto;row-gap:var(--space-1)}.paridata-leg__date{grid-area:1/1}.paridata-leg__state{grid-area:1/2}.paridata-leg__match{grid-area:2/1/3/3}.paridata-leg__pick{grid-area:3/1/4/3}}.project-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)var(--space-5)}.project-links{list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-4)}.project-lede{margin-block:0 var(--flow-block);font-size:var(--prose-size);color:var(--ink-soft)}.project-gallery{margin-block:var(--flow-section)0}.project-gallery__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--space-6)var(--space-4);align-items:start}.project-shot--wide{grid-column:1/-1}.project-shot img{height:auto;max-height:36rem;object-fit:contain}.project-shot--wide img{width:100%}.project-shot figcaption{margin-top:var(--space-2);font-size:var(--t-caption);color:var(--ink-mute);line-height:1.45}.project-metrics{margin-block:0 var(--flow-section);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--space-5)}.project-metrics__item{display:flex;flex-direction:column;gap:var(--space-1)}.project-metrics__value{font-weight:500;font-size:var(--t-display-s);line-height:1}.project-metrics__label{margin:0;font-size:var(--t-caption);color:var(--ink-mute);line-height:1.4}@media(max-width:600px){.project-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.project-metrics__value{font-size:var(--t-heading)}}.workflow{display:block;width:100%;height:auto;margin-block:var(--space-6);color:var(--accent);overflow:visible}.workflow rect{fill:var(--bg-alt);stroke:var(--rule);stroke-width:1}.workflow rect.wf-store{stroke:var(--accent)}.workflow rect.wf-out{stroke:var(--accent);stroke-width:1.5}.workflow .wf-t{fill:var(--ink);font-family:var(--font-sans);font-size:13px;text-anchor:middle;font-weight:500}.workflow .wf-s{fill:var(--ink-soft);font-size:11px;text-anchor:middle}.workflow .wf-lane-label{fill:var(--ink-mute);font-size:var(--t-eyebrow)}.workflow .wf-edge path{fill:none;stroke:var(--accent);stroke-width:1.5}@media(max-width:768px){.workflow .wf-t{font-size:15px}.workflow .wf-s{font-size:12px}}.post-content figure{width:min(100%,max(var(--fig-w,100%),24rem));margin-block:calc(var(--lh) * 1.5)calc(var(--lh) * 1.75);margin-inline:auto}.post-content figure>img{height:auto}.post-content figure>figcaption{font-size:.8em;line-height:1.5;color:var(--ink-mute);margin:var(--space-3)0 0}.post-content blockquote{margin-block:var(--space-6);padding-inline:var(--space-5)0;border-inline-start:var(--hairline-strong)solid var(--accent)}.post-content :is(p,ul,ol){margin-block:0 var(--content-gap)}.post-content>:last-child{margin-block-end:0}.post-content :is(ul,ol){padding-inline-start:20px}.post-content li{margin-block-start:5px}.post-content li p{margin-block-end:0}.post-content figure>img{margin-block:1rem}.post-content :not(pre)>code{padding:.1em .3em;font-size:.85em;line-height:1.5;background:var(--bg-alt);border-radius:var(--radius-xs)}.post-content{--lh:1.6em;--content-gap:var(--lh);font-size:var(--prose-size);color:var(--ink)}.post-content h2{font-size:var(--t-section);margin-block:calc(var(--lh) * .8)calc(var(--lh) * .5)}.post-content h3{font-size:1.15em;margin-block:calc(var(--lh) * .6)calc(var(--lh) * .4)}.post-content>:is(h2,h3):first-child{margin-block-start:0}.post-content math[display=block]{margin-block:var(--flow-tight)}.math-nobr{white-space:nowrap}.post-content .highlight{margin-block:var(--flow-block)}.post-content pre{margin:0;overflow-x:auto}.post-content pre code{display:grid;padding:var(--space-3);font-size:.75em;width:max-content;min-width:100%}@media(hover:none){.post-content pre code{padding-block-start:calc(var(--space-3) + 28px)}}.chroma :is(.c,.ch,.cm,.c1,.cs,.cp,.cpf,.sd,.sh){color:var(--code-comment)}@media print{@page{margin:12mm 14mm}.header,.footer,.resume__print,.video-thumb,.copy-code,.toc,.paridata-toggle,.paridata-pager{display:none!important}.highlight{background:0 0}.chroma,.chroma *{color:var(--ink)!important}.main{padding:0}a{text-decoration:none;color:inherit;border:0!important;background:0 0!important}.timeline-work--media{display:block}.timeline-item,.resume__skillgroup,.resume__record{break-inside:avoid}.u-heading{break-after:avoid}}