@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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:500;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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:600;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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:700;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,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(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,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(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,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(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Nunito;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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.00%;size-adjust:101.39%}.__className_3cd16e{font-family:Nunito,Nunito Fallback;font-style:normal}.__variable_3cd16e{--font-nunito:"Nunito","Nunito Fallback"}:root{--pink:#c32d6b;--pink-deep:#9e2456;--bordeaux:#5e1530;--bordeaux-2:#7a1d3f;--ink:#0e1a1f;--ink-2:#131f24;--white:#fbf7f2;--cream:#f3ece3;--muted-on-dark:#b9b3ad;--muted-on-light:#6b6058;--stage:#0e1a1f;--on:#fbf7f2;--on-muted:#b9b3ad;--text-mega:clamp(3rem,0.5rem + 9vw,9rem);--text-hero:clamp(2.6rem,0.6rem + 6vw,6.5rem);--text-h2:clamp(2rem,0.6rem + 4vw,4.5rem);--text-body:clamp(1.05rem,0.95rem + 0.4vw,1.3rem);--text-label:0.78rem;--gutter:clamp(1.25rem,0.5rem + 4vw,6rem);--max-width:1280px;--nav-height:76px;--ease-expo:cubic-bezier(0.16,1,0.3,1)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:auto}body{font-family:var(--font-nunito),system-ui,sans-serif;color:var(--on);font-size:var(--text-body);line-height:1.6;font-weight:500;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;transition:color .5s var(--ease-expo)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3{font-weight:900;line-height:1.02;letter-spacing:-.03em}::selection{background:var(--pink);color:#fff}:focus-visible{outline:2px solid var(--pink);outline-offset:3px;border-radius:4px}.stage{position:fixed;inset:0;z-index:-2;background:var(--stage);transition:background-color .15s linear}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--gutter)}.label{font-size:var(--text-label);letter-spacing:.18em;text-transform:uppercase;font-weight:800}.label,.muted{color:var(--on-muted);transition:color .5s var(--ease-expo)}.section{position:relative;min-height:100vh;display:flex;align-items:center}.section--auto{min-height:auto}.reveal-up{opacity:0;transform:translateY(30px);will-change:transform,opacity}.reveal-line{overflow:hidden}.reveal-line>*{transform:translateY(110%);will-change:transform}html.no-js .reveal-up{opacity:1;transform:none}html.no-js .reveal-line>*{transform:none}@media (prefers-reduced-motion:reduce){.reveal-up{opacity:1}.reveal-line>*,.reveal-up{transform:none}}.grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:9998;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grainShift .6s steps(2) infinite}@keyframes grainShift{0%{transform:translate(0)}50%{transform:translate(-3%,2%)}to{transform:translate(2%,-3%)}}.pill{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:800;font-size:1rem;letter-spacing:.01em;padding:1rem 1.75rem;border-radius:16px;cursor:pointer;border:none;transition:transform .18s var(--ease-expo),box-shadow .18s var(--ease-expo),background-color .2s}.pill--primary{background:var(--pink);color:#fff;border:2px solid transparent}.pill--primary:hover{transform:translateY(-2px)}.pill--primary:active{transform:translateY(4px)}.pill--ghost{background:transparent;color:var(--on);border:2px solid;opacity:.9}.pill--ghost:hover{transform:translateY(-2px);opacity:1}.float{animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}@media (prefers-reduced-motion:reduce){.float{animation:none}}.nav{position:fixed;inset:0 0 auto 0;z-index:100;height:var(--nav-height);display:flex;align-items:center;transition:background-color .3s var(--ease-expo),box-shadow .3s var(--ease-expo),-webkit-backdrop-filter .3s;transition:background-color .3s var(--ease-expo),box-shadow .3s var(--ease-expo),backdrop-filter .3s;transition:background-color .3s var(--ease-expo),box-shadow .3s var(--ease-expo),backdrop-filter .3s,-webkit-backdrop-filter .3s}.nav--solid{background:color-mix(in srgb,var(--stage) 82%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 1px 0 color-mix(in srgb,var(--on) 10%,transparent)}.nav__inner{display:flex;align-items:center;justify-content:space-between;width:100%}.nav__brand{font-weight:900;font-size:1.6rem;letter-spacing:-.04em;color:var(--pink)}.nav__actions{display:flex;align-items:center;gap:clamp(.75rem,2vw,1.75rem)}.nav__login{font-weight:800;font-size:.95rem;color:var(--on);opacity:.85}.nav__login:hover{opacity:1}.nav__cta{padding:.7rem 1.3rem;font-size:.95rem}.hero{padding:calc(var(--nav-height) + 2rem) 0 4rem}.hero__grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:clamp(2rem,5vw,5rem);gap:clamp(2rem,5vw,5rem);align-items:center}.hero__copy{display:flex;flex-direction:column;gap:1.75rem;align-items:flex-start}.hero__title{font-size:var(--text-hero);max-width:13ch}.hero__sub{font-size:clamp(1.1rem,.9rem + .6vw,1.5rem);max-width:46ch}.hero__cta{display:flex;flex-wrap:wrap;gap:1rem}.hero__art{display:flex;justify-content:center}.hero__mascot{width:clamp(260px,34vw,520px);height:auto}.hero__scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);font-size:1.4rem;animation:bob 1.8s ease-in-out infinite}@keyframes bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,8px)}}.feature{padding:6rem 0}.feature__grid{display:grid;grid-template-columns:.9fr 1.1fr;grid-gap:clamp(2rem,6vw,6rem);gap:clamp(2rem,6vw,6rem);align-items:center}.feature__grid--reverse .feature__art{order:2}.feature__grid--reverse .feature__copy{order:1}.feature__art{display:flex;justify-content:center}.feature__mascot{width:clamp(220px,30vw,440px);height:auto}.feature__copy{display:flex;flex-direction:column;gap:1.5rem;align-items:flex-start}.feature__title{font-size:var(--text-h2);max-width:16ch}.feature__body{font-size:clamp(1.1rem,.9rem + .5vw,1.4rem);max-width:42ch}.cta{text-align:center}.cta__inner{display:flex;flex-direction:column;align-items:center;gap:1.75rem}.cta__title{font-size:var(--text-hero);max-width:18ch}.cta__sub{font-size:clamp(1.1rem,.9rem + .5vw,1.4rem);max-width:44ch;color:var(--on-muted)}.cta__button{padding:1.15rem 2.5rem;font-size:1.1rem}.footer{padding:clamp(4rem,8vw,7rem) 0 3rem}.footer__top{display:grid;grid-template-columns:1.3fr 3fr;grid-gap:clamp(2rem,5vw,5rem);gap:clamp(2rem,5vw,5rem)}.footer__logo{font-weight:900;font-size:1.8rem;letter-spacing:-.04em;color:var(--pink)}.footer__tagline{margin-top:.75rem;max-width:26ch;font-size:1rem}.footer__cols{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:2rem;gap:2rem}.footer__heading{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;margin-bottom:1rem;color:var(--on)}.footer__col ul{list-style:none;display:flex;flex-direction:column;gap:.7rem}.footer__link{font-size:.95rem;font-weight:600;transition:opacity .2s,color .2s}.footer__link:hover{color:var(--pink)}.footer__divider{height:1px;background:color-mix(in srgb,var(--on) 14%,transparent);margin:3rem 0 1.75rem}.footer__bottom{justify-content:space-between;font-size:.9rem}.footer__bottom,.footer__langs{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.footer__lang,.footer__langlabel{font-weight:700}.footer__lang{font-size:.9rem}.footer__lang:hover{color:var(--pink)}.auth{min-height:100vh;display:flex;flex-direction:column;background:var(--ink);color:var(--white)}.auth__bar{display:flex;align-items:center;justify-content:space-between;padding:1.25rem clamp(1.25rem,4vw,3rem)}.auth__brand{font-weight:900;font-size:1.5rem;color:var(--pink);letter-spacing:-.04em}.auth__toggle{font-weight:800;font-size:.9rem;color:var(--white);border:2px solid rgba(255,255,255,.18);padding:.6rem 1.1rem;border-radius:12px}.auth__toggle:hover{border-color:var(--pink);color:var(--pink)}.auth__body{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1rem 1.25rem 3rem}.auth__mascot{width:110px;height:auto}.auth__title{font-size:clamp(1.8rem,1rem + 3vw,2.6rem);margin-top:.75rem}.auth__sub{color:var(--muted-on-dark);margin-top:.5rem;max-width:32ch}.auth__form{width:100%;max-width:380px;display:flex;flex-direction:column;gap:.75rem;margin-top:1.75rem}.auth__input{width:100%;padding:.95rem 1.1rem;border-radius:14px;background:#18262c;border:2px solid #243038;color:var(--white);font-size:1.05rem;font-weight:600;font-family:inherit;transition:border-color .2s}.auth__input::placeholder{color:#6f7a80}.auth__input:focus{outline:none;border-color:#1cb0f6}.auth__submit{width:100%;margin-top:.5rem}.auth__error{color:#ff6b6b}.auth__error,.auth__info{font-weight:700;font-size:.9rem}.auth__info{color:#6fcf97}.auth__or{display:flex;align-items:center;gap:.75rem;width:100%;max-width:380px;margin:1.5rem 0;color:var(--muted-on-dark);font-weight:800;font-size:.85rem}.auth__or span{flex:1 1;height:2px;background:rgba(255,255,255,.12);border-radius:2px}.auth__social{width:100%;max-width:380px;padding:.9rem 1.1rem;border-radius:14px;background:transparent;color:var(--white);border:2px solid rgba(255,255,255,.18);font-weight:800;font-size:1rem;cursor:pointer;font-family:inherit}.auth__social:hover{border-color:var(--pink);color:var(--pink)}.auth__legal{color:rgba(255,255,255,.45);font-size:.78rem;max-width:34ch;margin-top:1.5rem}.auth__legal a{color:rgba(255,255,255,.72);text-decoration:underline;text-underline-offset:2px}.auth__legal a:hover{color:var(--pink)}.footer__legal{display:flex;gap:1.25rem}.footer__legal a:hover{color:var(--pink)}.pricing{min-height:100vh;background:var(--ink);color:var(--white);padding-bottom:5rem}.pricing__bar{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 0}.pricing__brand{font-weight:900;font-size:1.5rem;color:var(--pink);letter-spacing:-.04em}.pricing__login{font-weight:800;font-size:.9rem;color:var(--white);opacity:.85}.pricing__inner{text-align:center;padding-top:3rem}.pricing__title{font-size:clamp(2rem,1rem + 3.5vw,3.5rem)}.pricing__sub{color:var(--muted-on-dark);margin-top:.75rem;font-size:1.1rem}.plans{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem;margin-top:3.5rem;text-align:left}.plan{position:relative;background:#18262c;border:2px solid #243038;border-radius:22px;padding:2rem;display:flex;flex-direction:column;gap:1rem}.plan--highlight{border-color:var(--pink);box-shadow:0 0 0 4px rgba(195,45,107,.15)}.plan__badge{position:absolute;top:-.85rem;left:2rem;background:var(--pink);color:#fff;font-weight:800;font-size:.75rem;padding:.35rem .8rem;border-radius:50px;letter-spacing:.04em}.plan__name{font-size:1.3rem}.plan__price{font-size:2.6rem;font-weight:900;letter-spacing:-.03em}.plan__period{font-size:1rem;font-weight:700;color:var(--muted-on-dark);margin-left:.25rem}.plan__features{list-style:none;display:flex;flex-direction:column;gap:.65rem;flex:1 1}.plan__features li{color:var(--muted-on-dark);font-weight:600;padding-left:1.5rem;position:relative}.plan__features li:before{content:"✓";position:absolute;left:0;color:var(--pink);font-weight:900}.plan__cta{width:100%;margin-top:.5rem}.plans__error{color:#ff6b6b;text-align:center;margin-top:1.5rem;font-weight:700}.appshell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ink);color:var(--white);padding:2rem}.appshell__card{background:#18262c;border:2px solid #243038;border-radius:24px;padding:clamp(2rem,5vw,3.5rem);max-width:520px;width:100%;display:flex;flex-direction:column;gap:1rem}.appshell__card h1{font-size:clamp(1.6rem,1rem + 2.5vw,2.4rem)}.appshell__tier{align-self:flex-start;background:#243038;color:var(--muted-on-dark);font-weight:800;padding:.5rem 1rem;border-radius:50px;font-size:.9rem}.appshell__tier.is-premium{background:rgba(255,212,59,.15);color:#ffd43b}.appshell__note{margin-top:.5rem}.appshell__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.appshell code{background:#243038;padding:.15rem .4rem;border-radius:6px;font-size:.9em}.setup{gap:1.5rem}.setup,.setup__head{display:flex;flex-direction:column}.setup__head{gap:.5rem}.setup__form{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.field{display:flex;flex-direction:column;gap:.4rem;font-weight:700;font-size:.9rem;color:var(--muted-on-dark)}.field input,.field select{background:#131f24;border:2px solid #37464f;border-radius:12px;padding:.7rem .9rem;color:var(--white);font-size:1rem;font-weight:600;transition:border-color .2s var(--ease-expo)}.field input:focus,.field select:focus{outline:none;border-color:var(--pink)}.field select{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;padding-right:2.75rem;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='%23afafaf' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:16px}.field select:hover{border-color:#4a5c66}.field select:focus{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='%23c32d6b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.field select option{background:#131f24;color:var(--white)}.setup__error,.setup__submit{grid-column:1/-1}.setup__error{color:#ff6b6b;font-weight:700}.shell{min-height:100vh;background:var(--ink);color:#fff;display:grid;grid-template-columns:256px 1fr}.dash__tier{background:#37464f;color:var(--muted-on-dark);font-weight:800;padding:.35rem .8rem;border-radius:50px;font-size:.8rem;align-self:flex-start}.dash__tier.is-premium{background:rgba(255,212,59,.15);color:#ffd43b}.shell__side{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;padding:1.5rem 1rem;background:#131f24;border-right:1px solid #37464f}.shell__brand,.shell__side{display:flex;flex-direction:column}.shell__brand{padding-left:.5rem;margin-bottom:2rem}.shell__brand-name{color:var(--pink);font-weight:900;font-size:1.75rem;letter-spacing:-.5px;line-height:1.1}.shell__brand-tag{color:#afafaf;font-weight:600;font-size:.75rem}.shell__nav{display:flex;flex-direction:column;gap:.375rem}.navitem{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:12px 14px;border-radius:12px;border:2px solid transparent;cursor:pointer;background:transparent;color:#fff;font-size:14px;font-weight:800;line-height:1;transition:background .18s var(--ease-expo),color .18s var(--ease-expo),border-color .18s var(--ease-expo)}.navitem svg{flex-shrink:0}.navitem:hover{background:rgba(255,255,255,.05)}.navitem.is-active{color:#1cb0f6;background:rgba(28,176,246,.12);border-color:rgba(28,176,246,.5)}.shell__logout-form .navitem span,.shell__nav .navitem span{text-transform:uppercase;letter-spacing:.5px}.shell__premium{display:flex;align-items:center;gap:8px;margin-top:1.5rem;padding:12px 14px;border-radius:12px;font-weight:700;font-size:14px;text-decoration:none;background:#3d1a28;border:2px solid var(--pink);color:var(--pink);transition:filter .18s var(--ease-expo)}.shell__premium:hover{filter:brightness(1.15)}.shell__premium.is-premium{background:rgba(255,212,59,.15);border-color:transparent;color:#ffd43b;cursor:default}.shell__premium.is-premium:hover{filter:none}.shell__logout-form{margin-top:.75rem}.shell__content{min-width:0;padding:clamp(1.25rem,3vw,2.5rem);overflow-x:hidden}.shell__inner{max-width:640px;margin-inline:auto;display:flex;flex-direction:column;gap:1.25rem}.shell__inner>section{background:#202f36;border:1px solid #37464f;border-radius:16px;padding:clamp(1.25rem,3vw,1.75rem)}.rail,.shell__bottomnav{display:none}@media (min-width:1200px){.shell--rail{grid-template-columns:256px minmax(0,1fr) 320px}.shell--rail .rail{display:flex}}.rail{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;flex-direction:column;gap:1rem;padding:1.25rem;background:#131f24;border-left:1px solid #37464f}.rail__card{background:#202f36;border:1px solid #37464f;border-radius:16px;padding:1.125rem}.rail__card .summary__bars{margin-top:.85rem}.rail__summary{display:flex;align-items:center;gap:1rem;margin-top:.75rem}.rail__of{color:#afafaf;font-size:.8rem;font-weight:600}.rail__remaining{color:#58cc02;font-weight:900;font-size:1.6rem;line-height:1.1}.rail__remaining-cap{color:#58cc02;font-size:.75rem;font-weight:700}.rail__premium{display:flex;flex-direction:column;gap:.5rem;padding:1.125rem;border-radius:16px;text-decoration:none;background:#3d1a28;border:2px solid var(--pink);transition:filter .18s var(--ease-expo)}.rail__premium:hover{filter:brightness(1.15)}.rail__premium-head{display:flex;align-items:center;gap:8px;color:var(--pink);font-weight:800;font-size:1rem}.rail__premium-body{color:#fff;font-size:.85rem;line-height:1.45}.rail__premium-cta{color:var(--pink);font-weight:900;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase}.ring{position:relative;display:inline-grid;place-items:center}.ring svg{transform:rotate(0);display:block}.ring__center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1px}.ring__big{font-size:2.2rem;letter-spacing:-.02em}.ring__big,.ring__big-sm{font-weight:900;line-height:1}.ring__big-sm{font-size:1.25rem}.ring__sub{font-size:.8rem;color:#afafaf;font-weight:600}.ring__hint{font-size:.78rem;color:#58cc02;font-weight:800;margin-top:2px}.home__head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.home__greeting{color:#afafaf;font-weight:600;font-size:.95rem}.home__name{font-size:clamp(1.5rem,1rem + 2vw,1.75rem);font-weight:900;letter-spacing:-.02em}.card--center{align-items:center;text-align:center;display:flex;flex-direction:column;gap:1rem}.card__caption{display:block;color:#afafaf;font-size:.75rem;font-weight:700;letter-spacing:1px;text-transform:uppercase}.macros-split{display:flex;align-items:center;gap:1.5rem;margin-top:1rem;flex-wrap:wrap}.legend{list-style:none;flex-direction:column;flex:1 1;min-width:160px}.legend,.legend li{display:flex;gap:.6rem}.legend li{align-items:center;font-weight:700}.legend__dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.legend__label{flex:1 1}.legend__value{color:#afafaf;font-size:.85rem;font-weight:600}.chip{display:inline-flex;align-items:center;gap:6px;padding:.45rem .85rem;border-radius:50px;font-weight:800;font-size:.8rem;text-decoration:none;border:2px solid transparent}.chip--gold{background:rgba(255,212,59,.15);color:#ffd43b}.chip--primary{background:#3d1a28;border-color:var(--pink);color:var(--pink);transition:filter .18s var(--ease-expo)}.chip--primary:hover{filter:brightness(1.15)}.summary__head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.summary__remaining{font-size:1.1rem;color:var(--muted-on-dark);margin-top:.25rem}.summary__remaining strong{font-size:2rem;font-weight:900;color:var(--white);letter-spacing:-.02em}.summary__total{font-weight:700;color:var(--muted-on-dark);white-space:nowrap}.summary__bars{display:flex;flex-direction:column;gap:1rem}.macro__row{display:flex;justify-content:space-between;font-size:.85rem;font-weight:700;margin-bottom:.35rem}.macro__label{color:var(--white)}.macro__value{color:var(--muted-on-dark)}.macro__value.is-over{color:#ff6b6b}.macro__track{height:8px;background:#0e1a1f;border-radius:50px;overflow:hidden}.macro__fill{height:100%;border-radius:50px;transition:width .5s var(--ease-expo)}.coach__title,.meals__title{font-size:1.2rem;margin-bottom:1rem}.meals__estimate{display:flex;gap:.6rem;margin-bottom:.75rem}.coach__input input,.meals__desc,.meals__name,.meals__num{background:#131f24;border:2px solid #37464f;border-radius:12px;padding:.6rem .8rem;color:var(--white);font-size:.95rem;font-weight:600;transition:border-color .2s var(--ease-expo);min-width:0}.coach__input input:focus,.meals__desc:focus,.meals__name:focus,.meals__num:focus{outline:none;border-color:var(--pink)}.meals__desc{flex:1 1}.meals__form{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:.75rem}.meals__name{flex:1 1 120px}.meals__num{width:64px;text-align:center}.meals__error{color:#ff6b6b;font-weight:700;font-size:.9rem;margin-bottom:.75rem}.meals__list{list-style:none;display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.meals__empty{color:var(--muted-on-dark);font-style:italic}.meals__item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:#0e1a1f;border-radius:12px;padding:.7rem .9rem}.meals__item-main{display:flex;flex-direction:column;gap:.2rem;min-width:0}.meals__item-name{font-weight:700}.meals__item-macros{font-size:.8rem;color:var(--muted-on-dark)}.meals__remove{background:none;border:none;color:var(--muted-on-dark);font-size:1.4rem;line-height:1;cursor:pointer;padding:0 .3rem;transition:color .2s}.meals__remove:hover{color:#ff6b6b}.coach{display:flex;flex-direction:column}.coach__head{margin-bottom:1rem}.coach__log{display:flex;flex-direction:column;gap:.75rem;max-height:460px;overflow-y:auto;padding-right:.25rem}.coach__hint{color:var(--muted-on-dark);font-style:italic;line-height:1.5}.bubble{padding:.7rem 1rem;border-radius:16px;max-width:85%;line-height:1.5;white-space:pre-wrap;word-break:break-word}.bubble--user{align-self:flex-end;background:var(--pink);color:#fff;border-bottom-right-radius:4px}.bubble--assistant{align-self:flex-start;background:#0e1a1f;color:var(--white);border-bottom-left-radius:4px}.coach__error{color:#ff6b6b;font-weight:700;margin-top:.5rem}.coach__input{display:flex;gap:.6rem;margin-top:1rem}.coach__input input{flex:1 1}.profile{gap:1.5rem}.profile,.profile__head{display:flex;flex-direction:column}.profile__head{gap:.35rem}.profile__head h1{font-size:clamp(1.5rem,1rem + 2vw,2.1rem)}.profile__card{display:flex;flex-direction:column;gap:1.25rem}.profile__stats{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1rem;gap:1rem;margin:0}.profile__stats div{background:#0e1a1f;border-radius:14px;padding:.9rem 1rem}.profile__stats dt{font-size:.8rem;color:var(--muted-on-dark);font-weight:700;margin-bottom:.25rem}.profile__stats dd{margin:0;font-size:1.15rem;font-weight:800}.profile__actions{gap:.75rem}.demobar,.profile__actions{display:flex;flex-wrap:wrap}.demobar{position:-webkit-sticky;position:sticky;top:0;z-index:30;align-items:center;justify-content:center;gap:.5rem 1.25rem;padding:.7rem 1.25rem;text-align:center;background:linear-gradient(90deg,var(--pink),var(--pink-deep));color:#fff;font-size:.9rem}.demobar__text{font-weight:600;opacity:.96}.demobar__text strong{font-weight:900}.demobar__actions{display:flex;align-items:center;gap:.75rem}.demobar__cta{background:#fff;color:var(--pink-deep);font-weight:800;padding:.4rem .9rem;border-radius:999px;font-size:.85rem;white-space:nowrap;transition:transform .2s var(--ease-expo)}.demobar__cta:hover{transform:translateY(-1px)}.demobar__link{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.shell__side-cta{margin-top:auto;display:flex;flex-direction:column;gap:.5rem}.shell__side-cta .pill{text-align:center}.locked{display:flex;align-items:center;gap:.85rem;background:#3d1a28;border:2px solid var(--pink);border-radius:16px;padding:1rem 1.15rem;color:#fff;line-height:1.4;transition:transform .2s var(--ease-expo)}.locked:hover{transform:translateY(-2px)}.locked strong{color:#ffd0e0}.locked__icon{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.12);color:var(--pink)}.locked__lock{flex:none;margin-left:auto;opacity:.75}.locked--inline{padding:.75rem 1rem;font-size:.9rem}.locked>svg{flex:none}.legal{min-height:100vh;background:var(--ink);color:var(--white)}.legal__bar{display:flex;align-items:center;justify-content:space-between;padding:1.25rem clamp(1.25rem,4vw,3rem);border-bottom:1px solid rgba(255,255,255,.1)}.legal__brand{font-weight:900;font-size:1.5rem;color:var(--pink);letter-spacing:-.04em}.legal__back{color:var(--muted-on-dark);font-weight:700;font-size:.9rem}.legal__back:hover{color:var(--pink)}.legal__body{max-width:760px;margin:0 auto;padding:clamp(2rem,5vw,4rem) 1.5rem;line-height:1.7}.legal__body h1{font-size:clamp(2rem,1rem + 4vw,3rem);margin-bottom:.5rem}.legal__body h2{font-size:1.3rem;font-weight:800;margin:2rem 0 .6rem;color:var(--pink)}.legal__body li,.legal__body p{color:#d8d2cc}.legal__body ul{padding-left:1.25rem;display:flex;flex-direction:column;gap:.4rem;margin:.5rem 0}.legal__body a{color:var(--pink);text-decoration:underline;text-underline-offset:3px}.legal__meta{color:var(--muted-on-dark);font-size:.9rem;margin-bottom:1rem}.legal__note{background:#3d1a28;border:1px solid var(--pink);border-radius:12px;padding:.9rem 1.1rem;font-size:.85rem;color:#ffd0e0;margin-bottom:2rem}.legal__foot{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2rem 1.5rem;border-top:1px solid rgba(255,255,255,.1);font-weight:700;font-size:.9rem}.legal__foot,.legal__foot a{color:var(--muted-on-dark)}.legal__foot a:hover{color:var(--pink)}@media (max-width:900px){.plans{max-width:420px;margin-inline:auto}.feature__grid,.hero__grid,.plans{grid-template-columns:1fr}.feature__grid--reverse .feature__art,.feature__grid--reverse .feature__copy{order:0}.feature__art,.hero__art{order:-1}.hero{text-align:left}.footer__top{grid-template-columns:1fr}.footer__cols{grid-template-columns:repeat(2,1fr);gap:2rem 1.5rem}.nav__login{display:none}.setup__form,.shell{grid-template-columns:1fr}.shell__side{display:none}.shell__content{padding-bottom:6rem}.shell__bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;justify-content:space-around;gap:.25rem;padding:.5rem .75rem;background:#131f24;border-top:1px solid #37464f}.shell__bottomnav .navitem{flex-direction:column;gap:.25rem;width:auto;font-size:.75rem;font-weight:700;padding:.4rem .7rem;border-color:transparent}.shell__bottomnav .navitem.is-active{background:transparent;border-color:transparent;color:var(--pink)}.profile__stats{grid-template-columns:1fr}}.status{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.75rem;padding:2rem 1.5rem;background:var(--ink);color:var(--white)}.status__code{font-size:clamp(3.5rem,2rem + 8vw,6rem);font-weight:900;line-height:1;color:var(--pink);letter-spacing:-.04em}.status__title{font-size:clamp(1.4rem,1rem + 2vw,2rem);font-weight:800}.status__text{color:var(--muted-on-dark);max-width:40ch}.status__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;justify-content:center}.status__btn{padding:.85rem 1.5rem;border-radius:14px;font-weight:800;font-size:1rem;cursor:pointer;font-family:inherit;border:2px solid transparent;text-decoration:none;transition:transform .2s var(--ease-expo),border-color .2s var(--ease-expo)}.status__btn:hover{transform:translateY(-2px)}.status__btn--primary{background:var(--pink);color:#fff}.status__btn--ghost{background:transparent;color:var(--white);border-color:rgba(255,255,255,.2)}.status__btn--ghost:hover{border-color:var(--pink);color:var(--pink)}.appload{min-height:60vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--muted-on-dark)}.appload__spinner{width:44px;height:44px;border-radius:50%;border:4px solid #37464f;border-top:4px solid var(--pink);animation:appload-spin .8s linear infinite}@keyframes appload-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.appload__spinner{animation-duration:2s}}