@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";:root{color:#173e35;font-synthesis:none;--green:#123f35;--mint:#dbe7dd;--cream:#f4f0e6;--paper:#fffdf7;--coral:#ef725f;--ink:#173e35;--muted:#68746e;--line:#d9d7cb;background:#f4f0e6;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 100% 8%,#dce7dd 0 11rem,transparent 11rem),var(--cream);margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}.topbar{z-index:2;border-bottom:1px solid #123f3524;justify-content:space-between;align-items:center;height:72px;padding:12px max(20px,50vw - 460px);display:flex;position:relative}.brand{color:var(--green);align-items:center;gap:9px;font:700 23px Fraunces,serif;text-decoration:none;display:flex}.brand span{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.plan{background:#e9e7de;border:1px solid #d4d1c6;border-radius:999px;padding:3px;display:flex}.plan button{color:#53625d;background:0 0;border:0;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.plan button.active{background:var(--green);color:#fff;box-shadow:0 2px 8px #123f3540}.hero{max-width:880px;margin:0 auto;padding:54px 22px 34px}.eyebrow{color:var(--coral);letter-spacing:.16em;margin:0 0 16px;font-size:12px;font-weight:800}.hero h1{letter-spacing:-.035em;max-width:760px;margin:0;font:700 clamp(42px,10vw,74px)/.98 Fraunces,serif}.hero h1 em{color:var(--coral);font-style:normal}.hero>p:not(.eyebrow){color:#586761;max-width:660px;font-size:17px;line-height:1.7}.privacy-pill{color:#2a5b4e;background:#e1ebdf;border:1px solid #c2d4c5;border-radius:99px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:700;display:inline-flex}.privacy-pill span{color:#43a169}.workspace{max-width:880px;margin:0 auto 36px;padding:0 18px}.tabs{background:#e5e3da;border:1px solid #d2d0c6;border-radius:20px 20px 0 0;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.tabs button{color:#6d7672;background:0 0;border:0;border-right:1px solid #d2d0c6;padding:17px 6px 14px;font-size:12px;font-weight:800}.tabs button:last-child{border-right:0}.tabs button span{margin-bottom:5px;font-size:18px;display:block}.tabs button.active{background:var(--paper);color:var(--green);position:relative}.tabs button.active:after{content:"";background:var(--coral);border-radius:3px;height:3px;position:absolute;bottom:0;left:20%;right:20%}.panel{background:var(--paper);border:1px solid #d2d0c6;border-top:0;border-radius:0 0 24px 24px;padding:26px;box-shadow:0 16px 45px #22373014}.step{align-items:flex-start;gap:15px;margin-bottom:24px;display:flex}.step>span{background:var(--green);color:#fff;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.step h2{margin:0 0 8px;font:700 28px/1.05 Fraunces,serif}.step p{color:var(--muted);margin:0;line-height:1.5}.upload{text-align:center;cursor:pointer;background:#f7faf6;border:1.5px dashed #adc0b8;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;min-height:190px;padding:20px;display:flex}.camera{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:58px;height:58px;margin-bottom:13px;font-size:25px;display:grid}.upload strong{font-size:16px}.upload small,.record small{color:var(--muted);margin-top:6px}.photos{gap:10px;margin:15px 0;display:flex;overflow:auto}.photos div{flex:0 0 90px;position:relative}.photos img{object-fit:cover;border-radius:12px;width:90px;height:90px;display:block}.photos button{background:var(--green);color:#fff;border:0;border-radius:50%;width:24px;height:24px;position:absolute;top:-5px;right:-5px}.primary,.secondary,.record{border-radius:14px;width:100%;font-weight:800}.primary{background:var(--coral);color:#1c332c;border:0;justify-content:space-between;margin-top:16px;padding:16px 20px;display:flex;box-shadow:0 5px #c75143}.primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.record{min-height:150px;color:var(--green);background:#f7faf6;border:1.5px dashed #adc0b8;flex-direction:column;justify-content:center;align-items:center;display:flex}.record>span{color:var(--coral);margin-bottom:8px;font-size:30px}.record.active{border-color:var(--coral);background:#fff1ee}.textarea-label,.wide-fields label,.nutrients label,.category{color:#53625d;flex-direction:column;gap:7px;margin-top:16px;font-size:12px;font-weight:800;display:flex}textarea,input,select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:11px;outline:none;padding:12px}textarea:focus,input:focus,select:focus{border-color:#4f8777;box-shadow:0 0 0 3px #dcece6}.status,.error{border-radius:12px;margin-top:16px;padding:13px 15px}.status{background:#e9f2ec;align-items:center;gap:10px;display:flex}.spinner{border:2px solid #9ab7ad;border-top-color:var(--green);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.error{color:#923d31;background:#fff0ed;border:1px solid #f2c2ba}.review{border-top:1px solid var(--line);margin-top:28px;padding-top:28px;position:relative}.editable{color:#557064;letter-spacing:.12em;background:#edf1e9;border-radius:99px;padding:6px 9px;font-size:9px;font-weight:800;position:absolute;top:30px;right:0}.notes{color:#596760;background:#f3f6f0;border-radius:12px;padding:12px 12px 12px 30px;font-size:13px}.wide-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.nutrients{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.nutrients label span{position:relative}.nutrients input{width:100%;padding-right:36px}.nutrients small{color:#89918d;position:absolute;top:13px;right:12px}.category select{width:100%}.checks{gap:9px;margin-top:17px;display:grid}.check{border:1px solid var(--line);cursor:pointer;border-radius:12px;grid-template-columns:auto 26px 1fr;align-items:center;gap:9px;padding:12px;display:grid}.check input{opacity:0;position:absolute}.check>span{color:#0000;border:1px solid #bbc5c0;border-radius:7px;place-items:center;width:24px;height:24px;display:grid}.check input:checked+span{background:var(--green);color:#fff}.check strong{font-size:13px}.result{background:var(--green);color:#fff;text-align:center;border-radius:26px;max-width:844px;margin:0 auto 36px;padding:30px}.result .eyebrow{color:#f89986}.result h2{margin:0;font:700 35px Fraunces,serif}.result>p:not(.eyebrow){color:#d6e2de}.score{flex-direction:column;margin:18px auto;display:flex}.score strong{font:700 92px/.9 Fraunces,serif}.score span{letter-spacing:.15em;font-size:12px;font-weight:800}.result-grid{border:1px solid #ffffff2c;border-radius:14px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.result-grid div{flex-direction:column;gap:5px;padding:15px;display:flex}.result-grid div+div{border-left:1px solid #ffffff2c}.result-grid span{color:#b9ccc6;font-size:11px}.result-grid strong{font-size:14px}.result details{text-align:left;border-top:1px solid #ffffff2c;margin-top:15px;padding-top:15px}.result summary{cursor:pointer;font-weight:700}.result details p{color:#cfddd8;font-size:13px}.secondary{color:#fff;background:0 0;border:1px solid #ffffff65;margin-top:18px;padding:14px}footer{text-align:center;color:#707b76;max-width:850px;margin:0 auto;padding:12px 24px 40px;font-size:12px;line-height:1.5}footer p{margin:5px}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=620px){body{background:radial-gradient(circle at 105% 9%,#dce7dd 0 8rem,transparent 8rem),var(--cream)}.topbar{height:62px;padding:10px 18px}.brand{font-size:20px}.brand span{width:31px;height:31px}.plan button{padding:7px 9px;font-size:10px}.hero{padding:44px 20px 28px}.hero h1{font-size:46px}.hero>p:not(.eyebrow){font-size:15px}.workspace{padding:0 12px}.panel{padding:22px 17px}.tabs button{font-size:10px}.step h2{font-size:25px}.wide-fields,.nutrients{grid-template-columns:1fr 1fr}.result{border-radius:0;margin-bottom:28px;padding:28px 20px}.result-grid{grid-template-columns:1fr}.result-grid div+div{border-top:1px solid #ffffff2c;border-left:0}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}
