:root{--moko-pink:#ff6fae;--moko-pink-dim:#d6568c;--moko-pink-deep:#b8407a;--moko-pink-soft:#ffd6e8;--moko-pink-mist:#fff0f6;--lavender:#c9b8e8;--lavender-soft:#ece6f9;--sky:#cfe8f5;--sun:#ffe39e;--leaf:#bfe0bd;--cream:#fffaf6;--ink:#4a3b44;--ink-soft:#8a7a82;--card:#fff;--radius:28px;--radius-sm:18px;--radius-pill:999px;--shadow-soft:0 18px 50px -22px #d8568c73;--shadow-card:0 10px 36px -18px #4a3b4447;--shadow-glow:0 0 90px 10px #ff6fae59;--maxw:1080px;--font-body:"Nunito", ui-rounded, "Segoe UI", system-ui, -apple-system, sans-serif;--font-head:"Baloo 2", var(--font-body)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:radial-gradient(1200px 600px at 50% -10%, var(--sky) 0%, transparent 60%), radial-gradient(900px 500px at 85% 10%, var(--lavender-soft) 0%, transparent 55%), radial-gradient(900px 600px at 10% 30%, var(--moko-pink-mist) 0%, transparent 55%), linear-gradient(180deg, #fbfdff 0%, var(--cream) 40%, var(--moko-pink-mist) 100%);-webkit-font-smoothing:antialiased;background-attachment:fixed;min-height:100vh;margin:0;font-size:18px;line-height:1.65}h1,h2,h3{font-family:var(--font-head);color:var(--ink);margin:0 0 .4em;font-weight:700;line-height:1.15}a{color:var(--moko-pink-deep)}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}.topnav{z-index:20;-webkit-backdrop-filter:blur(10px);background:#fffaf6b8;position:sticky;top:0}.topnav .wrap{justify-content:space-between;align-items:center;padding-top:14px;padding-bottom:14px;display:flex}.brand{font-family:var(--font-head);color:var(--ink);font-size:1.15rem;font-weight:700;text-decoration:none}.nav-links{align-items:center;gap:22px;display:flex}.nav-links a{font-family:var(--font-head);color:var(--moko-pink-deep);font-size:.95rem;font-weight:600;text-decoration:none}.nav-links a:hover{text-decoration:underline}.hero{text-align:center;padding:72px 0 40px}.mascot-frame{margin-bottom:32px;display:inline-block;position:relative}.mascot-frame:after{content:"";background:var(--moko-pink);filter:blur(70px);opacity:.4;z-index:-1;border-radius:50%;position:absolute;inset:8%}.mascot{border-radius:var(--radius);width:min(560px,86vw);height:auto;box-shadow:var(--shadow-soft);display:block}.eyebrow{font-family:var(--font-head);color:var(--moko-pink-deep);background:var(--moko-pink-soft);border-radius:var(--radius-pill);letter-spacing:.02em;margin-bottom:18px;padding:6px 16px;font-size:.85rem;font-weight:600;display:inline-block}.hero h1{margin-bottom:.2em;font-size:clamp(2.6rem,7vw,4.6rem)}.hero h1 .blush{color:var(--moko-pink)}.tagline{color:var(--ink-soft);margin:0 0 20px;font-size:1.05rem;font-style:italic}.lede{max-width:620px;color:var(--ink);margin:0 auto 8px;font-size:clamp(1.05rem,2.4vw,1.3rem)}.install{background:var(--card);border-radius:var(--radius);max-width:680px;box-shadow:var(--shadow-card);text-align:left;margin:40px auto 0;padding:28px 28px 32px}.install h2{text-align:center;margin-bottom:4px;font-size:1.15rem}.install .sub{text-align:center;color:var(--ink-soft);margin:0 0 22px;font-size:.95rem}.tabs{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px;display:flex}.tab{font-family:var(--font-head);color:var(--ink-soft);background:var(--moko-pink-mist);border-radius:var(--radius-pill);cursor:pointer;border:2px solid #0000;padding:8px 20px;font-size:.95rem;font-weight:600;transition:all .18s}.tab:hover{color:var(--moko-pink-deep)}.tab[aria-selected=true]{color:#fff;background:var(--moko-pink);box-shadow:0 8px 20px -8px var(--moko-pink-dim)}.cmd{border-radius:var(--radius-sm);background:#2c2230;align-items:center;gap:12px;padding:16px 16px 16px 20px;display:flex}.cmd code{color:#ffe9f3;white-space:nowrap;scrollbar-width:thin;flex:1;font-family:JetBrains Mono,ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.98rem;overflow-x:auto}.cmd code .prompt{color:var(--moko-pink);user-select:none}.copy{font-family:var(--font-head);color:#fff;background:var(--moko-pink);border-radius:var(--radius-pill);cursor:pointer;border:none;flex-shrink:0;padding:9px 18px;font-size:.85rem;font-weight:600;transition:transform .12s,background .18s}.copy:hover{transform:translateY(-1px)}.copy:active{transform:translateY(0)}.copy.copied{background:var(--leaf);color:#2c4a2a}.panel[hidden]{display:none}.install .note{text-align:center;color:var(--ink-soft);margin:16px 0 0;font-size:.85rem}.features{padding:80px 0 40px}.features h2{text-align:center;margin-bottom:8px;font-size:clamp(1.8rem,4vw,2.6rem)}.features .section-sub{text-align:center;color:var(--ink-soft);max-width:560px;margin:0 auto 44px}.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;display:grid}.feature{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:30px 28px;transition:transform .2s,box-shadow .2s}.feature:hover{transform:translateY(-4px);box-shadow:0 22px 50px -22px #d8568c80}.feature .ico{border-radius:var(--radius-sm);background:var(--moko-pink-mist);place-items:center;width:60px;height:60px;margin-bottom:16px;font-size:2rem;display:grid}.feature:nth-child(2) .ico{background:var(--lavender-soft)}.feature:nth-child(3) .ico{background:#fff4d6}.feature:nth-child(4) .ico{background:#e3f3ff}.feature:nth-child(5) .ico{background:#e6f6e4}.feature h3{margin-bottom:6px;font-size:1.2rem}.feature p{color:var(--ink-soft);margin:0;font-size:.98rem}.demo{padding:70px 0 20px}.demo h2{text-align:center;margin-bottom:8px;font-size:clamp(1.8rem,4vw,2.6rem)}.demo .section-sub{text-align:center;color:var(--ink-soft);max-width:580px;margin:0 auto 36px}.reach{padding:60px 0 30px}.reach h2{text-align:center;margin-bottom:8px;font-size:clamp(1.8rem,4vw,2.6rem)}.reach .section-sub{text-align:center;color:var(--ink-soft);max-width:600px;margin:0 auto 40px}.reach-grid{grid-template-columns:1fr 1fr;align-items:start;gap:28px;max-width:1000px;margin:0 auto;display:grid}@media (width<=760px){.reach-grid{grid-template-columns:1fr}}.footer{text-align:center;color:var(--ink-soft);padding:60px 0 50px;font-size:.92rem}.footer a{font-weight:600;text-decoration:none}.footer a:hover{text-decoration:underline}.footer .heart{color:var(--moko-pink)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.feat:where(.astro-cognygiv){padding:64px 0 24px}.feat:where(.astro-cognygiv) h2:where(.astro-cognygiv){text-align:center;margin-bottom:8px;font-size:clamp(1.8rem,4vw,2.6rem)}.feat-sub:where(.astro-cognygiv){text-align:center;color:var(--ink-soft);max-width:560px;margin:0 auto 40px}.fgrid:where(.astro-cognygiv){grid-template-columns:repeat(auto-fit,minmax(248px,1fr));gap:20px;display:grid}.fcard:where(.astro-cognygiv){background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:18px 20px 22px;transition:transform .2s,box-shadow .2s}.fcard:where(.astro-cognygiv):hover{transform:translateY(-4px);box-shadow:0 22px 50px -22px #d8568c80}.fcard:where(.astro-cognygiv) h3:where(.astro-cognygiv){margin:0 0 4px;font-size:1.1rem}.fcard:where(.astro-cognygiv)>p:where(.astro-cognygiv){color:var(--ink-soft);margin:0;font-size:.95rem;line-height:1.45}.fx:where(.astro-cognygiv){text-align:center;background:var(--moko-pink-mist);border-radius:var(--radius-sm);flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:104px;margin-bottom:16px;padding:14px;display:flex}.mini-graph:where(.astro-cognygiv){width:100%;height:84px}.mini-graph:where(.astro-cognygiv) line:where(.astro-cognygiv){stroke:var(--moko-pink);stroke-width:2px}.mini-graph:where(.astro-cognygiv) .n:where(.astro-cognygiv) rect:where(.astro-cognygiv){fill:#fff;stroke:var(--moko-pink-soft);stroke-width:1.5px}.mini-graph:where(.astro-cognygiv) .n:where(.astro-cognygiv) text:where(.astro-cognygiv){fill:var(--moko-pink-deep);font-family:var(--font-head);text-anchor:middle;font-size:12px;font-weight:700}.mbubble:where(.astro-cognygiv){background:var(--lavender-soft);color:var(--ink);text-align:left;border-radius:16px 16px 16px 5px;max-width:95%;padding:10px 14px;font-size:.88rem;line-height:1.4}.mtag:where(.astro-cognygiv){font-family:var(--font-head);color:var(--moko-pink-deep);border-radius:var(--radius-pill);background:#fff;padding:3px 10px;font-size:.7rem;font-weight:600}.note:where(.astro-cognygiv){color:var(--ink);background:var(--lavender-soft);border-left:3px solid var(--moko-pink);text-align:left;border-radius:6px 12px 12px 6px;padding:10px 14px;font-size:.88rem;font-style:italic;line-height:1.45}.fx-dream:where(.astro-cognygiv) .moon:where(.astro-cognygiv){font-size:1.5rem}.dreamline:where(.astro-cognygiv){color:var(--ink);margin:0;font-size:.85rem;line-height:1.4}.fx-senses:where(.astro-cognygiv){flex-flow:wrap;gap:8px}.chip:where(.astro-cognygiv){font-family:var(--font-head);color:var(--moko-pink-deep);border-radius:var(--radius-pill);background:#fff;padding:6px 12px;font-size:.82rem;font-weight:600}.fx-selfie:where(.astro-cognygiv){padding:0;position:relative;overflow:hidden}.fx-selfie:where(.astro-cognygiv) img:where(.astro-cognygiv){object-fit:cover;object-position:center;width:100%;height:190px;display:block}.fx-selfie:where(.astro-cognygiv) .cap:where(.astro-cognygiv){color:var(--moko-pink-deep);border-radius:var(--radius-pill);backdrop-filter:blur(2px);background:#ffffffd9;padding:4px 11px;font-size:.8rem;font-weight:600;position:absolute;bottom:10px;left:10px}.wchip:where(.astro-cognygiv){font-family:var(--font-head);color:var(--ink);border-radius:var(--radius-pill);box-shadow:var(--shadow-card);background:#fff;padding:9px 16px;font-size:.92rem;font-weight:600}.fx-consent:where(.astro-cognygiv) .ask:where(.astro-cognygiv){color:var(--ink);margin:0;font-size:.88rem}.cbtns:where(.astro-cognygiv){gap:8px;display:flex}.cbtns:where(.astro-cognygiv) span:where(.astro-cognygiv){font-family:var(--font-head);border-radius:var(--radius-pill);padding:6px 14px;font-size:.8rem;font-weight:700}.cbtns:where(.astro-cognygiv) .yes:where(.astro-cognygiv){background:var(--leaf);color:#2c4a2a}.cbtns:where(.astro-cognygiv) .no:where(.astro-cognygiv){color:var(--ink-soft);background:#fff}.fx-private:where(.astro-cognygiv){gap:8px}.fx-private:where(.astro-cognygiv) .lock:where(.astro-cognygiv){font-size:1.5rem}.fx-private:where(.astro-cognygiv) code:where(.astro-cognygiv){color:var(--ink);background:#fff;border-radius:8px;padding:4px 10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.9rem}.fx-private:where(.astro-cognygiv) .byo:where(.astro-cognygiv){color:var(--ink-soft);font-size:.78rem}.mg-card:where(.astro-3nrh7cl4){background:var(--card);border-radius:var(--radius);max-width:760px;box-shadow:var(--shadow-card);margin:0 auto;padding:26px 26px 18px}.mg-chat:where(.astro-3nrh7cl4){justify-content:flex-end;margin-bottom:6px;display:flex}.mg-bubble:where(.astro-3nrh7cl4){background:var(--moko-pink);color:#fff;max-width:80%;box-shadow:0 8px 20px -10px var(--moko-pink-dim);border-radius:20px 20px 6px;padding:12px 18px;font-size:1rem;line-height:1.5}.mg-bubble:where(.astro-3nrh7cl4) b:where(.astro-3nrh7cl4){font-weight:700}.mg-stage:where(.astro-3nrh7cl4) svg:where(.astro-3nrh7cl4){width:100%;height:auto;display:block;overflow:visible}.node:where(.astro-3nrh7cl4) rect:where(.astro-3nrh7cl4){fill:var(--moko-pink-mist);stroke:var(--moko-pink-soft);stroke-width:2px}.node:where(.astro-3nrh7cl4) .t:where(.astro-3nrh7cl4){fill:var(--moko-pink-deep);font-family:var(--font-head);text-anchor:middle;font-size:17px;font-weight:700}.node:where(.astro-3nrh7cl4) .s:where(.astro-3nrh7cl4){fill:var(--ink-soft);font-family:var(--font-body);text-anchor:middle;font-size:12px}.node:where(.astro-3nrh7cl4).you .t:where(.astro-3nrh7cl4){font-size:18px}.node:where(.astro-3nrh7cl4).you rect:where(.astro-3nrh7cl4){fill:#fff;stroke:var(--moko-pink)}.elabel:where(.astro-3nrh7cl4){fill:var(--moko-pink-deep);font-family:var(--font-head);letter-spacing:.06em;text-transform:uppercase;text-anchor:middle;paint-order:stroke;stroke:var(--card);stroke-width:4px;font-size:12px;font-weight:600}.mg-caption:where(.astro-3nrh7cl4){text-align:center;color:var(--ink-soft);margin:14px 0 2px;font-size:.9rem}.mg-stamp:where(.astro-3nrh7cl4){background:var(--moko-pink-mist);color:var(--moko-pink-deep);border-radius:var(--radius-pill);margin-right:8px;padding:3px 12px;font-size:.78rem;font-weight:600;display:inline-block}.mg-replay:where(.astro-3nrh7cl4){font-family:var(--font-head);color:var(--moko-pink-deep);border:1.5px solid var(--moko-pink-soft);border-radius:var(--radius-pill);cursor:pointer;background:0 0;margin-left:8px;padding:3px 12px;font-size:.8rem;font-weight:600}.mg-replay:where(.astro-3nrh7cl4):hover{background:var(--moko-pink-mist)}.mg-bubble:where(.astro-3nrh7cl4),.node:where(.astro-3nrh7cl4),.elabel:where(.astro-3nrh7cl4){opacity:0}.edge:where(.astro-3nrh7cl4){stroke-dasharray:1;stroke-dashoffset:1px}.mg-card:where(.astro-3nrh7cl4).play .mg-bubble:where(.astro-3nrh7cl4){animation:.5s forwards mg-pop}.mg-card:where(.astro-3nrh7cl4).play .node:where(.astro-3nrh7cl4){transform-box:fill-box;transform-origin:50%;animation:.5s forwards mg-pop}.mg-card:where(.astro-3nrh7cl4).play .elabel:where(.astro-3nrh7cl4){animation:.4s forwards mg-fade}.mg-card:where(.astro-3nrh7cl4).play .edge:where(.astro-3nrh7cl4){animation:.6s forwards mg-draw}.mg-card:where(.astro-3nrh7cl4).play .you:where(.astro-3nrh7cl4){animation-delay:0s}.mg-card:where(.astro-3nrh7cl4).play .e1:where(.astro-3nrh7cl4){animation-delay:.4s}.mg-card:where(.astro-3nrh7cl4).play .l1:where(.astro-3nrh7cl4),.mg-card:where(.astro-3nrh7cl4).play .maya:where(.astro-3nrh7cl4){animation-delay:.7s}.mg-card:where(.astro-3nrh7cl4).play .e2:where(.astro-3nrh7cl4){animation-delay:1.2s}.mg-card:where(.astro-3nrh7cl4).play .l2:where(.astro-3nrh7cl4),.mg-card:where(.astro-3nrh7cl4).play .tom:where(.astro-3nrh7cl4){animation-delay:1.5s}.mg-card:where(.astro-3nrh7cl4).play .e3:where(.astro-3nrh7cl4){animation-delay:2s}.mg-card:where(.astro-3nrh7cl4).play .l3:where(.astro-3nrh7cl4),.mg-card:where(.astro-3nrh7cl4).play .welly:where(.astro-3nrh7cl4){animation-delay:2.3s}.mg-card:where(.astro-3nrh7cl4).play .mg-stamp:where(.astro-3nrh7cl4){animation:.5s 2.9s forwards mg-fade}.mg-stamp:where(.astro-3nrh7cl4){opacity:0}@keyframes mg-pop{0%{opacity:0;transform:scale(.7)}70%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes mg-fade{0%{opacity:0}to{opacity:1}}@keyframes mg-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.mg-bubble:where(.astro-3nrh7cl4),.node:where(.astro-3nrh7cl4),.elabel:where(.astro-3nrh7cl4),.mg-stamp:where(.astro-3nrh7cl4){opacity:1!important;animation:none!important}.edge:where(.astro-3nrh7cl4){stroke-dashoffset:0!important;animation:none!important}}
