:root{color:#f0f3ec;font-synthesis:none;--bg:#111412;--panel:#1c221d;--panel-raised:#252d25;--line:#303a30;--muted:#97a294;--lime:#c0f16b;--protein:#b6a1ee;--fat:#efbc91;--carbs:#9ecdc4;--danger:#ffaaa0;--safe-bottom:env(safe-area-inset-bottom,0px);background:#111412;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:wait;opacity:.55}button,input,select{outline-offset:4px}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--lime)}button{color:inherit}button svg{flex-shrink:0}button{touch-action:manipulation}button:disabled svg{pointer-events:none}h1,h2,h3,p{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button{border:0}input,select{min-width:0;color:inherit;background:0 0}input[type=number]{appearance:textfield}input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=date],input[type=month]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}input::placeholder{color:#74816f;opacity:1}input:disabled{opacity:.6}select{appearance:auto}small{font-size:12px}svg{vertical-align:middle;flex-shrink:0}.muted{color:var(--muted)}.small{font-size:13px}.capitalize{text-transform:capitalize}.full-width{width:100%}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.app-shell{background:var(--bg);max-width:520px;min-height:100dvh;margin:auto}.app-header{padding:calc(22px + env(safe-area-inset-top,0px)) 22px 0;justify-content:space-between;align-items:center;display:flex}.brand{letter-spacing:-1px;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:23px;font-weight:800;line-height:1;display:flex}.brand-mark{background:var(--lime);color:#1b2716;border-radius:14px 14px 14px 4px;place-items:center;width:39px;height:42px;display:grid;transform:rotate(-5deg)}.brand-food{color:var(--lime)}.brand small{letter-spacing:1.55px;color:var(--muted);margin-top:7px;font-size:7.5px;font-weight:600;display:block}.avatar{width:42px;height:42px;color:var(--lime);background:#252e24;border:1px solid #384431;border-radius:50%;place-items:center;font-size:16px;font-weight:700;display:grid}.main-content{padding:0 22px calc(115px + var(--safe-bottom));overflow-wrap:anywhere}.page-heading{justify-content:space-between;align-items:center;margin:31px 0 25px;display:flex}.eyebrow{letter-spacing:1.5px;color:var(--muted);font-size:9px;font-weight:750;line-height:1.6}.page-heading h1{letter-spacing:-2.1px;margin-top:11px;font-size:43px;font-weight:650;line-height:1.1}.page-heading h1 span{color:#d5ddcc}.leaf-decoration{width:68px;height:83px;color:var(--lime);background:linear-gradient(135deg,#25321f,#151b14);border:1px solid #2d3c27;border-radius:50% 50% 50% 6px;place-items:center;margin:20px 9px 0 0;display:grid;transform:rotate(12deg)}.leaf-decoration svg{transform:rotate(-30deg)}.page-heading.compact{align-items:flex-start;margin:31px 0 26px}.page-heading.compact h1{letter-spacing:-1.4px;margin-top:10px;font-size:32px;line-height:1.2}.page-subtitle{color:var(--muted);margin-top:10px;font-size:13px}.heading-icon{color:#667b58;margin-top:27px}.date-switcher{justify-content:space-between;align-items:center;gap:10px;margin-bottom:17px;display:flex}.icon-button{width:42px;height:42px;color:inherit;background:0 0;border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.date-switcher>.icon-button{background:#1c231d;border:1px solid #303a2e;border-radius:12px;width:38px;height:38px}.date-label{text-align:center;cursor:pointer;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:42px;display:flex;position:relative}.date-label>span{color:var(--muted);text-transform:capitalize;margin-bottom:1px;font-size:10px}.date-label>strong{font-size:14px;font-weight:650}.date-label input{opacity:0;cursor:pointer;border:0;width:100%;position:absolute;inset:0}.date-label input::-webkit-calendar-picker-indicator{cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.calorie-card{background:radial-gradient(at 80% 0,#2d3b26 0%,#20291f 48%,#1c251b 100%);border:1px solid #3a4833;border-radius:26px;padding:22px 20px 21px;box-shadow:0 5px 22px #00000012}.calorie-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.card-kicker{letter-spacing:1.3px;color:#b6c4a9;align-items:center;gap:5px;font-size:9px;font-weight:700;display:flex}.card-kicker svg{color:var(--lime)}.calorie-copy{flex:1;min-width:0}.calorie-copy h2{letter-spacing:-.8px;margin:13px 0 10px;font-size:26px;font-weight:650;line-height:1.1}.calorie-copy p{color:#9eac93;font-size:10px;line-height:1.75}.calorie-copy .text-button{min-height:32px;margin-top:2px;font-size:10px}.calorie-ring{flex-shrink:0;width:148px;height:148px;position:relative}.calorie-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.calorie-ring circle{fill:none;stroke-width:8px}.ring-track{stroke:#3c4a32}.ring-progress{stroke:var(--lime);stroke-linecap:round;transition:stroke-dasharray .5s}.calorie-ring>div{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.calorie-ring strong{letter-spacing:-1.3px;font-size:32px;font-weight:700;line-height:1.25}.calorie-ring small{color:#b9c3b0;margin-top:2px;font-size:9px}.ring-dot{background:var(--lime);border-radius:4px;width:17px;height:4px;margin-top:10px}.remaining-label{margin-top:20px!important;font-size:11px!important}.remaining-value{letter-spacing:-1.5px;color:var(--lime);font-size:35px;font-weight:650;line-height:1.3;display:block}.remaining-value small{letter-spacing:0;color:#c0ccba;font-size:11px}.macro-progress{border-top:1px solid #35412f;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:19px;padding-top:16px;display:grid}.macro{min-width:0}.macro-label{color:#b8c2b0;align-items:center;gap:6px;font-size:10px;display:flex}.macro i,.nutrition-summary i,.goal-field>span i{background:var(--macro-color);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.protein{--macro-color:var(--protein)}.fat{--macro-color:var(--fat)}.carbs{--macro-color:var(--carbs)}.kcal{--macro-color:var(--lime)}.macro>strong{white-space:nowrap;margin-top:7px;font-size:14px;font-weight:650;line-height:1.3;display:block}.macro>strong small{color:#9aa78e;font-size:9px;font-weight:500}.macro-track{background:#3a4434;border-radius:3px;height:4px;margin-top:11px;overflow:hidden}.macro-track span{background:var(--macro-color);border-radius:3px;height:100%;transition:width .4s;display:block}.no-goal{color:#97a28e;margin-top:4px;font-size:8px;display:block}.photo-prompt{text-align:left;background:var(--lime);color:#203014;border-radius:20px;align-items:center;gap:13px;width:100%;margin:18px 0 28px;padding:17px 15px;display:flex;box-shadow:0 5px 20px #bdf16508}.photo-prompt-icon{background:#ffffff18;border:1px solid #7faf42;border-radius:13px;flex-shrink:0;place-items:center;width:43px;height:44px;display:grid}.photo-prompt>span:nth-child(2){flex:1;min-width:0}.photo-prompt strong{letter-spacing:-.3px;font-size:14px;font-weight:750;display:block}.photo-prompt small{color:#4d622e;margin-top:3px;font-size:9px;display:block}.section-title{justify-content:space-between;align-items:center;gap:10px;margin:0 1px 13px;display:flex}.section-title h2{letter-spacing:-.5px;font-size:17px;font-weight:650}.section-title>span{color:var(--muted);font-size:9px}.meal-sections{flex-direction:column;gap:10px;display:flex}.meal-section{background:var(--panel);border:1px solid #293228;border-radius:19px;overflow:hidden}.meal-section-header{align-items:center;gap:12px;min-height:77px;padding:15px 13px 15px 15px;display:flex}.meal-type-icon{color:#c7d5a8;background:#31372a;border-radius:13px;flex-shrink:0;place-items:center;width:39px;height:39px;display:grid}.meal-type-icon.breakfast{color:#e4cb8d;background:#393322}.meal-type-icon.lunch{color:#bad5a7;background:#2a3626}.meal-type-icon.dinner{color:#c2b4e4;background:#313040}.meal-type-icon.snack{color:#d5b296;background:#39302b}.meal-section-header h3{font-size:13px;font-weight:650}.meal-section-header small{color:#8f9c89;margin-top:3px;font-size:9px;display:block}.meal-section-header>div{flex:1;min-width:0}.add-meal{color:#c4d1b8;border:1px solid #3a4436;border-radius:50%;width:31px;min-width:40px;height:31px;min-height:40px}.meal-list{border-top:1px solid #2d372a;margin:0 14px;padding:4px 0}.meal-card{text-align:left;width:100%;color:inherit;background:0 0;align-items:center;gap:9px;padding:12px 0;display:flex}.meal-card+.meal-card{border-top:1px solid #2d352a}.meal-thumb{color:#9bad89;background:#293125;border-radius:10px;flex-shrink:0;place-items:center;width:35px;height:39px;display:grid}.meal-card-copy{flex:1;min-width:0}.meal-card-copy strong{font-size:12px;font-weight:600;line-height:1.5;display:block}.meal-card-copy small{color:#93a18b;margin-top:4px;font-size:8px;display:block}.meal-card-copy small>span{color:#5c7051;margin:0 2px}.meal-calories{text-align:right;flex-shrink:0}.meal-calories strong{font-size:13px;font-weight:650;display:block}.meal-calories small{color:var(--muted);margin-top:2px;font-size:8px;display:block}.meal-card>svg{color:#6b7c60}.daily-note{text-align:center;color:#6f8164;justify-content:center;align-items:center;gap:7px;margin-top:25px;font-size:9px;line-height:1.6;display:flex}.bottom-nav{z-index:20;width:100%;max-width:520px;padding:12px 14px calc(11px + var(--safe-bottom));-webkit-backdrop-filter:blur(20px);background:#171d17f0;border-top:1px solid #30392d;border-radius:24px 24px 0 0;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:1px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-button{color:#7d8d73;white-space:nowrap;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:47px;font-size:8px;display:flex}.nav-button.active{color:var(--lime)}.nav-button.active span:after{content:"";background:var(--lime);border-radius:4px;width:11px;height:3px;margin:4px auto -7px;display:block}.nav-add{background:var(--lime);color:#25331b;border-radius:18px;justify-content:center;justify-self:center;align-items:center;width:52px;height:52px;display:flex;transform:translateY(-8px);box-shadow:0 0 0 5px #171d17,0 5px 18px #0003}.bottom-nav:not(.has-admin) .nav-button:last-child{grid-column:4/6}.text-button{min-height:40px;color:var(--lime);background:0 0;justify-content:flex-start;align-items:center;gap:4px;padding:0;font-size:12px;font-weight:600;display:inline-flex}.primary-button,.secondary-button,.danger-button{letter-spacing:-.15px;border-radius:15px;justify-content:center;align-items:center;gap:9px;min-height:49px;padding:13px 17px;font-size:13px;font-weight:750;line-height:1.5;display:inline-flex}.primary-button{color:#203016;background:var(--lime);border:1px solid #0000}.secondary-button{color:#d5dfca;background:#242e22;border:1px solid #3c4a34}.danger-button{color:#ffc3bc;background:#452c29;border:1px solid #79504a}.danger-text{color:var(--danger)}.error-box{color:#ffd3c5;background:#392721;border:1px solid #654039;border-radius:16px;align-items:flex-start;gap:10px;margin:14px 0;padding:15px;font-size:12px;line-height:1.7;display:flex}.error-box>svg{color:#f4b09b;margin-top:3px}.error-box p{margin:0}.error-box .text-button{color:#ffd8b3;font-size:11px}.error-box>div{min-width:0}.success-box{color:var(--lime);background:#23331c;border:1px solid #3a542b;border-radius:13px;gap:9px;padding:13px;font-size:12px;display:flex}.loading{color:#aebd9e;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:190px;font-size:12px;display:flex}.spin{animation:1.1s linear infinite spin}.empty-state{text-align:center;background:#1a2119;border:1px dashed #3b4832;border-radius:23px;margin:20px 0;padding:38px 16px 40px}.empty-icon{width:68px;height:68px;color:var(--lime);background:#2a3723;border-radius:22px;place-items:center;margin-bottom:21px;display:inline-grid}.empty-state h3{letter-spacing:-.5px;font-size:18px;line-height:1.4}.empty-state p{color:var(--muted);max-width:290px;margin:11px auto 20px;font-size:12px;line-height:1.9}.empty-state .secondary-button{margin-top:4px}.toast{z-index:80;left:50%;bottom:calc(97px + var(--safe-bottom));color:#dcf5c4;background:#2e4225;border:1px solid #658d46;border-radius:16px;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 32px);padding:13px 14px 13px 16px;font-size:12px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 30px #0006}.toast>button{color:#c9dabf;background:0 0;place-items:center;width:28px;height:28px;margin:-7px -5px -7px 0;display:grid}.gate{flex-direction:column;align-items:center;max-width:450px;min-height:100dvh;margin:auto;padding:40px 24px;display:flex}.gate>.brand{align-self:flex-start}.gate-card{text-align:center;max-width:360px;margin:auto 0;padding:55px 0}.gate-card .eyebrow{margin-top:5px}.gate-card h1{letter-spacing:-1.2px;margin:14px 0 18px;font-size:29px;line-height:1.25}.gate-card>p:not(.eyebrow){color:#b3bea9;margin-bottom:14px;font-size:13px;line-height:1.9}.gate-card>p.small{color:var(--muted);font-size:11px}.gate-card .primary-button{width:100%;margin-top:10px}.gate-footer{color:#788c6b;align-items:center;gap:7px;font-size:10px;display:flex}.gate>.loading{flex:1}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(6px);height:var(--visual-height,100dvh);inset:0;top:var(--viewport-top,0px);background:#050905bd;justify-content:center;align-items:flex-end;display:flex;position:fixed;bottom:auto}.modal{width:100%;max-width:520px;max-height:calc(var(--visual-height,100dvh) - 18px - env(safe-area-inset-top,0px));background:#171d17;border:1px solid #384331;border-bottom:0;border-radius:28px 28px 0 0;flex-direction:column;animation:.22s ease-out sheet-in;display:flex;overflow:hidden;box-shadow:0 -12px 60px #0004}.modal-handle{background:#4c5944;border-radius:4px;flex-shrink:0;width:34px;height:4px;margin:10px auto 0}.modal-header{flex-shrink:0;justify-content:space-between;align-items:center;gap:15px;padding:17px 22px 20px;display:flex}.modal-header h2{letter-spacing:-.7px;font-size:22px;font-weight:650;line-height:1.25}.modal-header .eyebrow{letter-spacing:1.5px;color:#a3b295;text-transform:uppercase;margin-bottom:7px;font-size:8px}.close-button{color:#aebca1;background:#273023;border-radius:50%;width:34px;min-width:42px;height:34px;min-height:42px}.action-options{padding:0 20px 6px}.action-options>button{text-align:left;background:0 0;border-top:1px solid #303a2b;align-items:center;gap:13px;width:100%;padding:16px 0;display:flex}.action-options>button>span:nth-child(2){flex:1;min-width:0}.action-options strong{font-size:13px;font-weight:650;display:block}.action-options small{color:#8c9b81;margin-top:5px;font-size:9px;display:block}.action-options>button>svg{color:#7d906d}.option-icon{border-radius:15px;flex-shrink:0;place-items:center;width:45px;height:45px;display:grid}.option-icon.lime{color:var(--lime);background:#344b22}.option-icon.lavender{color:#c8b9ee;background:#373046}.option-icon.peach{color:#e7c39b;background:#443627}.sheet-note{color:#839578;padding:9px 22px calc(23px + var(--safe-bottom));align-items:flex-start;gap:8px;font-size:10px;line-height:1.8;display:flex}.sheet-note svg{margin-top:2px}.meal-editor{height:min(960px, calc(var(--visual-height,100dvh) - 18px - env(safe-area-inset-top,0px)))}.meal-editor>form{flex-direction:column;flex:1;min-height:0;display:flex}.editor-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding:0 20px 20px;overflow-y:auto}.photo-preview{background:#232c20;border:1px solid #3b4833;border-radius:20px;width:100%;height:240px;position:relative;overflow:hidden}.photo-preview img{object-fit:cover;width:100%;height:100%;display:block}.result-photo{height:180px;margin-bottom:17px}.photo-badge{text-align:center;color:#d5e7c6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#14200bd9;border:1px solid #6d87505c;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:6px;font-size:8px;line-height:1.5;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.estimate-notice{color:#bdcbaa;background:#28341f;border:1px solid #3c4d2f;border-radius:12px;gap:8px;margin-bottom:19px;padding:11px 12px;font-size:10px;line-height:1.8;display:flex}.estimate-notice>svg{color:#c8ddae;margin-top:2px}.field{flex-direction:column;gap:8px;margin-bottom:19px;display:flex}.field>span,.field-label{color:#c2d0b7;font-size:11px;font-weight:650}.field>span small{color:#829574;font-size:9px;font-weight:500}.field>input,.field>select{color:#edf2e7;background:#222c1f;border:1px solid #3a4831;border-radius:13px;width:100%;min-height:48px;padding:12px 13px;font-size:14px}.title-field>input{font-size:16px;font-weight:600}.nutrition-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:17px 0 22px;display:grid}.nutrition-summary>div{background:#252e22;border:1px solid #35422e;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px 6px 11px;display:flex}.nutrition-summary strong{white-space:nowrap;font-size:13px;font-weight:700}.nutrition-summary span{color:#98aa8a;font-size:8px}.nutrition-summary i{width:7px;height:7px;margin:5px 0}.nutrition-kcal{background:#303d24!important;border-color:#4a6036!important}.nutrition-kcal svg{color:var(--lime)}.portion-total{border-bottom:1px solid #33412c;justify-content:space-between;align-items:center;gap:9px;margin-bottom:22px;padding:15px 0 18px;display:flex}.portion-total>div:first-child{flex:1;min-width:0}.portion-total strong{font-size:12px;font-weight:650;display:block}.portion-total small{color:#849779;margin-top:6px;font-size:8px;display:block}.portion-control{align-items:center;gap:5px;display:flex}.portion-control>.icon-button{color:#c9dbbb;background:#293522;border:1px solid #45533b;border-radius:11px;width:34px;min-width:34px;height:38px;min-height:40px}.portion-control>label{background:#1d2818;border:1px solid #3b4933;border-radius:10px;justify-content:center;align-items:center;gap:3px;min-width:64px;height:40px;padding:0 7px;display:flex}.portion-control input{text-align:center;border:0;width:43px;height:36px;padding:0;font-size:13px;font-weight:650}.portion-control label>span{color:#8b9e7d;font-size:10px}.ingredient-title h3{letter-spacing:-.3px;font-size:15px}.ingredients{flex-direction:column;gap:12px;display:flex}.ingredient{background:#212a1e;border:1px solid #35432d;border-radius:17px;padding:12px}.ingredient-top{align-items:center;gap:8px;display:flex}.ingredient-number{color:#829773;border:1px solid #435337;border-radius:7px;flex-shrink:0;place-items:center;width:24px;height:26px;font-size:9px;display:grid}.ingredient-name{flex:1;min-width:0}.ingredient-name input{border:0;border-bottom:1px solid #3b4b31;border-radius:0;width:100%;height:35px;padding:0 0 3px;font-size:12px;font-weight:650}.ingredient-top>.icon-button{width:31px;height:35px;min-height:40px}.ingredient-portion{justify-content:space-between;align-items:center;gap:10px;margin:13px 0 5px;display:flex}.ingredient-portion>span{color:#b8c9a7;font-size:11px}.small-portion{gap:4px}.small-portion>.icon-button{background:#2c3924;border-radius:10px;width:30px;min-width:30px;height:34px;min-height:38px}.small-portion>label{min-width:70px;height:37px;padding:0 6px}.small-portion input{width:45px;height:34px;font-size:12px}.nutrient-toggle{color:#95aa84;background:0 0;justify-content:space-between;align-items:center;gap:5px;width:100%;min-height:39px;padding:5px 0 0;font-size:10px;display:flex}.ingredient-nutrients{border-top:1px solid #39492f;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:4px;padding-top:12px;display:grid}.ingredient-nutrients label{min-width:0}.ingredient-nutrients label span{color:#98ac88;margin:0 0 7px;font-size:8px;display:block}.ingredient-nutrients input{text-align:center;background:#1c2717;border:1px solid #45563b;border-radius:9px;width:100%;height:41px;padding:9px 4px;font-size:12px}.add-ingredient{color:#bdd49f;background:0 0;border:1px dashed #52673f;border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:45px;margin:12px 0 24px;font-size:11px;display:flex}.meal-type-select{margin-bottom:20px}.meal-type-select>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:11px;display:grid}.meal-type-select button{color:#a4b695;background:#24301e;border:1px solid #3a4a30;border-radius:11px;min-height:42px;padding:10px 4px;font-size:10px}.meal-type-select button.selected{border-color:var(--lime);color:#daf6ba;background:#3c4e29;font-weight:650}.editor-hint{color:#8da17c;gap:8px;margin:13px 0 18px;font-size:10px;line-height:1.9;display:flex}.editor-hint>svg{margin-top:2px}.editor-footer{padding:15px 20px calc(15px + var(--safe-bottom));background:#1c2718;border-top:1px solid #38482f;flex-shrink:0;justify-content:space-between;align-items:center;gap:18px;display:flex}.editor-footer>div{min-width:0}.editor-footer strong{letter-spacing:-.6px;font-size:21px;font-weight:650;line-height:1.3;display:block}.editor-footer strong small{color:#a3b893;letter-spacing:0;font-size:11px;font-weight:500}.editor-footer>div>span{color:#879d76;margin-top:4px;font-size:9px;display:block}.editor-footer .primary-button{min-width:150px}.analysis-content{padding:0 20px calc(22px + var(--safe-bottom));min-height:0;overflow-y:auto}.analysis-state{text-align:center;padding:25px 8px 20px}.analysis-spark{width:56px;height:56px;color:var(--lime);background:#2d4220;border-radius:20px;place-items:center;margin:0 auto 17px;animation:2s ease-in-out infinite breathe;display:grid}.analysis-state h3{letter-spacing:-.5px;font-size:20px;font-weight:650}.analysis-state p{color:#98ad86;margin:11px 0 20px;font-size:11px;line-height:1.9}.analysis-progress{background:#35472a;border-radius:4px;width:65%;height:4px;margin:0 auto 7px;overflow:hidden}.analysis-progress span{background:var(--lime);border-radius:5px;width:40%;height:100%;animation:1.8s ease-in-out infinite loading-slide;display:block}.analysis-content>.secondary-button{margin-top:12px}.scan-line{background:#d8ffa1;width:100%;height:2px;animation:3s ease-in-out infinite scan;position:absolute;top:0;left:0;box-shadow:0 0 25px 6px #b4ec6b50}.delete-link{color:#dba79b;background:0 0;justify-content:center;align-items:center;gap:8px;width:100%;min-height:45px;margin-top:16px;font-size:11px;display:flex}.delete-confirm{background:#352820;border:1px solid #65473b;border-radius:15px;margin-top:16px;padding:15px}.delete-confirm>strong{color:#f2c7b5;font-size:12px}.delete-confirm>p{color:#bd9b89;margin:7px 0 14px;font-size:10px}.delete-confirm>div{gap:9px;display:flex}.delete-confirm button{flex:1;min-height:41px;padding:9px;font-size:11px}.history-summary{background:linear-gradient(120deg,#26331f,#1d2919);border:1px solid #3a4e2c;border-radius:22px;justify-content:center;align-items:center;gap:40px;margin:21px 0 23px;padding:23px 15px;display:flex}.history-summary>span{background:#3d5131;width:1px;height:39px}.history-summary>div{flex-direction:column;align-items:center;display:flex}.history-summary strong{letter-spacing:-1px;color:#d4ebbe;font-size:28px;font-weight:650}.history-summary small{color:#92ab7b;margin-top:3px;font-size:9px}.history-days{flex-direction:column;gap:10px;display:flex}.history-day{text-align:left;background:#1d261a;border:1px solid #303c2b;border-radius:17px;align-items:center;gap:12px;padding:14px 12px;display:flex}.calendar-tile{background:#2b3b22;border:1px solid #405132;border-radius:12px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:49px;display:flex}.calendar-tile strong{color:#d5e8c1;font-size:18px;font-weight:650;line-height:1.3}.calendar-tile small{color:#97af80;text-transform:uppercase;margin-top:2px;font-size:8px}.history-copy{flex:1;min-width:0}.history-copy strong{font-size:12px;font-weight:650}.history-copy small{color:#96aa86;margin-top:5px;font-size:8px;display:block}.history-day>svg{color:#829872}.profile-card{background:linear-gradient(120deg,#2a3523,#1d271b);border:1px solid #3a4b2e;border-radius:22px;align-items:center;gap:18px;margin-bottom:22px;padding:23px 19px;display:flex}.profile-avatar{color:#d5f2b5;background:#455b2f;border-radius:21px;flex-shrink:0;place-items:center;width:65px;height:65px;font-size:27px;font-weight:600;display:grid}.profile-card>div{min-width:0}.profile-card h2{letter-spacing:-.5px;font-size:20px;font-weight:650;line-height:1.3}.profile-card p{color:#a0b48d;margin-top:5px;font-size:11px}.role-badge{color:#c0d8a8;background:#344828;border:1px solid #526b3d;border-radius:7px;align-items:center;gap:5px;margin-top:10px;padding:4px 7px;font-size:8px;display:inline-flex}.settings-card{background:#1c2519;border:1px solid #323f2b;border-radius:22px;margin-bottom:17px;padding:19px 17px}.settings-heading{align-items:center;gap:9px;display:flex}.settings-heading>svg{color:#a1ba84}.settings-heading h2{letter-spacing:-.3px;font-size:15px;font-weight:650}.settings-heading>span{color:#8ca377;margin-left:auto;font-size:8px}.settings-description{color:#91a87c;margin:13px 0 18px;font-size:11px;line-height:1.9}.goals-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 12px;display:grid}.goal-field{min-width:0}.goal-field>span{color:#b8cda5;align-items:center;gap:6px;margin-bottom:8px;font-size:10px;display:flex}.goal-field>div{background:#25351d;border:1px solid #415635;border-radius:12px;align-items:center;gap:6px;height:46px;padding:0 11px;display:flex}.goal-field input{border:0;width:100%;height:100%;padding:0;font-size:15px;font-weight:600}.goal-field input::placeholder{color:#7e986b;font-size:11px;font-weight:500}.goal-field small{color:#9db387;flex-shrink:0;font-size:8px}.settings-card .editor-hint{margin:18px 0 0}.timezone-card .field{margin-bottom:0}.timezone-card .field>input{font-size:12px}.admin-entry{text-align:left;background:#23252a;border:1px solid #3a3e45;border-radius:18px;align-items:center;gap:12px;width:100%;margin:23px 0;padding:16px 13px;display:flex}.admin-entry>span:nth-child(2){flex:1;min-width:0}.admin-entry strong{font-size:12px;font-weight:650;display:block}.admin-entry small{color:#9c9baa;margin-top:4px;font-size:9px;display:block}.admin-entry>svg{color:#a59ab8}.privacy-note{color:#7f9a6b;align-items:flex-start;gap:10px;margin:25px 2px;display:flex}.privacy-note>svg{margin-top:1px}.privacy-note>div{min-width:0}.privacy-note strong{color:#a2bd8a;font-size:10px;font-weight:650}.privacy-note p{margin-top:7px;font-size:9px;line-height:1.9}.app-version{text-align:center;color:#627854;letter-spacing:1px;margin-top:30px;font-size:8px}.app-version span{margin:0 6px}.invite-button{margin-bottom:19px}.admin-summary{justify-content:space-between;align-items:center;gap:10px;margin:0 0 23px;padding:0 3px;display:flex}.admin-summary>span{color:#8fa47e;align-items:center;gap:6px;font-size:10px;display:inline-flex}.status-dot{background:#a4b495;border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.status-dot.active{background:var(--lime)}.status-dot.revoked{background:#c7907b}.segmented-tabs{background:#1b2518;border:1px solid #33422b;border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:17px;padding:4px;display:grid}.segmented-tabs button{color:#8eaa79;white-space:nowrap;background:0 0;border-radius:10px;min-height:40px;padding:8px;font-size:11px;font-weight:650}.segmented-tabs button.selected{color:#d7f3bc;background:#354c26;box-shadow:0 2px 8px #0002}.segmented-tabs button>span{color:#9ebc86;background:#0002;border-radius:5px;margin-left:3px;padding:3px 5px;font-size:8px}.admin-filters{flex-direction:column;align-items:flex-start;gap:11px;margin-bottom:18px;display:flex}.search-field{color:#7a9866;background:#1d2819;border:1px solid #374b2b;border-radius:12px;align-items:center;gap:9px;width:100%;height:46px;padding:0 11px;display:flex}.search-field input{border:0;flex:1;width:100%;height:100%;padding:0;font-size:11px}.search-field .icon-button{width:26px;height:34px}.admin-filters>select{color:#a3bf8b;background:#26361e;border:1px solid #3b4f2e;border-radius:9px;max-width:100%;min-height:38px;padding:8px 9px;font-size:10px}.member-list{flex-direction:column;gap:10px;display:flex}.member-card{text-align:left;background:#1d2819;border:1px solid #34482a;border-radius:17px;align-items:center;gap:12px;width:100%;padding:15px 13px;display:flex}.member-avatar{color:#b9d79f;background:#304326;border:1px solid #445d35;border-radius:14px;flex-shrink:0;place-items:center;width:43px;height:45px;font-size:18px;display:grid}.member-avatar.owner{color:var(--lime);background:#3b4f28;border-color:#5b793e}.member-copy{flex:1;min-width:0;display:block}.member-copy>strong{font-size:13px;font-weight:650;display:block}.member-copy>small{color:#7f9e68;margin-top:3px;font-size:9px;display:block}.member-meta{flex-wrap:wrap;align-items:center;gap:7px;margin-top:9px;display:flex}.role-pill{color:#accd8f;background:#314a23;border:1px solid #476238;border-radius:5px;padding:3px 6px;font-size:8px;line-height:1.5;display:inline-block}.role-pill.admin{color:#bdb0d8;background:#343046;border-color:#514866}.role-pill.superadmin{color:#d5edae;background:#405429;border-color:#657e41}.status-label{color:#92af79;align-items:center;gap:4px;font-size:8px;display:inline-flex}.status-label.revoked{color:#be9e8b}.member-card>svg{color:#88a66e}.invitation-list{flex-direction:column;gap:12px;display:flex}.invitation-card{background:#202a1a;border:1px solid #3b4931;border-radius:18px;padding:16px 13px}.invitation-header{align-items:center;gap:10px;display:flex}.invitation-icon{color:#a9be88;background:#344528;border-radius:12px;flex-shrink:0;place-items:center;width:38px;height:41px;display:grid}.invitation-header>div{flex:1;min-width:0}.invitation-header strong{font-size:12px;font-weight:650;display:block}.invitation-header small{color:#8fa674;margin-top:3px;font-size:9px;display:block}.invite-status{color:#bfa97a;text-align:center;background:#443b22;border:1px solid #685a2f;border-radius:6px;max-width:80px;padding:4px 6px;font-size:8px;line-height:1.5;display:inline-block}.invite-status.accepted{color:#b5d994;background:#314824;border-color:#4b6937}.invite-status.declined,.invite-status.revoked,.invite-status.cancelled,.invite-status.canceled{color:#cda99b;background:#433328;border-color:#614a39}.invite-status.expired{color:#b8b6a6;background:#3b3c30;border-color:#565843}.invitation-details{color:#9ab27f;justify-content:space-between;gap:8px;margin:15px 0 0;font-size:9px;display:flex}.delivery-note{color:#859c6f;margin-top:10px;font-size:9px;line-height:1.8}.delivery-note.failed{color:#e3b99a}.invitation-actions{border-top:1px solid #3d4c30;justify-content:space-between;gap:15px;margin-top:12px;padding-top:5px;display:flex}.invitation-actions .text-button{min-height:35px;font-size:10px}.admin-footnote{color:#748c60;align-items:flex-start;gap:7px;margin:25px 2px;font-size:9px;line-height:1.8;display:flex}.admin-footnote svg{margin-top:1px}.small-modal{max-height:calc(var(--visual-height,100dvh) - 30px - env(safe-area-inset-top,0px))}.small-modal .modal-header h2{font-size:20px}.modal-body{padding:0 20px calc(23px + var(--safe-bottom));min-height:0;overflow-y:auto}.invite-info{color:#a9bf93;background:#2b3b20;border:1px solid #42572f;border-radius:13px;gap:8px;margin-bottom:22px;padding:12px;font-size:10px;line-height:1.9;display:flex}.invite-info>svg{color:#a5cc7f;margin-top:3px}.lookup-empty{text-align:center;background:#24331b;border:1px dashed #526a3d;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;margin-top:22px;padding:22px 16px;display:flex}.lookup-empty>svg{color:#a2bd86;margin-bottom:12px}.lookup-empty strong{color:#c2dbac;font-size:12px}.lookup-empty p{color:#8ca875;margin-top:10px;font-size:10px;line-height:1.9}.contact-results{border-top:1px solid #3d502f;margin-top:24px;padding-top:20px}.contact-results>.field-label{margin-bottom:12px;font-size:10px;line-height:1.8}.contact-option{background:#26371d;border:1px solid #425a31;border-radius:13px;align-items:center;gap:10px;margin-top:8px;padding:12px;display:flex}.contact-option.selected{background:#2c411f;border-color:#7baf46}.contact-option>input{accent-color:var(--lime);flex-shrink:0;width:16px;height:16px;margin:0}.contact-option>span{flex:1;min-width:0}.contact-option strong{font-size:12px;font-weight:650;display:block}.contact-option small{color:#9ab982;margin-top:4px;font-size:8px;display:block}.contact-option>svg{color:var(--lime)}.confirm-copy{color:#a4ba90;margin:15px 0 20px;font-size:11px;line-height:2}.confirm-copy strong{color:#c6ddaf;font-weight:700}.confirm-person{background:#29391e;border:1px solid #475e34;border-radius:15px;flex-direction:column;align-items:flex-start;gap:7px;margin:5px 0 22px;padding:16px;display:flex}.confirm-person>strong{color:#d1e5bc;font-size:15px;font-weight:650}.confirm-person>span:not(.role-pill){color:#96b47c;font-size:10px}.confirm-person>.role-pill{margin-top:5px}.member-options{flex-direction:column;gap:13px;display:flex}.confirm-buttons{gap:10px;display:flex}.confirm-buttons>button{flex:1;min-width:0;padding:12px 10px;font-size:11px}.modal-body>.full-width{margin-top:3px}.modal-body>.error-box:last-child{margin-bottom:0}.camera-content{padding:0 20px calc(22px + var(--safe-bottom));overscroll-behavior:contain;min-height:0;overflow-y:auto}.camera-preview{aspect-ratio:1;background:#090e08;border:1px solid #405234;border-radius:21px;width:100%;min-height:0;position:relative;overflow:hidden}.camera-preview video{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.camera-overlay{text-align:center;color:#b4d396;background:#172112;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:22px;display:flex;position:absolute;inset:0}.camera-overlay p{font-size:14px;font-weight:650}.camera-overlay small{color:#91ad79;max-width:245px;font-size:11px;line-height:1.8}.camera-frame{pointer-events:none;border:1px solid #d9f4b78c;border-radius:25px;position:absolute;inset:15% 10%}.camera-instruction{color:#a4bb91;text-align:center;margin:16px 0 12px;font-size:11px;line-height:1.8}.camera-resolution{color:#a8c79b;text-align:center;margin:-6px 0 12px;font-size:11px;line-height:1.5}.camera-shutter{border:2px solid var(--lime);background:0 0;border-radius:50%;justify-content:center;align-items:center;width:74px;height:74px;margin:13px auto 22px;display:flex}.camera-shutter span{color:#243418;background:var(--lime);border-radius:50%;place-items:center;width:60px;height:60px;display:grid}.camera-retry{margin:3px 0 15px}.camera-alternatives{align-items:stretch;gap:8px;margin-top:16px;display:flex}.camera-alternatives button{flex:1;gap:6px;min-width:0;min-height:47px;padding:10px 8px;font-size:10px}.camera-fallback-note{color:#829a70;margin:13px 2px 0;font-size:10px;line-height:1.9}@media (width<=370px){.camera-content{padding-left:15px;padding-right:15px}.camera-modal .modal-header h2{font-size:18px}.camera-alternatives button{gap:5px;padding:10px 6px;font-size:9px}.camera-alternatives button svg{width:15px}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sheet-in{0%{opacity:.6;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}@keyframes scan{0%,to{top:5%}50%{top:95%}}@keyframes breathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}@keyframes loading-slide{0%{transform:translate(-110%)}to{transform:translate(350%)}}@media (width>=600px){body{background:radial-gradient(at top,#273322 0,#121811 55%,#10140f 100%)}.app-shell{border-left:1px solid #2c3925;border-right:1px solid #2c3925;box-shadow:0 0 100px #0004}.modal-backdrop{align-items:center;padding:24px}.modal{border-bottom:1px solid #384331;border-radius:28px}.meal-editor{height:min(900px, calc(var(--visual-height,100dvh) - 48px));max-height:calc(var(--visual-height,100dvh) - 48px)}.modal-handle{display:none}.modal-header{padding-top:24px}.small-modal{max-height:calc(var(--visual-height,100dvh) - 48px)}.bottom-nav{border:1px solid #30392d;border-bottom:0}}@media (width<=370px){.app-header{padding-left:17px;padding-right:17px}.main-content{padding-left:16px;padding-right:16px}.brand{font-size:21px}.brand-mark{width:36px;height:39px}.brand small{letter-spacing:1.3px;font-size:7px}.page-heading h1{font-size:38px}.page-heading.compact h1{font-size:29px}.eyebrow{letter-spacing:1.2px;font-size:8px}.leaf-decoration{width:56px;height:70px;margin-right:5px}.leaf-decoration svg{width:35px}.calorie-card{padding:18px 16px}.calorie-ring{width:126px;height:126px}.calorie-ring strong{font-size:28px}.calorie-copy h2{font-size:24px}.card-kicker{letter-spacing:1px;font-size:8px}.calorie-copy p{font-size:9px}.remaining-value{font-size:29px}.macro-progress{gap:10px}.macro>strong{font-size:12px}.macro>strong small{font-size:8px}.macro-label{font-size:9px}.photo-prompt{gap:10px;padding:15px 12px}.photo-prompt strong{font-size:12px}.photo-prompt small{font-size:8px}.photo-prompt-icon{width:38px;height:40px}.photo-prompt>svg{width:17px}.section-title h2{font-size:15px}.section-title>span{font-size:8px}.meal-section-header{gap:10px;min-height:73px;padding:13px 10px 13px 12px}.meal-type-icon{width:35px;height:37px}.meal-section-header h3{font-size:12px}.meal-section-header small{font-size:8px}.meal-card-copy strong{font-size:11px}.meal-card-copy small{font-size:7px}.meal-thumb{width:29px;height:35px}.meal-calories strong{font-size:12px}.meal-card{gap:7px}.meal-list{margin:0 11px}.bottom-nav{padding-left:8px;padding-right:8px}.nav-button{font-size:7px}.nav-button>svg{width:20px}.nav-add{border-radius:16px;width:47px;height:49px}.modal-header{padding-left:17px;padding-right:17px}.modal-header h2{font-size:20px}.editor-scroll,.analysis-content{padding-left:15px;padding-right:15px}.editor-footer{gap:10px;padding-left:15px;padding-right:15px}.editor-footer .primary-button{min-width:134px;padding-left:12px;padding-right:12px;font-size:12px}.portion-total small{font-size:7px}.portion-total strong{font-size:11px}.portion-control{gap:3px}.portion-control>.icon-button{width:30px;min-width:30px}.portion-control>label{min-width:58px;padding:0 5px}.portion-control input{width:36px}.small-portion input{width:43px}.nutrition-summary{gap:5px}.nutrition-summary strong{font-size:11px}.nutrition-summary span{font-size:7px}.settings-card{padding:17px 13px}.settings-heading h2{font-size:14px}.settings-heading>span{font-size:7px}.goal-field>div{gap:4px;padding:0 8px}.goals-grid{gap:15px 10px}.admin-filters>select{font-size:9px}.member-card{gap:9px;padding:13px 10px}.member-copy>strong{font-size:12px}.member-meta{gap:5px}.role-pill,.status-label{font-size:7px}.invitation-header{gap:8px}.invitation-header strong{font-size:11px}.invite-status{max-width:70px;font-size:7px}.small-modal .modal-header h2{font-size:18px}.modal-body{padding-left:16px;padding-right:16px}.history-day{gap:9px;padding:12px 10px}.history-copy strong{font-size:11px}.history-copy small{font-size:7px}.calendar-tile{width:38px;height:45px}.history-summary{gap:30px}.confirm-buttons{gap:7px}.confirm-buttons>button{padding:11px 8px;font-size:10px}.profile-card{gap:14px;padding:20px 15px}.profile-card h2{font-size:18px}.profile-avatar{width:57px;height:59px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.barcode-content{padding:4px 17px calc(22px + var(--safe-bottom));gap:13px;max-height:calc(100dvh - 130px);display:grid;overflow-y:auto}.barcode-intro{background:var(--panel-raised);border:1px solid var(--line);border-radius:16px;align-items:flex-start;gap:13px;padding:15px;display:flex}.barcode-intro svg{color:var(--lime);flex-shrink:0}.barcode-intro p{color:var(--muted);font-size:13px;line-height:1.5}.barcode-content .field{margin:0}.barcode-code-row{align-items:stretch;gap:9px;display:flex}.barcode-code-row input{border:1px solid var(--line);background:var(--panel);border-radius:11px;flex:1;width:100%;min-width:0;padding:12px}.barcode-code-row button{flex:0 0 48px;justify-content:center}.barcode-product{border-top:1px solid var(--line);gap:13px;padding-top:18px;display:grid}.barcode-product-head{align-items:flex-start;gap:12px;display:flex}.barcode-product-head svg{color:var(--lime);flex-shrink:0;margin-top:2px}.barcode-product-head div{gap:3px;min-width:0;display:grid}.barcode-product-head strong{overflow-wrap:anywhere;font-size:17px}.barcode-product-head small{color:var(--muted);font-size:12px}.barcode-product .field input{border:1px solid var(--line);background:var(--panel);border-radius:10px;width:100%;padding:11px 12px}.barcode-nutrients{grid-template-columns:1fr 1fr;gap:12px;display:grid}.barcode-nutrients .field span{font-size:12px}.barcode-source{color:var(--muted);font-size:12px;text-decoration:underline}.barcode-busy{color:var(--lime);font-size:13px}.barcode-manual{text-align:center;justify-self:center}@media (width<=350px){.barcode-nutrients{grid-template-columns:1fr}}.barcode-portion-summary{border:1px solid var(--line);background:var(--panel-raised);border-radius:14px;gap:6px;padding:15px;display:grid}.barcode-portion-summary strong{color:var(--lime);font-size:18px}.barcode-portion-summary span{font-size:13px}.barcode-portion-summary small{color:var(--muted);font-size:12px;line-height:1.5}
