@font-face{font-family:Amiri;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/amiri-400-arabic.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Amiri;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/amiri-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Amiri;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/amiri-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Amiri;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/amiri-700-arabic.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Amiri;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/amiri-700-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Amiri;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/amiri-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--sand:#faf6ee;--paper:#fff;--ink:#2a2a24;--muted:#6e685c;--soft:#8a8375;--olive:#4f5e35;--olive-dark:#3e4a2a;--olive-tint:#f1f4e8;--olive-line:#c8d6b4;--clay:#be5233;--amber:#8a5a16;--amber-bg:#fcf3e3;--amber-line:#e0c48c;--red:#a8451f;--red-bg:#fbe7e0;--red-line:#dfa48c;--line:#ede5d6;--tint:#e3d2b6;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--sand);font-family:Amiri,Georgia,serif}*{box-sizing:border-box}html,button,a,input,label{touch-action:manipulation}body{background:var(--sand);padding-top:env(safe-area-inset-top,0px);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{margin:0;font-weight:700;line-height:1.3}h1{font-size:30px}h2{font-size:26px}h3{font-size:20px}p{margin:0;line-height:1.7}.app{max-width:520px;margin:0 auto;padding:0 20px 120px}.topbar{justify-content:space-between;align-items:center;padding:22px 0 2px;display:flex}.brand{font-size:30px;font-weight:700}.sub{color:var(--muted);padding-bottom:16px;font-size:17px}.head{justify-content:space-between;align-items:baseline;padding-bottom:12px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}button,.btn{font:inherit;cursor:pointer;background:var(--clay);color:#fff;text-align:center;border:none;border-radius:14px;padding:14px 18px;font-size:17px}.btn-quiet{color:var(--muted);background:0 0;padding:10px 4px;font-size:16px}.btn-link{color:var(--clay);background:0 0;padding:6px 0;font-size:16px}.btn-outline{background:var(--paper);color:var(--olive);border:1px solid var(--line)}.btn-wide{width:100%}.btn-small{border-radius:10px;padding:9px 14px;font-size:15px}.round{border:1px solid var(--line);background:var(--sand);width:44px;height:44px;color:var(--ink);border-radius:50%;flex:none;padding:0;font-size:20px}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--olive);outline-offset:2px}.filters{flex-wrap:wrap;gap:10px;padding-bottom:16px;display:flex}.filter{background:var(--paper);color:var(--olive);border:1px solid var(--line);border-radius:999px;padding:10px 16px;font-size:16px}.filter.on{background:var(--olive);color:#f6f2e7;border-color:var(--olive)}label{color:var(--muted);margin-bottom:6px;font-size:16px;display:block}input,select,textarea{width:100%;font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-bottom:12px;padding:13px 14px;font-size:17px}textarea{resize:vertical;min-height:80px}.field-row{align-items:flex-start;gap:10px;display:flex}.field-row>*{flex:1}.narrow{flex:0 0 96px}.card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:16px}.recipe-card{width:100%;text-align:inherit;color:inherit;background:var(--paper);border:1px solid var(--line);border-radius:18px;margin-bottom:14px;padding:0;display:block;overflow:hidden}.recipe-card .photo,.hero{object-fit:cover;background:var(--tint);width:100%;height:160px;display:block}.hero{border-radius:18px;height:240px}.recipe-card .body{padding:12px 16px 16px}.meta{color:#55503f;align-items:center;gap:14px;margin-top:8px;font-size:16px;display:flex}.chip{border:1px solid var(--olive-line);background:var(--olive-tint);color:#3e5a2a;border-radius:999px;padding:5px 12px;font-size:15px;display:inline-block}.chip.warn{background:var(--amber-bg);border-color:var(--amber-line);color:var(--amber)}.last{color:var(--soft);font-size:15px}.card-foot{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.row{background:var(--paper);border:1px solid var(--line);border-radius:16px;align-items:center;gap:10px;margin-bottom:8px;padding:12px 14px;display:flex}.row .grow{flex-grow:1;min-width:0}.row .name{font-size:18px;font-weight:700}.row .note{color:var(--muted);margin-top:2px;font-size:15px;display:block}.row.low{background:var(--amber-bg);border-color:var(--amber-line)}.row.out{background:var(--red-bg);border-color:var(--red-line)}.row.done{background:#f4f1e8}.row.done .name{color:var(--soft);text-decoration:line-through}.qty{align-items:center;gap:10px;display:flex}.qty .value{text-align:center;min-width:58px}.qty .value b{font-size:22px;display:block}.qty .value span{color:var(--muted);font-size:14px;display:block}.ing{border-bottom:1px solid #f2ebdd;align-items:center;gap:12px;padding:12px 4px;display:flex}.ing input[type=checkbox],.shop input[type=checkbox]{width:20px;height:20px;accent-color:var(--olive);flex:none;margin:0}.ing label{color:var(--ink);flex-grow:1;margin:0;font-size:17px}.amount{color:var(--olive);font-size:17px;font-weight:700}.banner{background:var(--olive);color:#f6f2e7;border-radius:18px;align-items:center;gap:12px;margin-bottom:18px;padding:14px 16px;display:flex}.banner .grow{flex-grow:1;font-size:17px}.banner .btn{background:var(--sand);color:var(--olive-dark);border-radius:10px;padding:10px 14px;font-size:16px}.plan-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;margin-bottom:20px;overflow:hidden}.plan-card .strip{background:var(--olive);color:#f6f2e7;justify-content:space-between;align-items:center;padding:12px 16px;font-size:17px;display:flex}.plan-card .strip span{color:#dcd6c0;font-size:15px}.day{background:var(--paper);border:1px solid var(--line);border-radius:14px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.day.next{background:var(--olive-tint);border-color:var(--olive-line)}.day .date{flex:none;width:58px}.day .date b{font-size:17px;display:block}.day .date span{color:var(--soft);font-size:14px;display:block}.day .meal{flex-grow:1;font-size:18px}.day .meal.empty{color:var(--soft)}.group-title{margin:18px 0 8px;font-size:19px;font-weight:700}.empty-state{background:var(--paper);border:1px dashed var(--line);text-align:center;color:var(--muted);border-radius:18px;padding:28px 20px}.error{color:var(--red);font-size:16px}.tabs{border-bottom:1px solid var(--line);margin:16px 0;display:flex}.tabs button{color:var(--muted);background:0 0;border-bottom:2px solid #0000;border-radius:0;padding:12px 18px}.tabs button.on{color:var(--ink);border-bottom-color:var(--clay);font-weight:700}.step{background:var(--sand);border-radius:14px;gap:12px;margin-bottom:10px;padding:14px;display:flex}.step .num{background:var(--olive);color:#fff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:16px;display:grid}.nav{inset-inline:0;background:var(--paper);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);z-index:5;display:flex;position:fixed;bottom:0}.nav button{color:var(--muted);background:0 0;border-radius:0;flex:1;padding:16px 2px 18px;font-size:15px}.nav button.on{color:var(--olive);box-shadow:inset 0 3px 0 var(--olive);font-weight:700}.cook{z-index:10;background:var(--olive-dark);color:#f6f2e7;padding:calc(env(safe-area-inset-top,0px) + 18px) 20px calc(env(safe-area-inset-bottom,0px) + 24px);flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.cook .cook-top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.cook .exit{color:#f6f2e7;background:#f6f2e724;border-radius:50%;width:44px;height:44px;padding:0;font-size:20px}.bar{background:#f6f2e733;border-radius:999px;height:6px;margin-bottom:22px}.bar>div{background:#e4b363;border-radius:999px;height:6px}.cook .text{margin-bottom:20px;font-size:29px;font-weight:700;line-height:1.7}.cook .ings{background:#f6f2e71a;border-radius:18px;margin-bottom:20px;padding:16px;font-size:19px;line-height:1.8}.timer{color:var(--ink);background:#f6f2e7;border-radius:18px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:20px;display:flex}.timer.done{background:#e4b363}.timer .clock{font-size:40px;font-weight:700}.timer small{color:var(--muted);font-size:17px;display:block}.cook .controls{gap:10px;margin-top:auto;display:flex}.cook .controls .prev{color:#f6f2e7;background:0 0;border:1px solid #f6f2e766;flex:1}.cook .controls .next{color:#33301f;background:#e4b363;flex:2;font-weight:700}.auth{max-width:380px;margin:0 auto;padding:70px 22px}.photo-picker{border:1px dashed var(--line);background:var(--paper);cursor:pointer;width:100%;height:180px;color:var(--muted);border-radius:18px;margin-bottom:14px;display:block;position:relative;overflow:hidden}.photo-picker img{object-fit:cover;width:100%;height:100%;display:block}.photo-picker .placeholder{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:17px;display:flex;position:absolute;inset:0}.photo-picker .placeholder svg{color:var(--olive);opacity:.7}.photo-picker span:not(.placeholder){inset-inline-end:12px;color:#fff;background:#2a2a24b8;border-radius:999px;padding:7px 14px;font-size:15px;position:absolute;bottom:12px}.step-photo{margin-top:4px}.step-photo img{object-fit:cover;border-radius:12px;width:100%;max-height:200px;margin-bottom:10px;display:block}.step-photo-add{cursor:pointer;width:auto;display:inline-block}.step-image{object-fit:cover;border-radius:12px;width:100%;max-height:220px;margin-top:10px;display:block}.cook-image{object-fit:cover;border-radius:18px;width:100%;max-height:240px;margin-bottom:20px;display:block}.card .name{font-size:18px;font-weight:700;display:block}.card .note{color:var(--muted);font-size:15px;line-height:1.6;display:block}.banner>button{background:var(--sand);color:var(--olive-dark);border-radius:10px;flex:none;padding:10px 14px;font-size:15px}.row .btn-small{flex:none}.qty-input{text-align:center;border-radius:10px;width:74px;margin:0;padding:8px 6px;font-size:19px;font-weight:700}.row.pantry{flex-wrap:wrap}.row-actions{justify-content:flex-end;align-items:center;gap:8px;width:100%;margin-top:10px;display:flex}.shop-qty{flex:none;align-items:center;gap:8px;display:flex}.shop-qty select{border-radius:10px;width:auto;min-width:92px;margin:0;padding:8px 10px}.brand-home{color:var(--ink);background:0 0;border:none;align-items:center;gap:8px;padding:0;display:flex}@media (width<=520px){.app{padding:0 16px 120px}.field-row{flex-wrap:wrap}.field-row>*{flex:100%}.field-row .narrow{flex:42%}.filters{gap:8px}.filter{padding:9px 14px;font-size:15px}.row{flex-wrap:wrap}.row .grow{flex:100%}.qty,.shop-qty{margin-top:8px}.banner{flex-wrap:wrap}.banner>button{width:100%;margin-top:10px}.head{flex-wrap:wrap;gap:8px}h1{font-size:27px}h2{font-size:23px}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.flip-rtl{display:inline-flex}[dir=ltr] .flip-rtl{transform:scaleX(-1)}.spacer{flex:1}.hint{color:var(--muted);margin:-4px 0 12px;font-size:15px;line-height:1.6}.toast{background:var(--olive-tint);border:1px solid var(--olive-line);color:#3e5a2a;border-radius:12px;margin-bottom:12px;padding:10px 14px;font-size:15px}.notice-line{background:var(--amber-bg);border:1px solid var(--amber-line);color:var(--amber);border-radius:12px;margin-bottom:14px;padding:10px 14px;font-size:15px}.eyebrow{color:var(--clay);letter-spacing:.2px;font-size:14px;font-weight:700;display:block}.section-title{margin:24px 0 6px}.warn-text{color:var(--amber)!important}.icon-btn{background:var(--paper);width:42px;height:42px;color:var(--ink);border:1px solid var(--line);border-radius:12px;flex:none;place-items:center;padding:0;display:inline-grid}.icon-btn:hover{background:#f6f1e6}.icon-btn.small{border-radius:10px;width:34px;height:34px}.icon-btn.danger{color:var(--red)}.icon-btn.warn{background:var(--amber-bg);border-color:var(--amber-line);color:var(--amber)}.icon-btn.done{background:var(--olive-tint);border-color:var(--olive-line);color:var(--olive);opacity:1}.with-icon{align-items:center;gap:6px;display:inline-flex}.icon-bar{align-items:center;gap:8px;margin-bottom:14px;display:flex}.bar-title{margin:0;font-size:22px}.head-actions{align-items:center;gap:16px;display:flex}.topbar .icon-btn{background:0 0;border-color:#0000}.brand-home .brand{color:var(--ink)}.nav button{flex-direction:column;align-items:center;gap:3px;padding:10px 2px 12px;font-size:13px;display:flex}.nav button.on{box-shadow:none}.drawer-backdrop{z-index:20;background:#2a2a2459;justify-content:flex-end;display:flex;position:fixed;inset:0}[dir=ltr] .drawer-backdrop{justify-content:flex-end}.drawer{background:var(--sand);width:min(320px,86vw);height:100%;padding:calc(env(safe-area-inset-top,0px) + 18px) 18px 24px;flex-direction:column;gap:18px;display:flex;overflow-y:auto;box-shadow:0 0 40px #0000001f}.drawer-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:16px;display:flex}.drawer-head .grow{flex:1;min-width:0}.avatar{background:var(--olive);color:#f6f2e7;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid}.drawer-name{text-align:start;font-size:19px;font-weight:700;display:block}.drawer-head .note{color:var(--muted);font-size:14px}.drawer-section{flex-direction:column;gap:8px;display:flex}.drawer-label{color:var(--muted);align-items:center;gap:8px;font-size:15px;display:flex}.drawer-signout{background:var(--paper);color:var(--red);border:1px solid var(--line);justify-content:center;align-items:center;gap:8px;margin-top:auto;display:flex}.drawer-foot{text-align:center;color:var(--soft);font-size:14px}.segmented{background:#efe8da;border-radius:12px;gap:4px;padding:4px;display:flex}.segmented.wide{margin-bottom:16px}.segmented button{color:var(--muted);background:0 0;border-radius:9px;flex:1;padding:9px 10px;font-size:16px}.segmented button.on{background:var(--paper);color:var(--ink);font-weight:700;box-shadow:0 1px 2px #00000014}.chips-scroll{scrollbar-width:none;gap:8px;margin:0 -2px;padding-bottom:12px;display:flex;overflow-x:auto}.chips-scroll::-webkit-scrollbar{display:none}.chips-scroll .filter{flex:none}.recipe-card .placeholder-photo,.placeholder-photo{color:#4f5e358c;background:linear-gradient(135deg,#f1ebdd,#e8dcc4);place-items:center;display:grid;height:110px!important}.recipe-card .photo.small{height:120px}.picked{position:relative}.picked .recipe-card{border-color:var(--olive-line)}.picked-close{top:10px;width:34px;height:34px;position:absolute;inset-inline-end:10px}.card.notice{background:var(--amber-bg);border-color:var(--amber-line);color:var(--amber);margin-top:14px;font-size:16px}.note-card{margin-top:14px}.note-card p{color:#55503f;margin-top:4px;font-size:16px}.short-tag{color:var(--amber);background:var(--amber-bg);vertical-align:middle;border-radius:999px;margin-inline-start:8px;padding:1px 8px;font-size:13px;display:inline-block}.form-card{margin-bottom:14px}.form-actions{gap:10px;margin-top:6px;display:flex}.form-actions>button:last-child{flex:2}.sticky-actions{bottom:calc(env(safe-area-inset-bottom,0px) + 72px);background:linear-gradient(to top, var(--sand) 70%, transparent);z-index:2;margin-top:20px;padding:16px 0 8px;position:sticky}.field-row.keep{align-items:center;flex-wrap:nowrap!important}.field-row.keep>*{margin-bottom:0;flex:auto!important}.ing-row{margin-bottom:10px}.ing-row .tiny{padding-inline:10px;flex:0 0 74px!important}.ing-row .icon-btn{flex:none!important}.step-card{margin-bottom:12px}.step-card-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.step-card-head label{color:var(--ink);margin:0;font-weight:700}.chip-btn{background:var(--amber-bg);color:var(--amber);border:1px solid var(--amber-line);align-items:center;gap:6px;display:inline-flex}.chip-btn.done{color:var(--muted);border-color:var(--line);opacity:1;background:#f4f1e8}.row .icon-btn{width:38px;height:38px}.ask-pack{border-top:1px dashed var(--line);flex:100%;margin-top:10px;padding-top:12px}.ask-pack label{color:var(--ink);font-weight:700}.ask-pack input{margin:0}.ask-pack .btn-small{flex:none!important}.ask-pack .hint{margin:8px 0 0}.photo-picker.short{height:110px}.thumbs{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px;margin-bottom:12px;display:grid}.thumb{aspect-ratio:3/4;border:1px solid var(--line);border-radius:12px;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumb .icon-btn{top:6px;width:28px;height:28px;position:absolute;inset-inline-end:6px}.plan-meal{align-items:center;gap:12px;padding:14px;display:flex}.plan-meal img{object-fit:cover;border-radius:14px;flex:none;width:68px;height:68px}.plan-empty{color:var(--muted);padding:16px}.plan-prep{background:var(--amber-bg);border:1px solid var(--amber-line);color:var(--amber);border-radius:12px;flex-direction:column;gap:2px;margin:0 14px 12px;padding:10px 12px;font-size:15px;display:flex}.plan-actions{padding:0 14px 14px}.plan-actions .hint{margin:8px 0 0}.day{align-items:flex-start}.day .date{width:76px}.day .grow{flex:1;min-width:0}.day select.meal{margin:0;padding:10px 12px}.day-tag{background:var(--olive-tint);border-radius:999px;margin-top:4px;padding:1px 8px;color:var(--olive)!important;font-size:12px!important;display:inline-block!important}.day-status{color:#3e5a2a;margin-top:6px;font-size:14px;display:inline-block}.day-status.warn{color:var(--amber)}.settings-card{margin-top:26px}.settings-card .btn-wide{margin-top:4px}.settings-card .hint{margin:10px 0 0}@media (width<=520px){.row-actions .btn-small{padding:8px 12px;font-size:14px}.ing-row .tiny{flex-basis:64px!important}}.auth .btn-link,.auth .btn-quiet{margin-top:12px;display:block}.pack-box{background:var(--amber-bg);border:1px solid var(--amber-line);border-radius:14px;margin-bottom:12px;padding:12px}.pack-box label{color:var(--amber);font-weight:700}.pack-box .hint{margin:8px 0 0}.auth-page{background:var(--sand);min-height:100dvh}.auth-hero{height:38vh;min-height:220px;max-height:360px;position:relative;overflow:hidden}.auth-hero img{object-fit:cover;width:100%;height:100%;display:block}.auth-hero:after{content:"";background:linear-gradient(to bottom, #0000001f 0%, transparent 35%, var(--sand) 100%);position:absolute;inset:0}.auth-lang{z-index:1;top:calc(env(safe-area-inset-top,0px) + 14px);color:var(--ink);cursor:pointer;background:#ffffffe0;border-radius:999px;align-items:center;gap:6px;margin:0;padding:7px 12px;font-size:14px;display:inline-flex;position:absolute;inset-inline-end:16px}.auth-card{background:var(--paper);border-radius:26px 26px 0 0;max-width:420px;margin:-64px auto 0;padding:26px 22px 30px;position:relative;box-shadow:0 -6px 24px #3c2d140f}@media (width>=460px){.auth-card{border:1px solid var(--line);border-radius:26px;margin-bottom:40px}}.auth-brand{color:var(--clay);font-size:18px;font-weight:700}.auth-card h1{margin:2px 0 6px;font-size:32px}.auth-sub{color:var(--muted);margin-bottom:22px;font-size:16px}.input-icon{align-items:center;margin-bottom:14px;display:flex;position:relative}.input-icon>svg{color:var(--soft);pointer-events:none;position:absolute;inset-inline-start:14px}.input-icon input{background:#fcfaf5;margin:0;padding-inline-start:44px}.input-icon input[dir=ltr]{text-align:start}.input-icon .eye{inset-inline-end:6px;color:var(--soft);background:0 0;border-radius:10px;place-items:center;padding:8px;line-height:0;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.input-icon:has(.eye) input{padding-inline-end:44px}.auth-forgot{color:var(--clay);background:0 0;margin:-6px 0 18px auto;padding:4px 0;font-size:15px;display:block}[dir=rtl] .auth-forgot{margin:-6px auto 18px 0}.auth-submit{margin-top:6px;font-weight:700;box-shadow:0 6px 16px #be523338}.auth-error{margin-bottom:10px}.auth-switch{text-align:center;color:var(--muted);margin-top:18px;font-size:16px}.auth-switch button,.auth-switch a{color:var(--clay);background:0 0;padding:4px 2px;font-size:16px;font-weight:700;text-decoration:none}.nav{background:var(--olive);padding:8px 10px calc(env(safe-area-inset-bottom,0px) + 8px);border-top:none;gap:4px}.nav button{color:#f6f2e7b8;border-radius:16px;padding:8px 2px}.nav button.on{color:#fff;background:#f6f2e729;font-weight:700}.nav button.on svg{color:#fff}.app{padding-bottom:130px}.meal-card{background:var(--olive);color:#f6f2e7;border-radius:22px;margin-bottom:18px;padding:14px}.meal-card-head{opacity:.85;margin:2px 4px 10px;font-size:16px}.meal-card-body{background:var(--paper);color:var(--ink);border-radius:16px;align-items:center;gap:10px;padding:8px;display:flex}.meal-card-main{color:inherit;text-align:start;background:0 0;flex:1;align-items:center;gap:12px;min-width:0;padding:0;display:flex}.meal-card-main img,.meal-card-ph{object-fit:cover;border-radius:12px;flex:none;width:76px;height:76px}.meal-card-ph{background:var(--olive-tint);color:var(--olive);place-items:center;display:grid}.meal-card-main b{font-size:19px;line-height:1.4;display:block}.meal-card-meta{color:var(--muted);flex-wrap:wrap;gap:10px;margin-top:4px;font-size:14px;display:flex}.meal-card-meta span{align-items:center;gap:4px;display:inline-flex}.play-btn{border-radius:50%;flex:none;place-items:center;width:48px;height:48px;padding:0;display:grid;box-shadow:0 4px 12px #be52334d}.input-icon.search input{background:var(--paper);border-radius:999px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:8px 0 12px;display:flex}.section-head h3{align-items:center;gap:8px;font-size:21px;display:flex}.count{color:var(--muted);background:#efe8da;border-radius:999px;padding:1px 9px;font-size:13px;font-weight:400}.cat-row{scrollbar-width:none;gap:6px;margin:0 -4px 14px;padding:0 4px 2px;display:flex;overflow-x:auto}.cat-row::-webkit-scrollbar{display:none}.cat{color:var(--ink);background:0 0;flex-direction:column;flex:1 0 64px;align-items:center;gap:6px;padding:2px 0;font-size:14px;display:flex}.cat-circle{color:#a4632a;background:#f5e9d6;border-radius:50%;place-items:center;width:58px;height:58px;transition:background .15s,color .15s;display:grid}.cat:nth-child(2n) .cat-circle{color:var(--olive);background:#eef0e3}.cat.on .cat-circle{background:var(--olive);color:#fff}.cat.on{font-weight:700}.recent-row{scrollbar-width:none;gap:12px;margin:0 -4px 18px;padding:0 4px 4px;display:flex;overflow-x:auto}.recent-row::-webkit-scrollbar{display:none}.recent{color:var(--ink);text-align:start;background:0 0;flex:0 0 132px;padding:0}.recent img,.recent-ph{object-fit:cover;color:#4f5e358c;background:linear-gradient(135deg,#f1ebdd,#e8dcc4);border-radius:14px;place-items:center;width:132px;height:104px;margin-bottom:6px;display:grid}.recent b{font-size:16px;line-height:1.4;display:block}.recent span{color:var(--muted);font-size:13px}.mini-card{background:var(--paper);width:100%;color:var(--ink);border:1px solid var(--olive-line);text-align:start;border-radius:16px;align-items:center;gap:12px;margin-bottom:14px;padding:8px;display:flex}.mini-card img,.mini-ph{object-fit:cover;color:#4f5e358c;background:linear-gradient(135deg,#f1ebdd,#e8dcc4);border-radius:12px;flex:none;place-items:center;width:60px;height:60px;display:grid}.mini-card b{font-size:18px;display:block}.picked-close{transform:translateY(-65%);top:50%!important}.recipe-card{cursor:pointer;box-shadow:0 2px 10px #3c2d140a}.card-media{position:relative}.fav-btn{top:10px;width:38px;height:38px;color:var(--ink);background:#ffffffeb;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;inset-inline-end:10px;box-shadow:0 2px 6px #0000001f}.fav-btn.on{color:var(--clay)}.meta.icons span{align-items:center;gap:5px;display:inline-flex}.meta.icons svg{color:var(--soft)}.welcome-empty{text-align:center;padding:40px 12px 10px}.welcome-icon{color:#a4632a;background:#f5e9d6;border-radius:50%;place-items:center;width:88px;height:88px;margin:0 auto 16px;display:grid}.welcome-empty h2{margin-bottom:8px}.welcome-empty .sub{max-width:320px;margin:0 auto;padding-bottom:22px}.detail-hero{height:300px;margin:0 -20px;position:relative}.detail-hero img{object-fit:cover;width:100%;height:100%;display:block}.detail-actions{top:14px;gap:8px;display:flex;position:absolute;inset-inline:16px}.detail-actions.plain{margin-bottom:8px;position:static}.float-btn{width:42px;height:42px;color:var(--ink);background:#fffffff0;border-radius:50%;place-items:center;padding:0;display:grid;box-shadow:0 2px 8px #00000024}.detail-actions.plain .float-btn{border:1px solid var(--line);box-shadow:none}.float-btn.fav.on{color:var(--clay)}.detail-sheet{background:var(--sand);border-radius:26px 26px 0 0;margin:-28px -20px 0;padding:22px 20px 10px;position:relative}.detail-sheet.flat{margin:0;padding:4px 0 10px}.detail-sheet h2{margin-top:2px;font-size:28px}.share-line{color:var(--muted);margin-top:4px;font-size:14px}.inline-link{color:var(--clay);background:0 0;align-items:center;gap:4px;padding:0;font-size:14px;display:inline-flex}.stats{background:var(--paper);border:1px solid var(--line);border-radius:18px;grid-template-columns:repeat(3,1fr);margin:16px 0 4px;padding:12px 4px;display:grid}.stats>div{text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.stats>div+div{border-inline-start:1px solid var(--line)}.stats svg{color:var(--olive);margin-bottom:2px}.stats b{font-size:17px}.stats span{color:var(--muted);font-size:13px}.servings-row{border-bottom:1px solid #f2ebdd;align-items:center;gap:10px;padding:4px 4px 10px;display:flex}.round-check{appearance:none;background:var(--paper);cursor:pointer;border:1.6px solid #c9bfa9;border-radius:50%;place-items:center;padding:0;display:grid;width:22px!important;height:22px!important}.round-check:checked{background:var(--olive);border-color:var(--olive)}.round-check:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:11px;transform:translateY(-1px)rotate(45deg)}.ing .amount{color:var(--olive);font-weight:700}.ing.done label{color:var(--soft);text-decoration:line-through}.note.with-icon{color:var(--muted);margin-top:6px;font-size:14px;display:inline-flex}.center{justify-content:center}.danger-link{color:var(--red);background:0 0;align-items:center;gap:6px;margin:30px auto 0;padding:8px 12px;font-size:15px;display:flex}.cook-cta{bottom:calc(env(safe-area-inset-bottom,0px) + 84px);background:linear-gradient(to top, var(--sand) 65%, transparent);z-index:3;gap:8px;padding:14px 0 6px;display:flex;position:sticky}.cook-cta button{flex:2;font-weight:700;box-shadow:0 6px 16px #be523340}.cook-cta .cooked-btn{box-shadow:none;color:var(--olive-dark);border-color:var(--olive-line);flex:1}.cook-cta .cooked-btn:only-child{flex:100%}.play-btn.ghost{background:var(--paper);color:var(--olive);border:1px solid var(--olive-line);box-shadow:none;margin-inline-end:8px}.play-btn.ghost.done{background:var(--olive-tint);opacity:1}.sticky-actions{bottom:calc(env(safe-area-inset-bottom,0px) + 84px)}.cook-title{text-align:center;flex:1;padding:0 8px;font-size:19px}.cook .exit{place-items:center;display:grid}.cook .exit.on{color:#33301f;background:#e4b363}.cook-image{object-fit:cover;max-height:42vh}@media (width<=520px){.detail-hero{height:260px;margin:0 -16px}.detail-sheet{margin:-28px -16px 0;padding:22px 16px 10px}}.row.pantry{border-inline-start:4px solid var(--olive-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 10px;padding:12px 14px 10px;display:grid}.row.pantry.low,.row.pantry.out{background:var(--paper);border-color:var(--line)}.row.pantry.low{border-inline-start-color:#e0b35c}.row.pantry.out{border-inline-start-color:#d98b6c}.row.pantry .grow{grid-column:1;flex:none!important}.row.pantry .qty{grid-column:2;gap:6px;margin:0!important}.row.pantry .round{width:36px;height:36px;font-size:18px}.row.pantry .qty .value{min-width:0}.row.pantry .qty-input{width:58px;padding:6px 4px;font-size:18px}.row.pantry .qty .value span{margin-top:2px;font-size:12px}.row.pantry .row-actions{grid-column:1/-1;gap:6px;margin-top:4px}.status-dot{background:var(--olive);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-inline-end:6px;display:inline-block}.status-dot.low{background:#e0b35c}.status-dot.out{background:#d98b6c}.row.pantry .note.status-out{color:var(--red)}.row.pantry .note.status-low{color:var(--amber)}.row.shop{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"check name del"".qty qty";align-items:center;gap:8px 12px;display:grid}.row.shop .round-check{grid-area:check}.row.shop .grow{grid-area:name;flex:none!important}.row.shop .icon-btn{grid-area:del}.row.shop .shop-qty{grid-area:qty;justify-content:flex-start;margin:0!important}.row.shop .shop-qty .qty-input{width:64px;padding:6px 4px;font-size:17px}.row.shop .shop-qty select{min-width:100px;padding:7px 10px}.row.shop .ask-pack{grid-column:1/-1}.banner-note{opacity:.85;font-size:15px}.app.shared{padding-bottom:40px}.shared-cta{bottom:calc(env(safe-area-inset-bottom,0px) + 12px)}.shared-foot{text-align:center;color:var(--soft);margin-top:28px;font-size:15px}.topbar{z-index:6;padding:calc(env(safe-area-inset-top,0px) + 12px) 20px 12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#faf6eeeb;margin:0 -20px 14px;position:sticky;top:0}.logo{background:var(--olive);color:#faf6ee;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.brand-home{gap:10px}.brand{font-size:26px}.topbar .icon-btn{border:1px solid var(--line);background:var(--paper);border-radius:12px}@media (width<=520px){.topbar{margin:0 -16px 14px;padding-inline:16px}}.detail-hero{margin-top:-14px}.drawer-item{background:var(--paper);color:var(--ink);border:1px solid var(--line);text-align:start;align-items:center;gap:10px;display:flex}.undo-bar{background:var(--ink);color:#f6f2e7;border-radius:14px;align-items:center;gap:10px;margin-bottom:14px;padding:10px 10px 10px 16px;font-size:15px;display:flex}[dir=rtl] .undo-bar{padding:10px 16px 10px 10px}.undo-bar button{color:#e4b363;background:#f6f2e724;border-radius:10px;padding:8px 14px;font-size:15px;font-weight:700}.trash-row{background:var(--paper);border:1px solid var(--line);border-radius:16px;align-items:center;gap:10px;margin-bottom:8px;padding:8px;display:flex}.trash-row img,.trash-row .mini-ph{object-fit:cover;background:var(--tint);border-radius:10px;flex:none;width:52px;height:52px}.trash-row .grow{flex:1;min-width:0}.trash-row b{font-size:17px;display:block}.trash-row .note{color:var(--muted);font-size:13px}.servings-row .grow{color:var(--muted);gap:8px}.servings-row .qty{background:var(--paper);border:1px solid var(--line);border-radius:999px;gap:4px;padding:4px}.servings-row .round{background:var(--olive-tint);width:38px;height:38px;color:var(--olive);border:none;font-size:20px;font-weight:700}.servings-row .qty .value{min-width:40px}.servings-row .qty .value b{color:var(--clay);font-size:21px}.fab{z-index:7;bottom:calc(env(safe-area-inset-bottom,0px) + 92px);border-radius:50%;place-items:center;width:58px;height:58px;padding:0;display:grid;position:fixed;inset-inline-end:max(18px,50% - 242px);box-shadow:0 8px 20px #be523359}.sheet-backdrop{z-index:20;background:#2a2a2459;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--sand);width:100%;max-width:520px;padding:10px 16px calc(env(safe-area-inset-bottom,0px) + 22px);border-radius:24px 24px 0 0;flex-direction:column;gap:10px;display:flex}.sheet-handle{background:#d8cdb8;border-radius:4px;width:40px;height:4px;margin:2px auto 8px}.sheet-option{background:var(--paper);color:var(--ink);border:1px solid var(--line);text-align:start;border-radius:18px;align-items:center;gap:14px;padding:14px;display:flex}.sheet-option b{font-size:18px;display:block}.sheet-option .grow span{color:var(--muted);font-size:14px}.sheet-icon{border-radius:14px;flex:none;place-items:center;width:46px;height:46px;display:grid}.sheet-icon.clay{color:var(--clay);background:#f5e2d9}.sheet-icon.olive{background:var(--olive-tint);color:var(--olive)}.row.shop .grow .name{color:var(--ink);margin:0;font-size:18px;font-weight:700;display:block}.pack-link{color:var(--olive);border-bottom:1px dashed var(--olive-line);background:0 0;border-radius:0;align-items:center;gap:5px;padding:2px 0;font-size:14px;display:inline-flex}.ask-title{margin-bottom:8px;font-weight:700}.ask-actions{gap:8px;margin-top:4px;display:flex}.ask-actions button{flex:1}.input-suffix{align-items:center;margin-bottom:6px;display:flex;position:relative}.input-suffix input{margin:0;padding-inline-end:70px}.input-suffix span{color:var(--muted);pointer-events:none;font-size:15px;position:absolute;inset-inline-end:14px}.note-soft{color:var(--soft);margin:-2px 0 14px;font-size:14px;line-height:1.6}.copy-week{background:var(--paper);width:100%;color:var(--ink);border:1px dashed var(--olive-line);text-align:start;border-radius:16px;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.copy-week svg{color:var(--olive);flex:none}.copy-week b{font-size:16px;display:block}.copy-week .grow span{color:var(--muted);font-size:13px;line-height:1.5}.cook-title{flex-direction:column;align-items:center;font-size:21px;font-weight:700;display:flex}.cook-title small{opacity:.7;font-size:13px;font-weight:400}.cook-progress{align-items:center;gap:12px;margin-bottom:18px;display:flex}.cook-progress .bar{flex:1;margin:0}.step-count{opacity:.8;flex:none;font-size:15px}.cook-body{flex-direction:column;flex:1;justify-content:center;gap:16px;padding:8px 0 20px;display:flex}.step-card-cook{background:#f6f2e714;border:1px solid #f6f2e724;border-radius:22px;padding:20px 20px 22px}.step-chip{color:#33301f;background:#e4b363;border-radius:999px;margin-bottom:12px;padding:3px 12px;font-size:14px;font-weight:700;display:inline-block}.cook .text{margin:0;font-size:27px;line-height:1.75}.cook .ings,.cook .timer,.cook-image{margin:0}.ings-title{opacity:.75;margin-bottom:8px;font-size:15px;display:block}.avatar-btn{background:0 0;border-radius:50%;flex:none;padding:0;position:relative}.avatar-edit{bottom:-2px;background:var(--paper);width:22px;height:22px;color:var(--ink);border:1px solid var(--line);border-radius:50%;place-items:center;display:grid;position:absolute;inset-inline-end:-2px}.avatar-grid{background:var(--paper);border:1px solid var(--line);border-radius:18px;grid-template-columns:repeat(4,1fr);justify-items:center;gap:10px;padding:14px 10px;display:grid}.avatar-grid button{background:0 0;border:2px solid #0000;border-radius:50%;padding:3px}.avatar-grid button.on{border-color:var(--clay)}.btn-wide.with-icon,.danger-link{gap:10px}.ing-text{flex:1;min-width:0}.ing-text label{color:var(--ink);margin:0;font-size:17px}.amount-btn{font:inherit;color:var(--olive);border-bottom:1px dashed var(--olive-line);background:0 0;border-radius:0;padding:0;font-weight:700}.conversions{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.conversions span{color:var(--olive);background:var(--olive-tint);border-radius:999px;padding:2px 10px;font-size:13px}.video-box{margin:16px 0 4px}.video-box iframe,.video-box video{aspect-ratio:16/9;background:#1f1f1a;border:0;border-radius:18px;width:100%;display:block}.video-box.vertical iframe{aspect-ratio:9/16;width:auto;max-width:100%;height:min(60vh,540px);margin:0 auto}.video-source{color:var(--olive);margin-top:8px;font-size:14px;display:inline-block}.video-field{background:var(--paper);border:1px solid var(--line);border-radius:18px;margin-bottom:14px;padding:14px}.video-field .video-box{margin-top:0}.video-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.auth-lang select{opacity:0;appearance:none;border:none;width:100%;height:100%;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.lang-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.lang-grid button{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:9px 10px;font-family:inherit;font-size:15px}.lang-grid button.on{background:var(--olive);border-color:var(--olive);color:#fff;font-weight:700}.lang-grid button{text-align:start;align-items:center;gap:8px;display:flex}.lang-grid .flag{font-size:18px;line-height:1}.idea-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;margin-bottom:18px;padding:14px}.idea-card h3{margin-bottom:10px;font-size:18px}.idea-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.idea{text-align:start;background:var(--sand);color:var(--ink);border:1px solid var(--line);border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px;display:flex}.idea b{margin-top:4px;font-size:16px;line-height:1.4}.idea span:last-child{color:var(--muted);font-size:13px;line-height:1.5}.idea-icon{border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.idea-icon.olive{background:var(--olive-tint);color:var(--olive)}.idea-icon.clay{color:var(--clay);background:#f5e2d9}.cover-btn{margin:-6px 0 14px;display:block}input.invalid,textarea.invalid,select.invalid{border-color:var(--red);background:#fff8f5;box-shadow:0 0 0 3px #a8451f1f}.field-error{color:var(--red);margin:-6px 0 12px;font-size:14px}.ing-row+.field-error{margin-top:-4px}.sticky-actions{flex-wrap:wrap}.error-bar{background:var(--red-bg);border:1px solid var(--red-line);color:var(--red);border-radius:12px;margin:0 0 8px;padding:10px 14px;font-size:15px;animation:.25s ease-out error-in;flex:100%!important}@keyframes error-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.form-actions>button{flex:1}.form-actions{flex-wrap:wrap}.shared-bar .brand-home{text-decoration:none}.shared-bar-actions{align-items:center;gap:8px;display:flex}.lang-pill{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;align-items:center;gap:4px;margin:0;padding:6px 10px;display:inline-flex}.lang-pill select{appearance:none;background:0 0;border:none;width:auto;max-width:110px;margin:0;padding:0;font-size:14px}.signin-link{background:var(--clay);color:#fff;border-radius:999px;padding:8px 14px;font-size:14px;text-decoration:none}.app.shared .detail-hero{margin-top:-14px}.join-card{text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:22px;margin:30px 0 10px;padding:22px 18px}.join-card .logo{width:46px;height:46px;margin:0 auto 10px}.join-card h3{margin-bottom:6px;font-size:20px}.join-card p{color:var(--muted);margin-bottom:16px;font-size:15px}.join-btn{font-weight:700;text-decoration:none;display:block}.join-link{color:var(--clay);margin-top:12px;font-size:15px;display:inline-block}.lang-pill{padding:8px 12px;font-size:16px;position:relative}.lang-pill select{opacity:0;cursor:pointer;width:100%;max-width:none;position:absolute;inset:0}.signin-link{white-space:nowrap;padding:9px 16px;font-size:15px}.join-btn{background:var(--clay);color:#fff;text-align:center;border-radius:14px;padding:14px 18px;font-size:17px;box-shadow:0 6px 16px #be523338}.cook .video-box{margin:12px 0 0}.cook .video-box.vertical iframe{height:min(40vh,360px)}.segment{background:#efe8da;border-radius:999px;gap:4px;margin:-2px 0 14px;padding:4px;display:flex}.segment button{color:var(--olive);text-align:center;background:0 0;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:5px;min-width:0;padding:8px 6px;font-family:inherit;font-size:15px;line-height:1.3;transition:background .15s,color .15s;display:inline-flex}.segment button.on{background:var(--olive);color:#f6f2e7;font-weight:700}.cook .video-source{color:#e4b363}.ings ul{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:4px 16px;margin:0;padding:0;font-size:18px;list-style:none;display:grid}.ings ul b{color:#e4b363}.step-amounts ul{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.step-amounts li{background:var(--olive-tint);color:var(--ink);border-radius:999px;padding:2px 10px;font-size:14px}.step-amounts b{color:var(--olive)}.empty-state{white-space:pre-line}.step-uses{border-top:1px solid var(--line);margin:12px 0 14px;padding-top:10px}.step-uses-head{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:15px;display:flex}.step-uses .link-btn{color:var(--clay);background:0 0;border:none;padding:2px 0;font-family:inherit;font-size:15px}.step-uses-summary{color:var(--ink);margin:4px 0 0;font-size:15px;line-height:1.6}.step-uses-list{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.step-uses-list button{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-family:inherit;font-size:14px}.step-uses-list button.on{background:var(--olive);border-color:var(--olive);color:#fff}.video-box video{aspect-ratio:auto;object-fit:contain;max-height:min(60vh,540px)}.cook .video-box video{max-height:min(40vh,360px)}.loader{flex-direction:column;align-items:center;padding:18px 4px 8px;display:flex}.pot-scene{justify-content:center;align-items:flex-end;width:180px;height:170px;display:flex;position:relative}.pot{z-index:1;position:relative}.pot rect{fill:#3e4a2a}.pot path{fill:var(--olive)}.food{color:var(--clay);animation:3.6s ease-in forwards food-drop;position:absolute;top:0}.food.lane-0{inset-inline-start:58px}.food.lane-1{color:var(--olive);inset-inline-start:82px}.food.lane-2{color:#c08a2c;inset-inline-start:106px}@keyframes food-drop{0%{opacity:0;transform:translateY(-10px)rotate(-20deg)}15%{opacity:1}60%{opacity:1;transform:translateY(96px)rotate(25deg)}70%,to{opacity:0;transform:translateY(104px)rotate(30deg)}}.steam{gap:12px;display:flex;position:absolute;bottom:80px}.steam i{background:#d9cfbd;border-radius:5px;width:5px;height:18px;animation:2s ease-out infinite steam}.steam i:nth-child(2){animation-delay:.65s}.steam i:nth-child(3){animation-delay:1.3s}@keyframes steam{0%{opacity:0;transform:translateY(8px)scaleY(.6)}40%{opacity:.9}to{opacity:0;transform:translateY(-26px)scaleY(1.1)}}.loader-title{color:var(--ink);text-align:center;margin:16px 0 12px;font-size:20px;font-weight:700}.loader-stages{gap:8px;min-width:220px;margin:0 0 18px;padding:0;list-style:none;display:grid}.loader-stages li{color:#a39b8a;align-items:center;gap:10px;font-size:16px;transition:color .3s;display:flex}.loader-stages .dot{border:1.5px solid #d9cfbd;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;transition:background .3s,border-color .3s;display:grid}.loader-stages li.now{color:var(--ink)}.loader-stages li.now .dot{border-color:var(--clay);border-top-color:#0000;animation:.9s linear infinite spin}.loader-stages li.done{color:var(--olive)}.loader-stages li.done .dot{background:var(--olive);border-color:var(--olive);color:#fff}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.food,.steam{display:none}.loader-stages li.now .dot{border-top-color:var(--clay);animation:none}}.paste-image{justify-content:center;align-items:center;gap:8px;width:100%;margin:10px 0 12px;display:flex}.shared-cta{gap:8px;display:flex}.shared-cta .btn-wide{flex:1}.shared-cta .save-mine{background:var(--paper);min-width:96px;color:var(--olive);box-shadow:none;flex:none;display:flex}.shared-cta .save-mine:only-child{flex:1}.join-line{background:var(--paper);border:1px solid var(--line);color:var(--muted);border-radius:16px;justify-content:space-between;align-items:center;gap:10px;margin:26px 0 8px;padding:12px 16px;font-size:16px;display:flex}.join-line a{color:var(--clay);font-weight:700}.screen-loading{justify-content:center;gap:8px;padding:60px 0;display:flex}.screen-loading i{background:var(--olive);opacity:.25;border-radius:50%;width:9px;height:9px;animation:1.2s ease-in-out infinite dot-pulse}.screen-loading i:nth-child(2){animation-delay:.2s}.screen-loading i:nth-child(3){animation-delay:.4s}@keyframes dot-pulse{50%{opacity:1;transform:translateY(-4px)}}.avatar.tile{border-radius:12px}.shop-progress{background:var(--paper);border:1px solid var(--line);border-radius:18px;margin-bottom:8px;padding:14px 16px}.shop-progress-text{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.shop-progress-text b{font-size:24px}.shop-progress-text span{color:var(--muted);font-size:15px}.shop-progress .bar{background:#ece4d4;border-radius:8px;height:8px;margin-top:10px;overflow:hidden}.shop-progress .bar div{background:var(--olive);border-radius:8px;height:100%;transition:width .35s}.shop-complete{background:var(--olive-tint);color:var(--olive);border-radius:18px;flex-direction:column;align-items:center;gap:8px;margin-bottom:8px;padding:22px 16px;font-size:19px;display:flex}.shop-complete-icon{background:var(--olive);color:#fff;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.shop-aisle{color:var(--olive);align-items:center;gap:8px;margin:18px 2px 8px;font-size:17px;display:flex}.shop-item{margin-bottom:8px}.shop-tap{background:var(--paper);border:1px solid var(--line);width:100%;min-height:60px;color:var(--ink);text-align:start;border-radius:16px;align-items:center;gap:14px;padding:12px 16px;font-family:inherit;transition:background .15s,transform .1s;display:flex}.shop-tap:active{transform:scale(.99)}.check-dot{color:#fff;border:2px solid #cfc4ae;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;transition:background .15s,border-color .15s;display:grid}.shop-name{flex:1;font-size:19px;line-height:1.4}.shop-amount{color:var(--olive);background:var(--olive-tint);border-radius:999px;flex:none;padding:2px 12px;font-size:16px}.shop-item.done .shop-tap{background:0 0}.shop-item.done .check-dot{background:var(--olive);border-color:var(--olive)}.shop-item.done .shop-name{color:var(--muted);text-decoration:line-through}.basket{margin-top:18px}.basket-toggle{background:var(--olive-tint);width:100%;color:var(--olive);text-align:start;border:none;border-radius:16px;align-items:center;gap:10px;margin-bottom:8px;padding:13px 16px;font-family:inherit;font-size:17px;display:flex}.basket-more{color:var(--muted);font-size:15px}.basket-clear{margin:6px auto 0;display:block}.shop-actions{bottom:calc(env(safe-area-inset-bottom,0px) + 84px);background:linear-gradient(to top, var(--sand) 70%, transparent);z-index:3;gap:8px;margin-top:10px;padding:14px 0 6px;display:flex;position:sticky}.shop-actions button{flex:1}.notify-kinds{gap:8px;margin:14px 0;display:grid}.toggle-row{background:var(--sand);color:var(--ink);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;margin:0;padding:10px 12px;display:flex}.toggle-row input{width:20px;height:20px;accent-color:var(--olive);flex:none;margin-top:3px}.toggle-row span{flex-direction:column;display:flex}.toggle-row b{font-size:16px}.toggle-row small{color:var(--muted);font-size:14px}.tile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.pantry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=560px){.tile-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pantry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.tile-grid>.card,.tile-grid>form{grid-column:1/-1}.tile-grid>.shop-item:has(.ask-pack){grid-column:1/-1}.tile-grid .shop-item{margin:0}.tile-grid .shop-tap{aspect-ratio:1;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:6px;min-height:0;padding:10px}.tile-grid .check-dot{width:26px;height:26px}.tile-grid .shop-name{-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;font-size:16px;line-height:1.35;display:-webkit-box;overflow:hidden}.tile-grid .shop-amount{text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:1px 8px;font-size:13px;overflow:hidden}.shop-list .shop-item{margin-bottom:8px}.pantry-tile{background:var(--paper);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:8px;min-width:0;padding:12px;display:flex}.pantry-tile.low{border-color:#e9c98a}.pantry-tile.out{background:#fdf6f3;border-color:#e7b5a2}.pantry-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:17px;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.pantry-status{background:var(--sand);color:var(--muted);border:none;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:2px 10px;font-family:inherit;font-size:13px;display:inline-flex}.pantry-qty{justify-content:space-between;align-items:center;gap:4px;margin-top:auto;display:flex}.pantry-qty .round{flex:none;width:32px;height:32px}.pantry-qty .value{min-width:0;color:var(--muted);flex-direction:column;align-items:center;font-size:12px;display:flex}.pantry-qty .qty-input{text-align:center;width:100%;max-width:64px;padding:2px}.pantry-actions{border-top:1px solid var(--line);justify-content:space-between;gap:4px;padding-top:6px;display:flex}.pantry-actions .icon-btn.small{width:34px;height:34px}.pantry-actions .icon-btn.on{color:var(--olive);background:var(--olive-tint)}.head h2{align-items:center;gap:8px;display:flex}.tile-grid>.shop-item:has(.ask-pack) .shop-tap{aspect-ratio:auto;flex-direction:row;align-items:center;padding:12px 14px}.tile-grid>.shop-item:has(.ask-pack) .shop-name{-webkit-line-clamp:1}.tile-grid>.shop-item:has(.ask-pack) .ask-pack{margin-top:8px}:is(.tile-grid>.shop-item:has(.ask-pack),.shop-list>.shop-item:has(.ask-pack)){background:#fbefe9;border:1.5px solid #e7b5a2;border-radius:18px;padding:8px}.shop-item:has(.ask-pack) .shop-tap{border-color:#0000}.shop-item .ask-pack{border-top:none;padding:4px 6px 2px}.ask-why{color:#9a4527;margin:0 0 8px;font-size:16px;font-weight:700;line-height:1.5}.ing-note-input{background:0 0;margin:-2px 0 10px;padding:8px 12px;font-size:15px}.ing-note{color:var(--muted);font-size:.92em}.drawer-hint{margin:-4px 4px 8px}.contact-btns{gap:8px;margin:8px 0;display:flex}.contact-btns a{border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:16px;text-decoration:none;display:flex}.contact-wa{background:var(--olive);color:#fff}.contact-mail{background:var(--paper);color:var(--olive);border:1px solid var(--line)}.contact-box{background:var(--paper);border:1px solid var(--line);color:var(--muted);border-radius:14px;margin:10px 0 14px;padding:12px;font-size:15px;line-height:1.7}.contact-box p{margin:0 0 4px}.auth-help{text-align:center;color:var(--muted);margin-top:14px;font-size:15px}.auth-help>button{color:var(--muted);background:0 0;border:none;font-family:inherit;font-size:15px}.auth-help u{color:var(--clay)}.feature-intro{padding-bottom:24px}.feature-hero{text-align:center;border-radius:24px;margin-bottom:18px;padding:28px 20px 24px}.feature-hero.olive{background:var(--olive-tint)}.feature-hero.clay{background:#f8ebe4}.feature-hero-icon{background:var(--paper);border-radius:20px;place-items:center;width:68px;height:68px;margin:0 auto 14px;display:grid}.feature-hero.olive .feature-hero-icon{color:var(--olive)}.feature-hero.clay .feature-hero-icon{color:var(--clay)}.feature-hero h2{margin-bottom:6px;font-size:26px}.feature-hero p{color:var(--muted);margin:0;font-size:17px;line-height:1.7}.feature-points{background:var(--paper);border:1px solid var(--line);border-radius:20px;margin:0 0 20px;padding:4px 16px;list-style:none}.feature-points li{align-items:flex-start;gap:12px;padding:14px 0;display:flex}.feature-points li+li{border-top:1px solid var(--line)}.feature-points b{font-size:17px;line-height:1.4;display:block}.feature-points .grow span{color:var(--muted);font-size:15px;line-height:1.6;display:block}.feature-point-icon{border-radius:12px;flex:none;place-items:center;width:38px;height:38px;display:grid}.feature-point-icon.olive{background:var(--olive-tint);color:var(--olive)}.feature-point-icon.clay{color:var(--clay);background:#f5e2d9}.feature-off-note{white-space:pre-line;text-align:center;color:var(--soft);margin:12px 8px 0;font-size:14px;line-height:1.6}.feature-toggles{gap:8px;display:grid}.share-sheet{max-height:92vh;overflow-y:auto}.share-sheet-head{justify-content:space-between;align-items:center;display:flex}.share-sheet-head h3{font-size:20px}.share-label{color:var(--muted);font-size:15px}.share-langs{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.share-langs button{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 14px;font-size:15px;display:inline-flex}.share-langs button.on{background:var(--olive);border-color:var(--olive);color:#fff}.share-preview{background:var(--olive-tint);border:1px solid var(--olive-line);white-space:pre-wrap;border-radius:18px;min-height:120px;max-height:42vh;padding:14px 16px;font-size:16px;line-height:1.75;overflow-y:auto}.share-preparing{color:var(--muted)}.share-actions{gap:8px;display:flex}.share-actions>*{flex:1}.share-actions .btn-whatsapp{flex:1.6}.share-quote{color:var(--soft);border-inline-start:3px solid var(--olive-line);padding-inline-start:8px;display:inline-block}.btn-whatsapp{background:var(--olive);color:#fff;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:13px 16px;font-size:17px;font-weight:700;text-decoration:none;display:flex}.btn-whatsapp.disabled{opacity:.5;pointer-events:none}.wa-link{color:var(--olive)}.banner{flex-wrap:wrap}.banner-actions{gap:8px;width:100%;display:flex}.banner{background:var(--olive-tint);color:var(--ink);border:1px solid var(--olive-line)}.banner-actions button{background:var(--paper);min-width:0;color:var(--olive-dark);border:1px solid var(--olive-line);border-radius:10px;flex:1;gap:6px;padding:10px 8px;font-size:15px;line-height:1.35}.banner-actions button.banner-send{background:var(--olive);color:#fff;border-color:var(--olive)}.icon-btn.listed{background:var(--olive-tint);border-color:var(--olive-line);color:var(--olive)}.share-sheet-head{gap:8px}.share-sheet-head h3{flex:1}.share-lang-btn{background:var(--paper);color:var(--olive);border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:15px;display:inline-flex}.share-sheet .share-langs{flex-wrap:wrap;overflow:visible}.share-hint{color:var(--soft);margin:-2px 4px 0;font-size:14px}.proposal{background:var(--paper);border:1px solid var(--olive-line);border-radius:20px;margin-bottom:14px;padding:14px}.proposal-title{font-size:18px;display:block}.proposal-hint{color:var(--muted);margin-bottom:8px;font-size:14px;display:block}.proposal-row{border-top:1px solid var(--line);align-items:center;gap:10px;padding:10px 0;display:flex}.proposal-row .date{flex-direction:column;flex:none;width:62px;line-height:1.3;display:flex}.proposal-row .date b{font-size:15px}.proposal-row .date span{color:var(--muted);font-size:13px}.proposal-row img,.proposal-ph{object-fit:cover;background:var(--tint);border-radius:10px;flex:none;width:42px;height:42px}.proposal-name{min-width:0;font-size:16px;font-weight:700;line-height:1.4}.proposal .form-actions{margin-top:8px}.share-aisles{flex-wrap:wrap;gap:8px;display:flex}.share-aisles button{background:var(--paper);color:var(--muted);border:1px solid var(--line);border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:14px;display:inline-flex}.share-aisles button.on{background:var(--olive-tint);border-color:var(--olive-line);color:var(--olive-dark)}.list-card{background:var(--paper);border:1px solid var(--line);border-radius:16px;flex:none;overflow:hidden}.list-row{width:100%;color:var(--ink);text-align:start;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:12px 14px;font-size:16px;text-decoration:none;display:flex}.list-row+.list-row{border-top:1px solid var(--line)}.list-row b{font-size:16px;font-weight:700}.list-row .grow span{color:var(--muted);text-align:start;font-size:14px;display:block}.list-row>.chev{color:var(--soft)}.list-icon{background:var(--olive-tint);width:34px;height:34px;color:var(--olive);border-radius:10px;flex:none;place-items:center;display:grid}.list-icon.wa{color:#1f8f4e;background:#e3f3e8}.chev{display:inline-flex}[dir=rtl] .chev{transform:scaleX(-1)}.contact-lead{color:var(--muted);margin:0 2px;font-size:16px;line-height:1.7}.list-row .grow{flex:1;min-width:0}.app-splash{flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:100dvh;display:flex}.app-splash-mark{color:#f6f2e7;background:#4b5a32;border-radius:24px;place-items:center;width:84px;height:84px;display:grid}.app-splash .screen-loading{padding:22px 0 0}.live-recipe{background:var(--paper);border:1px solid var(--line);border-radius:20px;margin-top:16px;animation:.3s ease-out live-in;overflow:hidden}.live-cover{object-fit:cover;width:100%;height:190px;animation:.4s ease-out live-in;display:block}.live-body{padding:14px 16px 6px}.live-title{margin:2px 0 4px;font-size:22px;line-height:1.4}.live-notes{color:var(--muted);margin:0 0 4px;font-size:15px;line-height:1.7}.live-recipe .stats{background:var(--sand);margin:12px 0 6px;animation:.3s ease-out live-in}.live-label{align-items:center;gap:8px;margin:16px 0 8px;font-size:18px;font-weight:700;display:flex}.live-ings{margin:0;padding:0;list-style:none}.live-ings li{border-top:1px solid var(--line);align-items:baseline;gap:10px;padding:8px 0;font-size:16px;line-height:1.6;animation:.25s ease-out live-in;display:flex}.live-ings li:first-child{border-top:0}.live-ings b{color:var(--olive-dark)}.live-dot{background:var(--olive-line);border-radius:50%;flex:none;width:7px;height:7px;transform:translateY(-2px)}.live-note{color:var(--muted);font-size:14px}.live-recipe .step{animation:.25s ease-out live-in}@keyframes live-in{0%{opacity:0;transform:translateY(4px)}}.loader.compact .pot-scene{display:none}.loader.compact{padding-top:4px}.picks-row{grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:visible}.picks-row .recent img,.picks-row .recent-ph{width:100%;height:96px}.picks-row .recent b{font-size:15px}.picks-row .recent{flex-direction:column;justify-content:flex-start;align-items:stretch;display:flex}.idea-options.single{grid-template-columns:1fr}.idea-options.single .idea{grid-template-columns:auto 1fr;align-items:center;column-gap:12px;display:grid}.idea-options.single .idea-icon{grid-row:span 2}.idea-options.single .idea b{margin-top:0}.plan-section{margin:6px 2px 10px;font-size:19px}.plan-section+*{margin-top:0}.plan-today{background:var(--paper);border:1px solid var(--line);width:100%;color:var(--ink);text-align:start;border-radius:20px;margin-bottom:18px;padding:0;display:block;overflow:hidden}.plan-today-media{background:0 0;border:0;border-radius:0;width:100%;padding:0;display:block}.plan-today-media img,.plan-today-media .plan-today-ph{object-fit:cover;place-items:center;width:100%;height:170px;display:grid}.plan-today-ph{color:#4f5e358c;background:linear-gradient(135deg,#f1ebdd,#e8dcc4)}.plan-today-body{padding:12px 14px 14px}.plan-today-title{color:var(--ink);text-align:start;background:0 0;border:0;margin:2px 0;padding:0;font-size:22px;font-weight:700;display:block}.plan-today-meta{color:var(--muted);min-height:4px;font-size:14px;display:block}.plan-today-actions{gap:8px;margin-top:12px;display:flex}.plan-today-actions button{flex:1;gap:6px;padding:10px 8px;font-size:15px}.plan-today-actions .btn-outline{color:var(--olive-dark);border-color:var(--olive-line)}.plan-today.empty{border-style:dashed;border-color:var(--olive-line);align-items:center;gap:14px;padding:14px;display:flex}.plan-today.empty .plan-today-ph{border-radius:16px;flex:none;place-items:center;width:56px;height:56px;display:grid}.plan-today.empty b{font-size:17px;display:block}.plan-today.empty .grow span{color:var(--muted);font-size:14px}.plan-days{background:var(--paper);border:1px solid var(--line);border-radius:18px;margin-bottom:12px;overflow:hidden}.plan-day{width:100%;color:var(--ink);text-align:start;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:11px 14px;display:flex}.plan-day+.plan-day{border-top:1px solid var(--line)}.plan-day-date{flex:none;width:78px;line-height:1.35}.plan-day-date b{align-items:center;gap:4px;font-size:16px;display:flex}.plan-day-date>span{color:var(--soft);font-size:13px}.plan-day-meal b{font-size:16px;line-height:1.4;display:block}.plan-day-add{color:var(--soft);border:1px dashed var(--olive-line);border-radius:10px;align-items:center;gap:6px;padding:8px 10px;font-size:15px;display:flex}.plan-thumb{object-fit:cover;border-radius:10px;flex:none}.plan-thumb.small{width:42px;height:42px}.plan-thumb.ph{color:#4f5e358c;background:linear-gradient(135deg,#f1ebdd,#e8dcc4);place-items:center;display:grid}.plan-tools{gap:8px;margin-bottom:18px;display:flex}.plan-tools button{color:var(--olive-dark);flex:1;gap:6px;padding:10px 8px;font-size:14px}.plan-reminders{margin-bottom:24px}.plan-reminders-body{border-top:1px solid var(--line);padding:4px 14px 14px}.meal-picker{max-height:88vh}.meal-picker .input-icon{margin-bottom:4px}.meal-picker-list{background:var(--paper);border:1px solid var(--line);border-radius:16px;max-height:60vh;overflow-y:auto}.meal-option{width:100%;color:var(--ink);text-align:start;background:0 0;border:0;border-radius:0;align-items:center;gap:12px;padding:10px 12px;display:flex}.meal-option+.meal-option{border-top:1px solid var(--line)}.meal-option b{font-size:16px;display:block}.meal-option .grow span{color:var(--muted);font-size:13px}.meal-option.on{background:var(--olive-tint);color:var(--olive-dark)}.meal-option.remove{color:var(--red)}.plan-day .grow,.meal-option .grow,.plan-today.empty .grow{flex:1;min-width:0}
