:root{color-scheme:light dark;--color-bg:#f3f4f5;--color-raised:#fff;--color-sunken:#e9ebed;--color-text:#101316;--color-text-2:#343b42;--color-muted:#555d65;--color-rule:#d5d9dd;--color-rule-strong:#aab1b8;--color-field-border:#767e86;--color-grid:#1013160e;--color-signal:#0a6a47;--color-signal-strong:#06492f;--color-signal-tint:#dcf0e6;--color-on-signal:#fff;--color-accent:var(--color-signal);--color-accent-strong:var(--color-signal-strong);--color-surface:var(--color-sunken);--color-mark-bg:var(--color-text);--color-mark-text:var(--color-bg);--color-focus:var(--color-text);--focus-ring:3px;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:var(--font-body);--font-mono:ui-monospace, "SF Mono", SFMono-Regular, "Cascadia Mono", "JetBrains Mono", Menlo, Consolas, monospace;--step--2:.78rem;--step--1:.875rem;--step-0:1.0625rem;--step-1:1.1875rem;--step-2:1.5rem;--step-3:2.125rem;--step-display:clamp(3.25rem, 16vw, 7.5rem);--step-role:clamp(1.625rem, 6.5vw, 2.625rem);--step-nav:.9375rem;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2.5rem;--space-6:4rem;--space-7:6rem;--page-max:76rem;--gutter:1rem;--measure:40rem;--radius:4px;--radius-lg:8px;--header-h:3.75rem;--control-h:2.75rem;--control-pad-x:1rem;--panel-w:26rem;--panel-shadow:0 1px 0 #1013160a, 0 16px 40px -12px #10131640;--ease:cubic-bezier(.2, .7, .2, 1);--dur:.16s}@media (prefers-color-scheme:dark){:root{--color-bg:#0e1012;--color-raised:#15181b;--color-sunken:#0a0b0d;--color-text:#e6e9eb;--color-text-2:#c2c8cd;--color-muted:#959da5;--color-rule:#262a2f;--color-rule-strong:#3d444b;--color-field-border:#6b737b;--color-grid:#e6e9eb0a;--color-signal:#5dd6a1;--color-signal-strong:#8fe6bf;--color-signal-tint:#5dd6a11a;--color-on-signal:#04140c;--panel-shadow:0 1px 0 #0000004d, 0 20px 48px -12px #000000b3}}@media (width>=40rem){:root{--gutter:1.75rem;--step-0:1.0625rem;--step-1:1.25rem;--step-2:1.75rem;--step-3:2.75rem}}@media (width>=64rem){:root{--gutter:2.5rem;--step-3:3.25rem;--header-h:4.25rem}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:var(--space-4)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--step-0);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;overflow-wrap:break-word;flex-direction:column;min-height:100dvh;margin:0;line-height:1.6;display:flex}::selection{background:var(--color-signal);color:var(--color-on-signal)}a{color:var(--color-signal);text-underline-offset:.2em;transition:color var(--dur) var(--ease), text-decoration-color var(--dur) var(--ease);text-decoration-thickness:1px}a:hover{color:var(--color-signal-strong);text-decoration-thickness:2px}:focus-visible{outline:var(--focus-ring) solid var(--color-focus);outline-offset:3px;border-radius:2px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;margin:var(--space-5) 0 var(--space-3);text-wrap:balance;font-weight:650;line-height:1.15}h1{font-size:var(--step-3);letter-spacing:-.035em;margin-top:0}h2{font-size:var(--step-2)}h3{font-size:var(--step-1);letter-spacing:-.01em}p,ul,ol{margin:0 0 var(--space-3)}p{text-wrap:pretty}code,pre,kbd,samp{font-family:var(--font-mono);font-size:.88em}code{background:var(--color-sunken);border:1px solid var(--color-rule);border-radius:3px;padding:.05em .35em}pre{background:var(--color-sunken);border:1px solid var(--color-rule);padding:var(--space-3);border-radius:var(--radius);white-space:pre-wrap;line-height:1.55;overflow-x:auto}pre code{background:0 0;border:0;padding:0}hr{border:0;border-top:1px solid var(--color-rule);margin:var(--space-5) 0}.wrap{width:100%;max-width:var(--page-max);padding:0 var(--gutter);margin:0 auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--gutter);background:var(--color-signal);color:var(--color-on-signal);font-family:var(--font-mono);font-size:var(--step--1);padding:var(--space-2) var(--space-3);border-radius:var(--radius);z-index:30;text-decoration:none;position:absolute;top:-4rem}.skip-link:focus{top:var(--space-2);color:var(--color-on-signal)}.label,.eyebrow,.meta{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--color-muted);line-height:1.5}.eyebrow{align-items:center;gap:var(--space-2);color:var(--color-signal);margin:0 0 var(--space-3);text-transform:uppercase;letter-spacing:.08em;display:flex}.signal-dot{background:var(--color-signal);width:.5rem;height:.5rem;box-shadow:0 0 0 3px var(--color-signal-tint);border-radius:1px;flex:none;display:inline-block}.lede{font-size:var(--step-1);color:var(--color-text-2);margin-bottom:var(--space-4);max-width:38rem;line-height:1.5}.muted{color:var(--color-muted)}.site-header{border-bottom:1px solid var(--color-rule);background:var(--color-bg)}.site-header .wrap{min-height:var(--header-h);justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);padding-top:var(--space-2);padding-bottom:var(--space-2);flex-wrap:wrap;display:flex}.brand{min-height:2.75rem;color:var(--color-text);font-weight:650;font-size:var(--step-0);letter-spacing:-.01em;align-items:center;gap:.625rem;text-decoration:none;display:inline-flex}.brand:hover{color:var(--color-text)}.brand-path{font-family:var(--font-mono);font-size:var(--step--2);color:var(--color-muted);letter-spacing:.04em;font-weight:400}.monogram{flex:none;width:2rem;height:2rem}.monogram-bg{fill:var(--color-mark-bg)}.monogram-letter{fill:var(--color-mark-text);font-family:var(--font-mono);font-size:20px;font-weight:600}.monogram-signal{fill:var(--color-signal)}.site-nav{align-items:center;margin-left:-.5rem;display:flex}.site-nav ul{flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.site-nav .nav-action-item{margin-left:var(--space-2);display:flex}@media (width>=40rem){.site-nav{margin-left:0}.site-nav ul{gap:0 var(--space-1)}.site-nav .nav-action-item{margin-left:var(--space-1)}}.site-nav a{min-height:2.75rem;font-size:var(--step-nav);letter-spacing:-.005em;color:var(--color-text-2);border-radius:var(--radius);align-items:center;gap:.45rem;padding:0 .5rem;font-weight:500;text-decoration:none;display:inline-flex}.site-nav a:before{content:"";border:1px solid var(--color-rule-strong);width:.375rem;height:.375rem;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease);border-radius:1px}.site-nav a:hover{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-rule-strong)}.site-nav a[aria-current=page]{color:var(--color-text);font-weight:650}.site-nav a[aria-current=page]:before{background:var(--color-signal);border-color:var(--color-signal)}.site-nav .nav-action{min-height:2.5rem;margin-left:var(--space-1);border:1px solid var(--color-rule-strong);color:var(--color-text);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;padding:0 .8rem;font-weight:400}.site-nav .nav-action:before{background:var(--color-signal);border:0;width:.45rem;height:.45rem}.site-nav .nav-action:hover{border-color:var(--color-text);color:var(--color-text);text-decoration:none}.site-nav .nav-action[aria-current=page]{border-color:var(--color-signal);background:var(--color-signal-tint);font-weight:400}.btn{min-height:var(--control-h);padding:0 var(--control-pad-x);border:1px solid var(--color-rule-strong);border-radius:var(--radius);color:var(--color-text);font-family:var(--font-body);font-size:var(--step-nav);letter-spacing:-.005em;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;justify-content:center;align-items:center;gap:.6rem;font-weight:550;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{color:var(--color-text);border-color:var(--color-text);text-decoration:none}.btn-primary{background:var(--color-signal);border-color:var(--color-signal);color:var(--color-on-signal)}.btn-primary:hover{background:var(--color-signal-strong);border-color:var(--color-signal-strong);color:var(--color-on-signal)}.btn-ghost{color:var(--color-text-2);border-color:#0000}.btn-ghost:hover{border-color:var(--color-rule-strong)}.btn-arrow:after{content:"→";font-family:var(--font-body);transition:transform var(--dur) var(--ease)}.btn-arrow:hover:after{transform:translate(3px)}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.nav-action{min-height:2.5rem;font-family:var(--font-mono);font-weight:400;font-size:var(--step--2);text-transform:uppercase;letter-spacing:.06em;padding:0 .8rem}.nav-action:before{content:"";background:var(--color-signal);border-radius:1px;width:.45rem;height:.45rem}.field{width:100%;min-height:var(--control-h);border:1px solid var(--color-field-border);border-radius:var(--radius);background:var(--color-raised);color:var(--color-text);font:inherit;font-size:var(--step-0);padding:.6rem .8rem;line-height:1.4;display:block}.field::placeholder{color:var(--color-muted);opacity:1}.field:focus-visible{outline:var(--focus-ring) solid var(--color-focus);outline-offset:1px;border-color:var(--color-focus)}textarea.field{resize:vertical;min-height:6rem}.field-label{margin-bottom:var(--space-2);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);display:block}.panel{background:var(--color-raised);border:1px solid var(--color-rule);border-radius:var(--radius-lg)}.panel-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:.7rem var(--space-3);border-bottom:1px solid var(--color-rule);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);display:flex}.panel-head h2{font:inherit;letter-spacing:inherit;color:inherit;margin:0}.panel-head p{margin:0}.panel-body{padding:var(--space-3)}.chat-panel{z-index:20;background:var(--color-raised);border:1px solid var(--color-rule);border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:min(80dvh,40rem);box-shadow:var(--panel-shadow);flex-direction:column;display:flex;position:fixed;inset:auto 0 0}.chat-panel[hidden]{display:none}.chat-log{padding:var(--space-3);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-msg{border-radius:var(--radius-lg);max-width:88%;font-size:var(--step--1);padding:.6rem .8rem;line-height:1.55}.chat-msg-user{background:var(--color-sunken);border:1px solid var(--color-rule);align-self:flex-end}.chat-msg-bot{border-left:2px solid var(--color-signal);border-radius:0 var(--radius-lg) var(--radius-lg) 0;background:var(--color-signal-tint);align-self:flex-start}.chat-form{gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--color-rule);display:flex}.chat-form .field{flex:1;min-width:0}@media (width>=40rem){.chat-panel{inset:auto var(--gutter) var(--gutter) auto;width:var(--panel-w);border-radius:var(--radius-lg)}}main.wrap{width:100%;padding-top:var(--space-4);padding-bottom:var(--space-6);counter-reset:section;flex:1}@media (width>=64rem){main.wrap{padding-top:var(--space-5);padding-bottom:var(--space-7)}}.section{padding-top:var(--space-6)}.section-head{counter-increment:section;margin-bottom:var(--space-4)}.section-title{align-items:baseline;gap:var(--space-3);display:flex}.section-title:after{content:"";border-top:1px dashed var(--color-rule-strong);flex:1.5rem;align-self:center;min-width:1.5rem}.section-head h2{min-width:0;margin:0}.section-index{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;color:var(--color-signal);flex:none}.section-index:before{content:counter(section, decimal-leading-zero)}.section-note{margin:var(--space-2) 0 0;color:var(--color-muted);font-size:var(--step--1);max-width:40rem}@media (width>=40rem){.section-index{min-width:2.25rem}.section-note{padding-left:calc(2.25rem + var(--space-3))}}.section-foot{margin-top:var(--space-4)}.foot-links{gap:0 var(--space-5);flex-wrap:wrap;margin-bottom:0;padding:0;list-style:none;display:flex}.text-link{min-height:2.75rem;font-family:var(--font-mono);font-size:var(--step--1);align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}.text-link:after{content:"→";font-family:var(--font-body);transition:transform var(--dur) var(--ease)}.text-link:hover{text-decoration:underline}.text-link:hover:after{transform:translate(3px)}.hero{padding:var(--space-3) 0 var(--space-5);position:relative}.hero:before{content:"";inset:calc(-1 * var(--space-5)) 0 0 0;z-index:-1;pointer-events:none;background-image:linear-gradient(to right, var(--color-grid) 1px, transparent 1px), linear-gradient(to bottom, var(--color-grid) 1px, transparent 1px);background-position:-1px -1px;background-size:2rem 2rem;position:absolute;-webkit-mask-image:linear-gradient(#000 30%,#0000 100%);mask-image:linear-gradient(#000 30%,#0000 100%)}.hero-grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}.hero-title{margin:0 0 var(--space-4);letter-spacing:normal}.display{font-size:var(--step-display);letter-spacing:-.055em;font-weight:700;line-height:.92;display:block}.role{max-width:22ch;margin-top:var(--space-3);padding-top:var(--space-3);border-top:2px solid var(--color-text);font-size:var(--step-role);letter-spacing:-.025em;color:var(--color-text);text-wrap:balance;font-weight:600;line-height:1.12;display:block}.display:after{content:"";background:var(--color-signal);vertical-align:baseline;border-radius:.015em;width:.14em;height:.14em;margin-left:.06em;display:inline-block}.hero .lede{font-size:var(--step-1);color:var(--color-text-2);max-width:36rem}.actions{gap:var(--space-2) var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.hero-ask{margin:var(--space-3) 0 0}@media (width<=39.99rem){.actions .btn{flex:auto}}.readout{align-self:start}.readout .panel-head{row-gap:var(--space-1);flex-wrap:wrap}.readout dl{padding:var(--space-2) var(--space-3);margin:0}.readout dl>div{gap:var(--space-3);border-bottom:1px dashed var(--color-rule);grid-template-columns:6.75rem minmax(0,1fr);padding:.65rem 0;display:grid}.readout dl>div:last-child{border-bottom:0}.readout dt{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--color-muted);padding-top:.15rem}.readout dd{font-size:var(--step--1);color:var(--color-text);margin:0}@media (width>=40rem){.readout dl>div{grid-template-columns:8.5rem minmax(0,1fr)}}.glance-list{margin:0;padding:0;list-style:none}.glance-list li+li{margin-top:.2rem}.readout dd.state{font-size:var(--step--2);color:var(--color-signal);align-self:start;padding-top:.1rem;display:flex}.state{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--color-signal);align-items:center;gap:.45rem;display:inline-flex}.state:before{content:"";background:var(--color-signal);width:.45rem;height:.45rem;box-shadow:0 0 0 3px var(--color-signal-tint);border-radius:50%;flex:none}.state-idle{color:var(--color-text-2)}.state-idle:before{box-shadow:none;background:0 0;border:1px solid}@media (width>=64rem){.hero{padding:var(--space-5) 0 var(--space-6)}.hero-grid{gap:var(--space-6);grid-template-columns:minmax(0,7fr) minmax(0,4fr);align-items:end}.readout{align-self:end}}.card-grid{border:1px solid var(--color-rule);border-radius:var(--radius-lg);gap:0;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.card{border-right:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);padding:var(--space-4) var(--space-3);align-content:start;gap:var(--space-2);margin:0 -1px -1px 0;display:grid}.card-index{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;color:var(--color-signal)}.card-title{font-size:var(--step-0);letter-spacing:-.01em;margin:0;font-weight:650;line-height:1.3}.card-solo .card-title{text-wrap:pretty}.card-detail{color:var(--color-muted);font-size:var(--step--1);margin:0;line-height:1.55}.card-detail:first-letter{text-transform:uppercase}@media (width<=39.99rem){.card{gap:var(--space-1) 0;padding:var(--space-3);grid-template-rows:none;grid-template-columns:2.25rem minmax(0,1fr)}.card-index{grid-row:1/span 2;padding-top:.2rem}.card-title,.card-detail{grid-column:2}}@media (width>=40rem){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:var(--space-4)}.card:last-child:nth-child(odd){grid-column:1/-1}}@media (width>=64rem){.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card{min-height:10rem}.card:last-child:nth-child(odd){grid-column:auto}.card:last-child:nth-child(3n+1){grid-column:1/-1}.card:last-child:nth-child(3n+2){grid-column:span 2}}.work-card .card-index{text-transform:uppercase}@media (width<=39.99rem){.work-card{grid-template-columns:minmax(0,1fr)}.work-card .card-index{grid-row:auto;padding-top:0}.work-card .card-title,.work-card .card-detail{grid-column:1}}.flow{margin:0}.flow-figure{background:var(--color-raised);border:1px solid var(--color-rule);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-3);position:relative;overflow:hidden}.flow-figure:before{content:"";pointer-events:none;background-image:linear-gradient(to right, var(--color-grid) 1px, transparent 1px), linear-gradient(to bottom, var(--color-grid) 1px, transparent 1px);background-size:1.5rem 1.5rem;position:absolute;inset:0}.flow-svg{width:100%;height:auto;display:block;position:relative}.flow-svg-wide{display:none}.flow-svg-tall{max-width:24rem;margin:0 auto}@media (width>=64rem){.flow-figure{padding:var(--space-5) var(--space-4)}.flow-svg-wide{display:block}.flow-svg-tall{display:none}}.fl-node{fill:var(--color-bg);stroke:var(--color-rule-strong);stroke-width:1px}.fl-node-gate{fill:var(--color-signal-tint);stroke:var(--color-signal);stroke-width:1.5px}.fl-node-public{stroke:var(--color-text-2)}.fl-index{fill:var(--color-muted);font-family:var(--font-mono);letter-spacing:.06em;font-size:12px}.fl-node-gate+.fl-index,.fl-index-gate{fill:var(--color-signal)}.fl-name{fill:var(--color-text);font-family:var(--font-body);letter-spacing:-.01em;font-size:15px;font-weight:650}.fl-state{fill:var(--color-muted);font-family:var(--font-mono);letter-spacing:.04em;font-size:12px}.fl-state-signal{fill:var(--color-signal)}.fl-zone{fill:var(--color-muted);font-family:var(--font-mono);letter-spacing:.12em;font-size:12px}.fl-zone-public{fill:var(--color-signal)}.fl-line{fill:none;stroke:var(--color-rule-strong);stroke-width:1.25px}.fl-line-signal{stroke:var(--color-signal);stroke-width:1.5px}.fl-boundary{fill:none;stroke:var(--color-signal);stroke-width:1px;stroke-dasharray:3 5}.fl-tick{fill:none;stroke:var(--color-signal);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.flow-caption{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--step--1);max-width:44rem}.steps{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;list-style:none;position:absolute;overflow:hidden}.entry-list{border-top:1px solid var(--color-rule);margin:0;padding:0;list-style:none}.entry-list li{gap:var(--space-1) var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-rule);display:grid;position:relative}.entry-list h3{font-size:var(--step-1);margin:0}.entry-list h3 a{color:var(--color-text);text-decoration:underline;text-decoration-color:var(--color-rule-strong);text-underline-offset:.22em;text-decoration-thickness:1px}.entry-list h3 a:after{content:"";position:absolute;inset:0}.entry-list li:hover h3 a{color:var(--color-signal);text-decoration-color:currentColor}.entry-list h3 a:focus-visible{outline:none}.entry-list h3 a:focus-visible:after{outline:var(--focus-ring) solid var(--color-focus);outline-offset:2px;border-radius:var(--radius)}.entry-list p{margin:0}.entry-date{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--color-muted);align-items:center;gap:.55rem;display:flex}.entry-dot,.idle-dot{background:var(--color-signal);width:.45rem;height:.45rem;box-shadow:0 0 0 3px var(--color-signal-tint);border-radius:50%;flex:none}.idle-dot{vertical-align:.05em;border:1px solid var(--color-rule-strong);box-shadow:none;background:0 0;margin-right:.6rem;display:inline-block}.entry-summary{color:var(--color-text-2);font-size:var(--step--1);max-width:44rem}.entry-go{display:none}@media (width>=40rem){.entry-list li{grid-template-columns:9rem minmax(0,1fr) auto;align-items:baseline}.entry-date{grid-row:1/span 2}.entry-list h3,.entry-summary{grid-column:2}.entry-go{font-family:var(--font-body);color:var(--color-muted);transition:transform var(--dur) var(--ease), color var(--dur) var(--ease);grid-area:1/3;display:block}.entry-list li:hover .entry-go{color:var(--color-signal);transform:translate(3px)}}.entry-list+p{margin-top:var(--space-3)}.empty{padding:var(--space-4) var(--space-3);border:1px dashed var(--color-rule-strong);border-radius:var(--radius-lg);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--step--1)}.empty p{margin:0}.empty .empty-note{margin-top:var(--space-2);font-family:var(--font-body);color:var(--color-muted);padding-left:1.05rem}.list-head{gap:var(--space-2) var(--space-5);border-top:2px solid var(--color-text);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;text-transform:uppercase;flex-wrap:wrap;margin:0;padding:.75rem 0;display:flex}.list-head>div{gap:.6rem;display:flex}.list-head dt{color:var(--color-muted)}.list-head dd{color:var(--color-text);margin:0}.list-head>div:first-child dd{color:var(--color-signal)}.list-head-end{display:none}@media (width>=40rem){.list-head-end{margin-left:auto;display:flex}}.tag-list{gap:var(--space-2);margin:0 0 var(--space-3);flex-wrap:wrap;padding:0;list-style:none;display:flex}.tag-list li{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.02em;color:var(--color-text-2);background:var(--color-raised);border:1px solid var(--color-rule);border-radius:var(--radius);padding:.3rem .55rem;line-height:1.4}.page-head{padding:var(--space-3) 0 var(--space-4);margin-bottom:var(--space-4)}.page-head-rule{padding-bottom:var(--space-5);border-bottom:1px solid var(--color-rule);margin-bottom:var(--space-5)}.page-head h1{max-width:48rem}.page-head .lede{margin-bottom:var(--space-3)}.page-head .lede:last-child{margin-bottom:0}.page-head .role{max-width:32rem;margin:0 0 var(--space-3);font-size:var(--step-2);color:var(--color-text-2);border:0;padding:0;font-weight:550;line-height:1.2}.crumbs{align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);flex-wrap:wrap;padding:0;list-style:none;display:flex}.crumbs a{min-height:2.75rem;color:var(--color-signal);align-items:center;text-decoration:none;display:inline-flex}.crumbs a:hover{text-decoration:underline}.crumbs li+li:before{content:"/";margin-right:var(--space-2);color:var(--color-rule-strong)}.facts{margin:var(--space-4) 0 0;border-top:1px solid var(--color-rule);grid-template-columns:1fr;gap:0;display:grid}.facts>div{gap:var(--space-3);border-bottom:1px solid var(--color-rule);grid-template-columns:8rem minmax(0,1fr);padding:.7rem 0;display:grid}.facts dt{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--color-muted);padding-top:.2rem}.facts dd{font-size:var(--step--1);margin:0}@media (width>=40rem){.facts{column-gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.facts>div{gap:var(--space-1);grid-template-columns:1fr}}.facts.facts-stack{border-top:0;grid-template-columns:1fr;margin:0}.facts.facts-stack>div{gap:var(--space-3);grid-template-columns:7rem minmax(0,1fr)}.facts.facts-stack>div:last-child{border-bottom:0}.doc{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}.doc-index{display:none}.doc-body>section{scroll-margin-top:var(--space-4)}.doc-body>section+section,.doc-body>.prose+section{margin-top:var(--space-6)}@media (width>=64rem){.doc-with-index{gap:var(--space-6);grid-template-columns:13rem minmax(0,1fr)}.doc-index{top:var(--space-4);align-self:start;display:block;position:sticky}.doc-index p{margin:0 0 var(--space-2);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted)}.doc-index ol{border-left:1px solid var(--color-rule);counter-reset:doc-index;margin:0;padding:0;list-style:none}.doc-index li{counter-increment:doc-index}.doc-index a:before{content:counter(doc-index, decimal-leading-zero);font-family:var(--font-mono);font-size:var(--step--2);color:var(--color-muted)}.doc-index a{gap:var(--space-2);min-height:2.25rem;padding:0 var(--space-3);color:var(--color-text-2);font-size:var(--step--1);border-left:1px solid #0000;align-items:center;margin-left:-1px;text-decoration:none;display:flex}.doc-index a:hover{color:var(--color-signal);border-left-color:var(--color-signal)}}.stack{border:1px solid var(--color-rule);border-radius:var(--radius-lg);gap:0;display:grid;overflow:hidden}.stack-group{border-right:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);padding:var(--space-4) var(--space-3);margin:0 -1px -1px 0}.stack-group h3{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);font-weight:400}.stack-group .tag-list{margin:0}@media (width>=40rem){.stack{grid-template-columns:repeat(2,minmax(0,1fr))}.stack-group{padding:var(--space-4)}}.numbered{counter-reset:item;border-top:1px solid var(--color-rule);margin:0;padding:0;list-style:none}.numbered li{counter-increment:item;gap:var(--space-2);border-bottom:1px solid var(--color-rule);font-size:var(--step--1);color:var(--color-text-2);grid-template-columns:2.5rem minmax(0,1fr);padding:.8rem 0;display:grid}.numbered li:before{content:counter(item, decimal-leading-zero);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--color-signal);padding-top:.15rem}.numbered-large li{gap:var(--space-2);padding:var(--space-3) 0;font-size:var(--step-0);color:var(--color-text);grid-template-columns:2.25rem minmax(0,1fr);line-height:1.45}.numbered-large li:before{padding-top:.3rem}@media (width>=64rem){.numbered-large li{font-size:var(--step-1);grid-template-columns:3.5rem minmax(0,1fr)}}.link-list{gap:var(--space-2) var(--space-3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.prose{max-width:var(--measure);color:var(--color-text-2)}.prose>:first-child{margin-top:0}.prose-lead>p:first-child{font-size:var(--step-1);color:var(--color-text);line-height:1.55}.prose p,.prose li{line-height:1.7}.prose h2{color:var(--color-text);font-size:var(--step-2);margin-top:var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--color-rule)}.prose h3{color:var(--color-text);margin-top:var(--space-4)}.prose strong{color:var(--color-text)}.prose ul{padding-left:0;list-style:none}.prose ul>li{margin-bottom:var(--space-2);padding-left:1.4rem;position:relative}.prose ul>li:before{content:"";background:var(--color-signal);border-radius:1px;width:.4rem;height:.4rem;position:absolute;top:.68em;left:.2rem}.prose ol{padding-left:1.4rem}.prose ol>li::marker{font-family:var(--font-mono);font-size:var(--step--1);color:var(--color-signal)}.prose blockquote{margin:var(--space-4) 0;padding:var(--space-1) 0 var(--space-1) var(--space-3);border-left:2px solid var(--color-signal);color:var(--color-text-2)}.prose table{overflow-wrap:anywhere;border-collapse:collapse;max-width:100%;font-size:var(--step--1);margin:var(--space-4) 0}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--color-rule);vertical-align:top;padding:.5rem .75rem .5rem 0}.prose th{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted);font-weight:400}.article-meta{gap:var(--space-2) var(--space-4);margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--color-muted);flex-wrap:wrap;padding:0;list-style:none;display:flex}.article-meta span{color:var(--color-text-2)}.article-grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr);display:grid}.record{align-self:start}.record .panel-head{margin:0}.record .panel-body{padding-top:var(--space-1);padding-bottom:var(--space-1)}@media (width>=64rem){.article-grid{gap:var(--space-6);grid-template-columns:minmax(0,1fr) 17rem}.record{top:var(--space-4);position:sticky}}@media (width>=40rem){.entry-body{padding-left:var(--space-4);border-left:1px solid var(--color-rule-strong);position:relative}.entry-body:before{content:"";background:var(--color-signal);width:3px;height:3rem;position:absolute;top:0;left:-2px}}@media (width>=64rem){.entry-body{padding-left:var(--space-5)}}.article-tags{margin-top:var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--color-rule)}.ask{gap:var(--space-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=64rem){.ask{gap:var(--space-6);grid-template-columns:minmax(0,1fr) 17rem}}.ask-panel{flex-direction:column;min-width:0;display:flex}.ask-panel[hidden]{visibility:hidden}@media (scripting:none){.ask-panel[hidden]{display:none}}.ask-panel .panel-head{min-height:3.25rem;padding-top:.35rem;padding-bottom:.35rem}.ask-reset{min-height:2.5rem;font-size:var(--step--1);letter-spacing:normal;text-transform:none;padding:0 .75rem}.ask-reset[hidden]{display:none}.ask-log{gap:var(--space-3);min-height:11rem;padding:var(--space-4) var(--space-3);flex-direction:column;display:flex}.ask-log:empty{min-height:0;padding:0}.ask-log .chat-msg{max-width:min(100%,40rem);font-size:var(--step-0);line-height:1.6}.ask-log .chat-msg-user{max-width:min(88%,34rem)}.chat-msg p,.chat-msg ul,.chat-msg ol{margin:0 0 .6em}.chat-msg>:last-child,.chat-text>:last-child{margin-bottom:0}.chat-msg ul,.chat-msg ol{padding-left:1.25rem}.chat-text{white-space:pre-wrap}.chat-text p,.chat-text li{white-space:normal}.chat-who{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);margin:0 0 .3rem}.chat-msg-bot .chat-who{color:var(--color-signal)}.chat-msg-pending{border:1px dashed var(--color-rule-strong);color:var(--color-muted);animation:ask-pending 1.6s var(--ease) infinite alternate;align-self:flex-start}@keyframes ask-pending{0%{opacity:1}to{opacity:.55}}.chat-msg-rest{border:1px dashed var(--color-rule-strong);background:0 0;align-self:flex-start}.chat-aside{font-size:var(--step--1);margin-top:.6rem}.chat-sources{margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px dashed var(--color-rule-strong)}.chat-sources ul{margin:0;padding:0;list-style:none}.chat-sources a{min-height:2rem;font-size:var(--step--1);align-items:center;display:inline-flex}.ask-empty{min-height:11rem;padding:var(--space-4) var(--space-3);color:var(--color-text-2)}.ask-empty>p:first-child{margin-top:0;margin-bottom:var(--space-4)}.ask-empty .chat-who{margin-bottom:var(--space-2)}.ask-empty[hidden]{display:none}.ask-suggest{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ask-chip{background:var(--color-bg);border-color:var(--color-rule);min-height:2.5rem;color:var(--color-text-2);text-align:left;padding:0 .85rem;font-weight:500}.ask-chip:hover{background:var(--color-raised)}.ask-form{gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--color-rule);background:var(--color-sunken);border-radius:0 0 var(--radius-lg) var(--radius-lg);display:grid}.ask-field{min-height:5.5rem}.ask-field[readonly]{color:var(--color-muted)}.ask-meta{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);font-size:var(--step--1);color:var(--color-muted);flex-wrap:wrap;display:flex}.ask-meta p{margin:0}.ask-meta p:first-child{flex:18rem}@media (pointer:coarse){.ask-keys{display:none}}.ask-count{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;font-variant-numeric:tabular-nums}.ask-count.is-near{color:var(--color-text)}.ask-check:empty{display:none}.ask-actions{align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.ask-status{font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.04em;color:var(--color-muted);margin:0}.ask-noscript .panel-body p:last-child{margin-bottom:0}.ask-aside h2{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);font-weight:400}.ask-facts{margin:0 0 var(--space-2);border-top:1px solid var(--color-rule);padding:0;list-style:none}.ask-facts li{border-bottom:1px solid var(--color-rule);font-size:var(--step--1);color:var(--color-text-2);padding:.7rem 0}@media (width>=64rem){.ask-aside{top:var(--space-4);position:sticky}}.contact{gap:var(--space-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}@media (width>=64rem){.contact{gap:var(--space-6);grid-template-columns:minmax(0,1fr) 17rem}}.contact-panel{min-width:0;display:block}.contact-panel[hidden]{visibility:hidden}@media (scripting:none){.contact-panel[hidden]{display:none}}.contact-group[hidden]{display:none}.contact-form{gap:var(--space-3);padding:var(--space-3);display:grid}.contact-group{gap:var(--space-3);display:grid}.contact-row{gap:var(--space-3);grid-template-columns:minmax(0,1fr);display:grid}@media (width>=40rem){.contact-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.contact-field{min-width:0}.contact-choice{gap:var(--space-2) var(--space-4);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.contact-choice legend{width:100%;padding:0}.contact-choice .field-hint{width:100%}.contact-choice[hidden],.contact-field[hidden],.contact-whatsapp[hidden]{display:none}.contact-whatsapp{gap:var(--space-2);display:grid}.contact-whatsapp-action{margin:0}.contact-radio{align-items:center;gap:var(--space-2);min-height:var(--control-h);cursor:pointer;display:inline-flex}.contact-radio input{width:1.1rem;height:1.1rem;accent-color:var(--color-signal);margin:0}.field-hint,.field-error{margin:var(--space-1) 0 0;font-size:var(--step--1);color:var(--color-text-2)}.field-error{color:var(--color-text);font-weight:550}.field-error:before{content:"! ";content:"! " / "";color:var(--color-signal)}.field-error[hidden]{display:none}.field[aria-invalid=true]{border-color:var(--color-text)}.contact-note{font-size:var(--step--1);color:var(--color-text-2);margin:0}.contact-check:empty{display:none}.contact-actions{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.contact-actions [hidden]{display:none}.contact-messages{gap:var(--space-1);display:grid}.contact-status,.contact-result{font-size:var(--step--1);color:var(--color-text-2);margin:0}.contact-result{color:var(--color-text);font-weight:550}.contact-result.is-saved{color:var(--color-text)}.contact-noscript .panel-body p:last-child{margin-bottom:0}.contact-aside h2{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:var(--step--2);letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted);font-weight:400}.contact-facts{margin:0 0 var(--space-2);border-top:1px solid var(--color-rule);padding:0;list-style:none}.contact-facts li{border-bottom:1px solid var(--color-rule);font-size:var(--step--1);color:var(--color-text-2);padding:.7rem 0}@media (width>=64rem){.contact-aside{top:var(--space-4);position:sticky}}.status-panel{max-width:46rem;margin-top:var(--space-3)}.status-body{padding:var(--space-4) var(--space-3) var(--space-5);position:relative}.status-body h1{margin-top:0}.status-code{font-family:var(--font-mono);letter-spacing:-.04em;margin:0 0 var(--space-4);color:#0000;-webkit-text-stroke:1px var(--color-rule-strong);user-select:none;font-size:clamp(4rem,20vw,8rem);line-height:1}.status-note{color:var(--color-text-2);max-width:var(--measure)}.status-body .actions{margin-top:var(--space-4)}@media (width>=40rem){.status-body{padding:var(--space-5)}}.site-footer{border-top:1px solid var(--color-rule);background:var(--color-sunken);color:var(--color-muted);font-size:var(--step--1)}.footer-grid{gap:var(--space-4);padding-top:var(--space-5);padding-bottom:var(--space-5);display:grid}.footer-grid p{max-width:30rem;margin:0}.footer-statement{gap:var(--space-3);color:var(--color-text-2);align-items:flex-start;display:flex}.footer-statement .signal-dot{margin-top:.5em}.footer-links{gap:0 var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.footer-links a{min-height:2.75rem;font-size:var(--step-nav);color:var(--color-text-2);text-decoration:underline;text-decoration-color:var(--color-rule-strong);align-items:center;text-decoration-thickness:1px;display:inline-flex}.footer-links a:hover{color:var(--color-signal);text-decoration-color:currentColor}@media (width>=40rem){.footer-links{gap:0 var(--space-5);flex-wrap:wrap;display:flex}}@media (width>=64rem){.footer-grid{grid-template-columns:minmax(0,1fr) auto;align-items:center}}@media (forced-colors:active){.signal-dot,.state:before,.entry-dot,.monogram-signal,.site-nav a[aria-current=page]:before,.site-nav .nav-action:before,.entry-body:before{fill:canvastext;forced-color-adjust:none;background:canvastext}.btn,.panel,.card-grid,.flow-figure{border:1px solid canvastext}.fl-node,.fl-node-gate{stroke:canvastext}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
