.hero{isolation:isolate;min-height:calc(100vh - var(--hdr));min-height:calc(100svh - var(--hdr));text-align:center;justify-content:center;align-items:center;padding:24px 0;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:-1;pointer-events:none;position:absolute;inset:0;-webkit-mask-image:radial-gradient(55% 50% at 50% 52%,#00000059 0,#000 90%);mask-image:radial-gradient(55% 50% at 50% 52%,#00000059 0,#000 90%)}.hero-bg-mount{opacity:0;transition:opacity .8s;position:absolute;inset:0}.hero-bg-mount[data-ready]{opacity:1}.hero-bg canvas{image-rendering:crisp-edges;image-rendering:pixelated}.wordmark.pm-wrap{--pmfs:6.6667px;aspect-ratio:auto;place-items:center;width:auto;display:grid}.pm-lockup{align-items:flex-start;display:flex}.pm-ascii{text-align:left;font:700 var(--pmfs) / 1 var(--ps-font-mono);letter-spacing:0;color:var(--ps-accent);white-space:pre;user-select:none;margin:0}.hero h1{max-width:30em;font:600 30px/36px var(--ps-font-heading);letter-spacing:-.022em;text-wrap:balance;margin:54px auto 0}.hero h1 .muted{color:var(--ps-muted)}.tools{max-width:46rem;font:400 13px/20px var(--ps-font-mono);letter-spacing:-.01em;color:var(--ps-muted);text-wrap:balance;margin:14px auto 0}.tools>span{white-space:nowrap}.actions{justify-content:center;gap:20px;margin-top:36px;display:flex}.actions .btn{height:40px;padding:0 16px;font-size:15px}.demo-band{border-top:1px solid var(--ps-border);padding:72px 0 88px}.desk-wrap{text-align:left;margin-top:0}.desk{border:1px solid var(--ps-win-border);background:var(--ps-surface-2);padding:var(--ps-gap);position:relative}.tiles{gap:var(--ps-gap);height:452px;display:grid}.tiles.s1{grid-template:"t a"1fr/1fr 0fr}.tiles.s2{grid-template:"t a"1fr"t a"0fr/.86fr 1.14fr}.tiles.s3{grid-template:"t a"1.25fr"t b".75fr/.86fr 1.14fr}.tiles.s4{grid-template:"t a a"1.25fr"t b c".75fr/.86fr .62fr .52fr}.w{background:var(--ps-surface);border:2px solid var(--ps-win-border);flex-direction:column;min-width:0;min-height:0;display:flex}.w.on{border-color:var(--ps-accent)}.w-t{background:var(--ps-code-bg);border-bottom:1px solid var(--ps-border);height:28px;font:12px/1 var(--ps-font-mono);color:var(--ps-text);white-space:nowrap;flex:none;align-items:center;gap:10px;padding:0 10px;display:flex;overflow:hidden}.w-tt{text-overflow:ellipsis;overflow:hidden}.w-b{min-height:0;font:13px/1.7 var(--ps-font-mono);color:var(--ps-code-text);scrollbar-width:thin;scrollbar-color:var(--ps-win-border) transparent;flex:1;padding:12px 14px;overflow:auto}.w-b .ln{white-space:pre-wrap;text-indent:-2.6em;padding-left:2.6em;display:block}.w-b .ln i{text-indent:0;width:2.6em;color:var(--ps-ink-gutter);font-style:normal;display:inline-block}.w-b .h{color:var(--ps-text);font-weight:600}.w-b .fill{background:var(--ps-accent-soft);color:var(--ps-accent)}.term .q{color:var(--ps-accent)}.term .a{color:var(--ps-text);font-weight:600}.term .ok{color:var(--ps-ansi-green)}.term .c{color:var(--ps-muted)}.term .row{white-space:pre;display:block}.caret{vertical-align:-.15em;background:var(--ps-accent);width:.6em;height:1.05em;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.desk-cap{font:12.5px/1.4 var(--ps-font-sans);color:var(--ps-muted);align-items:center;gap:16px;margin-top:10px;display:flex}.desk-cap button{height:26px;font:12.5px/1 var(--ps-font-sans);color:var(--ps-text);background:var(--ps-surface);border:1px solid var(--ps-win-border);cursor:pointer;align-items:center;gap:6px;margin-left:auto;padding:0 10px;display:inline-flex}.desk-cap button:hover{border-color:var(--ps-accent)}.desk-cap kbd{min-width:20px;height:20px;font:500 11px/1 var(--ps-font-mono);color:var(--ps-text);background:var(--ps-surface);border:1px solid var(--ps-win-border);border-bottom-width:2px;justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.mtabs{display:none}.v-b .w.on .w-tt:before{content:"* ";color:var(--ps-accent)}.v-b .pbar{color:var(--ps-ink-gutter)}.v-b .pbar b{color:var(--ps-accent);font-weight:400}.v-b .w-b .caret{width:.55em;height:1.05em}@media (prefers-reduced-motion:no-preference){.v-b .w.pop{animation:.2s steps(5,end) both wipe}.v-b .ok.stamp{animation:.6s step-end both stamp}}@keyframes wipe{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes stamp{0%{background:var(--ps-ansi-green);color:#fff}30%{color:var(--ps-ansi-green);background:0 0}45%{background:var(--ps-ansi-green);color:#fff}60%,to{color:var(--ps-ansi-green);background:0 0}}@media (width<=959px){.wordmark.pm-wrap{--pmfs:5px}}.pm-stack{flex-direction:column;align-items:flex-start;display:none}.pm-stack .pm-lockup{margin-top:calc(var(--pmfs) * 4)}@media (width<=719px){.hero{padding:16px 0}.hero .wrap-wide,.demo-band .wrap-wide{padding-inline:16px}.pm-wide{display:none}.pm-stack{display:flex}.hero h1{margin-top:32px;font-size:22px;line-height:28px}.tools{max-width:22rem;margin-top:12px;font-size:12px;line-height:18px}.actions{margin-top:28px;flex-direction:column;align-items:stretch;max-width:22rem;margin-inline:auto}.actions .btn{height:44px}.demo-band{padding:48px 0 56px}.hide-m{display:none}.tiles .w{grid-area:auto!important}.tiles,.tiles.s1,.tiles.s2,.tiles.s3,.tiles.s4{grid-template:"t""a"/1fr;height:auto}.tiles .w.term{height:240px}.tiles .w.doc{height:300px;display:none}.tiles .w.doc.on{display:flex}.tiles.s1 .w.doc{display:none}.mtabs{gap:4px;margin:0 0 8px;display:flex}.mtabs button{height:32px;font:12px/1 var(--ps-font-mono);background:var(--ps-surface);color:var(--ps-muted);border:1px solid var(--ps-win-border);flex:1}.mtabs button[aria-pressed=true]{color:#fff;background:var(--ps-accent);border-color:var(--ps-accent)}}@media (width<=359px){.wordmark.pm-wrap{--pmfs:3.3333px}}@media (prefers-reduced-motion:reduce){.hero-bg-mount,.desk *,.desk :before,.desk :after,.pm-dot{transition:none!important;animation:none!important}}.band{border-top:1px solid var(--ps-border)}.band.alt{background:var(--ps-surface-2)}.sec{padding-block:80px}.sec-h{align-items:flex-end;gap:40px;margin-bottom:28px;display:flex}.sec-h p{max-width:40rem;color:var(--ps-muted);margin:8px 0 0}.sec-h .more,.bagents .more{white-space:nowrap;font:14px/1 var(--ps-font-sans);color:var(--ps-accent);margin-left:auto;text-decoration:none}.sec-h .more:hover,.bagents .more:hover{color:var(--ps-accent-hover);text-decoration:underline}.bento{gap:var(--ps-gap);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.bsteps{gap:var(--ps-gap);grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}.bc{background:var(--ps-surface);border:2px solid var(--ps-win-border);height:100%;color:inherit;flex-direction:column;gap:6px;padding:18px 18px 14px;text-decoration:none;transition:border-color .16s;display:flex}.bc:hover{border-color:var(--ps-accent)}.bc-h{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.bc-side{align-items:center;gap:8px;display:inline-flex}.boot-ok{font:500 11px/1 var(--ps-font-mono);letter-spacing:.04em;color:var(--ps-accent)}.bc-h b{font:500 12px/1 var(--ps-font-mono);color:var(--ps-accent)}.pxi{width:28px;height:28px;color:var(--ps-accent);flex:none}.bc .ct{font:600 19px/1.25 var(--ps-font-heading)}.bc .cd,.task .cd,.pc .cd{color:var(--ps-muted);font-size:15px;line-height:1.55}.bc-a,.task-f,.pc-f{border-top:1px dashed var(--ps-win-border);font:11.5px/1.5 var(--ps-font-mono);color:var(--ps-code-text);overflow-wrap:anywhere;flex-direction:column;gap:2px;margin-top:auto;padding-top:10px;display:flex}.bc-a i,.task-f i,.pc-f i{color:var(--ps-ink-label);font-style:normal}.bc-a .ok{color:var(--ps-ansi-green)}.bagents{background:var(--ps-surface);border:2px solid var(--ps-win-border);flex-direction:column;min-width:0;padding:20px;display:flex}.bagents-h{align-items:baseline;gap:16px;margin-bottom:14px;display:flex}.bagents h3{margin:0}.chips{border-top:1px solid var(--ps-border);flex:1;grid-template-columns:1fr 1fr;gap:0;display:grid}.chip{border-bottom:1px solid var(--ps-border);min-width:0;color:inherit;grid-template-rows:auto auto;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:3px 12px;padding:12px 4px;text-decoration:none;display:grid}.chip:nth-child(odd){padding-right:14px}.chip:nth-child(2n){border-left:1px solid var(--ps-border);padding-left:14px}a.chip:hover .cn{color:var(--ps-accent)}.chip .lg{grid-row:1/3}.chip .cn{font:600 15px/1.2 var(--ps-font-sans)}.chip code{font:12px/1.3 var(--ps-font-mono);color:var(--ps-accent);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lg{width:24px;height:24px;color:var(--ps-text)}.lg.mono{font:700 10px/1 var(--ps-font-mono);letter-spacing:-.04em;border:1.5px solid;place-items:center;display:inline-grid}.tasks{gap:var(--ps-gap);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.task{background:var(--ps-surface);border:2px solid var(--ps-win-border);min-width:0;height:100%;color:inherit;flex-direction:column;gap:8px;padding:18px 20px 16px;text-decoration:none;transition:border-color .16s;display:flex}.task:hover{border-color:var(--ps-accent)}.task:hover .ct{color:var(--ps-accent)}.task-h,.pc-h{align-items:center;gap:12px;margin-bottom:2px;display:flex}.task .ct,.pc .ct{font:600 19px/1.25 var(--ps-font-heading)}.pc .ct{color:var(--ps-text);text-decoration:none}.task-m{flex-wrap:wrap;align-items:center;gap:6px;padding-top:4px;display:flex}.task-m .tag{height:24px;font:12px/1 var(--ps-font-mono);color:var(--ps-code-text);background:var(--ps-code-bg);border:1px solid var(--ps-border);align-items:center;gap:6px;padding:0 8px;display:inline-flex}.task-m .tag.file{color:var(--ps-accent);background:var(--ps-accent-soft);border-color:#0000}.task-m .ar{font:12px/1 var(--ps-font-mono);color:var(--ps-accent)}.task-m .lg{width:14px;height:14px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.pcs{gap:var(--ps-gap);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.tasks>.reveal-scan,.pcs>.reveal-scan{min-width:0}.pcs>.reveal-scan{flex-direction:column;display:flex}.pcs>.reveal-scan>.pc{flex:1;width:100%}.pc{background:var(--ps-surface);border:2px solid var(--ps-win-border);flex-direction:column;gap:8px;min-width:0;padding:18px 18px 14px;transition:border-color .16s;display:flex;position:relative}.pc:hover{border-color:var(--ps-accent)}.pc .ct:after{content:"";position:absolute;inset:0}.pc:hover .ct{color:var(--ps-accent)}.pc-f .fill{background:var(--ps-accent-soft);color:var(--ps-accent)}.pc-m{align-items:center;gap:10px;padding-top:4px;display:flex}.copy{z-index:1;height:28px;font:12px/1 var(--ps-font-mono);color:var(--ps-text);background:var(--ps-code-bg);border:1px solid var(--ps-win-border);cursor:pointer;align-items:center;gap:6px;padding:0 10px;display:inline-flex;position:relative}.copy:hover{border-color:var(--ps-accent);color:var(--ps-accent)}.copy:focus-visible{outline:2px solid var(--ps-accent);outline-offset:2px}.copy .ci{width:14px;height:14px}.copy.done{color:var(--ps-ansi-green);border-color:var(--ps-ansi-green)}.pc-n{font:12px/1 var(--ps-font-mono);color:var(--ps-muted);margin-left:auto}.posts{gap:var(--ps-gap);margin:0;padding:0;list-style:none;display:grid}.post{background:var(--ps-surface);border:2px solid var(--ps-win-border);color:inherit;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 20px 16px 16px;text-decoration:none;transition:border-color .16s;display:grid}.post:hover{border-color:var(--ps-accent)}.post-i{background:var(--ps-code-bg);border:1px dashed var(--ps-win-border);place-items:center;width:52px;height:52px;display:grid}.post-b{flex-direction:column;gap:4px;min-width:0;display:flex}.post-f{font:12px/1.3 var(--ps-font-mono);color:var(--ps-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.post-t{font:600 19px/1.3 var(--ps-font-heading)}.post:hover .post-t,.post:hover .post-a{color:var(--ps-accent)}.post-d{color:var(--ps-muted);font-size:15px}.post-a{font:14px/1 var(--ps-font-mono);color:var(--ps-muted)}@media (width<=719px){.sec{padding-block:56px}.band .wrap-wide{padding-inline:16px}.bento,.tasks,.pcs{grid-template-columns:1fr}.bsteps{grid-template-columns:1fr 1fr}.bc{padding:14px 12px 12px}.bc .ct,.task .ct,.pc .ct,.post-t{font-size:17px}.bc .cd,.task .cd,.pc .cd,.post-d{font-size:14px}.bc-a{font-size:11px}.chips{grid-template-columns:1fr}.chip:nth-child(n){border-left:0;padding:11px 0}.task,.pc{padding:16px 14px 12px}.post{grid-template-columns:40px minmax(0,1fr);gap:12px;padding:14px 12px}.post-i{width:40px;height:40px}.post .pxi{width:22px;height:22px}.post-a{display:none}}@keyframes type-in{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes caret-blink{0%{opacity:1}50%,to{opacity:0}}@keyframes boot-in{0%{opacity:0}to{opacity:1}}@keyframes scanline{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes hard-shadow{0%{box-shadow:4px 4px #0000}to{box-shadow:4px 4px 0 var(--ps-text)}}@keyframes line-in{0%{opacity:0;transform:translate(4px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:no-preference){.pm-dot{animation:1s step-end infinite blink}}.reveal-type{width:fit-content;max-width:100%;position:relative}.type-text{display:inline-block}.type-caret{color:var(--ps-accent);opacity:0;pointer-events:none;font-family:ui-monospace,monospace;font-size:.72em;font-weight:400;line-height:1;position:absolute;top:.08em;left:calc(100% + .08em)}.reveal-scan{box-shadow:4px 4px 0 var(--ps-text)}html.js .reveal-type:not(.is-visible) .type-text{clip-path:inset(0 100% 0 0)}html.js .reveal-type.is-visible .type-text{animation:type-in .48s steps(var(--steps,12), end) both}html.js .reveal-type.is-visible .type-caret{animation:.3s step-end .48s 2 forwards caret-blink}html.js .reveal-step:not(.is-visible),html.js .reveal-step:not(.is-visible) .boot-ok{opacity:0}html.js .reveal-step.is-visible{animation:.4s steps(4,end) both boot-in;animation-delay:calc(var(--i,0) * .15s)}html.js .reveal-step.is-visible .boot-ok{animation:.2s step-end both boot-in;animation-delay:calc(var(--i,0) * .15s + .32s)}html.js .reveal-scan{box-shadow:none}html.js .reveal-scan:not(.is-visible)>:is(.task,.pc){clip-path:inset(0 0 100%)}html.js .reveal-scan.is-visible>:is(.task,.pc){clip-path:none;animation:.42s steps(8,end) backwards scanline;animation-delay:calc(var(--i,0) * 90ms)}html.js .reveal-scan.is-visible{animation:80ms step-end both hard-shadow;animation-delay:calc(var(--i,0) * 90ms + .42s)}html.js .reveal-line:not(.is-visible){opacity:0;transform:translate(4px)}html.js .reveal-line.is-visible{animation:.36s steps(3,end) both line-in;animation-delay:calc(var(--i,0) * 60ms)}@media (prefers-reduced-motion:reduce){html.js .reveal-type:not(.is-visible) .type-text,html.js .reveal-type.is-visible .type-text,html.js .reveal-step:not(.is-visible),html.js .reveal-step.is-visible,html.js .reveal-step:not(.is-visible) .boot-ok,html.js .reveal-step.is-visible .boot-ok,html.js .reveal-scan:not(.is-visible)>:is(.task,.pc),html.js .reveal-scan.is-visible>:is(.task,.pc),html.js .reveal-line:not(.is-visible),html.js .reveal-line.is-visible{clip-path:none;opacity:1;animation:none;transform:none}html.js .reveal-scan,html.js .reveal-scan.is-visible{box-shadow:4px 4px 0 var(--ps-text);animation:none}.type-caret,html.js .reveal-type.is-visible .type-caret{opacity:0;animation:none}.pm-dot{opacity:1;animation:none}}.grid-pattern[data-astro-cid-t6grd3t3]{pointer-events:none;color:#ffffff17;width:100%;height:100%;position:absolute;inset:0}
