@font-face{font-family:B612;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/b612-latin-400-normal.CC98FVm_.woff2)format("woff2"),url(/_astro/b612-latin-400-normal.JbZ7xwUX.woff)format("woff");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:B612;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/b612-latin-700-normal.BinQrnoB.woff2)format("woff2"),url(/_astro/b612-latin-700-normal.B_Snq1wd.woff)format("woff");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:B612 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/b612-mono-latin-400-normal.BDgzQEaT.woff2)format("woff2"),url(/_astro/b612-mono-latin-400-normal.BMQz8jIs.woff)format("woff");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:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/atkinson-hyperlegible-next-latin-ext-wght-normal.C6vrW8VD.woff2)format("woff2-variations");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:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/atkinson-hyperlegible-next-latin-wght-normal.BcXVPD7q.woff2)format("woff2-variations");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:Atkinson Hyperlegible Next Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/atkinson-hyperlegible-next-latin-ext-wght-italic.Cigfgs4r.woff2)format("woff2-variations");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:Atkinson Hyperlegible Next Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/atkinson-hyperlegible-next-latin-wght-italic.DC5MiAaX.woff2)format("woff2-variations");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}:root{--measure:36em;--board-width:76rem;--edge:.75rem;--font-label:"B612", "Helvetica Neue", Arial, sans-serif;--font-mono:"B612 Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-body:"Atkinson Hyperlegible Next Variable", "Atkinson Hyperlegible Next", "Helvetica Neue", Arial, sans-serif;--text-body:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--text-small:.9375rem;--text-lead:clamp(1.125rem, 1.05rem + .3vw, 1.25rem);--text-label:.8125rem;--text-value:.8125rem;--text-h1:clamp(2rem, 1.4rem + 2vw, 2.75rem);--text-h2:1.375rem;--text-h3:1.125rem;--text-display:clamp(2.75rem, 1.5rem + 4.6vw, 5.5rem);--ease-out:cubic-bezier(.16, 1, .3, 1);color-scheme:light dark;--ground:light-dark(#faf6ed,#11271f);--ground-2:light-dark(#f1ebdf,#0d2019);--ink:light-dark(#2b2722,#dce3db);--ink-2:light-dark(#6a6156,#97ada1);--copper:light-dark(#8a5516,#cca45c);--copper-2:light-dark(#ad7836,#e3bf76);--rule:light-dark(#2b27222e,#dce3db33);--rule-soft:light-dark(#2b272214,#dce3db17);--pad:var(--copper);--trace:var(--copper);--code-bg:var(--ground-2);--light-only:inline;--dark-only:none;--trace-lit:var(--copper);--trace-lit-width:3.5}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--light-only:none;--dark-only:inline;--trace-lit:var(--copper-2);--trace-lit-width:3}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--light-only:none;--dark-only:inline;--trace-lit:var(--copper-2);--trace-lit-width:3}}*,:before,:after{box-sizing:border-box}html{background:var(--ground);color:var(--ink);font-family:var(--font-body);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;scrollbar-color:var(--copper) var(--ground-2);scrollbar-width:thin;scrollbar-gutter:stable;caret-color:var(--copper);accent-color:var(--copper);font-size:100%;line-height:1.65}body{min-height:100dvh;font-size:var(--text-body);flex-direction:column;margin:0;display:flex;position:relative}body:before{content:"";inset:var(--edge);border:1px solid var(--rule-soft);pointer-events:none;z-index:0;position:fixed}.fiducials{inset:var(--edge);pointer-events:none;z-index:0;position:fixed}.fiducials span{border:1px solid var(--rule-soft);background:var(--ground);border-radius:50%;width:14px;height:14px;position:absolute}.fiducials span:after{content:"";background:var(--copper);border-radius:50%;position:absolute;inset:4px}.fiducials span:first-child{top:-7px;left:-7px}.fiducials span:nth-child(2){top:-7px;right:-7px}.fiducials span:nth-child(3){bottom:-7px;left:-7px}.fiducials span:nth-child(4){bottom:-7px;right:-7px}::selection{background:var(--copper);color:var(--ground)}:focus-visible{outline:2px solid var(--copper);outline-offset:3px;border-radius:1px}.skip-link{background:var(--copper);color:var(--ground);font:700 var(--text-label) / 1 var(--font-label);letter-spacing:.01em;text-transform:lowercase;z-index:10;padding:.4rem .7rem;text-decoration:none;position:absolute;top:-3rem;left:1.5rem}.skip-link:focus{top:1.5rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}main{width:100%;max-width:var(--board-width);z-index:1;flex:1;margin:0 auto;padding:1.5rem clamp(1.25rem,4vw,3rem) 5rem;position:relative}a{color:inherit;text-underline-offset:.2em;text-decoration:underline 1px;text-decoration-color:var(--rule);transition:color .15s var(--ease-out), text-decoration-color .15s var(--ease-out)}a:hover{color:var(--copper);text-decoration-color:var(--copper)}.body a[href^=http]:after,.pin[rel~=external]:after{content:"";vertical-align:.1em;background:currentColor;width:.55em;height:.55em;margin-left:.25em;display:inline-block;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 8 8 2M3.5 2H8v4.5'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 8 8 2M3.5 2H8v4.5'/%3E%3C/svg%3E") 50%/contain no-repeat}h1,h2,h3,h4{font-family:var(--font-label);text-wrap:balance;letter-spacing:-.01em;margin:2.6rem 0 .8rem;font-weight:400;line-height:1.2}h1{font-size:var(--text-h1);letter-spacing:-.02em}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}p,ul,ol,blockquote{text-wrap:pretty;margin:0 0 1.25em}strong,b{font-weight:620}.body li+li{margin-top:.3em}ul,ol{padding-left:1.4rem}blockquote{border-left:1px solid var(--copper);color:var(--ink-2);padding-left:1rem}hr{border:0;border-top:1px solid var(--rule);margin:2.5rem 0}code{font-family:var(--font-mono);background:var(--code-bg);border:1px solid var(--rule-soft);border-radius:2px;padding:.1em .35em;font-size:.86em}pre{font-family:var(--font-mono);background:var(--code-bg);border:1px solid var(--rule-soft);tab-size:2;border-radius:2px;margin:0 0 1.3rem;padding:1rem 1.1rem;font-size:.86em;line-height:1.55;overflow-x:auto}pre code{background:0 0;border:0;padding:0}.astro-code,.astro-code span{color:light-dark(var(--shiki-light),var(--shiki-dark));font-style:var(--shiki-light-font-style);font-weight:var(--shiki-light-font-weight);text-decoration:var(--shiki-light-text-decoration)}img,video{border:1px solid var(--rule-soft);max-width:100%;height:auto;margin:1.5rem 0;display:block}table{border-collapse:collapse;width:100%;font-size:var(--text-small);font-variant-numeric:tabular-nums;margin:0 0 1.3rem}th,td{border:1px solid var(--rule-soft);text-align:left;padding:.4rem .6rem}th{font-family:var(--font-label);font-size:var(--text-label);text-transform:lowercase;letter-spacing:.01em}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.label{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.01em;text-transform:lowercase;color:var(--ink-2);font-weight:400}.designator{font-family:var(--font-mono);font-size:var(--text-value);color:var(--copper);letter-spacing:.04em}.value{font-family:var(--font-mono);font-size:var(--text-value);font-variant-numeric:tabular-nums;color:var(--ink-2)}.pin{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.01em;text-transform:lowercase;color:var(--ink);align-items:center;gap:.5rem;padding:.45rem 0;text-decoration:none;display:inline-flex}.pin:before{content:"";background:var(--pad);width:1.1rem;height:.5rem;transition:background .15s var(--ease-out);border-radius:1px}.pin:hover:before,.pin:focus-visible:before{background:var(--copper-2)}.pin:hover,.pin-primary{color:var(--copper)}.pin-primary:hover{color:var(--copper-2)}.status:before{content:"";background:var(--copper);vertical-align:.1em;border-radius:50%;width:6px;height:6px;margin-right:.5rem;display:inline-block}.status[data-status=paused]:before{border:1px solid var(--copper);background:0 0}.status[data-status=archived]:before{background:var(--rule)}.tag{color:var(--ink-2);font-family:var(--font-mono);font-size:var(--text-value);margin-block:-.4rem;padding:.4rem 0;text-decoration:none;display:inline-block}.tag:before{content:"#"}span.tag:before{content:none}a.tag:hover{color:var(--copper)}.back-link{color:var(--ink-2);font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.01em;text-transform:lowercase;align-items:center;gap:.5rem;margin-top:3rem;padding-block:.6rem;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--copper)}.back-link svg{flex:none}.empty{color:var(--ink-2);border:1px dashed var(--rule);font-size:var(--text-small);padding:1.25rem}@media (width<=40rem){.pin{min-width:2.75rem;min-height:2.75rem;padding-block:0}}.site-header{width:100%;max-width:var(--board-width);z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;margin:0 auto;padding:1.75rem clamp(1.25rem,4vw,3rem) 0;display:flex;position:relative}.site-title{font-family:var(--font-label);letter-spacing:.04em;color:var(--ink);align-items:baseline;gap:.6rem;margin:-.6rem -.9rem;padding:.6rem .9rem;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}.site-nav{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.site-nav a{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.01em;text-transform:lowercase;color:var(--ink-2);border-bottom:1px solid #0000;padding:.5rem 0;text-decoration:none}.site-nav a:hover{color:var(--ink)}.site-nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--copper)}.theme-toggle,.datasheet-close{border:1px solid var(--rule);color:var(--ink-2);cursor:pointer;font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.01em;text-transform:lowercase;transition:color .15s var(--ease-out), border-color .15s var(--ease-out);background:0 0;border-radius:2px;align-items:center;gap:.5rem;padding:.35rem .6rem .35rem .5rem;display:inline-flex}.theme-toggle:hover,.datasheet-close:hover{color:var(--ink);border-color:var(--copper)}.theme-toggle svg,.datasheet-close svg{width:14px;height:14px}.layer-name .to-board{display:var(--light-only)}.layer-name .to-drawing{display:var(--dark-only)}@media (width<=40rem){.site-nav{gap:.5rem}.site-nav a{justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;padding:0 .25rem;display:inline-flex}.theme-toggle{justify-content:center;min-width:2.75rem;min-height:2.75rem;padding:.4rem}.theme-toggle .layer-name{display:none}}.site-footer{width:100%;max-width:var(--board-width);z-index:1;justify-content:flex-end;margin:0 auto;padding:0 clamp(1.25rem,4vw,3rem) 2.5rem;display:flex;position:relative}.title-block{border:1px solid var(--rule);font-size:var(--text-value);grid-template-columns:repeat(3,auto);max-width:100%;display:grid}.title-block>div{border-right:1px solid var(--rule);flex-direction:column;gap:.15rem;min-width:0;padding:.55rem .9rem;display:flex}.title-block>div:nth-child(3n){border-right:0}.title-block>div:nth-child(n+4){border-top:1px solid var(--rule)}.title-block .value{color:var(--ink)}.title-block a{color:var(--ink);text-transform:lowercase;margin-block:-.7rem;padding-block:.7rem;text-decoration:none}.title-block a:hover{color:var(--copper)}@media (width<=40rem){.title-block{grid-template-columns:repeat(2,1fr);width:100%}.title-block .value{overflow-wrap:anywhere;min-width:0}.title-block>div:nth-child(2n){border-right:0}.title-block>div:nth-child(n+3){border-top:1px solid var(--rule)}}.board{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:2rem clamp(1.5rem,3vw,3rem);margin-top:1.25rem;display:grid;position:relative}.board .traces{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.board .traces path{fill:none;stroke:var(--trace);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;transition:stroke .2s var(--ease-out), opacity .2s var(--ease-out)}.board .traces circle{fill:var(--trace);transition:opacity .2s var(--ease-out)}.board.has-focus .traces path:not(.lit),.board.has-focus .traces circle:not(.lit){opacity:.15}.board .traces path.lit{stroke:var(--trace-lit);stroke-width:var(--trace-lit-width)}.board .traces circle.lit{fill:var(--trace-lit)}@media (prefers-reduced-motion:no-preference){.board .traces path.draw{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:draw 1.1s var(--ease-out) forwards;animation-delay:calc(var(--i) * 90ms + .12s)}@keyframes draw{to{stroke-dashoffset:0}}}@media (width<=40rem){:root{--edge:.5rem}.board{gap:2rem 1rem;margin-top:1.75rem}}.u1{z-index:1;border:1px solid var(--rule);background:var(--ground);flex-direction:column;grid-column:1/span 7;padding:1.5rem clamp(1.25rem,2.5vw,2.25rem) clamp(1.5rem,3vw,2.25rem);display:flex;position:relative}.u1:before{content:"";background:var(--copper);border-radius:50%;width:8px;height:8px;position:absolute;top:.9rem;right:.9rem}.u1-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:clamp(1.25rem,2.5vw,1.75rem);display:flex}.u1-mark{align-items:baseline;gap:1rem;display:inline-flex}.u1-part{color:var(--ink)}.u1-name{font-family:var(--font-label);font-weight:700;font-size:var(--text-display);letter-spacing:-.03em;text-wrap:balance;max-width:12ch;margin:0 0 .9rem;line-height:.98}.u1-role{text-wrap:balance;max-width:30ch;margin:0 0 .4rem;font-size:clamp(1.125rem,1rem + .5vw,1.375rem);line-height:1.4}.u1-context{color:var(--ink-2);font-size:var(--text-body);margin:0}.u1-pins{border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);padding-block:.6rem;flex-wrap:wrap;gap:.25rem 2rem;margin-top:clamp(1rem,2vw,1.5rem);margin-bottom:0;padding-left:0;list-style:none;display:flex}.u1-now{color:var(--ink);font-size:var(--text-body);flex-direction:column;align-items:flex-start;gap:.4rem;margin:clamp(1rem,2vw,1.25rem) 0 0;display:flex}.u1-side-pins{pointer-events:none;margin:0;padding:0;list-style:none;position:absolute;top:0;bottom:0;right:-1px}.u1-side-pins li{right:0;top:calc((var(--n) + 1) * 100% / (var(--count) + 1));background:var(--pad);border-radius:0 1px 1px 0;width:.75rem;height:.5rem;position:absolute;transform:translate(100%,-50%)}.u1-bottom-pins{pointer-events:none;justify-content:flex-start;margin:0;padding:0 0 0 20%;list-style:none;position:absolute;bottom:-1px;left:0;right:0}.u1-bottom-pins li{background:var(--pad);border-radius:0 0 1px 1px;width:.5rem;height:.75rem;transform:translate(-50%,100%)}.u1-bottom-pins li:not(:first-child),.u1-notes{display:none}@media (width>=64.01rem){.u1-bottom-pins{display:none}.u1-notes{z-index:1;grid-column:1/span 7;display:block;position:relative}.u1-notes .section-head{margin:0 0 .5rem}.u1-notes .rail li{padding-block:.5rem}.u1-notes .rail .tags,.rail-stacked{display:none}}@media (width<=64rem){.u1{grid-column:1/-1}.u1-side-pins{display:none}.u1-bottom-pins{display:flex}.u1-head{margin-bottom:1.25rem}.u1-context{display:none}.u1-pins{margin-top:1rem}.rail-desktop{display:none}}@media (width<=40rem){.u1{padding:1.25rem 1.1rem}.u1-name{max-width:none}.u1-head{flex-direction:column;gap:.35rem}}.footprints{z-index:1;flex-direction:column;grid-column:8/span 5;gap:1.5rem;display:flex;position:relative}.footprint{border:1px solid var(--rule);background:var(--ground);transition:border-color .2s var(--ease-out);gap:.4rem;padding:1rem 1.25rem 1.1rem 1.5rem;display:grid;position:relative}.footprint:hover,.footprint:focus-within{border-color:var(--copper)}.footprint .pad{background:var(--pad);border-radius:1px 0 0 1px;width:.75rem;height:.5rem;position:absolute;top:50%;left:-1px;transform:translate(-100%,-50%)}.footprint .pad-out{display:none}.footprint-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.footprint h3{font-size:var(--text-h3);letter-spacing:0;margin:0}.footprint h3 a{margin-block:-.2rem;padding-block:.2rem;text-decoration:none;display:inline-block}.footprint h3 a:after{content:"";position:absolute;inset:0}.footprint p{color:var(--ink-2);font-size:var(--text-small);max-width:36em;margin:0;line-height:1.5}.footprint-values{flex-wrap:wrap;gap:.35rem .9rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.footprint-links{z-index:1;gap:1.25rem;margin-top:.25rem;display:flex;position:relative}@media (width>=64.01rem){.footprints{grid-row:1/span 2;margin-left:clamp(1.5rem,5vw,5.5rem)}}@media (width<=64rem){.footprints{grid-column:1/-1;gap:2.25rem}.footprint .pad{border-radius:1px 1px 0 0;width:.5rem;height:.75rem;top:-1px;left:20%;transform:translate(-50%,-100%)}.footprint .pad-out{border-radius:0 0 1px 1px;display:block;top:auto;bottom:-1px;transform:translate(-50%,100%)}.footprints .footprint:last-child .pad-out{display:none}}@media (width<=40rem){.footprint{padding:.9rem 1rem 1rem}}.board-section{z-index:1;grid-column:1/-1;position:relative}.section-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:baseline;gap:1rem;margin:2.5rem 0 1rem;padding-bottom:.6rem;display:flex}.section-head h2{font-size:var(--text-h2);text-transform:lowercase;color:var(--ink);margin:0}.section-head a{font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.01em;text-transform:lowercase;color:var(--ink-2);margin-block:-.9rem;padding-block:.9rem;text-decoration:none}.section-head a:hover{color:var(--copper)}.rail{margin:0;padding:0;list-style:none;position:relative}.rail:before{content:"";background:var(--rule);width:1px;position:absolute;top:.9rem;bottom:.9rem;left:5px}.rail li{grid-template-columns:3rem 7rem auto minmax(0,1fr);align-items:baseline;gap:0 1.25rem;padding:.65rem 0 .65rem 1.75rem;display:grid;position:relative}.rail li:before{content:"";background:var(--ground);border:1px solid var(--pad);width:11px;height:11px;transition:border-color .15s var(--ease-out), background .15s var(--ease-out);border-radius:50%;position:absolute;top:1.05rem;left:0}.rail li:hover:before{border-color:var(--copper-2);background:var(--copper-2)}.rail li a{font-family:var(--font-label);font-size:1.0625rem;font-weight:400;text-decoration:none}.rail li a:after{content:"";position:absolute;inset:0}.rail .tags{z-index:1;flex-wrap:wrap;justify-self:start;gap:.25rem .75rem;display:flex;position:relative}.rail time.same-date{opacity:0}.rail .rail-desc{color:var(--ink-2);font-size:var(--text-small);grid-column:3/span 2;margin:.1rem 0 0}@media (width<=48rem){.rail li{grid-template-columns:3rem minmax(0,1fr);row-gap:.15rem}.rail li time{order:3;grid-column:2}.rail li time.same-date{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.rail li .tags,.rail .rail-desc{grid-column:2}}.bom-scroll{overflow-x:auto}.bom{margin-top:.5rem}.bom th,.bom td{border:0;border-bottom:1px solid var(--rule-soft);vertical-align:baseline;padding:.7rem 1rem .7rem 0}.bom thead th{color:var(--ink-2);border-bottom-color:var(--rule);padding-bottom:.5rem;font-weight:400}.bom tbody th{font-family:var(--font-label);font-weight:400;font-size:var(--text-body);text-transform:none;letter-spacing:0}.bom tbody th a{margin-block:-.2rem;padding-block:.2rem;text-decoration:none;display:inline-block}.bom tbody th a:hover{color:var(--copper)}.bom tbody tr{position:relative}.bom tbody th a:after{content:"";position:absolute;inset:0}.bom .bom-links{z-index:1;text-align:right;padding-right:0;position:relative}.bom .bom-links .pin{margin-left:1.25rem}.bom td.designator{width:3rem}.bom .bom-desc{color:var(--ink-2);font-size:var(--text-small);max-width:40ch}.bom .bom-desc>span{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.bom td.designator,.bom .bom-date,.bom td:has(>.status),.bom tbody th,.bom .bom-links{white-space:nowrap}.bom tr:hover td,.bom tr:hover th{color:var(--ink)}@media (width<=48rem){.bom,.bom tbody,.bom tr,.bom td,.bom th{display:block}.bom thead{display:none}.bom tr{border-bottom:1px solid var(--rule-soft);padding:.8rem 0}.bom th,.bom td{border:0;padding:.15rem 0}.bom td.designator{width:auto}.bom .bom-desc{max-width:none}.bom .bom-desc>span{-webkit-line-clamp:unset;line-clamp:unset;display:block}.bom td[data-label]:before{content:attr(data-label) " ";color:var(--ink-2);font-family:var(--font-label);font-size:var(--text-label);letter-spacing:.01em;text-transform:lowercase;margin-right:.35rem}.bom .bom-links{text-align:left}.bom .bom-links .pin{margin:.35rem 1.25rem 0 0}}.page-head{align-items:baseline;gap:1rem;margin:1.5rem 0 .5rem;display:flex}.page-head h1{margin:0}.page-intro{color:var(--ink-2);max-width:var(--measure);font-size:var(--text-body);margin:.5rem 0 1.5rem}.tag-cloud{flex-wrap:wrap;gap:.75rem 1.5rem;margin:1.5rem 0;padding:0;list-style:none;display:flex}.tag-cloud .tag{font-size:var(--text-small)}.tag-cloud .value{margin-left:.35rem}.sheet{max-width:var(--measure);margin:1.5rem 0 0 max(0px, calc((100% - var(--board-width)) / 2));position:relative}.sheet-head{flex-wrap:wrap;align-items:baseline;gap:.5rem 1.5rem;margin:0 0 1.25rem;display:flex}.sheet-head time{font-family:var(--font-mono);font-size:var(--text-value);color:var(--ink-2);font-variant-numeric:tabular-nums}.sheet-title{margin:0 0 .8rem}.sheet-desc{font-size:var(--text-lead);color:var(--ink-2);text-wrap:pretty;margin:0 0 2rem;line-height:1.5}.sheet-meta{border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft);flex-direction:column;gap:.35rem;margin:0 0 2.5rem;padding:.6rem 0;display:flex}.sheet-meta-row{flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;width:100%;display:flex}.sheet-meta-row .label{min-width:3.25rem}.sheet-meta-gap{flex:1}.sheet-meta-pins{gap:.5rem 1.25rem;margin-left:auto;display:flex}.sheet-figure{margin:0 0 2.25rem}.sheet-figure img{border:1px solid var(--rule);width:100%;height:auto;margin:0}.sheet .body>:first-child{margin-top:0}.sheet .body h2{margin-top:3rem}.sheet-nav{border-top:1px solid var(--rule);justify-content:space-between;gap:1.5rem;margin-top:3rem;padding-top:.85rem;display:flex}.sheet-nav a{max-width:46%;font-family:var(--font-label);font-size:var(--text-small);flex-direction:column;gap:.3rem;line-height:1.3;text-decoration:none;display:flex}.sheet-nav .next{text-align:right;margin-left:auto}.sheet-nav a:hover,.sheet-nav a:hover .label{color:var(--copper)}.sheet-nav+.back-link{margin-top:1.5rem}.cv-head h1{margin:0 0 .4rem}.cv-role{color:var(--ink-2);text-wrap:pretty;margin:0 0 .9rem;font-size:1.1875rem;line-height:1.45}.cv-contact{border-bottom:1px solid var(--rule);font-size:var(--text-small);color:var(--ink-2);flex-wrap:wrap;gap:.2rem 1.25rem;margin:0;padding-bottom:1.5rem;display:flex}.cv-contact a{color:var(--ink);text-decoration-color:var(--rule);text-underline-offset:.2em}.cv-summary{text-wrap:pretty;margin:1.5rem 0 0}.cv h2{border-top:1px solid var(--rule-soft);margin:2.75rem 0 1.1rem;padding-top:.6rem}.cv-entry+.cv-entry{margin-top:1.75rem}.cv-entry-tight+.cv-entry-tight{margin-top:1rem}.cv-line{flex-wrap:wrap;align-items:baseline;gap:.1rem 1rem;display:flex}.cv-line .value{white-space:nowrap}.cv h3{font-size:var(--text-h3);margin:0;line-height:1.35}.cv-meta{font-size:var(--text-small);color:var(--ink-2);margin:.15rem 0 0}.cv-org{font-family:var(--font-label);color:var(--copper);font-weight:700}.cv-earlier{font-size:var(--text-small);color:var(--ink-2);margin:1.9rem 0 0}.cv-earlier .cv-org{color:var(--ink);margin-right:.5rem}.cv-entry ul,.cv-projects{margin:.5rem 0 0;padding:0;list-style:none}.cv-entry li,.cv-projects li{text-wrap:pretty;margin:.35rem 0 0;padding-left:1.1rem;position:relative}.cv-entry li:before,.cv-projects li:before{content:"";border-top:1px solid var(--copper);width:.5rem;position:absolute;top:.8em;left:0}.cv-projects span{color:var(--ink-2)}.cv-facts{grid-template-columns:6.5rem 1fr;gap:.5rem 1rem;margin:0;display:grid}.cv-facts dt{font-family:var(--font-label);font-weight:700}.cv-facts dd{margin:0}.cv-updated{border-top:1px solid var(--rule);margin:3rem 0 0;padding-top:.85rem}.cv-updated button{font:inherit;color:var(--ink);cursor:pointer;text-decoration:underline;text-decoration-color:var(--rule);text-underline-offset:.2em;background:0 0;border:0;padding:.3rem 0}.cv-updated button:hover{color:var(--copper);text-decoration-color:var(--copper)}@media (width<=40rem){.cv-facts{grid-template-columns:1fr;gap:.1rem}.cv-facts dd{margin-bottom:.6rem}}.built h2{margin-top:3rem}.built section>p{text-wrap:pretty}.built-layers{border:1px solid var(--rule);grid-template-columns:1fr 1fr;margin-top:1.25rem;display:grid}.built-layer{background:var(--ground);color:var(--ink);padding:1rem 1.25rem 1.1rem}.built-layer+.built-layer{border-left:1px solid var(--rule)}.built-layer-head{font-family:var(--font-label);font-size:var(--text-small);margin:0 0 .75rem}.built-layer-note{color:var(--ink-2)}.built-layer ul{margin:0;padding:0;list-style:none}.built-layer li{font-size:var(--text-small);align-items:center;gap:.75rem;padding:.4rem 0;display:flex}.built-colour-name{flex:1}.built-layer code{color:var(--ink-2);font-size:var(--text-value);letter-spacing:0;background:0 0;border:0;padding:0}.swatch{border:1px solid var(--rule);flex:none;width:1.75rem;height:1.125rem}.built-faces{margin:1.25rem 0 0;padding:0;list-style:none}.built-faces li{border-top:1px solid var(--rule-soft);padding:1.25rem 0}.built-faces li:last-child{border-bottom:1px solid var(--rule-soft)}.built-specimen{color:var(--ink);text-wrap:balance;margin:0 0 .6rem}.face-label{font-family:var(--font-label);font-size:var(--text-h1);letter-spacing:-.02em;line-height:1.1}.face-mono{font-family:var(--font-mono);font-size:var(--text-h2);white-space:pre-wrap;font-variant-numeric:tabular-nums;line-height:1.3}.face-body{font-family:var(--font-body);font-size:var(--text-lead);line-height:1.4}.built-face-job{font-size:var(--text-small);color:var(--ink-2);text-wrap:pretty;margin:0}.built-face-job a{color:var(--ink)}.built-stack{margin:1rem 0 0;padding-left:1.1rem}.built-stack li{text-wrap:pretty;margin:.5rem 0 0}.built-stack li::marker{color:var(--copper)}.built-stack+p{margin-top:1.5rem}@media (width<=40rem){.built-layers{grid-template-columns:1fr}.built-layer+.built-layer{border-left:0;border-top:1px solid var(--rule)}}.datasheet{inset:calc(var(--edge) + 1px) calc(var(--edge) + 1px) calc(var(--edge) + 1px) auto;width:var(--sheet-width,min(46rem, 100% - 2 * var(--edge) - 2px));border:0;border-left:1px solid var(--rule);background:var(--ground);max-width:none;height:auto;max-height:none;color:var(--ink);overscroll-behavior:contain;scrollbar-gutter:stable;margin:0;padding:0;position:fixed;overflow-y:auto}.datasheet::backdrop{background:0 0}.datasheet[open]{opacity:1;transition:opacity .2s var(--ease-out), translate .32s var(--ease-out);translate:0;@starting-style{opacity:0;translate:1.5rem}}body:has(.datasheet[open]){overflow:hidden}.site-header,main,.site-footer{transition:opacity .26s var(--ease-out), translate .32s var(--ease-out)}body:has(.datasheet[open]) :is(.site-header,main,.site-footer){translate:calc(-1 * var(--board-shift,0px)) 0}body:has(.datasheet[open]) :is(.site-header,.site-footer,main:not(:has(.board)),.board>:not(.traces,.u1,.footprints),.u1>:not(.u1-side-pins,.u1-bottom-pins),.u1-side-pins li:not(.lit),.u1-bottom-pins li:not(.lit),.footprints>:not(.lit),.footprint.lit>:not(.pad),.footprint.lit .pad:not(.lit),.footprint.lit .pad-out,.board:not(.has-focus) .traces){opacity:.35}body:has(.datasheet[open]) .u1,body:has(.datasheet[open]) .footprint.lit{border-color:color-mix(in srgb, var(--rule) 35%, transparent)}.board>*,.board .traces,.u1>*,.u1:before,.u1-side-pins li,.footprints>*,.footprint>*{transition:opacity .26s var(--ease-out)}.datasheet-bar{z-index:1;background:var(--ground);border-bottom:1px solid var(--rule-soft);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem clamp(1.25rem,4vw,3rem);display:flex;position:sticky;top:0}.datasheet-path{overflow-wrap:anywhere;padding-block:.5rem;text-decoration:none}.datasheet-path:hover{color:var(--copper)}.datasheet-close{flex:none}.datasheet-close .label{color:inherit}.datasheet-close kbd{letter-spacing:.04em;border-left:1px solid var(--rule-soft);padding-left:.4rem}.datasheet-body{padding:1.5rem clamp(1.25rem,4vw,3rem) 4rem}.datasheet .sheet{margin:0}.datasheet .back-link{display:none}.datasheet h1:focus{outline:none}.datasheet h1:focus-visible{outline:2px solid var(--copper);outline-offset:6px}@media print{:root{color-scheme:light;--ground:#fff}@page{size:A4;margin:16mm 18mm}@page cv{@bottom-left{content:"alex zeynalov · cv";font:8pt B612 Mono,ui-monospace,monospace;color:#4f625a}@bottom-right{content:counter(page) " / " counter(pages);font:8pt B612 Mono,ui-monospace,monospace;color:#4f625a}}html:has(.cv),html:has(.cv) body{page:cv}html{font-size:82%}p,li{orphans:3;widows:3}body:before,.fiducials,.skip-link,.site-header,.site-footer,.back-link,.sheet-nav,.cv-print-action,.datasheet{display:none}html,body{height:auto;min-height:0}body{display:block}main{margin:0;padding:0}.sheet{max-width:none;margin:0}.sheet>:last-child{margin-bottom:0}h2,h3,h4,.cv-line{break-after:avoid}.cv-entry li,.cv-entry-tight{break-inside:avoid}.cv h2{margin-top:1.9rem}.body a[href^=http]:after{display:none}.cv-contact a{text-decoration:none}}
