@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic-ext.ca157063.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic.71d5ee93.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-greek-ext.6e9e020a.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-greek.1be3448e.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-vietnamese.5c66f9e0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext.34b9c504.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.3100e775.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/jetbrains-mono-cyrillic-ext.62213be8.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/jetbrains-mono-cyrillic.e17cfd15.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/jetbrains-mono-greek.0a557721.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/jetbrains-mono-vietnamese.c89b9cc0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-ext.db5ff4db.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/jetbrains-mono-latin.83c005d4.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{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#050b12;--bg-raised:#08111c;--surface:#0b1623;--surface-2:#0e1c2c;--line:#94a3b824;--line-strong:#94a3b842;--line-accent:#38bdf861;--text:#f8fafc;--text-2:#a8b3c2;--text-3:#74849b;--accent:#38bdf8;--accent-bright:#56ccff;--accent-deep:#0ea5e9;--accent-cyan:#22d3ee;--violet:#8b9bff;--on-accent:#04101a;--accent-soft:#38bdf81a;--accent-faint:#38bdf80d;--glow:0 0 24px #38bdf833;--glow-strong:0 0 28px #38bdf84d;--st-active:#5fd0a8;--st-development:#e0b55c;--st-beta:#8fa8ff;--st-experimental:#b794f6;--st-maintained:#7db4d8;--st-archived:#8a94a6;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-lg:clamp(1.05rem, 1rem + .25vw, 1.2rem);--fs-h3:clamp(1.2rem, 1.1rem + .5vw, 1.5rem);--fs-h2:clamp(1.9rem, 1.3rem + 2.6vw, 3.1rem);--fs-h1:clamp(2.5rem, 1.4rem + 5vw, 5.4rem);--r-sm:6px;--r-md:10px;--r-lg:14px;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4.5rem;--section:clamp(4rem, 2.5rem + 5.5vw, 7.5rem);--ease:cubic-bezier(.2, .7, .2, 1);--t-fast:.14s;--t:.22s;--container:72.5rem;--gutter:clamp(1.25rem, 4vw, 2.5rem);--nav-h:4rem;--shadow-card:0 1px 0 #ffffff06 inset, 0 14px 34px -18px #000000a6;--shadow-pop:0 18px 50px -20px #000c}
*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 1.5rem)}body{background:var(--bg);min-height:100dvh;color:var(--text-2);font-family:var(--font-sans);font-size:var(--fs-base);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;flex-direction:column;margin:0;line-height:1.65;display:flex;overflow-x:clip}main{flex:1 0 auto}h1,h2,h3,h4{color:var(--text);text-wrap:balance;margin:0;font-weight:600}h1{font-size:var(--fs-h1);letter-spacing:-.045em;line-height:1.02}h2{font-size:var(--fs-h2);letter-spacing:-.035em;line-height:1.08}h3{font-size:var(--fs-h3);letter-spacing:-.02em;line-height:1.2}p{text-wrap:pretty;margin:0}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}a:not([class]){color:var(--accent);text-underline-offset:.2em}a:not([class]):hover{text-decoration:underline}:is(h1,h2,h3,h4) a:not([class]){color:inherit}:is(h1,h2,h3,h4) a:not([class]):hover{text-decoration:none}img,svg{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}code,kbd,.mono{font-family:var(--font-mono)}::selection{color:var(--text);background:#38bdf852}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-sm)}.skip-link{left:var(--s-4);z-index:200;padding:var(--s-3) var(--s-4);background:var(--accent);color:var(--on-accent);border-radius:var(--r-md);transition:top var(--t-fast) var(--ease);font-weight:600;position:fixed;top:-4rem}.skip-link:focus{top:var(--s-4)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.backdrop{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.backdrop:before{content:"";background-image:linear-gradient(90deg,#94a3b812 1px,#0000 1px),linear-gradient(#94a3b812 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 55% at 50% 0,#000 0%,#0000 75%);mask-image:radial-gradient(80% 55% at 50% 0,#000 0%,#0000 75%)}.backdrop:after{content:"";will-change:opacity;background:radial-gradient(circle,#38bdf812,#0000 62%);width:70vw;max-width:900px;height:70vw;max-height:900px;animation:14s ease-in-out infinite alternate ambient;position:absolute;top:-20%;right:-10%}@keyframes ambient{0%{opacity:.6}to{opacity:1}}.noise{opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.js [data-reveal]{opacity:0;transition:opacity .38s var(--ease), transform .38s var(--ease);transform:translateY(12px)}.js [data-reveal].in{opacity:1;transform:none}.js [data-reveal][data-delay="1"]{transition-delay:60ms}.js [data-reveal][data-delay="2"]{transition-delay:.12s}.js [data-reveal][data-delay="3"]{transition-delay:.18s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.js [data-reveal]{opacity:1;transform:none}}
.container{width:min(100% - 2 * var(--gutter), var(--container));margin-inline:auto}.section{padding-block:var(--section);position:relative}.section--flush-top{padding-top:0}.section--rule{border-top:1px solid var(--line)}.eyebrow{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.65rem;font-weight:500;display:inline-flex}.eyebrow:before{content:"";opacity:.7;background:currentColor;width:1.25rem;height:1px}.eyebrow--quiet{color:var(--text-3);letter-spacing:.1em}.eyebrow--quiet:before{display:none}.cmd{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-3);letter-spacing:0;align-items:baseline;gap:.5ch;display:inline-flex}.cmd-prompt{color:var(--accent)}.cmd--brand{color:var(--text-2);letter-spacing:.06em;font-weight:600}.mono{font-family:var(--font-mono)}.sh{justify-content:space-between;align-items:flex-end;gap:var(--s-6);margin-bottom:var(--s-7);flex-wrap:wrap;display:flex}.sh-main{max-width:44rem}.sh-title{margin-top:var(--s-4);font-size:var(--fs-h2)}.sh-title--page{letter-spacing:-.04em;font-size:clamp(2.3rem,1.3rem + 3.8vw,4rem);line-height:1.04}.sh-text{margin-top:var(--s-4);max-width:38rem;font-size:var(--fs-lg);color:var(--text-2)}.sh-action{flex:none}.btn{--btn-bg:transparent;--btn-fg:var(--text);--btn-bd:transparent;border:1px solid var(--btn-bd);border-radius:var(--r-md);background:var(--btn-bg);min-height:2.875rem;color:var(--btn-fg);letter-spacing:-.005em;white-space:nowrap;transition:background var(--t) var(--ease), border-color var(--t) var(--ease), color var(--t) var(--ease), box-shadow var(--t) var(--ease), transform var(--t-fast) var(--ease);justify-content:center;align-items:center;gap:.55rem;padding:0 1.3rem;font-size:.95rem;font-weight:550;line-height:1;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-icon{transition:transform var(--t) var(--ease);flex:none}.btn:hover .btn-icon--trail{transform:translate(3px)}.btn--primary{--btn-bg:var(--accent);--btn-fg:var(--on-accent);box-shadow:0 0 #38bdf800}.btn--primary:hover{--btn-bg:var(--accent-bright);box-shadow:var(--glow)}.btn--secondary{--btn-bg:#ffffff06;--btn-bd:var(--line-strong)}.btn--secondary:hover{--btn-bd:var(--line-accent);--btn-bg:var(--accent-faint)}.btn--ghost{--btn-fg:var(--text-2);padding-inline:.75rem}.btn--ghost:hover{--btn-fg:var(--text);--btn-bg:#ffffff0a}.btn--sm{border-radius:var(--r-sm);gap:.45rem;min-height:2.375rem;padding:0 1rem;font-size:.875rem}.btn--sm.btn--ghost{padding-inline:.65rem}.copy.is-copied{--btn-bd:var(--line-accent);--btn-fg:var(--accent-bright)}.icon-btn{border-radius:var(--r-md);width:2.5rem;height:2.5rem;color:var(--text-2);transition:color var(--t) var(--ease), border-color var(--t) var(--ease), background var(--t) var(--ease);border:1px solid #0000;place-items:center;display:inline-grid}.icon-btn:hover{color:var(--text);border-color:var(--line-strong);background:#ffffff08}[data-status=active]{--c:var(--st-active)}[data-status=development]{--c:var(--st-development)}[data-status=beta]{--c:var(--st-beta)}[data-status=experimental]{--c:var(--st-experimental)}[data-status=maintained]{--c:var(--st-maintained)}[data-status=archived]{--c:var(--st-archived)}.status{--sc:var(--c,var(--text-3));border:1px solid color-mix(in srgb, var(--sc) 30%, transparent);background:color-mix(in srgb, var(--sc) 10%, transparent);height:1.625rem;color:var(--sc);font-family:var(--font-mono);letter-spacing:.02em;white-space:nowrap;border-radius:999px;align-items:center;gap:.45rem;padding:0 .65rem;font-size:.6875rem;font-weight:500;display:inline-flex}.status-dot{background:currentColor;border-radius:50%;flex:none;width:.4rem;height:.4rem}.status[data-status=development] .status-dot{animation:2.4s ease-in-out infinite blink}@keyframes blink{50%{opacity:.35}}.pulse-dot{background:var(--st-active);border-radius:50%;flex:none;width:.5rem;height:.5rem;position:relative}.pulse-dot:after{content:"";border:1px solid var(--st-active);opacity:0;border-radius:50%;animation:2.6s ease-out infinite pulse;position:absolute;inset:-.3rem}@keyframes pulse{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(1.5)}}.tech-list{flex-wrap:wrap;gap:.4rem;display:flex}.tech{border:1px solid var(--line);border-radius:var(--r-sm);color:var(--text-2);font-family:var(--font-mono);background:#ffffff05;padding:.2rem .55rem;font-size:.72rem;line-height:1.5}.tech--more{color:var(--text-3)}.picon{--size:3.25rem;width:var(--size);height:var(--size);border:1px solid var(--line);border-radius:calc(var(--size) * .26);background:var(--surface-2);flex:none;place-items:center;display:grid;overflow:hidden}.picon--sm{--size:2.5rem}.picon--md{--size:3.25rem}.picon--lg{--size:4.5rem}.picon--xl{--size:6rem}.picon img{object-fit:contain;width:100%;height:100%;padding:12%}.picon[data-placeholder]{border-color:color-mix(in srgb, var(--p-accent,var(--accent)) 35%, transparent);background:linear-gradient(140deg, color-mix(in srgb, var(--p-accent,var(--accent)) 24%, var(--surface-2)), var(--surface-2) 80%)}.picon-initials{color:var(--p-accent,var(--accent-bright));font-family:var(--font-mono);font-size:calc(var(--size) * .34);letter-spacing:-.02em;font-weight:600}.skeleton{color:#0000;-webkit-user-select:none;user-select:none;white-space:nowrap;background:linear-gradient(90deg,#94a3b812,#94a3b829,#94a3b812) 0 0/200% 100%;border-radius:4px;max-width:100%;animation:1.4s linear infinite shimmer;display:inline-block;overflow:hidden}@keyframes shimmer{to{background-position:-200% 0}}.repo-stats{font-size:var(--fs-xs);color:var(--text-3);flex-wrap:wrap;gap:.35rem 1rem;display:flex}.repo-stats li{align-items:center;gap:.4rem;display:inline-flex}.nav{z-index:100;position:sticky;top:0}.nav:before{content:"";z-index:-1;pointer-events:none;transition:background var(--t) var(--ease), border-color var(--t) var(--ease);background:0 0;border-bottom:1px solid #0000;position:absolute;inset:0}.nav[data-scrolled]:before,.nav[data-open]:before{border-bottom-color:var(--line);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);background:#050b12d6}.nav-inner{align-items:center;gap:var(--s-4);height:var(--nav-h);display:flex}.brand{color:var(--text);letter-spacing:-.02em;align-items:center;gap:.65rem;font-size:1.05rem;font-weight:650;display:inline-flex}.brand-dev{color:var(--text-3);font-weight:500}.nav-links{margin-left:var(--s-5);gap:.15rem;display:flex}.nav-link{border-radius:var(--r-sm);color:var(--text-2);transition:color var(--t) var(--ease);padding:.5rem .8rem;font-size:.9rem;font-weight:500;position:relative}.nav-link:hover,.nav-link[aria-current=page]{color:var(--text)}.nav-link[aria-current=page]:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:.1rem;left:.8rem;right:.8rem}.nav-actions{align-items:center;gap:.5rem;margin-left:auto;display:flex}.nav-toggle,.nav-panel{display:none}@media (max-width:52.49rem){.nav-links,.nav-gh{display:none}.nav-toggle{display:inline-grid}.nav-panel{inset:var(--nav-h) 0 0 0;overscroll-behavior:contain;background:var(--bg);padding-block:var(--s-5) var(--s-7);visibility:hidden;opacity:0;transition:opacity var(--t) var(--ease), transform var(--t) var(--ease), visibility 0s linear var(--t);display:block;position:fixed;overflow-y:auto;transform:translateY(-6px)}.nav[data-open] .nav-panel{visibility:visible;opacity:1;transition-delay:0s;transform:none}.nav-panel-inner{flex-direction:column;display:flex}.nav-panel-link{border-bottom:1px solid var(--line);color:var(--text);letter-spacing:-.02em;justify-content:space-between;align-items:center;padding:1.1rem 0;font-size:1.5rem;font-weight:550;display:flex}.nav-panel-link svg{color:var(--text-3)}.nav-panel-link[aria-current=page]{color:var(--accent)}.nav-panel-cta{margin-top:var(--s-6);min-height:3.25rem}}@media (max-width:30rem){.nav-cta{display:none}}html.nav-open{overflow:hidden}html:not(.js) .nav-toggle,html:not(.js) .nav-panel{display:none}@media (max-width:52.49rem){html:not(.js) .nav-inner{flex-wrap:wrap;height:auto;padding-block:.6rem}html:not(.js) .nav-links{flex-wrap:wrap;order:3;width:100%;margin-left:0;display:flex}}.footer{border-top:1px solid var(--line);padding-top:var(--s-8);background:linear-gradient(#0000,#03070c8c);margin-top:auto}.footer-inner{gap:var(--s-6) var(--s-7);grid-template-columns:1.6fr repeat(3,minmax(0,1fr));display:grid}.footer-tag{margin-top:var(--s-3);color:var(--text-2);font-size:.95rem}.footer-note{margin-top:var(--s-2);color:var(--text-3);font-size:var(--fs-sm);max-width:26rem}.footer-h{margin-bottom:var(--s-4);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-weight:500}.footer-col ul{gap:.6rem;display:grid}.footer-col a{color:var(--text-2);transition:color var(--t-fast) var(--ease);font-size:.925rem}.footer-col a:hover{color:var(--text)}.footer-more{align-items:center;gap:.4rem;display:inline-flex;color:var(--accent)!important}.footer-base{margin-top:var(--s-7);padding-block:var(--s-5) var(--s-6);border-top:1px solid var(--line);color:var(--text-3);font-size:var(--fs-sm)}@media (max-width:52rem){.footer-inner{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-brand{grid-column:1/-1}}@media (max-width:34rem){.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}.pgrid{gap:var(--s-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,19.5rem),1fr));display:grid}.pgrid>li{display:flex}.pc{isolation:isolate;width:100%;padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface), var(--bg-raised));box-shadow:var(--shadow-card);transition:border-color var(--t) var(--ease), transform var(--t) var(--ease);flex-direction:column;gap:.7rem;display:flex;position:relative;overflow:hidden}.pc:before{content:"";z-index:-1;opacity:0;transition:opacity var(--t) var(--ease);background:radial-gradient(120% 90% at 0% 0%, color-mix(in srgb, var(--p-accent,var(--accent)) 11%, transparent), transparent 62%);position:absolute;inset:0}.pc:hover{border-color:var(--line-accent);transform:translateY(-2px)}.pc:hover:before{opacity:1}.pc-head{justify-content:space-between;align-items:flex-start;gap:var(--s-3);margin-bottom:var(--s-2);display:flex}.pc-cat{color:var(--text-3);font-size:var(--fs-xs);letter-spacing:.02em}.pc-title{letter-spacing:-.025em;font-size:1.3rem}.pc-link{outline:none}.pc-link:after{content:"";z-index:1;position:absolute;inset:0}.pc:has(.pc-link:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.pc-text{color:var(--text-2);-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:.95rem;display:-webkit-box;overflow:hidden}.pc-foot{justify-content:space-between;align-items:center;gap:var(--s-3);padding-top:var(--s-3);margin-top:auto;display:flex}.pc-go{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--accent);transition:transform var(--t) var(--ease);flex:none;align-items:center;gap:.35rem;display:inline-flex}.pc:hover .pc-go{transform:translate(3px)}.pc-ext{z-index:2;color:var(--text-3);font-family:var(--font-mono);font-size:var(--fs-xs);transition:color var(--t-fast) var(--ease);align-self:flex-start;align-items:center;gap:.3rem;display:inline-flex;position:relative}.pc-ext:hover{color:var(--accent)}.explorer-bar{justify-content:space-between;align-items:center;gap:var(--s-4) var(--s-5);margin-bottom:var(--s-6);flex-wrap:wrap;display:flex}.chips{flex-wrap:wrap;gap:.5rem;display:flex}.chip{border:1px solid var(--line-strong);min-height:2.25rem;color:var(--text-2);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);border-radius:999px;align-items:center;gap:.5rem;padding:0 .9rem;font-size:.875rem;font-weight:500;display:inline-flex}.chip:hover{color:var(--text);border-color:var(--line-accent)}.chip[aria-pressed=true]{color:var(--text);border-color:var(--line-accent);background:var(--accent-soft)}.chip-count{color:var(--text-3);font-size:.72rem}.chip[aria-pressed=true] .chip-count{color:var(--accent)}.search{min-width:min(100%,17rem);display:block;position:relative}.search-icon{color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.search input{border:1px solid var(--line-strong);border-radius:var(--r-md);width:100%;min-height:2.5rem;color:var(--text);font:inherit;transition:border-color var(--t-fast) var(--ease);background:#ffffff05;padding:0 .9rem 0 2.5rem;font-size:.9rem}.search input::placeholder{color:var(--text-3)}.search input:hover{border-color:var(--line-accent)}.search input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.empty{justify-items:center;gap:var(--s-3);padding:var(--s-8) var(--s-5);border:1px dashed var(--line-strong);border-radius:var(--r-lg);text-align:center;display:grid}.empty-title{color:var(--text);font-size:1.1rem;font-weight:600}.empty-text{color:var(--text-3);margin-bottom:var(--s-2)}.manifest{gap:var(--s-3);height:100%;padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r-md);background:#03080e8c;flex-direction:column;display:flex}.manifest-path{color:var(--accent);font-size:var(--fs-sm)}.manifest-list{margin:0}.manifest-row{gap:var(--s-3);border-top:1px solid var(--line);grid-template-columns:6rem minmax(0,1fr);align-items:baseline;padding:.65rem 0;display:grid}.manifest-row dt{color:var(--text-3);font-size:var(--fs-xs)}.manifest-row dd{color:var(--text);overflow-wrap:anywhere;min-width:0;margin:0;font-size:.9rem}.manifest-row dd a{color:var(--accent)}.manifest-row dd a:hover{text-decoration:underline}.page-head{padding-top:clamp(3rem,2rem + 5vw,6rem);padding-bottom:clamp(2.5rem,2rem + 3vw,4.5rem)}.crumbs{margin-bottom:var(--s-5);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.crumbs a{color:var(--text-2);transition:color var(--t-fast) var(--ease)}.crumbs a:hover{color:var(--accent)}.crumbs [aria-current]{color:var(--text-3)}html:not(.js) .explorer-bar{display:none}
@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rise{animation:rise .62s var(--ease) both;animation-delay:var(--d,0s)}.hero{padding-block:clamp(3.25rem,2rem + 6.5vw,7.5rem) clamp(3rem,2rem + 5vw,6.5rem);position:relative}.hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:center;gap:clamp(2rem,5vw,5rem);display:grid}.hero-status{margin-bottom:var(--s-6);border:1px solid var(--line-strong);color:var(--text-2);font-family:var(--font-mono);letter-spacing:.03em;background:#08111c99;border-radius:999px;align-items:center;gap:.65rem;padding:.42rem .95rem .42rem .8rem;font-size:.75rem;display:inline-flex}.hero-title{letter-spacing:-.045em;font-size:clamp(2.45rem,1.25rem + 4.5vw,4.4rem);font-weight:650;line-height:1.03}.hl{background:linear-gradient(100deg, var(--accent-bright), var(--accent-cyan) 55%, var(--violet));-webkit-text-fill-color:transparent;color:#0000;-webkit-box-decoration-break:clone;box-decoration-break:clone;-webkit-background-clip:text;background-clip:text}@media (forced-colors:active){.hl{-webkit-text-fill-color:currentColor;color:highlight;background:0 0}}.hero-text{margin-top:var(--s-5);max-width:34rem;font-size:var(--fs-lg);color:var(--text-2);line-height:1.6}.hero-actions{margin-top:var(--s-6);flex-wrap:wrap;gap:.75rem;display:flex}.hero-meta{margin-top:var(--s-7);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-3);flex-wrap:wrap;align-items:baseline;gap:.4rem 0;display:flex}.hero-meta>span:not(.cmd):before{content:"·";color:var(--line-strong);margin-inline:.85rem}@media (max-width:56rem){.hero-grid{grid-template-columns:minmax(0,1fr)}.hero-visual{order:2}}@media (max-width:40rem){.hero-visual{display:none}.hero-meta{gap:.4rem 1rem}.hero-meta>span:not(.cmd):before{display:none}}@media (max-width:26rem){.hero-status{letter-spacing:.01em;padding-inline:.7rem .8rem;font-size:.6875rem}}.pmap{aspect-ratio:1;width:min(100%,33rem);margin-inline:auto;position:relative;container-type:inline-size}.pmap-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.pmap-orbit{fill:none;stroke:var(--line-strong);stroke-width:1px;stroke-dasharray:2 7;vector-effect:non-scaling-stroke;transform-origin:50px 50px;animation:140s linear infinite spin}.pmap-orbit--inner{stroke:var(--line);animation-direction:reverse}.pmap-line{stroke:#38bdf84d;stroke-width:1px;stroke-dasharray:3 5;vector-effect:non-scaling-stroke;transition:stroke var(--t) var(--ease);animation:14s linear infinite dash}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dash{to{stroke-dashoffset:-64px}}.pmap-core{aspect-ratio:1;border:1px solid var(--line-accent);width:19%;box-shadow:var(--glow-strong);background:radial-gradient(circle at 50% 35%,#38bdf838,#08111ceb 72%);border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pmap-core-ring{border:1px solid var(--line-accent);opacity:0;border-radius:50%;animation:4.5s ease-out infinite pulse;position:absolute;inset:-16%}.pmap-core-label{color:var(--accent-bright);letter-spacing:.08em;font-size:clamp(.85rem,2.2vw,1.1rem);font-weight:600}.pmap-nodes{position:absolute;inset:0}.pmap-node{width:max-content;max-width:13rem;position:absolute;transform:translate(-50%,-50%)}.pmap-link{border:1px solid var(--line-strong);border-radius:var(--r-md);max-width:12.5rem;box-shadow:var(--shadow-pop);transition:border-color var(--t) var(--ease), transform var(--t) var(--ease), box-shadow var(--t) var(--ease);background:#08111ceb;align-items:center;gap:.6rem;padding:.4rem .8rem .4rem .4rem;display:flex}.pmap-link .picon{--size:2.15rem}.pmap-text{min-width:0;line-height:1.25;display:grid}.pmap-name{color:var(--text);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.pmap-cat{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:.66rem;overflow:hidden}.pmap-dot{color:var(--c,var(--text-3));flex:none;margin-left:.1rem}.pmap-link:hover,.pmap-link:focus-visible{border-color:var(--line-accent);box-shadow:var(--shadow-pop), var(--glow);transform:translateY(-2px)}:is(.pmap:has([data-k="0"] .pmap-link:is(:hover,:focus-visible)) .pmap-line[data-k="0"],.pmap:has([data-k="1"] .pmap-link:is(:hover,:focus-visible)) .pmap-line[data-k="1"],.pmap:has([data-k="2"] .pmap-link:is(:hover,:focus-visible)) .pmap-line[data-k="2"],.pmap:has([data-k="3"] .pmap-link:is(:hover,:focus-visible)) .pmap-line[data-k="3"],.pmap:has([data-k="4"] .pmap-link:is(:hover,:focus-visible)) .pmap-line[data-k="4"],.pmap:has([data-k="5"] .pmap-link:is(:hover,:focus-visible)) .pmap-line[data-k="5"],.pmap:has([data-k="6"] .pmap-link:is(:hover,:focus-visible)) .pmap-line[data-k="6"]){stroke:var(--accent)}@container (max-width:27rem){.pmap-cat{display:none}.pmap-link{gap:.45rem;max-width:11.5rem;padding:.3rem .6rem .3rem .3rem}.pmap-link .picon{--size:1.8rem}.pmap-name{font-size:.78rem}}.work-list{gap:var(--s-5);display:grid}.work-rest{gap:var(--s-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));display:grid}.work-more{margin-top:var(--s-6);color:var(--text-3);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;display:flex}.work-more a:not(.btn){color:var(--text-2);border-bottom:1px solid var(--line-strong);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease)}.work-more a:not(.btn):hover{color:var(--accent);border-color:var(--accent)}.fp{isolation:isolate;gap:var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface), var(--bg-raised));box-shadow:var(--shadow-card);transition:border-color var(--t) var(--ease);flex-direction:column;padding:clamp(1.5rem,1rem + 2vw,2.5rem);display:flex;position:relative;overflow:hidden}.fp:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(90% 70% at 100% 0%, color-mix(in srgb, var(--p-accent,var(--accent)) 10%, transparent), transparent 60%);position:absolute;inset:0}.fp:hover,.fp:focus-within{border-color:var(--line-accent)}.fp-body{align-items:flex-start;gap:var(--s-4);flex-direction:column;min-width:0;display:flex}.fp-meta{align-items:center;gap:var(--s-4);display:flex}.fp-meta-text{justify-items:start;gap:.4rem;display:grid}.fp-title{letter-spacing:-.03em;font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem)}.fp-text{max-width:34rem;color:var(--text-2);font-size:1.02rem}.fp-points{width:100%;color:var(--text-2);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.55rem 1.5rem;font-size:.925rem;display:grid}.fp-points li{align-items:center;gap:.6rem;display:flex}.fp-points svg{color:var(--accent);flex:none}.fp-actions{margin-top:var(--s-2);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.fp--lead{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:stretch;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.fp--lead .fp-title{letter-spacing:-.04em;font-size:clamp(2rem,1.3rem + 2.6vw,3.25rem);line-height:1.05}.fp--lead .fp-text{font-size:var(--fs-lg)}.fp-panel{min-width:0}@media (max-width:56rem){.fp--lead{grid-template-columns:minmax(0,1fr)}}.areas{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,15.5rem),1fr));display:grid}.area{gap:var(--s-3);padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);transition:border-color var(--t) var(--ease), background var(--t) var(--ease);background:#0b16238c;flex-direction:column;display:flex}.area:hover{border-color:var(--line-accent);background:#0b1623e6}.area-icon{width:2.75rem;height:2.75rem;margin-bottom:var(--s-2);border:1px solid var(--line-accent);border-radius:var(--r-md);background:var(--accent-soft);color:var(--accent);place-items:center;display:grid}.area-title{letter-spacing:-.02em;font-size:1.15rem}.area-text{color:var(--text-2);font-size:.95rem}.area-link{padding-top:var(--s-3);color:var(--accent);font-size:var(--fs-xs);align-items:center;gap:.4rem;margin-top:auto;display:inline-flex}.area-link:hover{text-underline-offset:.25em;text-decoration:underline}.cb-list{gap:var(--s-5);display:grid}.cb{gap:var(--s-5) var(--s-7);border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(#0e1c2cb8,#08111cb8);grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);padding:clamp(1.5rem,1rem + 2vw,2.5rem);display:grid;position:relative;overflow:hidden}.cb:before{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);opacity:.55;height:1px;position:absolute;inset:0 0 auto}.cb-head{justify-content:space-between;align-items:center;gap:var(--s-3);grid-column:1/-1;display:flex}.cb-label{color:var(--text-2);font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.65rem;display:inline-flex}.cb-main{align-items:center;gap:var(--s-4);display:flex}.cb-title{letter-spacing:-.035em;font-size:clamp(1.5rem,1.2rem + 1.2vw,2.1rem)}.cb-title a:hover{color:var(--accent-bright)}.cb-tagline{color:var(--text-2);margin-top:.25rem}.cb-note{color:var(--text);font-size:var(--fs-lg);grid-column:1}.cb-focus{padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--r-md);background:#03080e80;grid-area:2/2/span 3;align-self:start}.cb-focus-label{margin-bottom:var(--s-3);color:var(--text-3);font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase}.cb-focus ul{gap:.65rem;display:grid}.cb-focus li{color:var(--text);gap:.7rem;font-size:.95rem;display:flex}.cb-focus li:before{content:"›";color:var(--accent);font-family:var(--font-mono)}.cb-actions{flex-wrap:wrap;grid-column:1;gap:.5rem;display:flex}@media (max-width:48rem){.cb{grid-template-columns:minmax(0,1fr)}.cb-note,.cb-actions{grid-column:1}.cb-focus{grid-area:auto/1}}.oss{gap:var(--s-4);display:grid}.gh-card{align-items:center;gap:var(--s-4) var(--s-5);padding:var(--s-5) var(--s-6);border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface), var(--bg-raised));flex-wrap:wrap;display:flex}.gh-mark{border:1px solid var(--line-strong);border-radius:var(--r-md);width:3.25rem;height:3.25rem;color:var(--text);background:var(--surface-2);flex:none;place-items:center;display:grid}.gh-body{flex:14rem;min-width:0}.gh-handle{color:var(--text);font-size:1.05rem;font-weight:500}.gh-count{color:var(--text-3);font-size:var(--fs-sm);margin-top:.25rem;display:block}.oss-list{gap:var(--s-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));display:grid}.oss-item{align-items:center;gap:var(--s-4);padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);transition:border-color var(--t) var(--ease);background:#0b16238c;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.oss-item:hover{border-color:var(--line-accent)}.oss-name{letter-spacing:-.02em;font-size:1.1rem}.oss-name a:hover{color:var(--accent-bright)}.oss-text{color:var(--text-2);margin-top:.15rem;font-size:.925rem}.oss-main .repo-stats{margin-top:var(--s-2)}@media (max-width:34rem){.oss-item{grid-template-columns:auto minmax(0,1fr)}.oss-item .status{grid-column:2;justify-self:start}}.about-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:clamp(2rem,5vw,5rem);display:grid}.about-copy{gap:var(--s-4);max-width:38rem;color:var(--text-2);font-size:var(--fs-lg);display:grid}.about-copy p:first-child{color:var(--text);letter-spacing:-.02em;font-size:clamp(1.25rem,1.1rem + .7vw,1.6rem);line-height:1.4}.about-side{gap:var(--s-5);display:grid}.facts{padding:var(--s-2) var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);background:#0b16238c}.fact{justify-content:space-between;align-items:baseline;gap:var(--s-4);border-top:1px solid var(--line);padding:.95rem 0;display:flex}.fact:first-child{border-top:0}.fact dt{color:var(--text-3);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.04em}.fact dd{color:var(--text);text-align:right;margin:0;font-size:.95rem}.toolbox-label{margin-bottom:var(--s-3);color:var(--text-3);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase}.about-more{margin-top:var(--s-6)}@media (max-width:52rem){.about-grid{grid-template-columns:minmax(0,1fr)}}.cta-section{padding-block:0 var(--section);scroll-margin-top:var(--nav-h)}.cta{isolation:isolate;border:1px solid var(--line-accent);border-radius:calc(var(--r-lg) + 6px);background:linear-gradient(160deg,#0e1c2ce6,#050b12f2);padding:clamp(2rem,1rem + 5vw,5rem);position:relative;overflow:hidden}.cta:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(90deg,#94a3b80f 1px,#0000 1px),linear-gradient(#94a3b80f 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 90% at 100% 20%,#000,#0000 75%);mask-image:radial-gradient(60% 90% at 100% 20%,#000,#0000 75%)}.cta-glow{z-index:-1;aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#38bdf82e,#0000 64%);width:70%;position:absolute;top:-40%;right:-12%}.cta-cmd{margin-bottom:var(--s-5)}.cta-title{letter-spacing:-.045em;max-width:16ch;font-size:clamp(2.3rem,1.3rem + 4.2vw,4.4rem);line-height:1.03}.cta-text{margin-top:var(--s-5);max-width:36rem;color:var(--text-2);font-size:var(--fs-lg)}.cta-text strong{color:var(--text);font-weight:600}.cta-actions{margin-top:var(--s-6);flex-wrap:wrap;gap:.75rem;display:flex}.cta-mail{margin-top:var(--s-5);color:var(--text-3);font-size:var(--fs-sm);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.cta-avail{margin-top:var(--s-4);color:var(--text-2);font-size:var(--fs-sm);align-items:center;gap:.65rem;display:inline-flex}
.pd-hero{align-items:center;gap:clamp(1.25rem,3vw,2.25rem);display:flex}.pd-hero-text{min-width:0}.pd-badges{margin-top:var(--s-4);flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.pd-title{letter-spacing:-.04em;font-size:clamp(2.3rem,1.3rem + 4vw,4rem);line-height:1.04}.pd-tagline{margin-top:var(--s-3);max-width:40rem;color:var(--text-2);font-size:var(--fs-lg)}.pd-actions{margin-top:var(--s-6);flex-wrap:wrap;gap:.75rem;display:flex}.pd-note{max-width:44rem;margin-top:var(--s-4);color:var(--text-3);font-size:var(--fs-sm);align-items:flex-start;gap:.6rem;display:flex}.pd-note svg{color:var(--st-development);flex:none;margin-top:.15rem}.pd-layout{padding-bottom:var(--section);grid-template-columns:minmax(0,1fr) 20rem;align-items:start;gap:clamp(2rem,5vw,4.5rem);display:grid}.pd-main{gap:var(--s-8);min-width:0;display:grid}.pd-side{top:calc(var(--nav-h) + 1.5rem);gap:var(--s-4);display:grid;position:sticky}.pd-section{gap:var(--s-4);display:grid}.pd-h{font-size:var(--fs-h3);letter-spacing:-.025em;padding-bottom:var(--s-3);border-bottom:1px solid var(--line)}.pd-lead{color:var(--text);font-size:var(--fs-lg)}.pd-tech{margin-top:var(--s-2)}.prose{gap:var(--s-4);max-width:42rem;color:var(--text-2);font-size:1.05rem;line-height:1.7;display:grid}.feat-list{gap:0 var(--s-7);grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));display:grid}.feat{border-top:1px solid var(--line);align-content:start;gap:.3rem;padding:.95rem 0;display:grid}.feat-title{color:var(--text);align-items:center;gap:.65rem;font-size:.975rem;font-weight:550;display:flex}.feat-title svg{color:var(--accent);flex:none}.feat-text{color:var(--text-2);padding-left:1.65rem;font-size:.9rem}.points{max-width:44rem;color:var(--text-2);gap:.7rem;display:grid}.points li{padding-left:1.4rem;position:relative}.points li:before{content:"";background:var(--accent);opacity:.8;border-radius:50%;width:.4rem;height:.4rem;position:absolute;top:.72em;left:.15rem}.points--arrow li:before{content:"›";width:auto;height:auto;color:var(--accent);font-family:var(--font-mono);opacity:1;background:0 0;border-radius:0;top:0}.roadmap{margin-top:var(--s-2);border:1px solid var(--line);border-radius:var(--r-md);gap:0;display:grid;overflow:hidden}.road{align-items:center;gap:var(--s-4);padding:.9rem var(--s-5);border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.road:first-child{border-top:0}.road-mark{border:1px solid var(--line-strong);width:1.1rem;height:1.1rem;color:var(--on-accent);border-radius:50%;place-items:center;display:grid}.road[data-state=done] .road-mark{background:var(--accent);border-color:var(--accent)}.road[data-state=active] .road-mark{border-color:var(--accent);box-shadow:inset 0 0 0 3px var(--bg), inset 0 0 0 10px var(--accent)}.road-label{color:var(--text)}.road[data-state=planned] .road-label{color:var(--text-2)}.road-state{color:var(--text-3);font-size:var(--fs-xs)}.shots{gap:var(--s-5);display:grid}.shot{gap:var(--s-3);margin:0;display:grid}.shot-frame{aspect-ratio:16/10;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-pop);position:relative;overflow:hidden}.shot-frame img{object-fit:cover;object-position:top left}.shot figcaption{color:var(--text-3);font-size:var(--fs-sm)}.side-card{padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--r-md);background:#03080e66}.side-h{margin-bottom:var(--s-2);color:var(--text-3);font-size:var(--fs-xs);overflow-wrap:anywhere}.side-text{color:var(--text);font-size:.925rem}.pd-pager{gap:var(--s-4);padding-bottom:var(--section);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pager{padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);transition:border-color var(--t) var(--ease);gap:.35rem;display:grid}.pager:hover{border-color:var(--line-accent)}.pager--next{text-align:right}.pager-label{color:var(--text-3);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase}.pager-name{color:var(--text);letter-spacing:-.02em;font-size:1.15rem;font-weight:600}@media (max-width:62rem){.pd-layout{grid-template-columns:minmax(0,1fr)}.pd-side{order:-1;position:static}}@media (max-width:34rem){.pd-hero{flex-direction:column;align-items:flex-start}.pd-pager{grid-template-columns:minmax(0,1fr)}.pager--next{text-align:left}}.rel{gap:var(--s-3);display:grid}.rel-meta{color:var(--text-3);font-size:var(--fs-sm);flex-wrap:wrap;gap:.4rem 1rem;display:flex}.rel-version{color:var(--accent-bright);font-weight:500}.rel-h{margin-top:var(--s-2);color:var(--text);font-size:.875rem;font-weight:600}.rel-changes{color:var(--text-2);gap:.45rem;font-size:.925rem;display:grid}.rel-changes li{padding-left:1.2rem;position:relative}.rel-changes li:before{content:"+";color:var(--accent);font-family:var(--font-mono);position:absolute;left:0}.rel-notes{color:var(--accent);font-size:var(--fs-sm);justify-self:start;align-items:center;gap:.4rem;display:inline-flex}.rel-notes:hover{text-underline-offset:.25em;text-decoration:underline}.rel-none{color:var(--text-3);font-size:var(--fs-sm);gap:.35rem;max-width:36rem;display:grid}.rel-size{color:var(--text-3)}.dl-list{gap:var(--s-5);display:grid}.dl{gap:var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg, var(--surface), var(--bg-raised));box-shadow:var(--shadow-card);padding:clamp(1.5rem,1rem + 2vw,2.25rem);display:grid}.dl-head{align-items:center;gap:var(--s-4);display:flex}.dl-title{flex:1;min-width:0}.dl-title h2{letter-spacing:-.03em;font-size:clamp(1.4rem,1.2rem + .8vw,1.8rem)}.dl-title h2 a:hover{color:var(--accent-bright)}.dl-title p{color:var(--text-2);max-width:40rem;margin-top:.25rem;font-size:.95rem}.dl-body{gap:var(--s-6);padding-top:var(--s-5);border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.dl-info{gap:var(--s-4);min-width:0;display:grid}.dl-facts{font-size:var(--fs-sm);flex-wrap:wrap;gap:.4rem 1.75rem;margin:0;display:flex}.dl-facts div{gap:.6rem;display:flex}.dl-facts dt{color:var(--text-3)}.dl-facts dd{color:var(--text);margin:0}.dl-action{gap:var(--s-3);justify-items:stretch;min-width:14rem;display:grid}.dl-links{justify-content:space-between;gap:.25rem;display:flex}.dl-note{padding:var(--s-3) var(--s-4);border:1px solid color-mix(in srgb, var(--st-development) 28%, transparent);border-radius:var(--r-md);background:color-mix(in srgb, var(--st-development) 7%, transparent);color:var(--text-2);font-size:var(--fs-sm);align-items:flex-start;gap:.6rem;display:flex}.dl-note svg{color:var(--st-development);flex:none;margin-top:.15rem}@media (max-width:48rem){.dl-body{grid-template-columns:minmax(0,1fr)}.dl-action{min-width:0}}@media (max-width:40rem){.dl-head{gap:var(--s-3) var(--s-4);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.dl-head .status{grid-column:1/-1;justify-self:start}.dl-head .picon{--size:3.5rem}}.svc-h{font-size:var(--fs-h3);letter-spacing:-.025em;margin-bottom:var(--s-5)}.svc-sub{color:var(--text-2);max-width:26rem;margin-top:calc(var(--s-3) * -1)}.section--tight{padding-block:clamp(3rem,2rem + 4vw,5.5rem)}.svc-split{gap:var(--s-7);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;display:grid}.svc-list{color:var(--text);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.85rem 2rem;display:grid}.svc-list li{align-items:center;gap:.7rem;display:flex}.svc-list svg{color:var(--accent);flex:none}.steps{gap:var(--s-4);counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));display:grid}.step{padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);background:#0b16238c}.step-n{color:var(--accent);font-size:var(--fs-sm)}.step-title{margin-top:var(--s-3);letter-spacing:-.025em;font-size:1.3rem}.step-text{margin-top:var(--s-2);color:var(--text-2);font-size:.95rem}.svc-work{gap:var(--s-3);margin-top:var(--s-5);display:grid}.svc-proj{align-items:center;gap:var(--s-4);padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);transition:border-color var(--t) var(--ease), background var(--t) var(--ease);grid-template-columns:minmax(8rem,12rem) minmax(0,1fr) auto;display:grid}.svc-proj:hover{border-color:var(--line-accent);background:var(--accent-faint)}.svc-proj-name{color:var(--text);letter-spacing:-.02em;font-weight:600}.svc-proj-text{color:var(--text-2);font-size:.925rem}.svc-proj-go{color:var(--accent);font-size:var(--fs-xs);align-items:center;gap:.4rem;display:inline-flex}@media (max-width:52rem){.svc-split{gap:var(--s-5);grid-template-columns:minmax(0,1fr)}}@media (max-width:40rem){.svc-proj{gap:var(--s-2);grid-template-columns:minmax(0,1fr)}}.about-actions{margin-top:var(--s-4);flex-wrap:wrap;gap:.75rem;display:flex}.elsewhere{gap:.5rem;display:grid}.elsewhere a{color:var(--text-2);overflow-wrap:anywhere;transition:color var(--t-fast) var(--ease);align-items:center;gap:.7rem;font-size:.95rem;display:inline-flex}.elsewhere a:hover{color:var(--accent-bright)}.legal{max-width:46rem;padding-block:clamp(3rem, 2rem + 5vw, 6rem) var(--section)}.legal-head{margin-bottom:var(--s-7)}.legal h1{margin-top:var(--s-4);letter-spacing:-.04em;font-size:clamp(2.2rem,1.4rem + 3vw,3.4rem)}.legal-lead{margin-top:var(--s-3);color:var(--text-2);font-size:var(--fs-lg)}.legal h2{margin:var(--s-7) 0 var(--s-3);letter-spacing:-.02em;font-size:1.25rem}.legal p,.legal li{color:var(--text-2);line-height:1.75}.legal p+p,.legal ul+p,.legal p+ul{margin-top:var(--s-3)}.legal ul{color:var(--text-2);gap:.35rem;padding-left:1.25rem;list-style:outside;display:grid}.legal ul li::marker{color:var(--text-3)}.legal strong{color:var(--text);font-weight:600}.legal code{border:1px solid var(--line);border-radius:var(--r-sm);color:var(--text);background:#ffffff08;padding:.1rem .4rem;font-size:.875em}.legal a{color:var(--accent);text-underline-offset:.2em}.legal a:hover{text-decoration:underline}.legal-box{padding:var(--s-4) var(--s-5);border:1px solid var(--line);border-radius:var(--r-md);background:#0b16238c}.legal-box address{color:var(--text);font-style:normal;line-height:1.7}.legal-box p{margin-top:var(--s-3)}.legal-box>:first-child{margin-top:0}.legal-missing{padding:var(--s-4) var(--s-5);border:1px solid color-mix(in srgb, var(--st-development) 40%, transparent);border-radius:var(--r-md);background:color-mix(in srgb, var(--st-development) 8%, transparent);color:var(--text-2)}.legal-back{margin-top:var(--s-7)!important}.legal-foot{margin-top:var(--s-3);font-size:var(--fs-sm);color:var(--text-3)!important}.nf{justify-items:start;gap:var(--s-4);align-content:center;min-height:60vh;padding-block:clamp(4rem,3rem + 8vw,9rem);display:grid}.nf-title{letter-spacing:-.04em;max-width:18ch;font-size:clamp(2.2rem,1.3rem + 4vw,4rem);line-height:1.05}.nf-text{max-width:32rem;color:var(--text-2);font-size:var(--fs-lg)}.nf-actions{margin-top:var(--s-3);flex-wrap:wrap;gap:.75rem;display:flex}.nf-links{margin-top:var(--s-6)}.nf-links-label{margin-bottom:var(--s-3);color:var(--text-3);font-size:var(--fs-xs)}.nf-links ul{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}.nf-links a{color:var(--text-2);border-bottom:1px solid var(--line-strong);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease)}.nf-links a:hover{color:var(--accent);border-color:var(--accent)}.nf-digest{margin-top:var(--s-4);color:var(--text-3);font-size:var(--fs-xs)}
