@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/dm-sans-Xz1IZZA0.woff2)format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/playfair-display-600-CZLGqjJe.woff2)format("woff2")}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(/assets/playfair-display-italic-600-Bvp5b4iR.woff2)format("woff2")}:root{color:#20251f;font-synthesis:none;background:#f6f3ed;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}.shell{max-width:1120px;margin:auto;padding:30px 54px 70px}.topbar{justify-content:space-between;align-items:center;display:flex}.top-actions{align-items:center;gap:10px;display:flex}.brand{letter-spacing:-.5px;align-items:center;gap:9px;font-size:21px;font-weight:700;display:flex}.brand-mark{color:#fff;background:#da6b4e;border-radius:50% 50% 50% 7px;place-items:center;width:30px;height:30px;font-family:Georgia;font-size:22px;display:grid}.accent{color:#da6b4e}.profile-button{color:#626b61;background:0 0;border:1px solid #dedbd4;border-radius:30px;padding:10px 15px}.notification-button{color:#d86c4e;cursor:pointer;background:0 0;border:0;font-size:24px}.welcome{margin:90px 0 43px}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:#899286;margin:0 0 12px;font-size:10px;font-weight:700}.welcome h1{letter-spacing:-3px;margin:0;font-size:clamp(42px,6vw,72px);font-weight:500;line-height:.98}.welcome h1 em{color:#d86c4e;font-family:Playfair Display,serif;font-weight:600}.intro,.muted{color:#8a9188}.stats{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.stats article{background:#fff;border:1px solid #ebe8e1;align-items:center;gap:15px;min-height:106px;padding:23px;display:flex}.stat-icon{border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:22px;display:grid}.sun{color:#d88435;background:#fbe3c8}.water{color:#5ba6a4;background:#d9eeed}.steps{color:#7b6fb0;background:#e5e0f5}.stats strong{font-size:20px}.stats small{color:#a0a69f;font-size:12px;font-weight:400}.stats p{color:#9aa099;margin:5px 0 0;font-size:12px}.ring{background:conic-gradient(#d86c4e var(--progress), #f1ece6 0);border-radius:50%;place-items:center;width:48px;height:48px;margin-left:auto;display:grid}.ring:after{content:"";background:#fff;border-radius:50%;width:38px;height:38px;position:absolute}.ring span{z-index:1;font-size:10px;position:relative}.plus{color:#79927a;cursor:pointer;background:#eef4ed;border:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:37px;height:37px;margin-left:auto;font-size:25px;text-decoration:none;display:inline-flex}.scan-panel{color:#fff;background:#22352d;justify-content:space-between;align-items:center;margin:16px 0 45px;padding:32px;display:flex;position:relative;overflow:hidden}.scan-panel:after{content:"";opacity:.3;border:1px solid #73927b;border-radius:50%;width:250px;height:250px;position:absolute;top:-150px;right:90px}.scan-panel h2{margin:0;font-size:27px;font-weight:500}.scan-panel .muted{color:#aab9ae}.scan-actions{z-index:1;flex-shrink:0;align-items:center;gap:10px;display:flex;position:relative}.scan-icon-button{color:#fff;cursor:pointer;background:#e47a5c;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex}.scan-icon-button input{display:none}.scan-icon-button:hover{background:#d86c4e}.scan-active{flex-direction:column;align-items:center;gap:6px;display:flex}.scan-frame{border:2px solid #e47a5c;border-radius:12px;width:90px;height:90px;position:relative;overflow:hidden}.scan-photo{object-fit:cover;width:100%;height:100%;display:block}.scan-line{background:linear-gradient(90deg,#0000,#fff,#0000);height:3px;animation:1.4s ease-in-out infinite scan-sweep;position:absolute;left:0;right:0;box-shadow:0 0 10px 2px #ffffffd9}.scan-caption{color:#fff;opacity:.85;font-size:11px}@keyframes scan-sweep{0%,to{top:0}50%{top:calc(100% - 3px)}}.review-panel{background:#fff;border:1px solid #ebe8e1;margin:0 0 45px;padding:26px 32px}.review-panel .section-heading{border-bottom:1px solid #ddd9d1;margin-bottom:16px;padding-bottom:12px}.review-panel .section-heading span{color:#a1a69d;font-size:12px}.review-label-field{color:#778276;margin-bottom:16px;font-size:12px;display:block}.review-label-field input{color:#20251f;background:#f6f3ed;border:0;width:100%;margin-top:6px;padding:10px;font-size:15px;font-weight:500;display:block}.review-items{flex-direction:column;gap:10px;margin-bottom:14px;display:flex}.review-item{border-bottom:1px solid #f0ede6;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;display:flex}.review-item input{color:#20251f;background:#f6f3ed;border:0;border-radius:4px;padding:9px 10px;font-size:14px}.review-item .review-name{flex:140px;min-width:100px;font-weight:500}.review-field{color:#9aa099;text-transform:uppercase;letter-spacing:.3px;flex-direction:column;gap:3px;font-size:11px;display:flex}.review-field .review-value{color:#20251f;text-transform:none;letter-spacing:normal;align-items:center;gap:5px;font-size:14px;display:flex}.review-field input[type=number]{width:58px}.icon-remove{color:#b7746a;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:4px 6px;font-size:18px}.review-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.confirm-button{color:#fff;cursor:pointer;background:#22352d;border:0;padding:12px 20px;font-weight:600}.profile-panel{background:#fff;border:1px solid #ebe8e1;max-width:420px;margin:16px 0 45px;padding:26px 32px}.profile-field{color:#778276;margin-bottom:16px;font-size:12px;display:block}.profile-field input,.profile-field select{color:#20251f;background:#f6f3ed;border:0;width:100%;margin-top:6px;padding:10px;font-family:inherit;font-size:15px;display:block}.profile-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;display:flex}.logout-link{margin-left:auto}.danger-zone{border-top:1px solid #e3e0d9;margin-top:32px;padding-top:22px}.danger-zone h3{color:#a34328;margin:0 0 6px;font-size:14px}.danger-zone p{color:#9aa099;margin:0 0 12px;font-size:12px}.danger-zone .profile-actions{margin-top:0}.danger-button{color:#a34328;cursor:pointer;background:#fbe6e0;border:1px solid #d98a6f;padding:10px 16px;font-weight:600}.danger-button:disabled{opacity:.6;cursor:default}.profile-section{border-top:1px solid #e3e0d9;margin-top:32px;padding-top:22px}.profile-section h3{color:#20251f;margin:0 0 6px;font-size:14px}.profile-section p{color:#9aa099;margin:0 0 10px;font-size:12px;line-height:1.5}.profile-section code{word-break:break-all;background:#f6f3ed;border-radius:3px;padding:2px 5px;font-size:11px}.steps-guide{margin:0;padding-left:20px}.steps-guide li{color:#4d534a;margin-bottom:14px;font-size:12px;line-height:1.6}.steps-guide li:last-child{margin-bottom:0}.copy-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.copy-button{color:#5f775f;cursor:pointer;background:#fff;border:1px solid #dedbd4;border-radius:4px;flex-shrink:0;padding:3px 9px;font-size:11px}.legal-footer{border-top:1px solid #e3e0d9;justify-content:center;gap:18px;margin-top:20px;padding:30px 0 10px;font-size:12px;display:flex}.legal-footer a{color:#9aa099;text-decoration:none}.legal-footer a:hover{color:#626b61}.legal-page{color:#3a4038;max-width:720px;padding-bottom:40px;line-height:1.6}.legal-page h2{color:#20251f;margin:28px 0 8px;font-size:16px}.legal-page h2:first-child{margin-top:0}.legal-page p,.legal-page ul{color:#4d534a;margin:0 0 10px;font-size:14px}.legal-page ul{padding-left:20px}.legal-page li{margin-bottom:6px}.legal-page a{color:#d86c4e}.legal-todo{color:#a34328;background:#fbe6e0;border-radius:4px;margin-bottom:24px;padding:12px 14px;font-size:13px}.confirm-overlay{z-index:100;background:#20251f80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-dialog{background:#fff;border-radius:10px;width:100%;max-width:340px;padding:28px;box-shadow:0 24px 60px #00000040}.confirm-dialog h3{margin:0 0 10px;font-size:18px;font-weight:600}.confirm-dialog p{color:#6b7268;margin:0 0 24px;font-size:14px}.confirm-actions{justify-content:flex-end;gap:10px;display:flex}.section-heading{border-bottom:1px solid #ddd9d1;justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.section-heading h2,.goal-card h2{font-size:21px;font-weight:500}.section-heading span{color:#a1a69d;font-size:12px}.meal-list{margin-bottom:40px}.meal{border-bottom:1px solid #e3e0d9;align-items:center;gap:14px;padding:17px 0;display:flex}.meal-dot{background:#d87958;border-radius:50%;width:10px;height:10px}.meal p{color:#9ba097;margin:5px 0 0;font-size:12px}.meal b{color:#7c857a;margin-left:auto;font-size:13px;font-weight:500}.meal-remove{color:#c2beb5;cursor:pointer;background:0 0;border:0;padding:4px 2px 4px 8px;font-size:14px}.meal-remove:hover{color:#b7746a}.goal-card{background:#e9eee7;max-width:420px;margin:16px 0 45px;padding:26px}.goal-card h2{margin:8px 0;font-size:50px}.goal-card h2 small{color:#778276;font-size:15px}.goal-card>p:not(.eyebrow){color:#778276;font-size:13px}.goal-card label{color:#778276;margin-top:18px;font-size:12px;display:block}.goal-card input{background:#fff;border:0;width:100%;margin:7px 0 12px;padding:10px;display:block}.outline-button{color:#5f775f;cursor:pointer;background:0 0;border:1px solid #8da08c;padding:10px 14px}.weight-chart{width:100%;height:90px;margin-top:18px;display:block}.weight-chart-line{stroke:#77927c;stroke-width:2px}.weight-chart-dot{fill:#77927c}.weight-chart-target{stroke:#d86c4e;stroke-width:1.5px;stroke-dasharray:4 3}.bottom-nav{display:none}@media (width<=700px){.shell{padding:22px 20px 40px}.welcome{margin:60px 0 30px}.stats{grid-template-columns:1fr;gap:12px}.scan-panel{gap:16px;padding:24px}.bottom-nav{color:#a3aaa1;justify-content:space-around;padding-top:30px;font-size:12px;display:flex}.bottom-nav .active{color:#d86c4e;font-weight:700}.bottom-nav a{color:inherit;text-decoration:none}}.auth-shell{max-width:420px;margin:100px auto}.auth-shell .welcome{margin:0 0 30px}.auth-shell .welcome h1{letter-spacing:-2px;font-size:44px}.auth-card{background:#fff;border:1px solid #ebe8e1;padding:32px}.auth-field{margin:0 0 16px;display:block}.auth-field span{color:#778276;margin-bottom:7px;font-size:12px;display:block}.auth-field input{background:#f6f3ed;border:1px solid #dedbd4;border-radius:4px;width:100%;padding:12px;display:block}.auth-submit{color:#fff;cursor:pointer;background:#e47a5c;border:0;border-radius:4px;width:100%;margin-top:6px;padding:14px;font-weight:600}.auth-submit:disabled{opacity:.6;cursor:default}.auth-links{color:#8a9188;justify-content:space-between;margin-top:20px;font-size:13px;display:flex}.auth-links a{color:#d86c4e;font-weight:600;text-decoration:none}.auth-message{border-radius:4px;margin-bottom:18px;padding:12px 14px;font-size:13px}.auth-message.error{color:#a34328;background:#fbe6e0}.auth-message.success{color:#4c6b4f;background:#e6efe3}.consent-field{color:#778276;align-items:flex-start;gap:8px;margin:0 0 18px;font-size:12px;display:flex}.consent-field input{margin-top:3px}.consent-field a{color:#d86c4e;font-weight:600}@media (width<=700px){.auth-shell{flex-direction:column;justify-content:center;max-width:none;min-height:80vh;margin:0;display:flex}.auth-card{background:0 0;border:0;padding:0}}
