@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/224e262ef877bfa4-s.1zkvd_innyig_.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:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/7f11d98043fdedc9-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1vcas2uk12q5a.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:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.2demiz2t05dx4.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.2kjei9psvcorz.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:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/224e262ef877bfa4-s.1zkvd_innyig_.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:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/7f11d98043fdedc9-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1vcas2uk12q5a.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:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.2demiz2t05dx4.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.2kjei9psvcorz.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:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(../media/224e262ef877bfa4-s.1zkvd_innyig_.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:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(../media/7f11d98043fdedc9-s.2c8-7nzo1jf9r.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(../media/e6d00ff86ef9e699-s.1vcas2uk12q5a.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:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(../media/d8cb5ab3660140cd-s.2demiz2t05dx4.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(../media/07454f8ad8aaac57-s.p.2kjei9psvcorz.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:Nunito Fallback;src:local(Arial);ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.0%;size-adjust:101.39%}.nunito_e55c75bd-module__BvvmHq__className{font-family:Nunito,Nunito Fallback;font-style:normal}.nunito_e55c75bd-module__BvvmHq__variable{--font-nunito:"Nunito", "Nunito Fallback"}
@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(../media/400bf8aa837fcb7e-s.19g-lkcx7iw64.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(../media/f7aa21714c1c53f8-s.p.0-95eo-012xnf.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:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(../media/400bf8aa837fcb7e-s.19g-lkcx7iw64.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(../media/f7aa21714c1c53f8-s.p.0-95eo-012xnf.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:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(../media/400bf8aa837fcb7e-s.19g-lkcx7iw64.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(../media/f7aa21714c1c53f8-s.p.0-95eo-012xnf.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:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(../media/400bf8aa837fcb7e-s.19g-lkcx7iw64.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(../media/f7aa21714c1c53f8-s.p.0-95eo-012xnf.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:Figtree Fallback;src:local(Arial);ascent-override:94.32%;descent-override:24.82%;line-gap-override:0.0%;size-adjust:100.72%}.figtree_f7655db4-module__1jU2Qq__className{font-family:Figtree,Figtree Fallback;font-style:normal}.figtree_f7655db4-module__1jU2Qq__variable{--font-figtree:"Figtree", "Figtree Fallback"}
:root{--bg:#fff;--surface:#f3f7fa;--surface-2:#fbf6f0;--sky:#7db8e0;--sky-soft:#dcebf6;--sand:#f4b98a;--sand-soft:#fbe7d6;--accent:#2b6a99;--accent-hover:#245a83;--ink:#1f2a37;--slate:#5e6b7a;--border:#e4e9ef;--success:#2f7a57;--warn-text:#8a4b12;--danger:#b23b2e;--success-soft:#e7f3ec;--danger-soft:#fbe4e1;--radius:18px;--radius-sm:12px;--radius-lg:24px;--shadow-sm:0 1px 2px #1f2a370f, 0 4px 12px -6px #1f2a371a;--shadow:0 22px 44px -22px #1f2a3747;--shadow-lg:0 32px 64px -24px #1f2a3759;--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:18px;--text-xl:clamp(20px, 1.6vw + 14px, 24px);--text-2xl:clamp(26px, 2.4vw + 16px, 34px);--text-3xl:clamp(30px, 3.6vw + 14px, 42px);--text-4xl:clamp(40px, 6.2vw, 64px);--leading-tight:1.1;--leading-snug:1.3;--leading-body:1.6;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--ease-out:cubic-bezier(.2,.8,.2,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--dur-fast:.16s;--dur:.28s;--dur-slow:.5s;--font-display:var(--font-nunito), system-ui, sans-serif;--font-body:var(--font-figtree), system-ui, sans-serif;--coral:#b23b2e;--teal:#2f7a57;--violet:#2b6a99;--accent-2:#2b6a99;--bg-soft:#f3f7fa}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;padding:0}h1,h2,h3,.display{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance}h1{line-height:var(--leading-tight)}h2{line-height:1.15}h3{line-height:var(--leading-snug)}p{text-wrap:pretty}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}.container{max-width:1200px;margin:0 auto;padding:0 24px}.eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:13px;font-weight:700}.lede{color:var(--slate);font-size:18px;line-height:1.6}.section{padding:88px 0}@media (max-width:760px){.section{padding:64px 0}}.skip-link{background:var(--ink);color:#fff;z-index:100;border-radius:10px;padding:10px 16px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}.btn{border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:14px 24px;font-size:16px;font-weight:700;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s,background .18s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 10px 22px -10px #2b6a9999}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 14px 28px -12px #2b6a99a6}.btn-dark{background:var(--ink);color:#fff}.btn-outline{color:var(--ink);border:1px solid var(--border);background:#fff}.btn-outline:hover{border-color:var(--sky)}.btn:disabled{opacity:.55;pointer-events:none}.card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:#fff;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,border-color .28s}.card-hover:hover{box-shadow:var(--shadow);border-color:#0000;transform:translateY(-6px)}.glow{position:relative;overflow:hidden}.glow:after{content:"";background:radial-gradient(400px circle at var(--mx,50%) var(--my,0%), #7db8e02e, transparent 40%);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.glow:hover:after{opacity:1}.pill{border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;display:inline-block}.input{border:1px solid var(--border);min-height:48px;color:var(--ink);background:#fff;border-radius:12px;padding:13px 16px;font-family:inherit;font-size:16px;transition:border-color .2s,box-shadow .2s}.input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #2b6a9924}.nav{z-index:40;-webkit-backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top,0px);background:#ffffffd1;position:sticky;top:0}@media (max-width:860px){.nav-desktop{display:none!important}.nav-toggle{display:inline-flex!important}}@media (min-width:861px){.nav-mobile-panel{display:none!important}}.logo-mark .plank{transform-box:view-box;transform-origin:32px 35px;animation:.9s cubic-bezier(.34,1.56,.64,1) both plank-in}@keyframes plank-in{0%{transform:rotate(-14deg)}60%{transform:rotate(5deg)}to{transform:rotate(0)}}a:hover .logo-mark .plank,.logo-mark:hover .plank{animation:1.6s ease-in-out infinite rock}@keyframes rock{0%,to{transform:rotate(0)}25%{transform:rotate(-9deg)}75%{transform:rotate(9deg)}}.hero-bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.orb{filter:blur(60px);opacity:.55;will-change:transform;border-radius:50%;transition:transform 1.2s cubic-bezier(.2,.8,.2,1);position:absolute}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.float{animation:6s ease-in-out infinite float}.app-badge{background:var(--ink);color:#fff;border-radius:14px;align-items:center;gap:10px;min-height:52px;padding:10px 18px;display:inline-flex}.app-badge small{opacity:.75;font-size:11px;display:block}details summary{cursor:pointer;list-style:none}details summary::-webkit-details-marker{display:none}details summary:after{content:"+";float:right;color:var(--accent);font-size:22px;line-height:1;transition:transform .2s}details[open] summary:after{transform:rotate(45deg)}.quick-exit{left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:60;background:var(--ink);color:#fff;border:none;border-radius:999px;padding:12px 18px;font-size:14px;font-weight:700;position:fixed;box-shadow:0 10px 24px -10px #00000080}@media print{.no-print,.nav,.quick-exit{display:none!important}body{background:#fff}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.hero-card-l{left:-20px}.hero-card-r{right:-16px}@media (max-width:760px){.hero-card-l{left:12px}.hero-card-r{right:12px}body{padding-bottom:72px}.quick-exit{padding:10px 14px;font-size:13px}}@media (max-width:560px){.hero-card-l{display:none}}html[data-shot] .demo-banner,html[data-shot] .quick-exit,html[data-shot] nextjs-portal{display:none!important}.input{min-width:0;max-width:100%}input[type=file].input{width:100%}main{overflow-wrap:break-word}html{scroll-padding-top:96px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}select.input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235E6B7A' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:44px}textarea.input{resize:vertical;min-height:110px;line-height:1.5}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.dropzone{background:var(--surface);min-height:64px;color:var(--accent);cursor:pointer;border:2px dashed #c9d6e2;border-radius:14px;align-items:center;gap:14px;padding:16px 18px;transition:border-color .2s,background .2s,transform .2s;display:flex}.dropzone:hover,.dropzone.over{border-color:var(--accent);background:var(--sky-soft)}.dropzone.over{transform:scale(1.01)}.dropzone.has-file{border-style:solid;border-color:var(--accent);background:#fff}.dropzone:focus-within{outline:3px solid var(--accent);outline-offset:3px}.dropzone strong{color:var(--ink);font-size:15px}.skeleton{background:linear-gradient(90deg, var(--surface) 25%, var(--skeleton-hi,#e9eff4) 50%, var(--surface) 75%);background-size:200% 100%;border-radius:16px;animation:1.3s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.toast-stack{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:80;pointer-events:none;gap:8px;width:min(92vw,440px);display:grid;position:fixed;transform:translate(-50%)}.toast{border-radius:14px;align-items:center;gap:10px;padding:14px 16px;font-size:15px;font-weight:700;animation:.35s cubic-bezier(.2,.8,.2,1) both toastin;display:flex;box-shadow:0 18px 40px -16px #1f2a3773}.toast-success{background:var(--ink);color:#fff}.toast-error{background:var(--danger);color:#fff}.toast-icon{background:#ffffff2e;border-radius:50%;flex-shrink:0;place-items:center;width:24px;height:24px;font-size:13px;display:grid}@keyframes toastin{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}.bubble{overflow-wrap:anywhere;max-width:80%;padding:11px 15px;font-size:16px;line-height:1.45;animation:.3s both toastin}.bubble.mine{background:var(--accent);color:#fff;border-radius:18px 18px 6px;align-self:flex-end}.bubble.theirs{background:var(--surface);color:var(--ink);border-radius:18px 18px 18px 6px;align-self:flex-start}.chip{border:1px solid var(--border);min-height:40px;color:var(--ink);background:#fff;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:700;transition:background .2s,color .2s}.chip[aria-pressed=true],.chip[data-on=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.print-only{display:none}@media print{.print-only{display:block!important}body>:not(.print-only) .no-print{display:none!important}}.navlink{color:var(--slate);cursor:pointer;padding:8px 2px;font-size:15px;font-weight:600;position:relative}.navlink[aria-current=page]{color:var(--ink)}.navlink[aria-current=page]:after{content:"";background:var(--accent);border-radius:3px;height:3px;position:absolute;bottom:-2px;left:0;right:0}.menu{border:1px solid var(--border);min-width:210px;box-shadow:var(--shadow);z-index:50;background:#fff;border-radius:16px;padding:6px;animation:.2s both toastin;display:grid;position:absolute;top:calc(100% + 10px);right:0}.menu-item{text-align:left;color:var(--ink);background:0 0;border:none;border-radius:10px;padding:11px 12px;font-size:15px;font-weight:600}.menu-item:hover,.menu-item:focus-visible{background:var(--surface)}.tabbar{display:none}@media (max-width:860px){.tabbar{z-index:45;-webkit-backdrop-filter:saturate(1.4)blur(16px);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));background:#ffffffeb;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab{min-height:52px;color:var(--slate);background:0 0;border:none;border-radius:12px;flex-direction:column;align-items:center;gap:3px;padding:6px 0;font-size:11px;font-weight:700;transition:color .2s,transform .2s cubic-bezier(.34,1.56,.64,1);display:flex}.tab[aria-current=page]{color:var(--accent)}.tab:active{transform:scale(.92)}.has-tabbar body{padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.has-tabbar .quick-exit{bottom:calc(84px + env(safe-area-inset-bottom,0px))}.has-tabbar .toast-stack{bottom:calc(92px + env(safe-area-inset-bottom,0px))}}.sheet-backdrop{z-index:70;background:#1f2a3759;align-items:flex-end;animation:.2s both fadein;display:flex;position:fixed;inset:0}.sheet{width:100%;padding:10px 16px calc(20px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:24px 24px 0 0;animation:.32s cubic-bezier(.2,.8,.2,1) both sheetup;display:grid}.sheet-handle{background:var(--border);border-radius:3px;width:40px;height:5px;margin:0 auto 10px}.sheet-item{text-align:left;color:var(--ink);background:0 0;border:none;border-radius:12px;padding:16px 12px;font-size:17px;font-weight:700}.sheet-item:active{background:var(--surface)}@keyframes sheetup{0%{transform:translateY(100%)}to{transform:none}}@keyframes fadein{0%{opacity:0}to{opacity:1}}.scroll-progress{z-index:60;transform-origin:0;background:linear-gradient(90deg, var(--sky), var(--accent), var(--sand));pointer-events:none;height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}@supports (animation-timeline:scroll()){.scroll-progress{animation:linear both progress;animation-timeline:scroll(root)}@keyframes progress{to{transform:scaleX(1)}}.scroll-reveal{animation:linear both scrollreveal;animation-timeline:view();animation-range:entry cover 28%}@keyframes scrollreveal{0%{opacity:.35;filter:saturate(.6);transform:translateY(28px)scale(.97)}to{opacity:1;filter:none;transform:none}}}.sheen{background:linear-gradient(100deg, var(--accent) 20%, #5fa3d3 40%, var(--accent) 60%);color:#0000;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out infinite sheen}@keyframes sheen{0%,to{background-position:100% 0}50%{background-position:0 0}}.btn:active,.chip:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){.scroll-progress,.scroll-reveal,.sheen{animation:none!important}.sheen{color:var(--accent);background:0 0}.scroll-progress{display:none}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal{animation:linear both reveal-in;animation-timeline:view();animation-range:entry cover 22%}.reveal-1{animation-range:entry 6% cover 26%}.reveal-2{animation-range:entry 12% cover 30%}.reveal-3{animation-range:entry 18% cover 34%}@keyframes reveal-in{0%{opacity:0;transform:translateY(28px)scale(.985)}to{opacity:1;transform:none}}.hero-parallax{animation:linear both hero-drift;animation-timeline:scroll(root);animation-range:0 700px}@keyframes hero-drift{to{transform:translateY(-36px)scale(1.02)}}.scroll-progress{z-index:70;transform-origin:0;background:linear-gradient(90deg, var(--sky), var(--accent), var(--sand));height:3px;animation:linear both grow;animation-timeline:scroll(root);position:fixed;top:0;left:0;right:0}@keyframes grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}}}.scroll-progress{pointer-events:none}@supports not (animation-timeline:view()){.scroll-progress{display:none}}.tour-progress{background:var(--sky);transform-origin:0;width:100%;height:3px;animation-name:tour-fill;animation-timing-function:linear;animation-fill-mode:both;position:absolute;bottom:0;left:0}@keyframes tour-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (max-width:760px),(pointer:coarse){.orb{display:none!important}.hero-bg{background:radial-gradient(120% 60% at 90% 0%, var(--sky-soft), transparent 60%), radial-gradient(90% 50% at 0% 100%, var(--sand-soft), transparent 60%)}.nav{-webkit-backdrop-filter:none!important;background:#fff!important}.reveal,.hero-parallax,.scroll-progress{animation:none!important}.scroll-progress{display:none!important}.float{animation:none!important}}.chip[role=tab][aria-selected=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.consent{z-index:55;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));border:1px solid var(--border);background:#fff;border-radius:16px;width:min(92vw,560px);padding:16px 18px;position:fixed;transform:translate(-50%);box-shadow:0 18px 40px -16px #1f2a3759}@media (max-width:760px){.consent{bottom:calc(84px + env(safe-area-inset-bottom,0px))}}@media print{.print-letter{box-shadow:none!important;border:none!important;padding:0!important}}.chip[data-on=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.chip:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}.kc-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:8px;display:grid}.kc-head{text-align:center;color:var(--slate);padding:4px 0;font-size:13px;font-weight:800}.kc-day{border:2px solid #0000;border-radius:14px;flex-direction:column;gap:2px;min-height:78px;padding:8px 6px;display:flex}.kc-today{border-color:var(--ink);box-shadow:inset 0 0 0 3px #fff}.kc-num{font-family:var(--font-display);font-size:18px;font-weight:900}.kc-where{overflow-wrap:anywhere;font-size:12px;font-weight:700;line-height:1.2}.kc-icons{margin-top:auto;font-size:16px}.kc-week{grid-template-columns:1fr}.kc-week .kc-day{flex-direction:row;align-items:center;gap:14px;min-height:0;padding:14px 16px}.kc-week .kc-num{min-width:150px;font-size:18px}.kc-week .kc-where{font-size:18px}.kc-week .kc-icons{margin:0 0 0 auto;font-size:22px}.kc-note{font-size:15px;font-weight:700}.kc-pack{text-align:center;background:var(--surface);border-radius:14px;margin-top:14px;padding:12px 14px;font-size:16px}@media (max-width:520px){.kc-day{min-height:60px;padding:6px 4px}.kc-where{font-size:10px}.kc-num{font-size:15px}.kc-week .kc-num{min-width:0;font-size:15px}.kc-week .kc-where{font-size:15px}}@media print{@page{size:letter;margin:.4in}body *{visibility:hidden}.kids-sheet,.kids-sheet *{visibility:visible}.kids-sheet{position:absolute;inset:0}.kc-day{-webkit-print-color-adjust:exact;print-color-adjust:exact;break-inside:avoid;min-height:92px}.kc-week .kc-day{min-height:0}}@media (max-width:520px){.kc-grid:not(.kc-week) .kc-where{display:none}.kc-grid:not(.kc-week) .kc-day{align-items:center;min-height:52px}.kc-grid:not(.kc-week) .kc-icons{margin-top:2px}}.kc-week .kc-day{flex-wrap:wrap;row-gap:4px}.kc-week .kc-num{white-space:nowrap}.kc-week .kc-note{flex-basis:100%}select.input{text-overflow:ellipsis;width:100%;min-width:0;max-width:100%}@media (max-width:520px){.cta-row{flex-direction:column;align-items:stretch!important}.cta-row .btn{width:100%}.hide-sm{display:none}}@media (max-width:860px){.nav-cta-mobile{display:inline-flex!important}}.tab{position:relative}.tab-badge{background:var(--danger);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:800;line-height:1;display:grid;position:absolute;top:4px;left:calc(50% + 6px)}html[data-theme=dark] body:has(nav.tabbar){--bg:#0f1720;--surface:#17212c;--surface-2:#1b2632;--border:#2c3a4a;--sky-soft:#1d3346;--sand-soft:#3a2a1d;--accent:#8ec3e8;--accent-hover:#b3d7f0;--ink:#e7edf3;--slate:#a9b6c4;--success:#74d3a0;--warn-text:#f3c48f;--danger:#f2958b;background:var(--bg);color:var(--ink);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=dark] body:has(nav.tabbar) :is(.card,.input,.btn-outline,.chip,header.nav,.tabbar,.sheet,.menu){color:var(--ink);border-color:var(--border);background-color:var(--surface)!important}:is(html[data-theme=dark] body:has(nav.tabbar) [style*="background: rgb(255, 255, 255)"],html[data-theme=dark] body:has(nav.tabbar) [style*="background-color: rgb(255, 255, 255)"]){background:var(--surface)!important}html[data-theme=dark] body:has(nav.tabbar) [style*="background: rgb(231, 243, 236)"]{background:#15301f!important}html[data-theme=dark] body:has(nav.tabbar) [style*="background: rgb(251, 233, 231)"]{background:#3a1d19!important}html[data-theme=dark] body:has(nav.tabbar) [style*="background: rgb(247, 251, 254)"]{background:var(--surface-2)!important}html[data-theme=dark] body:has(nav.tabbar) .btn-primary{color:#0f1720;box-shadow:none}html[data-theme=dark] body:has(nav.tabbar) .btn-dark{background:var(--ink);color:#0f1720}:is(html[data-theme=dark] body:has(nav.tabbar) .chip[aria-pressed=true],html[data-theme=dark] body:has(nav.tabbar) .chip[data-on=true]){background:var(--ink)!important;color:#0f1720!important}html[data-theme=dark] body:has(nav.tabbar) .toast-success{color:#0f1720;background:#e7edf3}html[data-theme=dark] body:has(nav.tabbar) .kids-sheet{color:#1f2a37}html[data-theme=dark] body:has(nav.tabbar) img{opacity:.95}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root){animation:vt-out .18s var(--ease-out) both}::view-transition-new(root){animation:vt-in .26s var(--ease-out) both}@keyframes vt-out{to{opacity:0;transform:translateY(-4px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(6px)}}}.nav{view-transition-name:vt-nav}.tabbar{view-transition-name:vt-tabbar}.quick-exit{view-transition-name:vt-exit}::view-transition-group(vt-nav){animation-duration:0s}::view-transition-group(vt-tabbar){animation-duration:0s}::view-transition-group(vt-exit){animation-duration:0s}.check-draw{background:var(--success-soft);width:56px;height:56px;animation:pop-in .5s var(--ease-spring) both;border-radius:50%;place-items:center;display:grid}.check-draw svg path{stroke:var(--success);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;fill:none;stroke-dasharray:48;stroke-dashoffset:48px;animation:draw .5s .2s var(--ease-out) forwards}@keyframes pop-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes draw{to{stroke-dashoffset:0}}.settle{animation:settle .6s var(--ease-spring) both}@keyframes settle{0%{transform:scale(1)}35%{transform:scale(1.015)}to{transform:scale(1)}}.celebrate{position:relative;overflow:hidden}.celebrate i{opacity:0;width:8px;height:12px;animation:confetti 1.9s var(--ease-out) forwards;border-radius:2px;position:absolute;top:-10px}.celebrate i:nth-child(odd){background:var(--sky)}.celebrate i:nth-child(2n){background:var(--sand)}.celebrate i:nth-child(3n){background:var(--accent)}@keyframes confetti{0%{opacity:0;transform:translateY(0)rotate(0)}10%{opacity:1}to{opacity:0;transform:translateY(220px)rotate(540deg)}}.pill[data-state]:before{content:"";vertical-align:1px;background:currentColor;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.btn[aria-busy=true]{pointer-events:none;position:relative;color:#0000!important}.btn[aria-busy=true]:after{content:"";color:#fff;border:2.5px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;position:absolute}.btn-outline[aria-busy=true]:after{color:var(--ink)}@keyframes spin{to{transform:rotate(360deg)}}.input{border-color:#d9e1e9}.input:focus{border-color:var(--accent);box-shadow:0 0 0 4px #2b6a9924}.empty-art{background:var(--sky-soft);width:64px;height:64px;color:var(--accent);border-radius:20px;place-items:center;margin:0 auto 12px;display:grid}.tab[aria-current=page] svg{transition:transform var(--dur) var(--ease-spring);transform:translateY(-1px)scale(1.06)}.tab[aria-current=page]:before{content:"";background:var(--accent);border-radius:3px;width:18px;height:3px;position:absolute;top:2px;left:50%;transform:translate(-50%)}.card-hover:hover{box-shadow:var(--shadow);transform:translateY(-4px)}html[data-theme=dark] body:has(nav.tabbar){--success-soft:#15301f;--danger-soft:#3a1d19;--shadow-sm:0 1px 2px #0000004d, 0 4px 12px -6px #0006;--shadow:0 22px 44px -22px #0009}html[data-theme=dark] body:has(nav.tabbar) .input{border-color:var(--border)}html[data-theme=dark] body:has(nav.tabbar) .check-draw{background:var(--success-soft)}@media (prefers-reduced-motion:reduce){.check-draw,.check-draw svg path,.settle,.celebrate i{animation:none!important}.check-draw svg path{stroke-dashoffset:0}.celebrate i{display:none}}html[data-theme=dark] body:has(nav.tabbar){--skeleton-hi:#22303e}html[data-theme=dark] body:has(nav.tabbar) .quick-exit{color:#0f1720;background:#e7edf3}html[data-theme=dark] body:has(nav.tabbar) :is([role=radio][aria-checked=true],[role=tab][aria-selected=true]){background:var(--accent)!important;color:#0f1720!important;box-shadow:none!important}html[data-theme=dark] body:has(nav.tabbar) :is([role=radio],[role=tab]){color:var(--ink)}@media (max-width:860px){.has-tabbar .composer{bottom:calc(136px + env(safe-area-inset-bottom,0px));z-index:30;box-shadow:var(--shadow);position:sticky}}html[data-theme=dark] body:has(nav.tabbar) .demo-banner{color:#e7edf3;border-bottom:1px solid var(--border);background:#0b1219!important}@media (max-width:860px){.has-tabbar .consent{bottom:calc(140px + env(safe-area-inset-bottom,0px))}}
