@font-face{font-family:chakra petch;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ChakraPetch-500-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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:chakra petch;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ChakraPetch-500-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:chakra petch;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ChakraPetch-600-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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:chakra petch;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ChakraPetch-600-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:chakra petch;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ChakraPetch-700-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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:chakra petch;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ChakraPetch-700-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;font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/IBMPlexSans-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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:ibm plex sans;font-style:normal;font-weight:100 700;font-display:swap;src:url(/fonts/IBMPlexSans-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;font-style:italic;font-weight:100 700;font-display:swap;src:url(/fonts/IBMPlexSans-italic-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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:ibm plex sans;font-style:italic;font-weight:100 700;font-display:swap;src:url(/fonts/IBMPlexSans-italic-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:100 800;font-display:swap;src:url(/fonts/JetBrainsMono-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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:jetbrains mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/JetBrainsMono-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}:root{--ps-ink:#06080B;--ps-panel:#0B1015;--ps-line:#1B2530;--ps-white:#EEF3F6;--ps-silver:#93A1AD;--ps-red:#FF2E4D;--ps-blue:#1FCFFF;--ps-red-dim:rgba(255, 46, 77, .14);--ps-blue-dim:rgba(31, 207, 255, .13);--ps-white-dim:rgba(238, 243, 246, .08);--ps-display:"Chakra Petch", "Arial Narrow", system-ui, sans-serif;--ps-body:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--ps-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ps-radius:0;--ps-corner:12px;color-scheme:dark}.ps-frame{position:relative;background:var(--ps-panel)}.ps-frame::before,.ps-frame::after{content:"";position:absolute;width:var(--ps-corner);height:var(--ps-corner);border:1.5px solid var(--c,var(--ps-silver));pointer-events:none}.ps-frame::before{top:0;left:0;border-right:0;border-bottom:0}.ps-frame::after{bottom:0;right:0;border-left:0;border-top:0}.crew{--c:var(--ps-white);--d:var(--ps-white-dim);position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:16px 18px;margin:1.5rem 0;background:var(--d)}.crew::before,.crew::after{content:"";position:absolute;width:var(--ps-corner);height:var(--ps-corner);border:1.5px solid var(--c)}.crew::before{top:0;left:0;border-right:0;border-bottom:0}.crew::after{bottom:0;right:0;border-left:0;border-top:0}.crew--red{--c:var(--ps-red);--d:var(--ps-red-dim)}.crew--blue{--c:var(--ps-blue);--d:var(--ps-blue-dim)}.crew--white{--c:var(--ps-white);--d:var(--ps-white-dim)}.crew__avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1.5px solid var(--c)}.crew__who{font-family:var(--ps-mono);font-size:.74rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--c);margin:0 0 4px}.crew__body{min-width:0}.crew__body>:first-child{margin-top:0}.crew__body>:last-child{margin-bottom:0}.ps-prompt::before{content:"> ";color:var(--ps-silver);font-family:var(--ps-mono)}.ps-cursor{display:inline-block;width:.6em;height:.12em;background:currentColor;animation:ps-blink 1.1s steps(1)infinite}@keyframes ps-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.ps-cursor{animation:none}}:root{--step--1:0.875rem;--step-0:1.125rem;--step-1:1.375rem;--step-2:1.75rem;--step-3:2.25rem;--step-4:clamp(2.5rem, 1.2rem + 5.4vw, 5.25rem);--gutter:clamp(1rem, 0.5rem + 2.5vw, 2.5rem);--measure:40rem}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--ps-ink)}body{margin:0;background:var(--ps-ink);color:var(--ps-white);font-family:var(--ps-body);font-size:var(--step-0);line-height:1.65;overflow-wrap:break-word}img,svg{max-width:100%;height:auto;display:block}::selection{background:var(--ps-white);color:var(--ps-ink)}a{color:inherit;text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.22em;text-decoration-color:var(--ps-silver)}a:hover{text-decoration-color:var(--ps-white);text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--ps-white);outline-offset:3px}.wrap{width:100%;max-width:72rem;margin-inline:auto;padding-inline:var(--gutter)}.narrow{max-width:calc(var(--measure) + 2 * var(--gutter))}.skip{position:absolute;left:-999px;top:0;z-index:10;padding:.5rem 1rem;background:var(--ps-white);color:var(--ps-ink);font-family:var(--ps-mono)}.skip:focus{left:1rem}h1,h2,h3{font-family:var(--ps-display);font-weight:600;letter-spacing:.01em}.site-header{border-bottom:1px solid var(--ps-line)}.header-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem;padding-block:.9rem}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}.brand .mark{width:2.6rem;height:2.6rem;flex:none}.brand__text{display:flex;flex-direction:column;gap:.2rem}.wordmark{font-family:var(--ps-display);text-transform:uppercase;letter-spacing:.02em;font-size:1.15rem;line-height:1}.wm-a{font-weight:700;color:var(--ps-white)}.wm-b{font-weight:500;color:var(--ps-silver)}.brand__slogan{font-family:var(--ps-mono);font-size:.72rem;line-height:1.2;color:var(--ps-silver)}.brand__slogan::before{content:"> "}.site-header nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.5rem;font-family:var(--ps-mono);font-size:var(--step--1)}.site-header nav a{text-decoration:none;color:var(--ps-silver);padding-block:.3rem;border-bottom:1px solid transparent}.site-header nav a:hover{color:var(--ps-white)}.site-header nav a[aria-current=page]{color:var(--ps-white);border-bottom-color:var(--ps-white)}.hero-head{padding-block:clamp(2.5rem,1.5rem + 4vw,5rem)2rem}.prompt-line{font-family:var(--ps-mono);font-size:var(--step--1);color:var(--ps-silver);margin:0 0 1.25rem}.ps-cursor{margin-left:.15em;vertical-align:baseline;color:var(--ps-white)}.hero h1{font-size:var(--step-4);font-weight:700;line-height:.98;text-transform:uppercase;letter-spacing:.01em;margin:0 0 1.5rem;max-width:15ch;text-wrap:balance}.lead{font-size:var(--step-1);line-height:1.5;color:var(--ps-silver);max-width:38ch}.lead p{margin:0 0 .6em}.crew-photo{margin-block:0 clamp(2.5rem,2rem + 3vw,4.5rem)}.crew-photo__frame{position:relative;background:var(--ps-panel)}.crew-photo__frame img{width:100%;aspect-ratio:3840/2143;object-fit:cover}.crew-photo__frame::before,.crew-photo__frame::after{content:"";position:absolute;width:22px;height:22px;border:2px solid var(--ps-white)}.crew-photo__frame::before{top:-8px;left:-8px;border-right:0;border-bottom:0}.crew-photo__frame::after{bottom:-8px;right:-8px;border-left:0;border-top:0}.crew-tags{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr))}.crew-tag{--c:var(--ps-white);position:relative;padding:.7rem .85rem .75rem;background:var(--ps-panel)}.crew-tag::before,.crew-tag::after{content:"";position:absolute;width:10px;height:10px;border:1.5px solid var(--c)}.crew-tag::before{top:0;left:0;border-right:0;border-bottom:0}.crew-tag::after{bottom:0;right:0;border-left:0;border-top:0}.crew-tag--red{--c:var(--ps-red)}.crew-tag--blue{--c:var(--ps-blue)}.crew-tag p{margin:0}.crew-tag__name{font-family:var(--ps-mono);font-weight:600;font-size:var(--step--1);color:var(--c);text-transform:uppercase;letter-spacing:.07em}.crew-tag__role{font-size:.95rem;line-height:1.4;color:var(--ps-white);margin-top:.2rem!important}.crew-tag__ai{font-family:var(--ps-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ps-silver);margin-top:.45rem!important}.crew-photo figcaption{font-family:var(--ps-mono);font-size:.75rem;color:var(--ps-silver);margin-top:.75rem}@media(max-width:40rem){.crew-tags{grid-template-columns:1fr}}.latest,.layers{padding-block:2.5rem 3rem}.latest h2,.layers h2{font-size:var(--step-2);text-transform:uppercase;margin:0 0 1.5rem;padding-top:1.5rem;border-top:1px solid var(--ps-line)}.post-list{list-style:none;margin:0;padding:0}.post-item{padding-block:1.25rem;border-bottom:1px solid var(--ps-line);max-width:46rem}.post-item:first-child{padding-top:0}.post-meta{margin:0 0 .4rem;color:var(--ps-silver);font-family:var(--ps-mono);font-size:.8rem;display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}.post-type{color:var(--ps-white);text-decoration:none}.post-title{font-family:var(--ps-display);font-size:var(--step-1);font-weight:600;line-height:1.25;margin:0}.post-title a{text-decoration:none}.post-title a:hover{text-decoration:underline}.post-summary{margin:.4rem 0 0;color:var(--ps-silver)}.more{font-family:var(--ps-mono);font-size:var(--step--1)}.empty{color:var(--ps-silver);max-width:48ch}.layer-list{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem 2rem}@media(min-width:56rem){.layer-list{grid-template-columns:repeat(4,minmax(0,1fr))}}.layer{--c:var(--ps-white);display:grid;grid-template-columns:40px minmax(0,1fr);gap:.9rem;padding-top:1rem;border-top:2px solid var(--c)}.layer--red{--c:var(--ps-red)}.layer--blue{--c:var(--ps-blue)}.layer img{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--c)}.layer__who{font-family:var(--ps-mono);font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--c);margin:0 0 .2rem}.layer h3{font-size:var(--step-1);line-height:1.25;margin:0 0 .35rem}.layer p:last-child{margin:0;color:var(--ps-silver);font-size:1rem}.page-head{padding-block:clamp(2.5rem,2rem + 3vw,4.5rem)1.5rem}.page-head h1{font-size:var(--step-3);line-height:1.12;margin:0 0 1rem;text-wrap:balance}@media(min-width:40rem){.page-head h1{font-size:calc(var(--step-3) * 1.2)}}.page-head .lead{margin:0}.prose{padding-bottom:2rem}.prose>*{max-width:var(--measure)}.prose h2{font-size:var(--step-2);line-height:1.2;margin:2.5rem 0 .75rem}.prose h3{font-size:var(--step-1);line-height:1.3;margin:2rem 0 .5rem}.prose p,.prose ul,.prose ol{margin:0 0 1.1em}.prose li{margin-bottom:.35em}.prose blockquote{margin:1.5rem 0;padding-left:1.25rem;border-left:2px solid var(--ps-line);color:var(--ps-silver)}.prose code{font-family:var(--ps-mono);font-size:.88em;background:var(--ps-panel);padding:.1em .35em;border:1px solid var(--ps-line)}.prose pre{font-family:var(--ps-mono);font-size:var(--step--1);line-height:1.55;overflow-x:auto;background:var(--ps-panel);border:1px solid var(--ps-line);padding:1rem 1.25rem}.prose pre code{background:0 0;border:0;padding:0}.prose table{border-collapse:collapse;width:100%;font-size:var(--step--1);display:block;overflow-x:auto}.prose th,.prose td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--ps-line)}.prose th{font-family:var(--ps-mono);font-weight:600}.crew{font-size:1.05rem}.crew__body ul,.crew__body ol{padding-left:1.2rem}.crew__body p,.crew__body li{margin-bottom:.4em}.made{margin:1.5rem 0 2rem;padding:1rem 1.25rem;max-width:var(--measure);border:1px solid var(--ps-line);font-size:1rem}.made__line{font-family:var(--ps-mono);font-size:var(--step--1);margin:0 0 .75rem;color:var(--ps-white)}.made dl{margin:0 0 .75rem;display:grid;gap:.5rem}.made dl div{display:grid;grid-template-columns:7.5rem 1fr;gap:1rem}.made dt{font-family:var(--ps-mono);font-size:var(--step--1);color:var(--ps-silver);padding-top:.15rem}.made dd{margin:0}.made__note{color:var(--ps-silver);font-size:var(--step--1);margin:0}@media(max-width:30rem){.made dl div{grid-template-columns:1fr;gap:0}}.tags{font-family:var(--ps-mono);font-size:.8rem;color:var(--ps-silver)}.tags a{color:var(--ps-white);margin-right:.5rem}.translation{padding-bottom:3rem;font-family:var(--ps-mono);font-size:var(--step--1)}.term-list{list-style:none;padding:0;margin:0 0 4rem}.term-list li{padding-block:.6rem;border-bottom:1px solid var(--ps-line)}.count{color:var(--ps-silver);font-family:var(--ps-mono);font-size:.8rem}.code-404{font-family:var(--ps-mono);font-size:var(--step-2);margin:0 0 .5rem;color:var(--ps-silver)}.code-404::before{content:"> "}.site-footer{border-top:1px solid var(--ps-line);margin-top:3rem;padding-block:2.5rem 1.5rem;font-size:var(--step--1)}.footer-grid{display:grid;gap:1.5rem 3rem}@media(min-width:40rem){.footer-grid{grid-template-columns:2fr 1fr 1fr}}.footer-brand{display:flex;align-items:center;gap:.5rem;margin:0;font-family:var(--ps-display);font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:1rem}.footer-brand .mark{width:1.6rem;height:1.6rem}.footer-slogan{color:var(--ps-silver);margin:.4rem 0 0;font-family:var(--ps-mono);font-size:.8rem}.footer-links{list-style:none;margin:0;padding:0;display:grid;gap:.4rem;align-content:start}.footer-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;color:var(--ps-silver);margin-top:2rem;font-family:var(--ps-mono);font-size:.75rem}.footer-meta p{margin:0}.chroma .c,.chroma .c1,.chroma .cm{color:var(--ps-silver);font-style:italic}.chroma .k,.chroma .kd,.chroma .kn{font-weight:600}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.home{padding-block:clamp(2rem,1.5rem + 3vw,4rem)2rem}.post-list--home .post-item{max-width:none;padding-block:2rem}.post-list--home .post-item:first-child{padding-top:0}.post-item--image{display:grid;gap:1.25rem 2.5rem}@media(min-width:48rem){.post-item--image{grid-template-columns:minmax(0,5fr)minmax(0,6fr);align-items:start}}.post-thumb{position:relative;display:block;background:var(--ps-panel)}.post-thumb img{width:100%;aspect-ratio:16/9;object-fit:cover}.post-thumb::before,.post-thumb::after{content:"";position:absolute;width:14px;height:14px;border:1.5px solid var(--ps-white)}.post-thumb::before{top:-5px;left:-5px;border-right:0;border-bottom:0}.post-thumb::after{bottom:-5px;right:-5px;border-left:0;border-top:0}.post-text{max-width:var(--measure)}.post-list--home .post-title{font-size:var(--step-2);line-height:1.15;margin:.1rem 0 .6rem}.post-list--home .post-summary{color:var(--ps-white);opacity:.86;font-size:var(--step-0);margin:0}.post-more{margin:.8rem 0 0;font-family:var(--ps-mono);font-size:var(--step--1)}.post-more a::before{content:"> ";color:var(--ps-silver)}.prose .crew-photo{max-width:none;margin:1.5rem 0 2rem}.prose .layer-list{margin:1.25rem 0 2rem;padding:0}@media(min-width:40rem){.prose .layer-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.prose .layer h3{margin:0 0 .35rem}.prose .layer p{margin:0}.prose .crew-tags{padding:0}.prose .crew-tag p{margin:0}.site-header,main,.site-footer{position:relative;z-index:1}.ambient{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.ambient__side{position:absolute;top:0;bottom:0;width:min(26vw,22rem)}.ambient__side--red{left:0;--p:255, 46, 77;-webkit-mask-image:linear-gradient(to right,#000 15%,transparent);mask-image:linear-gradient(to right,#000 15%,transparent)}.ambient__side--blue{right:0;--p:31, 207, 255;-webkit-mask-image:linear-gradient(to left,#000 15%,transparent);mask-image:linear-gradient(to left,#000 15%,transparent)}.ambient__side span{position:absolute;inset:0}.ambient__side span:first-child{--dot:radial-gradient(circle, rgba(var(--p), 1) 0, rgba(var(--p), .5) 1.6px, rgba(var(--p), .12) 3.5px, transparent 5px);background-image:var(--dot),var(--dot),var(--dot),var(--dot),var(--dot),var(--dot),var(--dot);background-size:400px 211px,400px 263px,400px 331px,400px 389px,400px 457px,400px 523px,400px 601px;background-position:18px 0,122px 57px,64px 140px,201px 33px,276px 180px,150px 260px,36px 300px;animation:ps-rise-a 44s linear infinite;opacity:.94}.ambient__side span:last-child{--dot:radial-gradient(circle, rgba(var(--p), .85) 0, transparent 1.8px);background-image:var(--dot),var(--dot),var(--dot),var(--dot),var(--dot),var(--dot);background-size:400px 149px,400px 197px,400px 241px,400px 283px,400px 347px,400px 419px;background-position:90px 12px,240px 70px,10px 120px,170px 40px,310px 90px,60px 200px;animation:ps-rise-b 76s linear infinite,ps-twinkle 4.7s ease-in-out infinite alternate;opacity:.59}.ambient__side--blue span{transform:scaleX(-1)}@keyframes ps-rise-a{from{background-position:18px 0,122px 57px,64px 140px,201px 33px,276px 180px,150px 260px,36px 300px}to{background-position:18px -211px,122px -206px,64px -191px,201px -356px,276px -277px,150px -263px,36px -301px}}@keyframes ps-rise-b{from{background-position:90px 12px,240px 70px,10px 120px,170px 40px,310px 90px,60px 200px}to{background-position:90px -137px,240px -127px,10px -121px,170px -243px,310px -257px,60px -219px}}@keyframes ps-twinkle{from{opacity:.24}to{opacity:.71}}.ambient__scan{position:absolute;inset:0;background:repeating-linear-gradient(to bottom,rgba(238,243,246,.045) 0 1px,transparent 1px 4px)}@media(max-width:48rem){.ambient__side{width:16vw;opacity:.55}}.term{--lh:1.3rem;--rows:3;min-width:0;font-family:var(--ps-mono);font-size:.74rem}.term__view{height:calc(var(--rows) * var(--lh));overflow:hidden}.term__list{list-style:none;padding:0;margin:calc((var(--rows) - 3) * var(--lh))0 0;animation:ps-term-scroll 126s steps(45,end)infinite}@keyframes ps-term-scroll{from{transform:translateY(0)}to{transform:translateY(calc(-45 * var(--lh)))}}.term__line{height:var(--lh);line-height:var(--lh);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.5}.term__line:not(.term__line--pre){animation:ps-term-line 126s infinite}.term__line::before{content:"> ";color:var(--ps-silver)}.term__line:not(.term__line--pre)::after{content:"";display:inline-block;width:.6em;height:.12em;margin-left:.2em;background:var(--ps-white);opacity:0;animation:ps-term-cursor 126s infinite}.term__line--red{--c:var(--ps-red)}.term__line--blue{--c:var(--ps-blue)}.term__line--white{--c:var(--ps-white)}.term__who{color:var(--c);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.term__who::after{content:" //";color:var(--ps-silver);font-weight:400}.term__msg{color:var(--ps-white)}@keyframes ps-term-line{0%{opacity:1;clip-path:inset(0 100% 0 0);animation-timing-function:steps(34,end)}0.873%{opacity:1;clip-path:inset(0 0 0 0)}2.222%{opacity:1;clip-path:inset(0 0 0 0)}2.223%{opacity:.5;clip-path:inset(0 0 0 0)}100%{opacity:.5;clip-path:inset(0 0 0 0)}}@keyframes ps-term-cursor{0%,2.222%{opacity:1}2.223%,100%{opacity:0}}.term__line:nth-child(4),.term__line:nth-child(4)::after{animation-delay:2.8s}.term__line:nth-child(5),.term__line:nth-child(5)::after{animation-delay:5.6s}.term__line:nth-child(6),.term__line:nth-child(6)::after{animation-delay:8.4s}.term__line:nth-child(7),.term__line:nth-child(7)::after{animation-delay:11.2s}.term__line:nth-child(8),.term__line:nth-child(8)::after{animation-delay:14s}.term__line:nth-child(9),.term__line:nth-child(9)::after{animation-delay:16.8s}.term__line:nth-child(10),.term__line:nth-child(10)::after{animation-delay:19.6s}.term__line:nth-child(11),.term__line:nth-child(11)::after{animation-delay:22.4s}.term__line:nth-child(12),.term__line:nth-child(12)::after{animation-delay:25.2s}.term__line:nth-child(13),.term__line:nth-child(13)::after{animation-delay:28s}.term__line:nth-child(14),.term__line:nth-child(14)::after{animation-delay:30.8s}.term__line:nth-child(15),.term__line:nth-child(15)::after{animation-delay:33.6s}.term__line:nth-child(16),.term__line:nth-child(16)::after{animation-delay:36.4s}.term__line:nth-child(17),.term__line:nth-child(17)::after{animation-delay:39.2s}.term__line:nth-child(18),.term__line:nth-child(18)::after{animation-delay:42s}.term__line:nth-child(19),.term__line:nth-child(19)::after{animation-delay:44.8s}.term__line:nth-child(20),.term__line:nth-child(20)::after{animation-delay:47.6s}.term__line:nth-child(21),.term__line:nth-child(21)::after{animation-delay:50.4s}.term__line:nth-child(22),.term__line:nth-child(22)::after{animation-delay:53.2s}.term__line:nth-child(23),.term__line:nth-child(23)::after{animation-delay:56s}.term__line:nth-child(24),.term__line:nth-child(24)::after{animation-delay:58.8s}.term__line:nth-child(25),.term__line:nth-child(25)::after{animation-delay:61.6s}.term__line:nth-child(26),.term__line:nth-child(26)::after{animation-delay:64.4s}.term__line:nth-child(27),.term__line:nth-child(27)::after{animation-delay:67.2s}.term__line:nth-child(28),.term__line:nth-child(28)::after{animation-delay:70s}.term__line:nth-child(29),.term__line:nth-child(29)::after{animation-delay:72.8s}.term__line:nth-child(30),.term__line:nth-child(30)::after{animation-delay:75.6s}.term__line:nth-child(31),.term__line:nth-child(31)::after{animation-delay:78.4s}.term__line:nth-child(32),.term__line:nth-child(32)::after{animation-delay:81.2s}.term__line:nth-child(33),.term__line:nth-child(33)::after{animation-delay:84s}.term__line:nth-child(34),.term__line:nth-child(34)::after{animation-delay:86.8s}.term__line:nth-child(35),.term__line:nth-child(35)::after{animation-delay:89.6s}.term__line:nth-child(36),.term__line:nth-child(36)::after{animation-delay:92.4s}.term__line:nth-child(37),.term__line:nth-child(37)::after{animation-delay:95.2s}.term__line:nth-child(38),.term__line:nth-child(38)::after{animation-delay:98s}.term__line:nth-child(39),.term__line:nth-child(39)::after{animation-delay:100.8s}.term__line:nth-child(40),.term__line:nth-child(40)::after{animation-delay:103.6s}.term__line:nth-child(41),.term__line:nth-child(41)::after{animation-delay:106.4s}.term__line:nth-child(42),.term__line:nth-child(42)::after{animation-delay:109.2s}.term__line:nth-child(43),.term__line:nth-child(43)::after{animation-delay:112s}.term__line:nth-child(44),.term__line:nth-child(44)::after{animation-delay:114.8s}.term__line:nth-child(45),.term__line:nth-child(45)::after{animation-delay:117.6s}.term__line:nth-child(46),.term__line:nth-child(46)::after{animation-delay:120.4s}.term__line:nth-child(47),.term__line:nth-child(47)::after{animation-delay:123.2s}@media(prefers-reduced-motion:reduce){.ambient__side span{animation:none}.term__list{animation:none}.term__line{animation:none!important;clip-path:none;opacity:.6}.term__line:nth-child(3){opacity:1}}.ambient--still .ambient__side span{animation:none}.ambient--still .ambient__side{opacity:.75}.page-grid{display:grid;gap:0 3.5rem;grid-template-columns:minmax(0,1fr);padding-bottom:2rem}.page-grid>.page-head{max-width:52rem}@media(min-width:64rem){.page-grid{grid-template-columns:15rem minmax(0,1fr)}.page-grid>.page-head{grid-column:2}.page-side{grid-column:1;grid-row:1/span 2;align-self:start;position:sticky;top:calc(var(--header-h) + 1.5rem);margin-top:clamp(2.5rem,2rem + 3vw,4.5rem);max-height:calc(100vh - var(--header-h) - 3rem);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--ps-line)transparent;padding-right:.5rem}.page-body{grid-column:2}}@media(min-width:80rem){.page-grid{grid-template-columns:17rem minmax(0,1fr);gap:0 5rem}body{font-size:1.1875rem}}.page-body{max-width:46rem}.page-body .prose>*{max-width:none}@media(max-width:63.99rem){.page-side{order:3;border-top:1px solid var(--ps-line);padding-top:1.5rem}.page-body{order:2}}.side-block{margin-bottom:1.75rem;font-size:var(--step--1)}.side-label{font-family:var(--ps-mono);font-size:.72rem;letter-spacing:.07em;text-transform:uppercase;color:var(--ps-silver);margin:0 0 .7rem;padding-bottom:.5rem;border-bottom:1px solid var(--ps-line)}.side-crew{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.side-crew__item{--c:var(--ps-white);display:flex;align-items:center;gap:.6rem;font-family:var(--ps-mono);font-size:.75rem;line-height:1.35;color:var(--c)}.side-crew__item--red{--c:var(--ps-red)}.side-crew__item--blue{--c:var(--ps-blue)}.side-crew__item img{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--c);flex:none}.side-toc ul{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.side-toc ul ul{display:none}.side-toc a{text-decoration:none;color:var(--ps-silver)}.side-toc a:hover{color:var(--ps-white)}.side-tags a{font-family:var(--ps-mono);font-size:.78rem;margin-right:.5rem}.side-path{font-family:var(--ps-mono);font-size:.75rem;color:var(--ps-silver);margin:0;word-break:break-all}.side-path::before{content:"> "}.side-block .lang{font-family:var(--ps-mono);font-size:.8rem}.page-head--list{padding-bottom:2rem}.page-head--list h1{text-transform:uppercase}.post-hero{margin:1.75rem 0 0}.post-hero__frame{position:relative;background:var(--ps-panel)}.post-hero__frame img{width:100%;aspect-ratio:1376/768;object-fit:cover}.post-hero__frame iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:var(--ps-ink)}.post-hero__frame::before,.post-hero__frame::after{content:"";position:absolute;width:18px;height:18px;border:1.5px solid var(--ps-white)}.post-hero__frame::before{top:-6px;left:-6px;border-right:0;border-bottom:0}.post-hero__frame::after{bottom:-6px;right:-6px;border-left:0;border-top:0}.post-hero figcaption{font-family:var(--ps-mono);font-size:.72rem;color:var(--ps-silver);margin-top:.6rem}.ai-tag{--c:var(--ps-white);position:absolute;top:.6rem;right:.6rem;padding:.2rem .45rem;background:rgba(6,8,11,.78);border:1px solid var(--c);color:var(--c);font-family:var(--ps-mono);font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.ai-tag--red{--c:var(--ps-red)}.ai-tag--blue{--c:var(--ps-blue)}:root{--header-h:5.4rem}html{scroll-padding-top:calc(var(--header-h) + 1rem)}.site-header{position:sticky;top:0;z-index:20;background:rgba(6,8,11,.97);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.header-row{display:grid;grid-template-columns:auto minmax(0,1fr)auto;align-items:center;gap:.6rem 2rem;padding-block:.75rem}.header-row .term{padding-left:1.5rem;border-left:1px solid var(--ps-line)}@media(max-width:63.99rem){:root{--header-h:8rem}.header-row{grid-template-columns:auto auto}.header-row .term{grid-column:1/-1;grid-row:2;padding:.5rem 0 0;border-left:0;border-top:1px solid var(--ps-line)}}@media(max-width:40rem){:root{--header-h:8.5rem}.header-row{grid-template-columns:1fr}.header-row nav{grid-row:2}.header-row .term{grid-row:3;--rows:1}}.share{margin:2.5rem 0 1.5rem;padding:1.25rem 1.25rem 1rem;position:relative;background:var(--ps-panel)}.share::before,.share::after{content:"";position:absolute;width:12px;height:12px;border:1.5px solid var(--ps-white)}.share::before{top:0;left:0;border-right:0;border-bottom:0}.share::after{bottom:0;right:0;border-left:0;border-top:0}.share__title{font-family:var(--ps-display);font-weight:600;font-size:var(--step-1);text-transform:uppercase;margin:0 0 .3rem}.share__lead{color:var(--ps-silver);font-size:.95rem;margin:0 0 1rem}.share__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.share__btn{display:inline-block;padding:.45rem .8rem;border:1px solid var(--ps-line);color:var(--ps-white);font-family:var(--ps-mono);font-size:.78rem;letter-spacing:.03em;text-decoration:none}.share__btn::before{content:"> ";color:var(--ps-silver)}.share__btn:hover{border-color:var(--ps-white);background:var(--ps-white-dim)}.share__url{margin:1rem 0 0;font-family:var(--ps-mono);font-size:.72rem;color:var(--ps-silver);overflow-wrap:anywhere}.share__url-text{color:var(--ps-white);user-select:all;-webkit-user-select:all}.share--compact{margin:0 0 1.75rem;padding:0;background:0 0}.share--compact::before,.share--compact::after{display:none}.share--compact .share__list{gap:.35rem}.share--compact .share__btn{padding:.3rem .55rem;font-size:.7rem}@media(max-width:63.99rem){.page-side .share--compact{display:none}}.crew-tags--long{margin:1rem 0 2rem!important}@media(min-width:48rem){.prose .crew-tags--long{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:47.99rem){.prose .crew-tags--long{grid-template-columns:1fr}}.crew-tags--long .crew-tag{padding:.9rem 1rem 1rem}.crew-tags--long .crew-tag__role{font-size:.95rem;line-height:1.55;margin-top:.55rem!important}.crew-tags--long .crew-tag__ai{margin-top:.2rem!important}.prose .crew-photo{margin-bottom:0}.prose .flow{list-style:none;margin:1.5rem 0 2.5rem;padding:0;position:relative}.flow::before{content:"";position:absolute;left:1.05rem;top:.6rem;bottom:.6rem;width:2px;background:linear-gradient(to bottom,var(--ps-line),var(--ps-silver) 50%,var(--ps-line))}.flow__step{position:relative;display:grid;grid-template-columns:2.1rem minmax(0,1fr);gap:1.1rem;padding-bottom:1.6rem;margin:0!important}.flow__step:last-child{padding-bottom:0}.flow__node{position:relative;z-index:1;width:2.1rem;height:2.1rem;display:grid;place-items:center;font-family:var(--ps-mono);font-weight:700;font-size:.85rem;color:var(--ps-ink);box-shadow:0 0 0 4px var(--ps-ink)}.flow__node--red{background:var(--ps-red)}.flow__node--blue{background:var(--ps-blue)}.flow__node--white{background:var(--ps-white)}.flow__node--red-blue{background:linear-gradient(135deg,var(--ps-red) 0 50%,var(--ps-blue) 50% 100%)}.flow__node--white-blue{background:linear-gradient(135deg,var(--ps-white) 0 50%,var(--ps-blue) 50% 100%)}.flow__node--red-white{background:linear-gradient(135deg,var(--ps-red) 0 50%,var(--ps-white) 50% 100%)}.flow__node--red-white-blue{background:linear-gradient(135deg,var(--ps-red) 0 33.3%,var(--ps-white) 33.3% 66.6%,var(--ps-blue) 66.6% 100%)}.flow__node span{background:rgba(6,8,11,.82);color:var(--ps-white);padding:0 .3rem;line-height:1.35}.flow__body{padding-top:.1rem}.flow__who{display:flex;flex-wrap:wrap;align-items:center;gap:0 .2rem;margin:0 0 .25rem!important;font-family:var(--ps-mono);font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.flow__avatars{display:inline-flex;margin-right:.45rem}.flow__av{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--ps-white);background:var(--ps-ink)}.flow__av+.flow__av{margin-left:-8px}.flow__av--red{border-color:var(--ps-red)}.flow__av--blue{border-color:var(--ps-blue)}.flow__name--red{color:var(--ps-red)}.flow__name--blue{color:var(--ps-blue)}.flow__name--white{color:var(--ps-white)}.flow__plus{color:var(--ps-silver)}.prose .flow__title{font-size:var(--step-1);margin:0 0 .3rem}.flow__text{margin:0!important;color:var(--ps-silver)}.prose .flow__notes{margin:.5rem 0 0;padding-left:1.1rem;color:var(--ps-silver)}.prose .flow__notes li{margin:.25rem 0}.appendix{--c:var(--ps-white);position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);gap:1.1rem 1.4rem;max-width:var(--measure);margin:3rem 0 2.5rem;padding:1.6rem 1.6rem 1.5rem;background:linear-gradient(var(--ps-white-dim),var(--ps-white-dim)),repeating-linear-gradient(0,transparent 0 23px,rgba(238,243,246,.035) 23px 24px),repeating-linear-gradient(90deg,transparent 0 23px,rgba(238,243,246,.035) 23px 24px),var(--ps-panel);border:1px solid var(--ps-line)}.appendix::before,.appendix::after{content:"";position:absolute;width:20px;height:20px;border:2px solid var(--c);pointer-events:none}.appendix::before{top:-6px;left:-6px;border-right:0;border-bottom:0}.appendix::after{bottom:-6px;right:-6px;border-left:0;border-top:0}.appendix__doc{position:relative;align-self:start;width:48px;height:60px;margin-top:.3rem;color:var(--ps-white)}.appendix__doc svg{display:block}.appendix__doc span{position:absolute;left:-6px;bottom:8px;padding:.05rem .3rem;background:var(--ps-white);color:var(--ps-ink);font-family:var(--ps-mono);font-size:.62rem;font-weight:700;letter-spacing:.06em}.appendix__body>*{margin:0}.prose .appendix p{margin:0}.appendix__label{font-family:var(--ps-mono);font-size:.74rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ps-silver)}.appendix__label::before{content:"> "}.prose .appendix .appendix__title{font-size:var(--step-2);line-height:1.15;margin:.35rem 0 .6rem}.prose .appendix .appendix__lead{color:var(--ps-white);opacity:.9;margin-bottom:.6rem}.prose .appendix .appendix__meta{font-family:var(--ps-mono);font-size:.78rem;color:var(--ps-silver);margin-bottom:1.1rem}.appendix__actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.1rem;min-height:44px;font-family:var(--ps-mono);font-size:var(--step--1);font-weight:600;letter-spacing:.02em;text-decoration:none;color:var(--ps-white);border:1.5px solid var(--ps-white);background:0 0}.btn:hover{background:var(--ps-white-dim);text-decoration:none}.btn--primary{background:var(--ps-white);color:var(--ps-ink)}.btn--primary::before{content:"↓";font-weight:700}.btn--primary:hover{background:#fff;color:var(--ps-ink)}@media(max-width:30rem){.appendix{grid-template-columns:1fr;padding:1.25rem 1.1rem}.appendix__doc{display:none}.btn{width:100%;justify-content:center}}.post-pdf{font-family:var(--ps-mono);color:var(--ps-white);white-space:nowrap}a.post-pdf{text-decoration-color:var(--ps-silver)}.side-appendix a{font-family:var(--ps-mono);font-size:var(--step--1)}.side-appendix p{margin:0 0 .4rem}.side-appendix__meta{font-family:var(--ps-mono);font-size:.72rem;color:var(--ps-silver)}@media print{.appendix{background:0 0;border:1px solid #000}.btn--primary{color:#000;background:0 0}}.post-updated{color:var(--ps-ink,#06080B);background:var(--ps-white);padding:0 .4rem;text-decoration:none;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.updates-box{border:1.5px solid var(--ps-white);padding:.9rem 1.1rem;margin:0 0 1.75rem;scroll-margin-top:5rem}.updates-box__label{margin:0 0 .4rem;font-family:var(--ps-mono);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ps-silver)}.updates-box ol{list-style:none;margin:0;padding:0}.updates-box li{padding:.35rem 0;border-top:1px solid var(--ps-line)}.updates-box li:first-child{border-top:0}.updates-box time{font-family:var(--ps-mono);font-size:.8rem;color:var(--ps-silver);margin-right:.5rem}.updates-box li p{display:inline;margin:0}.rovatok{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin:0 0 2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--ps-line);font-family:var(--ps-mono);font-size:var(--step--1)}.rovatok__label{color:var(--ps-silver)}.rovatok__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.rovat{display:inline-flex;align-items:baseline;gap:.45rem;padding:.35rem .75rem;border:1px solid var(--ps-line);color:var(--ps-silver);text-decoration:none;line-height:1.3}.rovat:hover{color:var(--ps-white);border-color:var(--ps-silver);text-decoration:none}.rovat[aria-current=page]{color:var(--ps-ink);background:var(--ps-white);border-color:var(--ps-white)}.rovat__n{font-size:.72rem;opacity:.7}.rovat[aria-current=page] .rovat__n{opacity:.8}@media(max-width:30rem){.rovatok__list{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:.25rem;scrollbar-width:thin}.rovat{white-space:nowrap}}a.post-type:hover{text-decoration:underline}