.dev{margin:0}.dev-stage{border:1px solid var(--smoke);background:radial-gradient(70% 80% at 50% 0%, color-mix(in srgb, var(--accent,#8a8f98) 18%, transparent), transparent 70%), linear-gradient(180deg, #111214, #0b0c0d);border-radius:8px;position:relative;overflow:hidden}.dev-phone .dev-stage{aspect-ratio:16/10.5}.phones{perspective:1400px;position:absolute;inset:0}.iph{aspect-ratio:1170/2532;cursor:pointer;opacity:0;pointer-events:none;background:#050506;border:0;border-radius:15%/7%;width:25%;padding:0;transition:translate .6s cubic-bezier(.2,.8,.2,1),scale .6s cubic-bezier(.2,.8,.2,1),opacity .5s,filter .5s;position:absolute;top:7%;left:50%;translate:-50%;scale:.7;box-shadow:0 0 0 2px #3a3b40,0 0 0 5px #0d0e10,0 40px 80px -30px #000000e6}.iph .iph-screen{background:#000;border-radius:13%/6%;position:absolute;inset:2.2%;overflow:hidden}.iph img,.iph video{object-fit:cover;border:0;border-radius:0;width:100%;height:100%}.iph.on{opacity:1;z-index:3;pointer-events:auto;cursor:default;scale:1}.iph.prev{opacity:.55;z-index:2;pointer-events:auto;filter:brightness(.6);translate:-138% 6%;scale:.82}.iph.next{opacity:.55;z-index:2;pointer-events:auto;filter:brightness(.6);translate:38% 6%;scale:.82}.iph.prev:hover,.iph.next:hover{filter:brightness(.85)}.mbp{padding:6% 9% 5%}.mbp-lid{background:#0d0e10;border-radius:3.2% 3.2% 0 0/5% 5% 0 0;padding:1.6% 1.6% 2.4%;box-shadow:0 0 0 1.5px #3a3b40}.mbp-screen{aspect-ratio:16/10;background:radial-gradient(120% 120% at 30% 0,#1b2140,#08090a 60%);border-radius:4px;position:relative;overflow:hidden}.mbp-base{background:linear-gradient(#2a2b30,#151619);border-radius:0 0 40% 40%/0 0 100% 100%;height:0;margin:0 -6%;padding-bottom:3.2%;position:relative}.mbp-base span{background:#0b0b0d;border-radius:0 0 8px 8px;width:14%;height:35%;position:absolute;top:0;left:50%;translate:-50%}.shot{opacity:0;place-items:center;transition:opacity .45s;display:grid;position:absolute;inset:0}.shot.on{opacity:1}.shot img,.shot video{object-fit:cover;object-position:top;border:0;border-radius:0;width:100%;height:100%}.shot.is-window img{object-fit:contain;object-position:center;filter:drop-shadow(0 20px 40px #000000b3);width:90%;height:90%;position:absolute;inset:5%}.dev-bar{color:var(--mist);align-items:center;gap:14px;min-height:34px;margin-top:12px;font-size:14px;display:flex}.dev-n{color:var(--fog);flex:none;font-size:13px}.dev-cap{flex:1;min-width:0}.dev-nav{flex:none;gap:6px;display:flex}.dev-nav .pill{padding:5px 12px}.dev-list{flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none;display:flex}.dev-list button{border:1px solid var(--smoke);background:var(--graphite);color:var(--fog);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:4px;max-width:32ch;padding:3px 9px;font-size:12px;overflow:hidden}.dev-list button:hover{color:var(--snow);border-color:var(--ash)}.dev-list button.on{color:var(--snow);border-color:var(--fog)}@media (width<=640px){.dev-phone .dev-stage{aspect-ratio:4/4.4}.iph{width:40%;top:6%}.iph.prev{translate:-125% 8%}.iph.next{translate:25% 8%}.dev-list{display:none}.mbp{padding:5% 4% 4%}}.feat{grid-template-columns:minmax(220px,300px) 1fr;align-items:start;gap:24px;display:grid}.feat-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.fi{text-align:left;cursor:pointer;width:100%;color:var(--fog);background:0 0;border:0;border-radius:6px;grid-template-columns:24px 1fr;gap:10px;padding:10px 12px 12px;display:grid;position:relative;overflow:hidden}.fi:hover{background:var(--carbon)}.fi.on{background:var(--graphite);color:var(--mist)}.fi-n{color:var(--steel);padding-top:2px;font-size:12px}.fi-t{gap:2px;font-size:13px;line-height:1.45;display:grid}.fi-t b{color:var(--snow);font-size:14px;font-weight:510}.fi:not(.on) .fi-t span{display:none}.fi-bar{background:var(--smoke);opacity:0;border-radius:2px;height:2px;position:absolute;bottom:4px;left:12px;right:12px}.fi.on .fi-bar{opacity:1}.fi-bar span{background:var(--accent,var(--snow));border-radius:2px;width:0;height:100%;display:block}.fi.on.run .fi-bar span{animation:fi-fill var(--dur,7s) linear forwards}@keyframes fi-fill{to{width:100%}}.feat-stage{display:grid;position:relative}.ff{opacity:0;visibility:hidden;grid-area:1/1;transition:opacity .4s}.ff.on{opacity:1;visibility:visible}.feat .demo{border:1px solid var(--smoke);--fg:#f7f8f8;--glow:var(--accent,#8a8f98);border-radius:8px}@media (width<=760px){.feat{grid-template-columns:1fr}.feat-stage{order:-1}}.pj-head[data-astro-cid-pznzci7v]{border-bottom:0;padding-bottom:32px}.pj-facts[data-astro-cid-pznzci7v]{color:var(--fog);flex-wrap:wrap;gap:6px 0;margin:20px 0 0;padding:0;font-size:13px;list-style:none;display:flex}.pj-facts[data-astro-cid-pznzci7v] li[data-astro-cid-pznzci7v]+li[data-astro-cid-pznzci7v]:before{content:"·";color:var(--steel);margin:0 10px}.pj-links[data-astro-cid-pznzci7v]{flex-wrap:wrap;gap:8px;margin:24px 0 0;display:flex}.pj-sec[data-astro-cid-pznzci7v]{margin-top:64px}.pj-sec[data-astro-cid-pznzci7v]:first-of-type{margin-top:8px}.sec-t[data-astro-cid-pznzci7v]{color:var(--snow);border-bottom:1px solid var(--smoke);justify-content:space-between;gap:12px;margin-bottom:20px;padding-bottom:12px;font-size:13px;font-weight:510;display:flex}.sec-more[data-astro-cid-pznzci7v]{color:var(--fog);font-size:13px;font-weight:400}.stats[data-astro-cid-pznzci7v]{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.stat[data-astro-cid-pznzci7v]{padding:16px}.stat[data-astro-cid-pznzci7v] .v[data-astro-cid-pznzci7v]{letter-spacing:-.02em;color:var(--snow);margin:0;font-size:32px;font-weight:510;line-height:1.1}.stat[data-astro-cid-pznzci7v] .l[data-astro-cid-pznzci7v]{color:var(--fog);margin:6px 0 0;font-size:13px}.asof[data-astro-cid-pznzci7v]{margin:10px 0 0;font-size:12px}.pj-body[data-astro-cid-pznzci7v]{grid-template-columns:var(--rail) minmax(0, 1fr);gap:40px;display:grid}.pj-body[data-astro-cid-pznzci7v] .prose[data-astro-cid-pznzci7v]{grid-column:2}.toc[data-astro-cid-pznzci7v]{grid-area:1/1;align-self:start;font-size:13px;position:sticky;top:80px}.toc[data-astro-cid-pznzci7v] p[data-astro-cid-pznzci7v]{color:var(--steel);margin:0 0 8px}.toc[data-astro-cid-pznzci7v] ol[data-astro-cid-pznzci7v]{gap:6px;margin:0;padding:0;list-style:none;display:grid}.toc[data-astro-cid-pznzci7v] a[data-astro-cid-pznzci7v]{color:var(--fog);font-weight:400}.toc[data-astro-cid-pznzci7v] a[data-astro-cid-pznzci7v]:hover{color:var(--snow)}.rel[data-astro-cid-pznzci7v]{margin:0;padding:0;list-style:none;display:grid}.rel[data-astro-cid-pznzci7v] li[data-astro-cid-pznzci7v]{border-bottom:1px solid var(--smoke);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.rel[data-astro-cid-pznzci7v] .muted[data-astro-cid-pznzci7v]{flex:none;font-size:13px}.pj-join[data-astro-cid-pznzci7v]{grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding:24px;display:grid}.pj-join[data-astro-cid-pznzci7v] p[data-astro-cid-pznzci7v]{margin:6px 0 0}.pj-next[data-astro-cid-pznzci7v]{grid-template-columns:1fr 1fr;gap:8px;margin-top:48px;display:grid}.pj-next[data-astro-cid-pznzci7v] a[data-astro-cid-pznzci7v]{border:1px solid var(--smoke);border-radius:8px;gap:4px;padding:16px;font-size:13px;display:grid}.pj-next[data-astro-cid-pznzci7v] a[data-astro-cid-pznzci7v]:hover{border-color:var(--ash);background:var(--carbon);text-decoration:none}.pj-next[data-astro-cid-pznzci7v] b[data-astro-cid-pznzci7v]{color:var(--snow);align-items:center;gap:10px;font-size:17px;font-weight:510;display:flex}.pj-next[data-astro-cid-pznzci7v] .r[data-astro-cid-pznzci7v]{text-align:right}.pj-next[data-astro-cid-pznzci7v] .r[data-astro-cid-pznzci7v] b[data-astro-cid-pznzci7v]{justify-content:flex-end}@media (width<=860px){.pj-body[data-astro-cid-pznzci7v]{grid-template-columns:1fr}.pj-body[data-astro-cid-pznzci7v] .prose[data-astro-cid-pznzci7v]{grid-column:1}.toc[data-astro-cid-pznzci7v]{display:none}.pj-join[data-astro-cid-pznzci7v]{grid-template-columns:1fr}}
