:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#223b33;background:#f8f7f2;font-synthesis:none;--green: #173e35;--muted: #728078;--border: #e1e5dc;--sage: #eaf0e4;--paper: #fffefa}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);border-radius:9px;padding:11px 16px;background:var(--paper);color:var(--green);font-size:13px;font-weight:550;min-height:42px;transition:background .15s,transform .15s}button:hover{background:#edf1e7}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #8daf85;outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-weight:550;letter-spacing:-1.4px;font-size:clamp(28px,3vw,38px);line-height:1.2}h2{font-size:19px;font-weight:580;letter-spacing:-.4px}h3{font-size:16px;font-weight:600}p{line-height:1.65;font-size:14px}small{font-size:12px}.layout{min-height:100vh}.sidebar{overflow-y:auto;position:fixed;inset:0 auto 0 0;width:246px;background:#f0f2e9;border-right:1px solid var(--border);padding:37px 22px 24px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font-size:29px;font-weight:650;letter-spacing:-1.3px}.brand-icon{display:grid;place-items:center;width:37px;height:37px;flex-shrink:0;border-radius:9px}.brand>span{color:#87a36e;font-size:13px;align-self:end;margin-bottom:5px;margin-left:-5px}.nav-caption{font-size:10px;letter-spacing:1.8px;color:#81907c;margin:53px 13px 14px}.nav-link{width:100%;justify-content:flex-start;border:0;background:transparent;color:#64766b;gap:12px;margin:4px 0;padding:14px;font-size:14px;font-weight:500}.nav-link.selected{background:var(--green);color:#fff;box-shadow:0 3px 8px #173e3512}.nav-chevron{margin-left:auto;opacity:0}.selected .nav-chevron{opacity:.7}.sidebar-bottom{margin-top:auto}.daily-note{padding:24px 13px 20px;margin-top:35px;color:#748568;border-bottom:1px solid #dde3d4;margin-bottom:17px}.daily-note p{font-size:13px;margin:10px 0 0}.daily-note strong{font-weight:500;color:#526548}.private-label{display:flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.2px;color:#7e8a7b;padding:12px 14px}.page{margin-left:246px}.topbar{height:85px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 47px;gap:14px;background:#fcfbf7}.topbar-title{font-size:13px;font-weight:550}.topbar-title span{color:#929a8f;margin-left:10px;font-weight:400}.sync-status{border:0;background:#ecf1e7;color:#526d50;min-height:32px;font-size:11px;padding:7px 11px;border-radius:20px}.main{max-width:1400px;margin:auto;padding:38px 47px 25px}.date-line{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:38px;color:#82907e;font-size:12px}.eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:600;color:#83917c}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:34px}.section-label{display:flex;gap:7px;align-items:center;font-size:12px;color:#64825c;margin-bottom:13px}.page-heading h1{margin-bottom:12px}.page-heading p{color:var(--muted);margin-bottom:0}.primary{background:var(--green);border-color:var(--green);color:#fff;box-shadow:0 3px 6px #173e3510;padding:13px 18px;white-space:nowrap}.primary:hover{background:#2a5546}.secondary{background:#eff3e8;border-color:#dbe3d3;color:#315738}.icon-button{border:0;padding:8px;min-width:38px;min-height:38px;background:transparent;color:#80907e}.content-section{margin-top:27px}.content-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.content-title h2{font-size:16px;margin:0}.content-title>span{font-size:11px;color:#899282;background:#edf0e7;border:1px solid #e3e7dc;border-radius:20px;padding:4px 10px}.empty-state{background:var(--paper);border:1px solid var(--border);border-radius:15px;min-height:418px;text-align:center;padding:22px 28px 48px;display:flex;align-items:center;flex-direction:column;justify-content:center}.empty-state h2{font-size:23px;font-weight:500;margin:13px 0 10px;letter-spacing:-.5px}.empty-state p{color:var(--muted);max-width:420px;margin:0 0 24px;font-size:13px;line-height:1.8}.empty-state .eyebrow{font-size:9px}.empty-illustration{width:155px;height:145px;position:relative;display:grid;place-items:center;margin-bottom:5px}.orbit{position:absolute;border-radius:50%;border:1px solid #e7ebdf}.orbit-one{width:140px;height:140px}.orbit-two{width:114px;height:114px}.empty-icon{display:grid;place-items:center;width:84px;height:84px;border-radius:27px;background:#edf2e5;color:#708d61;transform:rotate(-7deg)}.empty-icon svg{transform:rotate(7deg)}.little-leaf{position:absolute;right:15px;bottom:20px;display:grid;place-items:center;border-radius:50%;width:32px;height:32px;border:5px solid #fffefa;background:#ccdabb;color:#608251}.page-footer{display:flex;justify-content:space-between;gap:14px;color:#92998e;font-size:10px;margin-top:28px}.page-footer span{display:flex;align-items:center;gap:6px}.filters{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:24px}.segmented{background:#ebeee4;padding:4px;display:flex;border-radius:10px}.segmented button{border:0;background:transparent;font-size:12px;color:#77816f;padding:8px 13px;min-height:34px}.segmented button.selected{background:#fffefa;color:#284b38;box-shadow:0 2px 4px #173e3510}.date-filter{display:flex;gap:10px;align-items:center!important;font-size:12px!important}.date-filter input{width:auto;font-size:12px;padding:7px 10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:24px 0}.stats>div{padding:22px;border:1px solid var(--border);background:var(--paper);border-radius:12px;display:flex;flex-direction:column;gap:8px}.stats span{font-size:12px;color:var(--muted)}.stats strong{font-size:28px;font-weight:500}.stats em{font-size:13px;font-style:normal;font-weight:400;color:var(--muted)}.stats small{font-size:10px;color:var(--muted)}.entries-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.entry-card{border:1px solid var(--border);border-radius:12px;background:var(--paper);padding:22px;overflow-wrap:anywhere}.entry-top{display:flex;justify-content:space-between;gap:10px}.entry-top h3{margin:0 0 8px}.entry-actions{display:flex;align-items:start}.entry-meta{display:flex;gap:8px;font-size:10px;color:#81907d;flex-wrap:wrap}.entry-meta>span{display:flex;align-items:center;gap:4px}.quantity{font-size:19px;margin:17px 0 10px}.pills{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.pills>span{font-size:11px;border-radius:5px;background:#eef2e7;padding:6px 9px;color:#687b61}.entry-notes{border-top:1px solid #edf0e8;margin:17px 0 0;padding-top:12px;color:var(--muted);font-size:12px}.preline{white-space:pre-wrap}.measurement{font-size:33px;line-height:1.4;margin:16px 0 0}.measurement small{font-size:17px;color:var(--muted)}.expiry{font-size:12px;color:#697d5c;margin:8px 0 0}.expiry.past{color:#986542}.week-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.day-column>h3{display:flex;justify-content:space-between;font-size:13px;padding:12px 2px;color:#637456}.day-column>h3 span{font-size:11px;color:#939d8c;font-weight:400}.day-column .entry-card{margin-bottom:10px}.banner{display:flex;align-items:center;gap:12px;padding:13px 17px;border:1px solid #d8e1ce;background:#eef3e6;border-radius:9px;margin-bottom:18px;font-size:12px}.banner p{margin:0;flex:1;font-size:12px}.banner.danger{background:#fff3ea;border-color:#eed6bf;color:#8c573c}.conflicts{border:1px solid #ddc59c;padding:22px;border-radius:12px;background:#fff9eb;margin-bottom:24px}.conflicts p{font-size:12px}.conflict{margin-top:20px}.conflict-versions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.conflict-versions strong{font-size:12px}.conflict pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;background:#fffefa;padding:12px;max-height:200px;overflow:auto}.scrim{position:fixed;inset:0;background:#122b236b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;display:flex;justify-content:center;align-items:center;padding:24px}.modal{background:#fffefa;border-radius:17px;box-shadow:0 25px 100px #173e3530;padding:26px;width:min(640px,100%);max-height:90dvh;overflow:auto}.modal>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.modal h2{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid>:first-child{grid-column:1/-1}.span-two{grid-column:1/-1}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:500;color:#52694e}input,select,textarea{width:100%;border:1px solid #d9e0d2;background:#fffefa;border-radius:8px;min-height:43px;padding:10px 12px;color:#213d30;font-size:14px}textarea{resize:vertical}.subtle{font-size:12px;color:#7c8876;line-height:1.7}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:26px;padding-top:18px;border-top:1px solid var(--border)}.form-footer>span{display:flex;gap:5px;font-size:10px;color:#839079}.error{font-size:12px;color:#9d4735;background:#fff0e8;border-radius:8px;padding:12px;margin:16px 0}.settings-section{padding:19px 0;border-top:1px solid var(--border)}.settings-section h3{display:flex;gap:8px;align-items:center;font-size:15px}.settings-section p{font-size:12px;color:#708169}.button-row{display:flex;gap:10px;flex-wrap:wrap}.login-form{display:flex;flex-direction:column;gap:15px;margin:20px 0}.login-form button{align-self:stretch}.wide{width:100%}.splash{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;text-align:center}.splash h1{margin:20px 0 8px}.splash p{max-width:500px}.welcome{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.welcome-art{background:#173e35;color:#d8e5c3;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:40px;position:relative;overflow:hidden}.welcome-art:before,.welcome-art:after{content:"";position:absolute;width:550px;height:550px;border:1px solid #ffffff0c;border-radius:50%}.welcome-art:after{width:750px;height:750px}.welcome-art>svg{margin-bottom:32px}.welcome-art>span{font-size:clamp(32px,4vw,58px);letter-spacing:-2px;line-height:1.15}.welcome-art>p{margin-top:27px;font-size:14px;color:#a7baa0}.welcome main{max-width:450px;width:100%;margin:auto;padding:60px 35px}.welcome .brand{margin-bottom:55px;font-size:27px}.welcome h1{font-size:46px;letter-spacing:-2px;margin:20px 0}.welcome .subtle{font-size:14px;margin-bottom:25px}.privacy{display:flex;align-items:start;gap:8px;font-size:11px;color:#8c9787;margin-top:22px;line-height:1.7}.privacy svg{flex-shrink:0;margin-top:3px}.bottom-nav,.mobile-settings{display:none}.spin{animation:spin 1.3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1500px){.main{padding-top:48px}.empty-state{min-height:480px}}@media(max-width:1100px){.sidebar{width:210px;padding:30px 15px}.page{margin-left:210px}.topbar{padding:0 28px}.main{padding:30px 28px}.page-heading{align-items:flex-start;flex-direction:column;gap:20px}.page-heading h1{font-size:32px}}@media(max-width:760px){.sidebar{display:none}.page{margin-left:0}.topbar{height:65px;padding:0 19px}.topbar-title{font-size:18px;letter-spacing:-.5px}.topbar-title span{display:none}.sync-status{margin-left:auto;font-size:9px;padding:6px 9px}.mobile-settings{display:flex}.main{padding:25px 20px calc(156px + env(safe-area-inset-bottom))}.date-line{margin-bottom:27px;font-size:10px}.date-line .eyebrow{font-size:8px;letter-spacing:1px}.page-heading{gap:21px;margin-bottom:26px}.page-heading h1{font-size:30px;letter-spacing:-1px;max-width:330px}.page-heading p{font-size:13px}.page-heading>.primary{font-size:12px;padding:12px 16px}.empty-state{padding:28px 20px 36px;min-height:374px}.empty-state h2{font-size:21px;max-width:270px}.empty-state p{font-size:12px;max-width:270px}.empty-illustration{height:135px}.empty-state .secondary{font-size:12px}.page-footer{flex-direction:column;align-items:center;font-size:9px;gap:11px;margin-top:23px}.bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;position:fixed;bottom:0;left:0;right:0;background:#fffefaf5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border);border-radius:20px 20px 0 0;box-shadow:0 -4px 24px #173e3508;padding:8px max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));z-index:20}.bottom-nav button{display:flex;flex-direction:column;gap:5px;border:0;border-radius:12px;background:transparent;color:#728078;padding:7px 2px;font-size:10px;line-height:1.2;min-width:0;min-height:54px;touch-action:manipulation}.bottom-nav button.selected{color:var(--green);background:var(--sage)}.bottom-nav button.selected svg{stroke-width:2.4}.entries-grid,.week-grid{grid-template-columns:1fr}.entry-card{padding:19px}.stats{gap:7px}.stats>div{padding:14px 10px;gap:9px}.stats span{font-size:10px}.stats strong{font-size:23px}.stats small{font-size:9px;line-height:1.4}.stats em{font-size:10px}.filters{gap:13px}.segmented button{font-size:11px;padding:8px 12px}.scrim{padding:15px}.modal{padding:20px;max-height:92dvh}.modal h2{font-size:18px}.form-grid{gap:14px;grid-template-columns:1fr}.span-two{grid-column:auto}.form-footer{flex-direction:column;align-items:stretch}.form-footer>span{justify-content:center}.conflict-versions,.welcome{grid-template-columns:1fr}.welcome-art{display:none}.welcome main{padding:40px 28px;max-width:440px}.welcome .brand{margin-bottom:45px}.welcome h1{font-size:42px}input,select,textarea,.date-filter input{font-size:16px}.button-row button{font-size:12px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.nutrition-settings-link{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--muted);font-size:12px;padding:10px 0}.nutrition-focus{max-width:880px;margin:auto}.focus-week-controls,.focus-week-switch{display:flex;align-items:center;gap:7px}.focus-week-controls{justify-content:space-between;margin:6px 0 12px}.focus-week-switch input{width:145px;border:0;background:transparent;color:var(--muted);font-size:12px;padding:8px 4px}.focus-today{border:0;background:transparent;color:var(--green);font-size:12px;padding:8px}.focus-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding-bottom:23px;border-bottom:1px solid var(--border)}.focus-week button{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 4px 5px;border:0;border-radius:13px;background:transparent;color:var(--muted)}.focus-week button>span:first-child{font-size:11px}.focus-week strong{font-size:17px;font-weight:550}.focus-week button.selected{background:var(--green);color:#fff}.focus-week button.today:not(.selected){background:#e9ede2;color:var(--green)}.focus-day-dot{display:grid;place-items:center;height:10px;font-size:15px}.focus-day-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 18px}.focus-day-heading h2{margin:0;font-size:21px;letter-spacing:-.6px}.focus-day-heading h2 span{margin-left:10px;font-size:12px;color:var(--muted);font-weight:400;letter-spacing:0}.focus-day-heading>span{font-size:12px;color:var(--muted);white-space:nowrap}.focus-progress-summary{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:28px}.focus-progress-summary p{margin:0 0 10px}.focus-progress-summary strong{font-size:22px;letter-spacing:-.8px}.focus-progress-summary p span{font-size:12px;color:var(--muted)}.focus-progress-summary progress{appearance:none;border:0;width:100%;height:4px;display:block;border-radius:5px;overflow:hidden;background:#e4e8df}.focus-progress-summary progress::-webkit-progress-bar{background:#e4e8df}.focus-progress-summary progress::-webkit-progress-value{background:#789565;border-radius:5px}.focus-progress-summary progress::-moz-progress-bar{background:#789565;border-radius:5px}.next-meal{background:#eaf0e1;border:1px solid #dce5d2;border-radius:22px;padding:28px 30px}.next-meal h3{max-width:550px;margin:18px 0 12px;font-size:clamp(23px,2.6vw,32px);font-weight:550;line-height:1.25;letter-spacing:-1px;overflow-wrap:anywhere}.focus-macros{display:flex;gap:15px;flex-wrap:wrap;margin:0;font-size:12px;color:#6c7963}.focus-macros span+span{border-left:1px solid #bdc9b4;padding-left:15px}.focus-later{margin-top:27px}.focus-later>h3{display:flex;gap:9px;align-items:center;font-size:13px;font-weight:550;color:var(--muted);margin:0 0 8px}.focus-later>h3 span{font-size:10px;background:#e9ece4;padding:3px 6px;border-radius:7px}.focus-meal-row{display:flex;align-items:start;gap:14px;padding:18px 0;border-bottom:1px solid var(--border)}.focus-row-body{flex:1;min-width:0}.focus-slot{color:var(--muted);font-size:10px}.focus-row-body h4{font-size:14px;font-weight:550;margin:4px 0 7px;line-height:1.5}.focus-check{display:grid;place-items:center;width:24px;height:24px;min-width:24px;border-radius:50%;padding:0;background:transparent;border:1px solid #bdc9b4;color:#fff;margin-top:17px}.done .focus-check{background:#7b906c;border-color:#7b906c}.done .focus-row-body h4{color:#788172}.focus-completed{margin-top:24px}.focus-completed>summary{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;cursor:pointer;padding:7px 0}.focus-completed>summary:after{content:"+";margin-left:auto}.focus-completed[open]>summary:after{content:"−"}.focus-completed>summary>span{font-size:10px;padding:2px 6px;background:#e8ece3;border-radius:6px}.focus-balance{margin-top:22px;color:var(--muted);font-size:11px}.focus-balance>summary{cursor:pointer;padding:6px 0}.focus-balance p{margin:8px 0}.focus-note{font-size:12px;color:var(--muted);line-height:1.5}.focus-finished{background:#edf1e7;border-radius:20px;text-align:center;padding:30px 20px;color:var(--green)}.focus-finished h3{font-size:20px;font-weight:550}.focus-finished p{font-size:13px;color:var(--muted)}.focus-finished button{display:inline-flex;gap:8px;align-items:center;margin-top:12px}.nutrition-settings-section{border-bottom:1px solid var(--border);padding-bottom:20px}.nutrition-settings-section>summary{cursor:pointer;font-size:15px;font-weight:600;padding:10px 0}.meal-settings>h3{margin:16px 0 8px}.meal-settings>p{font-size:13px;line-height:1.6;color:var(--muted)}.meal-settings-tools{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin:20px 0}.meal-settings-tools label{flex:1;min-width:160px}.meal-settings-tools button{font-size:12px}.meal-settings-list{max-height:45vh;overflow-y:auto}.meal-settings-row{padding:15px 0;border-top:1px solid var(--border)}.meal-settings-row span{font-size:11px;color:var(--muted)}.meal-settings-row h4{margin:6px 0 10px;font-size:14px}.meal-settings-actions{display:flex;gap:15px}.meal-settings-actions button{padding:4px 0;background:none;border:0;font-size:12px;color:var(--green)}.meal-settings-actions button+button{color:#967265}@media(max-width:600px){.focus-week{gap:3px;padding-bottom:16px}.focus-week button{padding-top:9px;border-radius:10px}.focus-day-heading{margin:20px 0 15px}.focus-day-heading h2{font-size:19px}.focus-day-heading h2 span{display:block;margin:5px 0 0;font-size:11px}.focus-progress-summary{gap:18px;margin-bottom:23px}.focus-progress-summary strong{font-size:20px}.focus-progress-summary p span{font-size:10px}.next-meal{padding:22px 20px;border-radius:18px}.next-meal h3{font-size:25px}.nutrition-settings-link{padding:0}}.nutrition-main .date-line,.nutrition-main .section-label{display:none}.nutrition-main .page-heading{flex-direction:row;align-items:center;gap:12px;margin-bottom:16px}.nutrition-main .page-heading h1{font-size:30px;margin:0}.focus-check{min-height:24px}@media(max-width:600px){.nutrition-main{padding-top:20px}.nutrition-main .page-heading h1{font-size:26px}.nutrition-main .page-heading{margin-bottom:8px}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.focus-week-controls{margin-top:22px}.focus-day-tools{display:flex;align-items:center;gap:7px}.focus-day-tools .nutrition-settings-link{padding:8px;min-width:36px}.nutrition-main{padding-top:24px}@media(max-width:600px){.nutrition-main{padding-top:16px}}.meal-photo{display:block;object-fit:cover;background:#eef0e6;flex-shrink:0}.next-meal{position:relative;isolation:isolate;overflow:hidden;background:#132c23;border:0;padding:32px;min-height:0;color:#fff}.next-meal>.meal-photo-hero{position:absolute;inset:0;width:100%;height:100%;border-radius:0;object-fit:cover;object-position:center;z-index:0}.next-meal:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#061711f5,#061711e0 30%,#061711a1 53%,#06171129 78%,#0617110a)}.next-meal>:not(.meal-photo-hero){position:relative;z-index:2}.next-meal-body{margin-top:0;max-width:58%}.next-meal-copy h3{margin:0 0 14px;color:#fff;font-size:32px;line-height:1.17;letter-spacing:-.8px;text-wrap:balance}.next-meal .focus-macros{color:#e2e9df}.next-meal .focus-macros span+span{border-color:#ffffff50}.next-meal .focus-note{color:#e4ece0}.next-meal .error{color:#ffe7d8;background:#27120ecc;padding:10px;border-radius:8px}.next-meal .routine-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:260px;max-width:100%;min-height:48px;padding:13px 20px;border:1px solid #ffffff30;border-radius:14px;background:#12281fe6;color:#f2f5ee;font-size:14px;font-weight:550;line-height:1.4;letter-spacing:-.15px;box-shadow:none}.next-meal>.routine-action{margin-top:24px}.next-meal .routine-action-primary{background:#f2f5ee;border-color:transparent;color:#183829}.next-meal .routine-action>svg{width:18px;height:18px;flex-shrink:0;stroke-width:1.75}.next-meal .routine-action:disabled{opacity:.5}@media(hover:hover){.next-meal .routine-action:hover:not(:disabled){background:#243e32;border-color:#ffffff60}.next-meal .routine-action-primary:hover:not(:disabled){background:#fff;border-color:transparent}}.next-meal :focus-visible{outline:2px solid #fff;outline-offset:4px}.meal-photo-thumb{width:58px;height:58px;border-radius:12px;margin-top:4px}.meal-settings-identity{display:flex;align-items:center;gap:13px}.meal-settings-identity .meal-photo-thumb{width:48px;height:48px;margin:0}.meal-settings-identity h4{margin-bottom:0}.meal-settings-actions{margin-top:12px}@media(prefers-reduced-motion:no-preference){.meal-photo{animation:meal-photo-appear .3s ease-out both}@keyframes meal-photo-appear{0%{opacity:0}to{opacity:1}}}@media(max-width:600px){.next-meal{padding:25px 22px;min-height:0}.next-meal:after{background:linear-gradient(90deg,#061711f5,#061711d9 35%,#0617118f 64%,#0617111a)}.next-meal-body{margin-top:0;max-width:86%}.next-meal-copy h3{font-size:27px;line-height:1.15;letter-spacing:-.7px}.next-meal .focus-macros{gap:10px;font-size:11px}.next-meal .focus-macros span+span{padding-left:10px}.focus-meal-row{gap:10px}.meal-photo-thumb{width:48px;height:48px;border-radius:10px}}.focus-photo-list .focus-meal-row{position:relative;isolation:isolate;overflow:hidden;min-height:150px;margin-top:12px;padding:22px;border:0;border-radius:17px;background:#132c23;color:#fff}.focus-photo-list .focus-meal-row>.meal-photo{position:absolute;inset:0;width:100%;height:100%;margin:0;border-radius:0;object-fit:cover;object-position:center;z-index:0;pointer-events:none}.focus-photo-list .focus-meal-row:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#061711f5,#061711e0 32%,#0617119e 56%,#0617111f 83%,#0617110a)}.focus-photo-list .focus-row-body,.focus-photo-list .focus-check{position:relative;z-index:2}.focus-photo-list .focus-row-body{max-width:62%}.focus-photo-list .focus-slot{color:#d0dfbd}.focus-photo-list .focus-row-body h4{color:#fff;font-size:18px;line-height:1.35;margin:5px 0 9px}.focus-photo-list .focus-macros{color:#e4ece0}.focus-photo-list .focus-macros span+span{border-color:#ffffff50}.focus-photo-list .focus-check{border-color:#dce7d5;background:#0c261c55}.focus-photo-list .done .focus-check{background:#527841}.focus-photo-list .focus-check:hover{background:#ffffff30}.focus-photo-list .focus-meal-row :focus-visible{outline:2px solid #fff;outline-offset:4px}.focus-photo-list .error{color:#ffe7d8;background:#27120ecc;padding:8px;border-radius:8px}@media(max-width:600px){.focus-photo-list .focus-meal-row{padding:18px 16px;min-height:145px;border-radius:15px;gap:12px}.focus-photo-list .focus-row-body{max-width:83%}.focus-photo-list .focus-row-body h4{font-size:16px}.focus-photo-list .focus-macros{font-size:11px;gap:8px}.focus-photo-list .focus-macros span+span{padding-left:8px}.focus-photo-list .focus-meal-row:after{background:linear-gradient(90deg,#061711f5,#061711db 38%,#0617118c 70%,#0617111f)}}.meal-motion{display:grid;grid-template-rows:1fr}.meal-motion-content{min-height:0;overflow:hidden}.next-meal>.meal-celebration,.focus-meal-row>.meal-celebration{position:absolute;inset:0;z-index:5;display:grid;place-items:center;color:#f4ffe8;background:linear-gradient(135deg,#357944,#205535);pointer-events:none}.meal-celebration-message{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center}.meal-celebration-check{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#e4ffc81c;border:1px solid #e4ffc84a}.meal-celebration-message strong{font-size:27px;letter-spacing:-.7px}.meal-celebration-message>span:last-child{font-size:12px;color:#d9eccc}.focus-photo-list .meal-celebration-message{gap:4px}.focus-photo-list .meal-celebration-check{width:38px;height:38px}.focus-photo-list .meal-celebration-check svg{width:24px;height:24px}.focus-photo-list .meal-celebration-message strong{font-size:21px}@media(prefers-reduced-motion:no-preference){.nutrition-day-focus{animation:nutrition-enter .38s ease-out both}.next-meal,.focus-finished{animation:nutrition-enter .42s cubic-bezier(.2,.7,.2,1) both}.focus-photo-list .meal-motion-content{animation:nutrition-enter .4s ease-out both}.meal-motion{transition:grid-template-rows .38s cubic-bezier(.4,0,.2,1)}.meal-motion.is-leaving{grid-template-rows:0fr}.meal-motion.is-leaving .focus-meal-row,.next-meal.is-leaving{animation:meal-dismiss .38s ease-in both}.meal-celebration{animation:meal-green-spread .55s cubic-bezier(.2,.7,.2,1) both}.meal-celebration-message{animation:meal-success-enter .35s .18s ease-out both}.meal-celebration-check polyline{stroke-dasharray:30;stroke-dashoffset:30;animation:meal-check-draw .3s .3s ease-out forwards}.nutrition-focus button{transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,transform .2s}.nutrition-focus button:active:not(:disabled){transform:scale(.97)}.focus-check:hover:not(:disabled){transform:translateY(-2px)}.focus-progress-summary progress::-webkit-progress-value{transition:width .65s cubic-bezier(.2,.7,.2,1)}.focus-progress-summary progress::-moz-progress-bar{transition:width .65s cubic-bezier(.2,.7,.2,1)}.nutrition-focus details[open]>:not(summary){animation:nutrition-enter .28s ease-out both}@supports (interpolate-size: allow-keywords){.nutrition-focus details{interpolate-size:allow-keywords}.nutrition-focus details::details-content{block-size:0;overflow:clip;transition:block-size .3s ease,content-visibility .3s allow-discrete}.nutrition-focus details[open]::details-content{block-size:auto}}@keyframes nutrition-enter{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes meal-green-spread{0%{clip-path:circle(0% at 50% 50%)}to{clip-path:circle(75% at 50% 50%)}}@keyframes meal-success-enter{0%{opacity:0;transform:translateY(7px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes meal-check-draw{to{stroke-dashoffset:0}}@keyframes meal-dismiss{to{opacity:0;transform:translateY(34px) scale(.985)}}}@media(prefers-reduced-motion:reduce){.nutrition-focus *,.nutrition-focus *:before,.nutrition-focus *:after{animation:none!important;transition:none!important}}.meal-ingredients{margin-top:14px;color:#65715d;font-size:12px}.next-meal .meal-ingredients{max-width:60%;color:#e4ece0}.focus-photo-list .meal-ingredients{color:#e4ece0}.meal-ingredients .meal-ingredients-toggle{display:inline-flex;align-items:center;gap:9px;min-height:36px;padding:6px 11px;border:1px solid currentColor;border-color:#7e94752e;border-radius:10px;background:#7e94750a;color:inherit;font:inherit;font-weight:500;box-shadow:none}.next-meal .meal-ingredients-toggle,.focus-photo-list .meal-ingredients-toggle{background:#ffffff0a;border-color:#ffffff24}.meal-ingredients .meal-ingredients-toggle:hover{background:#7e94751c}.next-meal .meal-ingredients-toggle:hover,.focus-photo-list .meal-ingredients-toggle:hover{background:#ffffff17}.meal-ingredients-toggle svg{opacity:.75}.meal-ingredients.is-open .meal-ingredients-toggle svg{transform:rotate(180deg)}.meal-ingredients-panel{display:grid;grid-template-rows:0fr;opacity:0}.meal-ingredients.is-open .meal-ingredients-panel{grid-template-rows:1fr;opacity:1}.meal-ingredients-clip{min-height:0;overflow:hidden}.meal-ingredients-content{padding-top:12px}.meal-ingredients-content ul{list-style:none;margin:0;padding:0}.meal-ingredients-content li{padding:8px 0;line-height:1.5;border-bottom:1px solid #7e947526}.next-meal .meal-ingredients-content li,.focus-photo-list .meal-ingredients-content li{border-color:#ffffff1a}.meal-ingredients-content li:first-child{padding-top:0}.meal-ingredients-content li:last-child{border-bottom:0;padding-bottom:0}.meal-ingredients-content p{margin:0;white-space:pre-wrap;line-height:1.65}.meal-ingredients-content>*+p{margin-top:12px}.meal-ingredients-note{opacity:.8}@media(prefers-reduced-motion:no-preference){.meal-ingredients-panel{transition:grid-template-rows .34s cubic-bezier(.4,0,.2,1),opacity .28s ease}.meal-ingredients-toggle svg{transition:transform .34s cubic-bezier(.4,0,.2,1)}}@media(max-width:600px){.next-meal .meal-ingredients{max-width:88%}}.hygiene-hero{min-height:420px}.hygiene-hero-copy{max-width:58%}.hygiene-step-label{font-size:10px;color:#c4d6b7;letter-spacing:1.2px;text-transform:uppercase}.hygiene-hero h2{font-size:32px;font-weight:550;line-height:1.16;letter-spacing:-.8px;margin:14px 0;text-wrap:balance}.hygiene-instruction{font-size:14px;line-height:1.65;color:#e4ece0;margin:0;white-space:pre-wrap}.hygiene-hint{font-size:11px;line-height:1.65;color:#d2dfc9;margin:12px 0 0}.hygiene-timer{position:relative;display:grid;place-items:center;width:126px;height:126px;margin:24px 0 16px}.hygiene-timer-ring{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#ffffff1f;stroke-width:2;transform:rotate(-90deg)}.hygiene-timer-ring .hygiene-timer-fill{stroke:#c4e0a9;stroke-linecap:round}.hygiene-timer>div{display:flex;flex-direction:column;align-items:center;gap:4px}.hygiene-clock{font-size:33px;font-variant-numeric:tabular-nums;letter-spacing:-1px;line-height:1}.hygiene-timer>div>span:last-child{font-size:10px;color:#c4d6b7}.hygiene-timer.finished{color:#d4efb9}.hygiene-timer-actions{display:flex;align-items:center;gap:8px;width:260px;max-width:100%}.hygiene-timer-actions>.routine-action-primary{flex:1;min-width:0}.hygiene-hero .routine-action-icon{flex:0 0 48px;width:48px;padding:13px}.hygiene-hero .hygiene-complete{margin-top:10px}.hygiene-untimed{display:flex;align-items:center;gap:8px;color:#c4d6b7;font-size:12px;margin:30px 0 18px}.hygiene-periods{display:flex;gap:8px;padding:5px;background:#e9ede3;border-radius:16px;margin:22px 0}.hygiene-periods button{display:flex;align-items:center;gap:9px;flex:1;border:0;border-radius:12px;background:transparent;color:#6c7963;padding:14px 17px;font-size:13px}.hygiene-periods button[aria-pressed=true]{background:#fffefa;color:#173e35;box-shadow:0 2px 8px #18382908}.hygiene-periods small{margin-left:auto;font-size:11px;opacity:.65;font-variant-numeric:tabular-nums}.hygiene-focus .focus-week button{padding-bottom:10px}.hygiene-progress{margin:22px 0 28px}.hygiene-progress>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.hygiene-progress h3{font-size:19px;font-weight:550;margin:0 0 13px}.hygiene-progress>div>span{font-size:12px;color:var(--muted)}.hygiene-progress progress{display:block;width:100%;height:5px;appearance:none;border:0;border-radius:5px;background:#e2e7dd}.hygiene-progress progress::-webkit-progress-bar{background:#e2e7dd;border-radius:5px}.hygiene-progress progress::-webkit-progress-value{background:#789565;border-radius:5px}.hygiene-progress progress::-moz-progress-bar{background:#789565;border-radius:5px}.hygiene-progress>p{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin-top:10px}.hygiene-upcoming>h3{color:var(--muted);font-size:13px;font-weight:550;margin:0 0 8px}.hygiene-step-row{display:flex;width:100%;align-items:center;gap:14px;padding:14px 0;background:transparent;border:0;border-bottom:1px solid #dde3d7;text-align:left;color:var(--green);border-radius:0}.hygiene-step-number{display:grid;place-items:center;width:29px;height:29px;flex-shrink:0;border:1px solid #d9e1d1;border-radius:50%;color:#7c8b71;font-size:11px}.hygiene-step-row>span:nth-child(2){flex:1;min-width:0}.hygiene-step-row strong{display:block;font-size:14px;font-weight:500;line-height:1.4}.hygiene-step-row small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.hygiene-step-row .hygiene-photo{width:58px;height:48px;object-fit:cover;object-position:85% center;border-radius:10px}.hygiene-step-row>svg{color:#94a18a;flex-shrink:0}.hygiene-step-row:hover{background:#e8eee34d}.hygiene-completed{margin-top:25px;font-size:12px;color:var(--muted)}.hygiene-completed summary{display:flex;gap:8px;align-items:center;cursor:pointer;padding:10px 0}.hygiene-completed summary>span{margin-left:auto}.hygiene-completed>.photo-step-row{margin-top:10px}.photo-step-row>.completed-undo{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid #ffffff65;border-radius:50%;color:#fff;background:#10271b90}.photo-step-row>.completed-undo:hover{background:#ffffff30}.photo-step-row>.completed-undo:focus-visible{outline:2px solid #fff;outline-offset:3px}.hygiene-finished{background:#eaf0e1;border-radius:22px;padding:40px 32px}.hygiene-finished>svg{color:#789565;margin-bottom:10px}.hygiene-finished h2{font-size:28px;font-weight:550;letter-spacing:-.7px;margin:10px 0}.hygiene-finished p{font-size:14px;color:var(--muted);line-height:1.6}.hygiene-timer-banner{display:flex;align-items:center;padding:10px 13px;background:#e9efdf;border-radius:13px;margin-top:12px}.hygiene-timer-banner button{display:flex;align-items:center;gap:12px;background:none;border:0;color:var(--green);padding:7px}.hygiene-timer-banner button:first-child{flex:1;text-align:left}.hygiene-timer-banner button:first-child>span{flex:1;font-size:12px}.hygiene-timer-banner small{display:block;color:var(--muted);margin-top:4px}@media(prefers-reduced-motion:no-preference){.hygiene-timer-fill{transition:stroke-dashoffset .2s linear}.hygiene-focus button{transition:background-color .2s,color .2s,opacity .2s}.hygiene-progress progress::-webkit-progress-value{transition:width .4s ease}.hygiene-step-row{animation:nutrition-enter .3s ease-out both}}@media(max-width:600px){.hygiene-hero{min-height:0;padding:27px 23px}.hygiene-hero-copy{max-width:100%}.hygiene-hero h2{font-size:28px;max-width:90%}.hygiene-instruction{font-size:13px;max-width:95%}.hygiene-hero:after{background:linear-gradient(90deg,#061711f5,#061711c7,#06171165)}.hygiene-timer{width:116px;height:116px;margin-top:20px}.hygiene-periods button{padding:12px 10px;gap:7px}.hygiene-periods{margin-top:18px}.hygiene-step-row{gap:10px}.hygiene-step-row strong{font-size:13px}.hygiene-step-row .hygiene-photo{width:50px;height:46px}}.fitness-hero{min-height:460px}.fitness-hero .hygiene-hero-copy{max-width:600px}.fitness-target{color:#e5efdc;font-size:18px;font-weight:600;margin:12px 0}.fitness-instructions{color:#e0e8df;max-width:450px;line-height:1.6;font-size:14px}.fitness-progression{border-left:2px solid #b6d792;padding:4px 0 4px 12px;color:#dfedcf;font-size:13px;line-height:1.6;max-width:440px}.fitness-sets{display:flex;gap:8px;margin:18px 0}.fitness-sets>span{width:30px;height:30px;border-radius:50%;border:1px solid #ffffff40;display:grid;place-items:center;color:#dfebd8;font-size:12px;transition:background .3s}.fitness-sets .current{border-color:#c4e3a0;background:#ffffff18}.fitness-sets .done{background:#c4e3a0;color:#183726;border-color:#c4e3a0}.fitness-option{display:flex;align-items:center;gap:12px;width:fit-content;color:#e0e8df;font-size:13px;margin:14px 0}.fitness-option select{width:auto;min-width:92px;background:#f4f7ed;color:#264331;padding:7px 10px;border-radius:9px}.fitness-interval-option{display:flex;align-items:center;gap:8px;margin:12px 0;color:#e5efdc;font-size:13px}.fitness-interval-option input{width:16px;accent-color:#b9d899}.fitness-phase{color:#d9efbb;font-size:16px;font-weight:600}.fitness-log{color:#e0e8df;font-size:13px;margin:16px 0;max-width:360px}.fitness-log summary{cursor:pointer;padding:8px 0}.fitness-log summary small{opacity:.65;margin-left:7px}.fitness-log>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:10px}.fitness-log label{color:#e0e8df;font-size:12px}.fitness-log input{margin-top:6px;min-width:0;width:100%;background:#f4f7ed}.fitness-hero .hygiene-countdown{font-size:34px;font-variant-numeric:tabular-nums;letter-spacing:-1px}.fitness-rest{min-height:330px}.photo-step-row{position:relative;overflow:hidden;isolation:isolate;background:#203d30;color:#fff;border:0;min-height:104px}.photo-step-row .hygiene-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;z-index:-2}.photo-step-row:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#10271bf5,#10271bd1 43%,#10271b1f);z-index:-1}.photo-step-row strong{color:#fff}.photo-step-row small{color:#dce8d7}.photo-step-row .hygiene-step-number{color:#d6e9c2;background:#ffffff18}.photo-step-row>svg{color:#e0edd5;margin-left:auto}.photo-step-row:disabled{opacity:1;cursor:default}.photo-step-row:hover{background:#203d30}.fitness-board .hygiene-progress{margin-top:24px}@media(max-width:600px){.fitness-hero{min-height:460px}.fitness-hero .hygiene-hero-copy{padding:30px 24px}.fitness-hero h2{font-size:30px}.fitness-rest{min-height:300px}.fitness-instructions{font-size:13px}.photo-step-row strong{font-size:14px}.photo-step-row{padding:18px 16px}.fitness-board .hygiene-progress>div{align-items:flex-start;gap:8px}.fitness-board .hygiene-progress span{font-size:11px}}.hygiene-upcoming{display:grid;gap:10px}.hygiene-upcoming h3{margin-bottom:2px}.hygiene-step-row.photo-step-row{padding:18px 20px;border-radius:15px;grid-template-columns:30px minmax(0,1fr) 18px}.fitness-hero .fitness-option{display:flex;flex-direction:row;align-items:center}@media(max-width:600px){.fitness-hero .hygiene-hero-copy{padding:0}.hygiene-step-row.photo-step-row{padding:18px 16px}}.fitness-hero .fitness-interval-option{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;text-align:left}.fitness-hero .fitness-interval-option input{flex:0 0 16px;width:16px;height:16px;margin:0}.household-photo-hero{min-height:420px}.household-photo-hero .hygiene-hero-copy{max-width:58%}.household-photo-hero .hygiene-untimed{margin-top:22px}.household-photo-hero .fitness-sets{margin-top:24px}.household-rest{min-height:330px}.household-week-tabs{gap:4px}.household-week-tabs button{flex-direction:column;justify-content:center;gap:6px;padding:13px 8px}.household-week-tabs small{margin-left:0}.household-board .focus-day-dot{font-size:9px}.household-board .photo-step-row .hygiene-photo{width:100%;height:100%;border-radius:0}.household-board .photo-step-row>span:nth-child(2){max-width:68%}.household-overview{margin-top:26px;color:var(--muted);font-size:12px}.household-overview summary{cursor:pointer;padding:10px 0}.household-overview summary>span{float:right}.household-overview>button{display:flex;justify-content:space-between;align-items:center;text-align:left;width:100%;border:0;border-bottom:1px solid var(--border);background:transparent;padding:14px 0;color:var(--green);font-size:13px}.household-overview small{display:block;margin-top:5px;color:var(--muted)}.household-cycle-note{font-size:11px;color:var(--muted);line-height:1.8;margin:20px 0}@media(max-width:600px){.household-photo-hero{min-height:410px}.household-photo-hero>.meal-photo-hero{object-position:70% center}.household-photo-hero .hygiene-hero-copy{max-width:100%}.household-photo-hero .hygiene-instruction{max-width:85%}.household-rest{min-height:300px}.household-week-tabs button{padding:12px 5px;font-size:12px}.household-board .hygiene-progress>div{align-items:flex-start}.household-board .hygiene-progress>div>span{flex-shrink:0;font-size:11px}}.pantry-hero{min-height:220px}.pantry-hero .hygiene-hero-copy{max-width:60%}.pantry-hero .routine-action{margin-top:22px}.pantry-stats{display:flex;gap:34px;margin-top:24px}.pantry-stats>span{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#d9e6d0}.pantry-stats strong{font-size:29px;font-weight:500;color:#fff}.pantry-week-label{display:flex;justify-content:space-between;gap:14px;font-size:13px;margin:18px 0}.pantry-week-label>span{color:var(--muted);font-size:12px}.pantry-basis{margin-bottom:12px}.pantry-basis button{justify-content:center}.pantry-explanation{font-size:12px;line-height:1.7;color:var(--muted)}.pantry-onboarding{background:#edf0e4;border:1px solid #dbe3d1;border-radius:15px;padding:20px;margin:22px 0;display:flex;align-items:center;gap:22px}.pantry-onboarding strong{color:var(--green);font-size:14px;font-weight:550}.pantry-onboarding p{color:var(--muted);font-size:12px;line-height:1.65;margin:8px 0 0}.pantry-onboarding button{flex-shrink:0;font-size:12px;max-width:200px}.pantry-notice{border-radius:12px;padding:13px 16px;background:#e7eedf;color:var(--green);font-size:13px}.pantry-tools{display:flex;gap:12px;align-items:center;margin:28px 0 8px}.pantry-search{flex:1;position:relative;display:flex;align-items:center;margin:0}.pantry-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--muted)}.pantry-search input{width:100%;padding-left:41px;margin:0;background:#fffef9;border-radius:12px;font-size:13px}.pantry-tools>button{border:1px solid var(--border);background:transparent;padding:12px;border-radius:11px;color:var(--muted);font-size:12px}.pantry-tools>button.selected{background:#e4eddc;color:var(--green)}.pantry-category{margin-top:28px}.pantry-category>header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--border)}.pantry-category h3{margin:0;font-size:17px;font-weight:550;color:var(--green)}.pantry-category header>span{font-size:11px;color:var(--muted)}.pantry-row{display:flex;align-items:center;gap:17px;padding:19px 0;border-bottom:1px solid var(--border)}.pantry-photo{width:82px;height:88px;object-fit:cover;object-position:center;border-radius:13px;flex-shrink:0;background:#e9eee2}.pantry-item{flex:1;min-width:0}.pantry-item h4{margin:0 0 7px;font-size:16px;font-weight:550;color:var(--green)}.pantry-quantity{margin:0 0 5px;color:var(--muted);font-size:13px}.pantry-quantity strong{color:var(--green);font-weight:500}.pantry-target{font-size:11px;color:var(--muted);line-height:1.6;margin:4px 0 0}.pantry-warning{font-size:11px;color:#976736;line-height:1.6;margin:6px 0 0}.pantry-row-actions{display:flex;gap:4px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.pantry-row-actions .icon-button{border:1px solid #dce3d5;border-radius:10px;background:#fafbf4}.pantry-row-actions:has(.pantry-buy){flex-direction:column;align-items:flex-end;gap:6px}.pantry-buy{display:flex;align-items:center;gap:7px;border:0;border-radius:10px;padding:10px 14px;background:var(--green);color:#fff;font-size:12px}.pantry-text-action{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:var(--green);font-size:11px;padding:5px 0}.pantry-unresolved{font-size:12px;line-height:1.7;color:var(--muted);margin-top:28px}.pantry-unresolved summary{cursor:pointer;color:#976736}.stock-dialog{width:min(460px,calc(100% - 32px));max-height:85dvh;overflow:auto;border:0;border-radius:20px;padding:27px;color:var(--green);background:#fffef8;box-shadow:0 24px 100px #0c251a40}.stock-dialog::backdrop{background:#10251cb3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.stock-dialog header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:22px}.stock-dialog h2{font-size:23px;font-weight:500;margin:0}.stock-dialog label{display:flex;flex-direction:column;gap:8px;margin:17px 0;font-size:13px}.stock-dialog .primary{width:100%;justify-content:center;margin-top:18px}.stock-dialog .subtle{font-size:12px;line-height:1.65}@media(max-width:600px){.pantry-hero{min-height:240px}.pantry-hero .hygiene-hero-copy{max-width:100%}.pantry-hero>.meal-photo-hero{object-position:70% center}.pantry-hero .hygiene-instruction{max-width:94%}.pantry-stats{gap:24px}.pantry-stats strong{font-size:26px}.pantry-stats>span{font-size:10px}.pantry-onboarding{flex-direction:column;align-items:flex-start;gap:15px;padding:18px}.pantry-onboarding button{max-width:none}.pantry-row{gap:12px;padding:17px 0;flex-wrap:wrap}.pantry-photo{width:64px;height:76px;border-radius:11px}.pantry-item h4{font-size:14px}.pantry-row-actions{margin-left:76px;width:calc(100% - 76px);justify-content:flex-start}.pantry-row-actions:has(.pantry-buy){flex-direction:row;align-items:center;gap:13px}.pantry-row-actions .icon-button{width:36px;height:33px;min-height:33px;padding:6px}.pantry-category header>span{font-size:10px}.pantry-category h3{font-size:15px}.pantry-target{font-size:10px}.pantry-tools{gap:7px}.pantry-tools>button{font-size:11px;padding:12px 8px}.pantry-week-label{font-size:12px}.pantry-week-label>span{font-size:10px}}.pantry-row{position:relative}.pantry-level{position:absolute;left:99px;right:135px;bottom:7px;height:3px;border-radius:9px;background:#e2e7dc;overflow:hidden}.pantry-level>span{display:block;height:100%;background:#789567;border-radius:inherit;transition:width .2s ease}@media(max-width:640px){.pantry-level{left:73px;right:10px;bottom:7px}}.pantry-basic-hint{color:#e1ecd6;font-size:12px;line-height:1.6;margin-top:24px}.pantry-board>.pantry-basis{margin-top:24px}.pantry-recalculate{margin:18px 0;padding:18px;border:1px solid var(--border);border-radius:14px}.pantry-recalculate summary{cursor:pointer;color:var(--green);font-size:13px}.pantry-recalculate p{font-size:12px;color:var(--muted);line-height:1.7}.pantry-recalculate label{max-width:260px;font-size:12px}.pantry-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.pantry-card{position:relative;isolation:isolate;overflow:hidden;min-height:184px;padding:24px;border:0;border-radius:17px;background:#132c23;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:15px}.pantry-card>.pantry-photo{position:absolute;inset:0 0 0 auto;width:60%;height:100%;border-radius:0;object-fit:cover;object-position:center;pointer-events:none;z-index:0}.pantry-card:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#10291f 0% 40%,#10291fe0 50%,#10291f50 72%,#10291f00)}.pantry-card .pantry-item,.pantry-card .pantry-row-actions{position:relative;z-index:2}.pantry-card .pantry-item{flex:none;max-width:65%}.pantry-card .pantry-item h4{color:#fff;font-size:18px;line-height:1.35;margin:0 0 8px;overflow-wrap:anywhere}.pantry-card .pantry-quantity,.pantry-card .pantry-quantity strong{color:#e8f0e2;font-size:14px;margin:0}.pantry-card .pantry-row-actions,.pantry-card .pantry-row-actions:has(.pantry-buy){margin:0;width:auto;flex-direction:row;justify-content:flex-start}.pantry-card .pantry-row-actions .icon-button{width:38px;height:38px;min-height:38px;border-radius:50%;color:#fff;border:1px solid #e2eed8a6;background:#ffffff12}.pantry-card .pantry-buy{background:#f0f5e9;color:#173e35;padding:9px 13px}.pantry-card button:hover{filter:brightness(1.1)}.pantry-card :focus-visible{outline:2px solid white;outline-offset:4px}.pantry-card .pantry-target{color:#e1e9d9}.pantry-card .pantry-warning,.pantry-card .error{color:#ffe3be}.pantry-basic-settings{margin:22px 0;border-block:1px solid var(--border);padding:16px 0}.pantry-basic-settings>summary{cursor:pointer;font-size:14px;color:var(--green);font-weight:600}.pantry-basic-list{margin:12px 0}.pantry-basic-item{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--border);font-size:13px}.pantry-basic-item dd{margin:0;flex-shrink:0;color:var(--muted)}@media(max-width:680px){.pantry-list{grid-template-columns:1fr;gap:12px}.pantry-card{min-height:170px;padding:21px;flex-wrap:nowrap;gap:14px;border-radius:15px}.pantry-card .pantry-item h4{font-size:17px}.pantry-card .pantry-quantity,.pantry-card .pantry-quantity strong{font-size:13px}}.progress-board{--progress-accent: #507344}.progress-profile{padding:32px 26px 24px;border-radius:22px;text-align:center;color:#f6f6ec;background:radial-gradient(ellipse at 50% 0,#355242 0,#19352a 48%,#11291f)}.progress-avatar{width:68px;height:68px;border:1px solid #e0ebd833;border-radius:50%;background:#f7ffe80c;display:grid;place-items:center;margin:0 auto 17px;color:#cfdbb5}.progress-profile>.eyebrow{color:#b6c7a5;font-size:10px;letter-spacing:2px}.progress-profile h2{margin:8px 0;font-size:27px;font-weight:550;letter-spacing:-.7px}.progress-profile>p{margin:0;font-size:12px;color:#c6d0c2}.progress-highlights{margin-top:28px;display:grid;grid-template-columns:repeat(5,1fr);padding:18px 0;border:1px solid #d9e4c82b;border-radius:14px}.progress-highlights>div{display:flex;flex-direction:column;align-items:center;gap:7px;border-right:1px solid #d9e4c826;padding:0 8px}.progress-highlights>div:last-child{border:0}.progress-highlights svg{color:#c9d9af;margin-bottom:2px}.progress-highlights strong{font-size:25px;font-weight:550;font-variant-numeric:tabular-nums}.progress-highlights strong small{font-size:12px;font-weight:400}.progress-highlights>div>span{font-size:10px;color:#d9e1d3}.progress-panel{background:#fffef9;border:1px solid var(--border);border-radius:17px;padding:24px;margin:20px 0}.progress-panel h2,.progress-panel h3{color:var(--green);margin:0;font-size:16px;font-weight:550}.progress-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.progress-panel-heading>div>span,.progress-panel-heading>span{display:block;font-size:11px;color:var(--muted);margin-top:5px}.progress-segments{display:flex;flex-wrap:wrap;gap:3px;background:#edf0e7;border-radius:10px;padding:4px}.progress-segments button{border:0;background:transparent;border-radius:7px;padding:8px 11px;min-height:32px;color:#778272;font-size:11px;white-space:nowrap}.progress-segments button[aria-pressed=true]{color:#244c36;background:#fffef9;box-shadow:0 1px 4px #1f3b2210}.activity-scroll{overflow-x:auto;padding-bottom:5px;scrollbar-width:thin;scrollbar-color:#cad5bd transparent}.activity-calendar{display:flex;gap:3px;min-width:730px;padding:0 0 3px}.activity-week{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.activity-month{height:20px;font-size:9px;white-space:nowrap;color:#89907f}.activity-weekdays{flex:0 0 22px;padding-top:24px;display:flex;flex-direction:column;justify-content:space-between;font-size:8px;color:#939b8a}.activity-cell{border:0;border-radius:3px;min-height:0;aspect-ratio:1;width:100%;padding:0}.activity-cell:disabled{opacity:.22;cursor:default}.level-0{background:#ebeee5}.level-1{background:#cbdab9}.level-2{background:#9ab886}.level-3{background:#6b955b}.level-4{background:#315e3d}.activity-cell.chosen{outline:2px solid #213d30;outline-offset:1px}.activity-legend{display:flex;justify-content:space-between;gap:12px;margin-top:14px;color:#8b9481;font-size:10px}.activity-legend>div{display:flex;align-items:center;gap:4px}.activity-legend i{width:9px;height:9px;border-radius:2px}.activity-detail{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:15px;margin-top:17px;gap:16px}.activity-detail strong{display:block;font-size:12px;color:var(--green);margin-bottom:5px}.activity-detail span{font-size:11px;color:var(--muted);line-height:1.7}.activity-trend svg,.weight-chart svg{width:100%;display:block;overflow:visible}.activity-trend text,.weight-chart text{font-size:11px;fill:#819076}.activity-bar{fill:#77966a}.activity-trend g[role=button]{cursor:pointer}.activity-trend g[role=button]:hover .activity-bar{fill:#355f3e}.progress-tabs{display:grid;grid-template-columns:repeat(4,1fr);margin:32px 0;border-bottom:1px solid var(--border);gap:8px}.progress-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:#8d9784;padding:16px 10px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;margin-bottom:-1px}.progress-tabs button[aria-selected=true]{border-bottom-color:#486541;color:#284f36;font-weight:550}#progress-content:focus-visible{outline:1px solid var(--border);outline-offset:6px}.progress-section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:25px}.progress-section-heading .eyebrow{font-size:9px;color:#8a957c;letter-spacing:1.8px}.progress-section-heading h2{font-size:25px;font-weight:500;letter-spacing:-.6px;margin:7px 0 0;color:var(--green)}.progress-section-heading>button{font-size:12px;white-space:nowrap}.progress-empty{text-align:center;padding:50px 20px;color:#87937c}.progress-empty svg{margin:0 auto 13px}.progress-empty h3{color:var(--green);margin:0 0 9px;font-size:19px;font-weight:500}.progress-empty p{font-size:13px;line-height:1.7;max-width:370px;margin:8px auto 18px}.progress-photo-intro{overflow:hidden;border:1px solid #d9e0d0;border-radius:20px;display:grid;grid-template-columns:1.1fr 1fr;background:#f0f2e9}.progress-photo-intro>div:last-child{padding:40px 28px;align-self:center}.progress-photo-intro h3{color:var(--green);font-size:24px;line-height:1.25;font-weight:500;margin:0 0 12px;letter-spacing:-.5px}.progress-photo-intro p{color:#7f8e75;font-size:13px;line-height:1.8;margin:0 0 22px}.pose-preview{display:flex;justify-content:center;align-items:center;padding:32px 15px;background:radial-gradient(ellipse at 50% 50%,#486246 0,#1b382c 80%);gap:8px}.pose-preview>div{width:31%;color:#d1ddb8;text-align:center}.pose-preview .pose-guide{width:100%;height:auto;position:static;opacity:.8}.pose-preview .pose-frame,.pose-preview .pose-axis{display:none}.pose-preview span{font-size:10px;color:#b6c3a6;display:block;margin-top:15px}.progress-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.progress-photo-card{padding:0;text-align:left;background:#fffef9;border:1px solid var(--border);border-radius:16px;overflow:hidden;color:var(--green)}.photo-triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#e3e8dc}.photo-triptych>img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover}.progress-photo-card>span{display:grid;grid-template-columns:1fr auto;padding:19px;gap:6px}.progress-photo-card strong{font-size:14px;font-weight:550}.progress-photo-card small{font-size:11px;color:#8c967f;grid-row:2}.progress-photo-card>span>svg{grid-column:2;grid-row:1 / 3;align-self:center}.progress-load-more{display:flex;margin:22px auto 0}.progress-camera,.progress-viewer,.progress-weight-dialog{border:1px solid #dce3d4;padding:26px;border-radius:20px;background:#fbfbf5;color:#294631;max-height:calc(100dvh - 32px);overflow-y:auto;box-shadow:0 30px 120px #0004}.progress-camera::backdrop,.progress-viewer::backdrop,.progress-weight-dialog::backdrop{background:#071b13c9;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.progress-camera{width:min(620px,calc(100% - 24px))}.progress-viewer{width:min(1060px,calc(100% - 24px))}.progress-weight-dialog{width:min(450px,calc(100% - 24px))}.progress-camera header,.progress-viewer header,.progress-weight-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.progress-camera h2,.progress-viewer h2,.progress-weight-dialog h2{font-weight:500;letter-spacing:-.4px;font-size:22px;margin:5px 0 0}.progress-camera .eyebrow,.progress-viewer .eyebrow{font-size:9px;color:#89967b}.camera-stage{width:min(100%,46.5svh);position:relative;aspect-ratio:3/4;max-height:62svh;margin:auto;background:#10271d;border-radius:14px;overflow:hidden}.camera-stage video{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.camera-stage video.mirrored{transform:scaleX(-1)}.pose-guide{position:absolute;inset:0;width:100%;height:100%;color:#f2ffd9;filter:drop-shadow(0 1px 3px #0006)}.pose-axis{opacity:.18}.pose-frame{opacity:.7}.camera-countdown{position:absolute;top:16px;right:16px;width:56px;height:56px;display:grid;place-items:center;background:#163225cf;border:1px solid #e1eace88;border-radius:50%;color:#fff;font-size:25px;font-variant-numeric:tabular-nums}.camera-perspective{position:absolute;bottom:16px;left:12px;right:12px;border-radius:9px;text-align:center;background:#122b21c9;color:#f5f8e9;font-size:12px;padding:12px}.camera-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0}.camera-controls>span{font-size:10px;color:#8b977d;line-height:1.5;text-align:center}.camera-controls .secondary{font-size:12px;padding:9px 12px}.camera-steps{display:flex;justify-content:center;gap:22px;font-size:11px;color:#9aa58e}.camera-steps>span{display:flex;align-items:center;gap:6px}.camera-steps .active{color:#31563a;font-weight:600}.camera-results{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.camera-results figure{margin:0;text-align:center}.camera-results img{width:100%;display:block;border-radius:10px}.camera-results figcaption{margin-top:8px;font-size:12px}.camera-status{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px;font-size:13px}.camera-error{margin-top:16px;border-radius:10px;background:#f2eae0;padding:15px;font-size:13px;line-height:1.6}.camera-error p{margin:0 0 12px}.photo-viewer-tools{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px}.photo-viewer-tools>button{font-size:12px}.photo-comparison{display:grid;grid-template-columns:1fr;gap:15px}.photo-comparison.is-comparing{grid-template-columns:1fr 1fr}.photo-comparison figure{margin:0;min-width:0}.photo-comparison figure>img{display:block;width:100%;height:52svh;object-fit:contain;background:#162c22;border-radius:12px}.photo-comparison label{margin-bottom:14px;font-size:11px}.photo-comparison select{font-size:12px}.progress-viewer footer{display:flex;align-items:center;justify-content:space-between;margin-top:14px;gap:15px}.progress-viewer footer>span{display:flex;align-items:center;gap:7px;color:#87977b;font-size:10px}.private-photo-error{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:140px;background:#e9ede2;padding:15px;gap:12px;font-size:11px;text-align:center}.private-photo-error button{border:0;background:transparent;color:#33523a;text-decoration:underline}.progress-weight-dialog form{display:grid;gap:20px}.progress-weight-dialog input{font-size:18px;padding:14px}.weight-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.weight-summary>div{border:1px solid var(--border);border-radius:14px;padding:22px;background:#edf1e6}.weight-summary span{display:block;font-size:11px;color:#879278;margin-bottom:12px}.weight-summary strong{font-size:29px;color:#37583a;font-weight:500;font-variant-numeric:tabular-nums}.weight-summary small{font-size:12px;color:#8d9b7c}.weight-chart-readout{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 0 8px;padding:0 6px}.weight-chart-readout strong{font-size:26px;font-weight:500;color:#44633d}.weight-chart-readout small{font-size:12px;color:#94a382}.weight-chart-readout>span{font-size:11px;color:#8a977e}.chart-grid{stroke:#e5eadd;stroke-dasharray:3 5}.weight-line{fill:none;stroke:#577e49;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.weight-point{fill:#638652;stroke:#fffdf7;stroke-width:2}.weight-chart g[role=button]{cursor:pointer}.weight-history-row{display:flex;align-items:center;gap:14px;padding:15px 0;border-top:1px solid #e9ece3;font-size:12px}.weight-history-row>span{flex:1;color:#87947b}.weight-history-row small{display:block;font-size:9px;margin-top:4px;color:#a3ad96}.weight-history-row strong{color:#395e40;font-weight:550}.weight-history-row .icon-button{color:#91a181;min-height:30px;padding:5px}.progress-muted{color:#97a18d;font-size:12px}.stats-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stats-overview-grid>.detail-stat{border:1px solid var(--border);border-radius:14px;background:#eef2e7;padding:22px}.detail-stat{min-width:0}.detail-stat>span{font-size:11px;color:#8b977d;display:block;margin-bottom:11px;line-height:1.5}.detail-stat strong{display:block;color:#3b5a3d;font-size:27px;font-weight:500;font-variant-numeric:tabular-nums}.detail-stat strong small{font-size:11px;color:#91a07e;font-weight:400}.detail-stat>small{display:block;margin-top:8px;font-size:10px;color:#9ca58f;line-height:1.5}.stats-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.stats-two-columns>.progress-panel{margin-bottom:0}.stats-group>div{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 20px;margin-top:25px}.stats-two-columns .stats-group>div{grid-template-columns:1fr 1fr}.stats-group:has(+.stats-group){margin-bottom:0}.category-bars{display:grid;gap:20px;margin-top:25px}.category-bars>div>span{display:flex;justify-content:space-between;color:#819073;font-size:11px;margin-bottom:9px}.category-bars strong{color:#486345;font-weight:500}.category-bars svg{width:100%;display:block}.category-bar-fitness{fill:#456f4b}.category-bar-nutrition{fill:#8ba46a}.category-bar-hygiene{fill:#b1b68a}.category-bar-household{fill:#b6a184}.stats-week-bars{display:flex;gap:8px;margin-top:32px;justify-content:space-between}.stats-week-bars>div{width:11%;text-align:center}.stats-week-bars svg{width:100%;max-height:145px;margin:10px 0;display:block;fill:#9bb187}.stats-week-bars>div:last-child svg{fill:#436a47}.stats-week-bars span{font-size:10px;color:#849377}.stats-week-bars small{font-size:8px;color:#95a189}.progress-stat-footnote{font-size:10px;color:#9ba58e;line-height:1.8;margin:22px 0;max-width:650px}@media(max-width:900px){.progress-highlights strong{font-size:21px}.progress-highlights>div>span{font-size:9px}.stats-overview-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.progress-profile{padding:28px 15px 15px;border-radius:19px}.progress-profile h2{font-size:25px}.progress-highlights{grid-template-columns:repeat(2,1fr);row-gap:21px;margin-top:23px;padding:18px 7px}.progress-highlights>div:nth-child(2n){border:0}.progress-highlights>div:last-child{grid-column:1/-1;padding-top:16px;border-top:1px solid #d9e4c826;margin:0 10px}.progress-highlights>div:last-child svg{display:none}.progress-highlights>div{gap:5px}.progress-highlights strong{font-size:24px}.progress-highlights>div>span{font-size:10px}.progress-highlights svg{width:15px;height:15px}.progress-panel{padding:20px 16px;border-radius:14px;margin:16px 0}.progress-panel-heading{flex-wrap:wrap;gap:15px;margin-bottom:20px}.activity-panel .progress-panel-heading{align-items:flex-start}.activity-panel .progress-segments{margin-left:auto}.progress-segments button{font-size:10px;padding:7px 9px}.activity-legend>span{display:none}.activity-legend{justify-content:flex-end}.progress-tabs{gap:0;margin:25px 0}.progress-tabs button{padding:13px 5px;flex-direction:column;gap:7px;font-size:11px}.progress-tabs svg{width:19px;height:19px}.progress-section-heading{flex-wrap:wrap;gap:17px;margin-bottom:20px}.progress-section-heading h2{font-size:23px}.progress-section-heading>button{padding:11px 15px;font-size:12px}.progress-photo-intro{grid-template-columns:1fr}.pose-preview{padding:24px 30px}.pose-preview .pose-guide{max-height:190px}.progress-photo-intro>div:last-child{padding:27px}.progress-photo-intro h3{font-size:23px}.progress-photo-grid{grid-template-columns:1fr}.progress-camera,.progress-viewer,.progress-weight-dialog{padding:18px;border-radius:16px;max-height:calc(100dvh - 20px)}.progress-camera h2,.progress-viewer h2,.progress-weight-dialog h2{font-size:20px}.camera-controls{gap:8px}.camera-controls>span{font-size:9px;max-width:120px}.camera-controls .secondary{font-size:10px;padding:9px}.camera-perspective{font-size:11px}.camera-steps{font-size:10px;gap:15px}.photo-viewer-tools{flex-wrap:wrap}.photo-comparison.is-comparing{gap:8px}.photo-comparison.is-comparing figure>img{height:auto;aspect-ratio:3/4}.photo-comparison select{font-size:10px;padding:7px}.weight-summary{gap:7px}.weight-summary>div{padding:15px 10px;border-radius:11px}.weight-summary strong{font-size:23px}.weight-summary span{font-size:9px;line-height:1.5}.weight-summary small{font-size:10px}.weight-history-row{gap:7px;font-size:11px}.weight-chart-readout>span{font-size:10px}.weight-chart svg{min-height:175px}.stats-two-columns{grid-template-columns:1fr;gap:0}.stats-group>div{grid-template-columns:1fr 1fr;gap:26px 15px}.detail-stat strong{font-size:25px}.detail-stat>span{font-size:10px}.stats-overview-grid{gap:10px}.stats-overview-grid>.detail-stat{padding:18px 15px}.stats-week-bars svg{max-height:120px}}.shopping-guest{min-height:100dvh;background:#f7f7f0}.shopping-guest-top{display:flex;align-items:center;justify-content:space-between;padding:20px max(22px,calc((100% - 780px)/2));border-bottom:1px solid var(--border);background:#fffef9}.shopping-guest-top .brand{font-size:25px}.shopping-guest main{width:min(780px,calc(100% - 40px));margin:32px auto}.shopping-guest-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:32px;border-radius:20px;background:#193c2e;color:#eef4df}.shopping-guest-hero h1{font-size:34px;font-weight:500;margin:12px 0 0;letter-spacing:-.8px}.shopping-guest-hero .eyebrow{color:#b7caa6;font-size:10px;letter-spacing:1.6px}.shopping-guest-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:16px 0;color:#78886d;font-size:12px}.shopping-guest-status>span{display:flex;align-items:center;gap:8px}.shopping-guest .pantry-search input{font-size:16px;min-height:50px}.shopping-guest-category{margin-top:30px}.shopping-guest-category h2{font-size:17px;font-weight:550;color:#3c5a38;margin:0 0 14px}.shopping-guest-item{display:flex;width:100%;align-items:center;gap:18px;background:#fffef9;border:1px solid #dce3d3;border-radius:15px;padding:13px 19px 13px 13px;color:#315637;text-align:left;margin:10px 0;min-height:104px}.shopping-guest-item img{width:76px;height:76px;object-fit:cover;border-radius:11px}.shopping-guest-item>span{flex:1;min-width:0}.shopping-guest-item strong{display:block;font-size:18px;font-weight:550;margin-bottom:7px}.shopping-guest-item small{font-size:15px;color:#788d67}.shopping-guest-item>svg{flex-shrink:0;color:#708b60}.shopping-guest-item em{display:block;font-size:11px;font-style:normal;margin-top:6px}.shopping-guest-item.is-pending{background:#edf2e5;opacity:.7}.shopping-guest-empty{text-align:center;padding:70px 15px;color:#809573}.shopping-guest-empty svg{background:#e6eddc;border-radius:50%;box-sizing:content-box;padding:20px}.shopping-guest-empty h2{font-weight:500;font-size:25px;color:#385a3c}.shopping-guest-empty p{font-size:14px}.shopping-guest footer{display:flex;justify-content:center;align-items:center;gap:8px;color:#95a18a;font-size:11px;padding:35px 0}.shopping-login{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(ellipse at top,#e7eddf,#fafaf4 70%);padding:24px}.shopping-login main{width:min(410px,100%)}.shopping-login .brand{justify-content:center;font-size:27px}.shopping-login-icon{width:82px;height:82px;display:grid;place-items:center;border-radius:23px;background:#1b3d2f;color:#d4e0ba;margin:42px auto 25px}.shopping-login h1{font-size:30px;letter-spacing:-.6px;font-weight:500;text-align:center;color:#234d33}.shopping-login p{text-align:center;font-size:14px;color:#849278;line-height:1.7}.shopping-login form{display:grid;gap:20px;margin-top:28px}.shopping-login label{font-size:14px}.shopping-login input{font-size:17px;min-height:51px}.shopping-login .primary{margin-top:6px;justify-content:center;min-height:51px;font-size:16px}.shopping-access-status{display:flex;align-items:center;gap:8px;color:#708267;font-size:12px;margin:17px 0}.shopping-access-settings .button-row button{display:inline-flex;align-items:center;gap:7px;font-size:12px}.shopping-credentials{position:relative;background:#eef2e7;border:1px solid #dbe3cf;border-radius:13px;padding:21px;margin-top:18px}.shopping-credentials>.icon-button{position:absolute;right:10px;top:10px}.shopping-credentials dl{margin:0 0 19px}.shopping-credentials dt{font-size:11px;color:#8a977d;margin-bottom:6px}.shopping-credentials dd{font-size:14px;color:#305437;margin:0 20px 16px 0;overflow-wrap:anywhere}.shopping-credentials code{font-size:16px;letter-spacing:.5px}@media(max-width:560px){.shopping-guest main{width:calc(100% - 32px);margin-top:22px}.shopping-guest-top{padding:18px 21px}.shopping-guest-hero{padding:25px}.shopping-guest-hero h1{font-size:27px}.shopping-guest-hero>svg{display:none}.shopping-guest-item{gap:14px;padding:11px 15px 11px 11px}.shopping-guest-item img{width:64px;height:70px}.shopping-guest-item strong{font-size:17px}.shopping-guest-item small{font-size:14px}}.dashboard-board{max-width:1120px;margin:0 auto}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:40px 46px;border-radius:24px;background:#173e35;color:#f8faf1;overflow:hidden}.dashboard-date{display:flex;align-items:center;gap:8px;color:#c5d7c5;font-size:12px}.dashboard-hero h2{margin:21px 0 10px;font-size:clamp(28px,3.2vw,42px);font-weight:550;letter-spacing:-1.3px}.dashboard-hero p{margin-bottom:23px;color:#d0ddd1;font-size:14px}.dashboard-today-count{display:block;color:#c5d7c5;font-size:12px}.dashboard-today-count strong{color:#f4f9ef;font-weight:600}.dashboard-ring{position:relative;flex:0 0 156px;width:156px;height:156px}.dashboard-ring svg{width:100%;height:100%;fill:none;stroke-width:7}.dashboard-ring-track{stroke:#37594d}.dashboard-ring-value{stroke:#c1dca2;stroke-linecap:round}.dashboard-ring>span{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px}.dashboard-ring strong{font-size:33px;font-weight:500;letter-spacing:-1px}.dashboard-ring small{color:#c5d7c5;font-size:11px}.dashboard-section-heading{display:flex;align-items:center;justify-content:space-between;margin:30px 2px 15px}.dashboard-section-heading h2{margin:0;font-size:18px}.dashboard-section-heading>span{font-size:12px;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:22px}.dashboard-card{margin:0;min-width:0;min-height:300px;padding:24px;display:flex}.dashboard-card .hygiene-hero-copy{display:flex;flex-direction:column;width:100%;max-width:100%}.dashboard-card h2{margin:0 0 10px;font-size:28px;overflow-wrap:anywhere}.dashboard-card .dashboard-area-progress{width:100%;margin-top:auto;margin-bottom:16px;padding-top:16px}.dashboard-area-label{margin:0 0 12px;display:flex;align-items:center;gap:8px}.dashboard-area-progress{max-width:260px;margin:26px 0}.dashboard-area-progress p{display:flex;align-items:center;gap:7px;margin:0 0 12px;color:#d2dfc9;font-size:12px}.dashboard-area-progress progress{display:block;appearance:none;border:0;width:100%;height:4px;border-radius:5px;overflow:hidden;background:#ffffff26}.dashboard-area-progress progress::-webkit-progress-bar{background:#ffffff26}.dashboard-area-progress progress::-webkit-progress-value{background:#c4e0a9;border-radius:5px}.dashboard-area-progress progress::-moz-progress-bar{background:#c4e0a9;border-radius:5px}.dashboard-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:22px;gap:12px}.dashboard-shortcuts button{text-align:left;padding:18px 15px;gap:11px;background:transparent;border-radius:14px}.dashboard-shortcuts button:hover{background:#edf1e7}.dashboard-shortcuts button>svg{flex-shrink:0;color:#6f8168}.dashboard-shortcuts button>span{flex:1;min-width:0}.dashboard-shortcuts strong,.dashboard-shortcuts small{display:block}.dashboard-shortcuts strong{font-size:12px;font-weight:550}.dashboard-shortcuts small{margin-top:5px;font-size:10px;font-weight:400;line-height:1.5;color:var(--muted)}@media(max-width:1100px){.dashboard-shortcuts{grid-template-columns:1fr;gap:8px}}@media(max-width:760px){.dashboard-hero{padding:27px 23px;gap:12px;border-radius:19px}.dashboard-hero h2{font-size:28px}.dashboard-hero p{max-width:220px;font-size:12px}.dashboard-ring{flex-basis:102px;width:102px;height:102px}.dashboard-ring strong{font-size:25px}.dashboard-date{font-size:10px;gap:6px}.dashboard-date svg{display:none}.dashboard-today-count{font-size:11px;line-height:1.6}.dashboard-grid{gap:18px}}@media(max-width:600px){.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-card{min-height:280px}}.extra-item-preview{display:flex;justify-content:center;margin:0 0 18px}.extra-item-preview img{width:110px;height:110px;object-fit:cover;border-radius:18px}.extra-item-actions{flex-wrap:wrap;justify-content:flex-end}.extra-item-actions .icon-button{min-height:34px;width:34px;padding:7px}@media(max-width:600px){.pantry-tools>.primary{flex-shrink:0}.extra-item-actions{max-width:108px}}.shopping-guest-row{position:relative;margin:10px 0}.shopping-guest-row .shopping-guest-item{margin:0}.shopping-guest-row.has-editor .shopping-guest-item{padding-right:64px}.shopping-guest-row .shopping-amount-edit{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:40px;height:44px;border-color:transparent;background:transparent;color:#6a805e}.shopping-guest-item strong,.shopping-guest-item small{overflow-wrap:anywhere}.meal-schedule-settings{margin:12px 0 24px}.meal-schedule-settings>h3{margin-bottom:8px}.meal-schedule-settings>p{font-size:13px;line-height:1.6}.meal-schedule-settings fieldset{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid var(--border);border-radius:12px;padding:12px;margin:12px 0;min-width:0}.meal-schedule-settings legend{padding:0 6px;font-size:13px;font-weight:600}.meal-schedule-settings label{min-width:0}.meal-schedule-settings input{min-width:0;width:100%}.meal-schedule-settings fieldset:disabled{opacity:.5}.consumption-picker{text-align:center;margin:18px 0 8px}.quantity-caption{font-size:13px;margin:0 0 4px}.quantity-dial-controls{display:flex;align-items:center;justify-content:center;gap:8px}.quantity-dial-controls>button{width:42px;height:42px;border-radius:50%;flex-shrink:0}.quantity-dial{position:relative;width:min(180px,48vw);aspect-ratio:1;border-radius:50%;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.quantity-dial:active{cursor:grabbing}.quantity-dial:focus-visible{outline:2px solid var(--green);outline-offset:3px}.quantity-dial svg{width:100%;height:100%;display:block}.dial-track,.dial-progress{fill:none;stroke-width:9}.dial-track{stroke:#e9eddf}.dial-progress{stroke:#456d54;stroke-linecap:round}.dial-tick{stroke:#9ba995;stroke-width:1.5}.dial-value{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:none}.dial-value strong{font-size:clamp(24px,8vw,34px);font-weight:550;font-variant-numeric:tabular-nums;letter-spacing:-1px}.dial-value span{font-size:13px;color:var(--muted)}.quantity-hint{font-size:11px;color:var(--muted);margin:3px 0 12px}.quantity-steps,.quantity-presets{display:flex;justify-content:center;gap:6px}.quantity-steps{background:#edf0e7;border-radius:12px;padding:3px;margin:0 auto 10px;max-width:280px}.quantity-steps button{flex:1;min-height:34px;padding:6px;font-size:11px;border:0;background:transparent}.quantity-steps button[aria-pressed=true]{background:var(--paper);box-shadow:0 1px 4px #173e3512}.quantity-presets button{padding:7px 10px;min-height:36px;border-radius:20px;font-size:12px}.quantity-mode{background:transparent;border:0;font-size:11px;color:var(--muted);margin:7px auto 0;min-height:32px;padding:6px}@media(max-width:760px){html{scroll-padding-bottom:calc(144px + env(safe-area-inset-bottom))}}@media(max-width:760px){.stock-dialog:has(.consumption-picker){padding:20px;max-height:calc(100dvh - 28px);scroll-padding-bottom:64px}.stock-dialog:has(.consumption-picker) header{margin-bottom:12px}.stock-dialog:has(.consumption-picker) h3{margin:10px 0}.stock-dialog:has(.consumption-picker) form>.primary{position:sticky;bottom:0;z-index:1;box-shadow:0 -8px 12px 8px #fffef8}.consumption-picker{margin:12px 0 4px}.quantity-dial{width:min(150px,44vw)}}@media(max-width:760px){.stock-dialog:has(.consumption-picker) .consumption-feedback{display:flow-root;min-height:44px}.stock-dialog:has(.consumption-picker) .consumption-feedback p{margin:8px 0}}.shopping-guest-tools{display:flex;align-items:center;gap:12px;margin-bottom:18px}.shopping-guest-tools .pantry-search{flex:1;min-width:0}.shopping-guest-tools>button{flex-shrink:0}@media(max-width:520px){.shopping-guest-tools{flex-wrap:wrap}.shopping-guest-tools .pantry-search{flex-basis:100%}.shopping-guest-tools>button{width:100%}}
