@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-wght-normal.DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-wght-normal.DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-wght-normal.CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-wght-normal.CBcvBZtf.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-wght-normal.DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-wght-normal.Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background:oklch(96.6% .005 106.5);--foreground:oklch(15.3% .006 107.1);--card:oklch(100% 0 0);--card-foreground:oklch(15.3% .006 107.1);--primary:oklch(50% .09 135);--primary-foreground:oklch(98.8% .003 106.5);--secondary:oklch(92.5% .008 106.5);--secondary-foreground:oklch(22.8% .013 107.4);--muted:oklch(92.5% .008 106.5);--muted-foreground:oklch(50% .031 107.3);--accent:oklch(92.5% .008 106.5);--accent-foreground:oklch(22.8% .013 107.4);--live:oklch(58% .21 12);--live-foreground:oklch(98.8% .003 106.5);--warning:oklch(55.5% .163 48.998);--border:oklch(90% .008 106.5);--ring:oklch(72% .08 135);--player:oklch(0% 0 0);--radius:.75rem;--shadow:0 1px 2px oklch(15.3% .006 107.1/.06), 0 8px 24px -8px oklch(15.3% .006 107.1/.14);--shadow-lg:0 2px 4px oklch(15.3% .006 107.1/.06), 0 24px 60px -20px oklch(15.3% .006 107.1/.28);--glow:oklch(72% .09 135/.28);--code-bg:oklch(20% .01 107.2);--code-fg:oklch(95% .005 106.5);--code-muted:oklch(70% .02 107);--font-sans:"Inter Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--gutter:16px;--max:1180px;--header-h:60px;color-scheme:light}@media (prefers-color-scheme:dark){:root:not(.light){--background:oklch(15.3% .006 107.1);--foreground:oklch(98.8% .003 106.5);--card:oklch(22.8% .013 107.4);--card-foreground:oklch(98.8% .003 106.5);--primary:oklch(72% .09 135);--primary-foreground:oklch(15.3% .006 107.1);--secondary:oklch(28.6% .016 107.4);--secondary-foreground:oklch(98.8% .003 106.5);--muted:oklch(28.6% .016 107.4);--muted-foreground:oklch(73.7% .021 106.9);--accent:oklch(28.6% .016 107.4);--accent-foreground:oklch(98.8% .003 106.5);--warning:oklch(82.8% .189 84.429);--live:oklch(70% .19 8);--live-foreground:oklch(15.3% .006 107.1);--border:oklch(100% 0 0/.1);--ring:oklch(50% .09 135);--shadow:0 1px 2px oklch(0% 0 0/.3), 0 8px 24px -8px oklch(0% 0 0/.5);--shadow-lg:0 2px 4px oklch(0% 0 0/.3), 0 24px 60px -20px oklch(0% 0 0/.7);--glow:oklch(72% .09 135/.18);--code-bg:oklch(12% .006 107.1);color-scheme:dark}}:root.dark{--background:oklch(15.3% .006 107.1);--foreground:oklch(98.8% .003 106.5);--card:oklch(22.8% .013 107.4);--card-foreground:oklch(98.8% .003 106.5);--primary:oklch(72% .09 135);--primary-foreground:oklch(15.3% .006 107.1);--secondary:oklch(28.6% .016 107.4);--secondary-foreground:oklch(98.8% .003 106.5);--muted:oklch(28.6% .016 107.4);--muted-foreground:oklch(73.7% .021 106.9);--accent:oklch(28.6% .016 107.4);--accent-foreground:oklch(98.8% .003 106.5);--warning:oklch(82.8% .189 84.429);--live:oklch(70% .19 8);--live-foreground:oklch(15.3% .006 107.1);--border:oklch(100% 0 0/.1);--ring:oklch(50% .09 135);--shadow:0 1px 2px oklch(0% 0 0/.3), 0 8px 24px -8px oklch(0% 0 0/.5);--shadow-lg:0 2px 4px oklch(0% 0 0/.3), 0 24px 60px -20px oklch(0% 0 0/.7);--glow:oklch(72% .09 135/.18);--code-bg:oklch(12% .006 107.1);color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px)}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.6;overflow-x:hidden}img,svg,picture{max-width:100%;display:block}img{height:auto}h1,h2,h3{letter-spacing:-.02em;text-wrap:balance;margin:0;line-height:1.15}h2{font-size:clamp(1.75rem,1.2rem + 2.2vw,2.6rem);font-weight:700}h3{letter-spacing:-.01em;font-size:1.125rem;font-weight:600}p{text-wrap:pretty;margin:0}a{color:inherit}:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:6px}.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}.skip{z-index:100;background:var(--primary);color:var(--primary-foreground);border-radius:8px;padding:8px 14px;font-weight:600;text-decoration:none;position:absolute;top:-60px;left:12px}.skip:focus{top:10px}.container{width:100%;max-width:calc(var(--max) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}@media (width>=720px){:root{--gutter:24px}}.muted{color:var(--muted-foreground)}.icon{flex:none}.btn{border-radius:calc(var(--radius) * .8);height:40px;font:inherit;white-space:nowrap;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s,transform .15s,box-shadow .15s;display:inline-flex}.btn-lg{height:48px;padding:0 22px;font-size:1rem}.btn-sm{height:34px;padding:0 12px;font-size:.875rem}.btn-primary{background:var(--primary);color:var(--primary-foreground);box-shadow:0 6px 20px -8px var(--primary)}.btn-primary:hover{background:color-mix(in srgb, var(--primary) 88%, var(--foreground));transform:translateY(-1px)}.btn-outline{background:var(--card);border-color:var(--border);color:var(--foreground)}.btn-outline:hover{background:var(--accent);transform:translateY(-1px)}.btn-ghost{color:inherit;background:0 0}.btn-ghost:hover{background:oklch(100% 0 0/.1)}.btn-icon{border-radius:calc(var(--radius) * .8);min-width:40px;height:40px;color:var(--foreground);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.8125rem;font-weight:600;text-decoration:none;transition:background-color .15s;display:inline-flex}.btn-icon:hover{background:var(--accent)}.link{color:var(--primary);font-weight:600;text-decoration:none;display:inline}.link:hover{text-underline-offset:3px;text-decoration:underline}.link .icon{vertical-align:-3px;margin-left:4px;transition:transform .15s;display:inline-block}.link:hover .icon{transform:translate(3px)}.site-header{z-index:50;height:var(--header-h);background:color-mix(in srgb, var(--background) 82%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.header-inner{align-items:center;gap:16px;height:100%;display:flex}.brand{letter-spacing:-.01em;align-items:center;gap:10px;font-size:1.0625rem;font-weight:700;text-decoration:none;display:inline-flex}.brand img{border-radius:7px}.site-nav{margin-left:auto;display:none}.site-nav ul{gap:2px;margin:0;padding:0;list-style:none;display:flex}.site-nav a{color:var(--muted-foreground);border-radius:8px;padding:6px 10px;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .15s,background-color .15s;display:block}.site-nav a:hover{color:var(--foreground);background:var(--accent)}.header-actions{align-items:center;gap:2px;margin-left:auto;display:flex}@media (width>=960px){.site-nav{display:block}.header-actions{margin-left:8px}}.theme-toggle .when-dark{display:none}:root[data-theme=dark] .theme-toggle .when-dark{display:block}:root[data-theme=dark] .theme-toggle .when-light{display:none}.section{padding-block:clamp(64px,6vw + 32px,112px)}.section-alt{background:color-mix(in srgb, var(--card) 55%, var(--background));border-block:1px solid var(--border)}.section-head{text-align:center;max-width:720px;margin:0 auto clamp(32px,4vw,56px)}.section-head--left{text-align:left;margin-inline:0}.section-head h2+.section-lead,.section-head h1+.section-lead{margin-top:16px}.section-lead{color:var(--muted-foreground);font-size:1.0625rem}.eyebrow{color:var(--primary);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;font-size:.8125rem;font-weight:600}.note{max-width:720px;color:var(--muted-foreground);text-align:center;justify-content:center;align-items:flex-start;gap:8px;margin:24px auto 0;font-size:.875rem;display:flex}.note .icon{margin-top:3px}.hero{padding-block:clamp(48px,7vw,96px) clamp(56px,6vw,96px);position:relative;overflow:hidden}.hero-glow{background:radial-gradient(closest-side at 50% 40%, var(--glow), transparent), radial-gradient(closest-side at 80% 10%, oklch(58% .21 12/.08), transparent);pointer-events:none;height:720px;position:absolute;inset:-20% -10% auto}.hero-inner{text-align:center;position:relative}.hero-title{letter-spacing:-.035em;max-width:880px;margin-inline:auto;font-size:clamp(2.25rem,1.4rem + 4.2vw,4.25rem);font-weight:800;line-height:1.04}.hero-lead{max-width:720px;color:var(--muted-foreground);margin:20px auto 0;font-size:clamp(1.0625rem,1rem + .35vw,1.25rem)}.hero-ctas{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px;display:flex}.hero-note{color:var(--muted-foreground);margin-top:16px;font-size:.875rem}@media (width<=420px){.hero-ctas .btn{width:100%}}.window{border:1px solid var(--border);border-radius:calc(var(--radius) * 1.4);background:var(--card);max-width:1100px;box-shadow:var(--shadow-lg);text-align:left;margin:clamp(40px,6vw,72px) auto 0;overflow:hidden}.window-bar{border-bottom:1px solid var(--border);background:var(--muted);align-items:center;gap:12px;height:38px;padding:0 14px;display:flex}.dots{gap:6px;display:flex}.dots i{background:color-mix(in srgb, var(--muted-foreground) 45%, transparent);border-radius:50%;width:11px;height:11px}.window-title{min-width:0;color:var(--muted-foreground);text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.8125rem;font-weight:500;overflow:hidden}@media (width<=479px){.window-title{visibility:hidden}}.window-body{aspect-ratio:16/10;background:var(--player);position:relative}.window-body .shot img{width:100%}.live-badge{background:var(--live);color:var(--live-foreground);letter-spacing:.06em;text-transform:uppercase;box-shadow:0 4px 14px -4px var(--live);border-radius:6px;flex:none;align-items:center;gap:6px;padding:3px 9px 3px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.live-dot{background:currentColor;border-radius:50%;width:7px;height:7px;position:relative}.live-dot:after{content:"";background:currentColor;border-radius:50%;animation:1.6s ease-out infinite live-pulse;position:absolute;inset:0}@keyframes live-pulse{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(3)}}.js .hero-in{animation:.7s cubic-bezier(.2,.7,.2,1) both hero-in;animation-delay:calc(var(--d) * 80ms)}.js .hero-in--shot{animation-name:hero-in-shot;animation-duration:.9s}@keyframes hero-in{0%{opacity:0;transform:translateY(14px)}}@keyframes hero-in-shot{0%{opacity:0;transform:translateY(32px)scale(.98)}}.cards{gap:16px;display:grid}@media (width>=760px){.cards-3{grid-template-columns:repeat(3,1fr);gap:20px}.cards-4{grid-template-columns:repeat(2,1fr)}}@media (width>=1040px){.cards-4{grid-template-columns:repeat(4,1fr)}}.card{border:1px solid var(--border);border-radius:calc(var(--radius) * 1.4);background:var(--card);box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:24px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.card:hover{border-color:color-mix(in srgb, var(--primary) 35%, var(--border));box-shadow:var(--shadow-lg);transform:translateY(-3px)}.card p{color:var(--muted-foreground)}.card-icon{background:color-mix(in srgb, var(--primary) 14%, transparent);width:44px;height:44px;color:var(--primary);border-radius:12px;justify-content:center;align-items:center;margin-bottom:4px;display:inline-flex}.card-icon--warn{background:color-mix(in srgb, var(--warning) 16%, transparent);color:var(--warning)}.card-dl .btn{align-self:flex-start;margin-top:auto}.card-dl p{flex:1}.card-dl--soon{box-shadow:none;background:0 0;border-style:dashed}.card-dl--soon:hover{box-shadow:none;border-color:var(--border);transform:none}.tour{gap:clamp(56px,7vw,104px);display:grid}.feature{align-items:center;gap:28px;display:grid}@media (width>=1000px){.feature{grid-template-columns:5fr 7fr;gap:56px}.feature--flip .feature-text{order:2}}.feature-text h3,.mobile h3{margin:8px 0 10px;font-size:clamp(1.375rem,1.1rem + 1vw,1.75rem);font-weight:700}.feature-text>p{color:var(--muted-foreground);font-size:1.0625rem}.checks{gap:10px;margin:20px 0 0;padding:0;list-style:none;display:grid}.checks li{gap:10px;font-size:.9375rem;display:flex}.checks .icon{color:var(--primary);margin-top:3px}.frame{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-lg);margin:0;overflow:hidden}.frame img{width:100%}.gallery{grid-template-columns:1fr;gap:20px;margin:clamp(64px,7vw,104px) 0 0;padding:0;list-style:none;display:grid}@media (width>=600px){.gallery{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.gallery{grid-template-columns:repeat(4,1fr)}}.gallery .frame{box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s}.gallery li:hover .frame{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.gallery-caption{color:var(--muted-foreground);text-align:center;margin-top:10px;font-size:.875rem}.mobile{align-items:center;gap:32px;margin-top:clamp(64px,7vw,104px);display:grid}.mobile .feature-text>p{color:var(--muted-foreground);font-size:1.0625rem}@media (width>=1000px){.mobile{grid-template-columns:4fr 8fr;gap:56px}}.phones{grid-template-columns:repeat(2,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid}@media (width>=720px){.phones{grid-template-columns:repeat(4,1fr)}.phone:nth-child(2n){margin-top:32px}}.phone{border:6px solid color-mix(in srgb, var(--foreground) 88%, var(--background));background:var(--player);box-shadow:var(--shadow-lg);border-radius:26px;overflow:hidden}.phone img{width:100%}.diagram-wrap{border:1px solid var(--border);border-radius:calc(var(--radius) * 1.8);background:radial-gradient(circle at 1px 1px, color-mix(in srgb, var(--foreground) 9%, transparent) 1px, transparent 0) 0 0 / 22px 22px, var(--card);max-width:1000px;box-shadow:var(--shadow);margin:0 auto;padding:clamp(16px,3vw,32px)}.diagram{width:100%;height:auto}.diagram--tall{max-width:360px;margin-inline:auto}.diagram--wide{display:none}@media (width>=680px){.diagram--wide{display:block}.diagram--tall{display:none}}.d-node rect{fill:var(--card);stroke:var(--border);stroke-width:1.5px}.d-node--accent rect{fill:color-mix(in srgb, var(--primary) 12%, var(--card));stroke:color-mix(in srgb, var(--primary) 55%, transparent)}.d-node--muted rect{fill:var(--muted)}.d-node svg{fill:var(--primary)}.d-node--muted svg{fill:var(--muted-foreground)}.d-title{fill:var(--foreground);font-size:16px;font-weight:650}.d-title--sm{font-size:14px}.d-sub{fill:var(--muted-foreground);font-size:12.5px}.d-control path{fill:none;stroke:var(--muted-foreground);stroke-width:1.5px;stroke-dasharray:4 5;opacity:.55}.d-flows .flow{fill:none;stroke:var(--primary);stroke-width:3px;stroke-linecap:round}.d-pulses .pulse{fill:none;stroke:var(--live);stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:.06 .94;stroke-dashoffset:1px;opacity:0}.anim .d-flows .flow{stroke-dasharray:1;stroke-dashoffset:1px}.anim [data-diagram].is-visible .flow{stroke-dashoffset:0;transition:stroke-dashoffset .9s cubic-bezier(.6,0,.3,1);transition-delay:calc(.2s + min(var(--i), 1) * .8s + max(var(--i) - 1, 0) * .12s)}.anim [data-diagram].is-visible .pulse{opacity:1;animation:1.8s linear infinite flow;animation-delay:calc(1.8s + var(--i) * .15s);animation-fill-mode:backwards}@keyframes flow{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.steps{gap:16px;margin:32px 0 0;padding:0;list-style:none;display:grid}@media (width>=760px){.steps-3{grid-template-columns:repeat(3,1fr);gap:20px}}.step{gap:14px;display:flex}.step p{color:var(--muted-foreground);margin-top:4px;font-size:.9375rem}.step-n{background:var(--primary);width:32px;height:32px;color:var(--primary-foreground);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:inline-flex}.how-control{max-width:820px;color:var(--muted-foreground);text-align:center;margin:32px auto 12px}#how .how-control+p{text-align:center}.numbers{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px;margin:0;display:grid}.number{border:1px solid var(--border);border-radius:calc(var(--radius) * 1.4);background:var(--card);box-shadow:var(--shadow);text-align:center;flex-direction:column;padding:22px;display:flex}.number dt{order:2;margin-top:6px;font-weight:600}.number-value{color:var(--primary);letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap;order:1;margin:0;font-size:clamp(2.25rem,1.8rem + 1.6vw,2.875rem);font-weight:800;line-height:1.1}.count-num{text-align:center;display:inline-block}.count-unit{letter-spacing:-.01em;margin-left:.08em;font-size:.55em;font-weight:700}.count-prefix{opacity:.75;font-weight:600}.number-detail{color:var(--muted-foreground);order:3;margin:6px 0 0;font-size:.8125rem}.table-wrap{border:1px solid var(--border);border-radius:calc(var(--radius) * 1.4);background:var(--card);max-width:980px;box-shadow:var(--shadow);margin:0 auto;overflow:hidden}.compare{border-collapse:collapse;width:100%;font-size:.9375rem}.compare th,.compare td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:14px 18px}.compare tbody tr:last-child>*{border-bottom:0}.compare thead th{letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);font-size:.8125rem}.compare thead th.col-ol{color:var(--primary)}.compare thead th img{vertical-align:-4px;border-radius:5px;margin-right:6px;display:inline-block}.compare tbody th{width:24%;font-weight:600}.compare td.col-ol{background:color-mix(in srgb, var(--primary) 7%, transparent)}.compare td:last-child{color:var(--muted-foreground)}@media (width<=680px){.compare thead{display:none}.compare,.compare tbody,.compare tr,.compare th,.compare td{width:100%;display:block}.compare tr{border-bottom:1px solid var(--border);padding:14px 16px}.compare tbody tr:last-child{border-bottom:0}.compare th,.compare td{border:0;padding:0}.compare tbody th{width:100%;margin-bottom:8px}.compare td{border-radius:8px;grid-template-columns:76px 1fr;gap:8px;padding:6px 8px;display:grid}.compare td:before{content:attr(data-label);letter-spacing:.03em;text-transform:uppercase;color:var(--muted-foreground);padding-top:2px;font-size:.75rem;font-weight:600}.compare td.col-ol:before{color:var(--primary)}}.selfhost{gap:40px;display:grid}@media (width>=1000px){.selfhost{grid-template-columns:5fr 6fr;align-items:start;gap:56px}}.selfhost .section-head{margin-bottom:28px}.selfhost .steps{margin:0}.selfhost-code{gap:16px;min-width:0;display:grid}.code{border-radius:var(--radius);background:var(--code-bg);min-width:0;color:var(--code-fg);box-shadow:var(--shadow-lg);border:1px solid oklch(100% 0 0/.08);overflow:hidden}.code-bar{color:var(--code-muted);border-bottom:1px solid oklch(100% 0 0/.08);justify-content:space-between;align-items:center;gap:12px;padding:6px 8px 6px 14px;font-size:.8125rem;display:flex}.code-bar>span{align-items:center;gap:8px;display:inline-flex}.code pre{font-family:var(--font-mono);margin:0;padding:16px;font-size:.8125rem;line-height:1.75;overflow-x:auto}.code .line{white-space:pre}.code .prompt{color:var(--code-muted);user-select:none}.code .comment{color:var(--code-muted)}.copy.is-copied{color:oklch(80% .12 135)}.code--inline{align-items:center;display:flex}.code--inline pre{flex:1;min-width:0;padding:12px 16px}.code--inline .btn-icon{color:var(--code-fg);margin-right:6px}.code--inline .btn-icon:hover{background:oklch(100% 0 0/.1)}.pair{max-width:720px;margin:32px auto 0}.pair p{color:var(--muted-foreground);text-align:center;margin-bottom:10px}.site-footer{border-top:1px solid var(--border);padding-block:48px}.footer-inner{gap:28px;display:grid}@media (width>=760px){.footer-inner{grid-template-columns:1fr auto;align-items:start}}.footer-brand p{margin-top:8px;font-size:.9375rem}.footer-links{grid-template-columns:repeat(2,auto);justify-content:start;gap:8px 28px;margin:0;padding:0;list-style:none;display:grid}.footer-links a{color:var(--muted-foreground);align-items:center;gap:8px;font-size:.9375rem;text-decoration:none;display:inline-flex}.footer-links a:hover{color:var(--foreground)}.lang-offer{z-index:60;border:1px solid var(--border);background:var(--card);width:max-content;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg);border-radius:14px;align-items:center;gap:10px;padding:8px 8px 8px 14px;font-size:.875rem;animation:.4s both hero-in;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.lang-offer[hidden]{display:none}.lang-offer>.icon{color:var(--primary)}@media (width<=480px){.lang-offer{flex-wrap:wrap}.lang-offer>span{flex:1}}.anim [data-reveal]{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 90ms);transform:translateY(22px)}.anim [data-reveal=zoom]{transform:translateY(28px)scale(.97)}.anim [data-reveal].is-visible{opacity:1;transform:none}.anim .card.is-visible{transition:transform .2s,box-shadow .2s,border-color .2s,opacity .7s}.anim [data-rows] tbody tr{opacity:0;transition:opacity .5s,transform .5s;transition-delay:calc(var(--i) * 80ms);transform:translate(-12px)}.anim [data-rows].is-visible tbody tr{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.anim [data-reveal],.anim [data-rows] tbody tr{opacity:1;transform:none}.d-pulses{display:none}.card:hover,.btn:hover,.gallery li:hover .frame{transform:none}}
