@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap";:root{color:#202925;font-synthesis:none;background:#f6f4ee;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background:#f6f4ee;margin:0}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{opacity:.35;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #dfa72f}.app{max-width:740px;padding:0 20px calc(94px + env(safe-area-inset-bottom));min-height:100svh;margin:auto}.top{justify-content:space-between;align-items:center;height:68px;display:flex}.brand{letter-spacing:-1px;align-items:center;gap:7px;font-family:Fraunces,serif;font-size:24px;font-weight:600;display:flex}.brand span{color:#f9f6ec;background:#29443b;border-radius:50%;place-items:center;width:27px;height:27px;font:700 14px DM Sans;display:grid}.top-right{align-items:center;gap:12px;display:flex}.round,.avatar,.circle-add{background:#e9e7df;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.avatar{color:#2b332c;background:#dca937;font-weight:700}.welcome{padding:22px 0 28px}.welcome p,.eyebrow{letter-spacing:.09em;color:#6c756d;text-transform:uppercase;margin:0 0 7px;font:500 10px DM Mono,monospace}.welcome h1,.page-title h1,.recipe-hero h1,.kitchen h1{letter-spacing:-1.6px;margin:0;font:600 35px/1.05 Fraunces,serif}.welcome span{color:#667067;margin-top:10px;display:block}.primary-surface{color:#f9f6ec;background:#29443b;border-radius:20px;justify-content:space-between;align-items:flex-end;gap:12px;padding:23px 22px;display:flex}.primary-surface .eyebrow{color:#b8c4ae}.primary-surface h2{margin:0 0 8px;font:500 23px/1.1 Fraunces,serif}.muted{color:#667067;margin:7px 0 0;font-size:14px}.primary-surface .muted{color:#ccd2c5}.light-action,.primary{color:#202924;white-space:nowrap;background:#e4aa35;border-radius:12px;align-items:center;gap:7px;padding:12px 15px;font-weight:700;display:flex}.light-action{background:#f7f4e9;padding:10px 12px;font-size:13px}.overview{grid-template-columns:repeat(3,1fr);gap:4px;padding:26px 0 9px;display:grid}.overview button{text-align:left;padding:4px 7px}.overview b{letter-spacing:-1px;font:600 27px Fraunces,serif;display:block}.overview span{color:#657067;margin-top:3px;font-size:11px;line-height:1.15;display:block}.cookable-teaser{text-align:left;border-top:1px solid #dfddd5;border-bottom:1px solid #dfddd5;align-items:center;gap:10px;width:100%;margin:7px 0 5px;padding:12px 0;display:flex}.cookable-teaser-icon{color:#9b711e;background:#e4ecdc;border-radius:10px;flex:none;place-items:center;width:31px;height:31px;display:grid}.cookable-teaser span:nth-child(2){flex:1;min-width:0}.cookable-teaser b,.cookable-teaser small{display:block}.cookable-teaser b{color:#315e49;font-size:13px}.cookable-teaser small{color:#717b72;margin-top:3px;font-size:11px;line-height:1.3}.cookable-teaser>svg{color:#879287;flex:none}.icon{color:#29443b;margin-bottom:9px;display:block}.icon svg{width:21px}.warn .icon,.low{color:#b95a30!important}.section{padding:24px 0 4px}.section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.section-head h2{letter-spacing:-.7px;margin:0;font:600 22px Fraunces,serif}.section-head>span{color:#6b756c;font-size:12px}.section-note{color:#69726b;margin:4px 0 0;font-size:12px;line-height:1.35}.text-button{color:#315b4a;align-items:center;gap:3px;font-size:13px;font-weight:700;display:flex}.line-item{text-align:left;border-bottom:1px solid #e4e1d9;align-items:center;gap:12px;width:100%;padding:12px 0;display:flex}.line-item>svg{color:#788178;width:18px;margin-left:auto}.line-item b{font-size:14px;display:block}.line-item small,.freezer-row small{color:#747b74;margin-top:3px;font-size:12px;display:block}.food-dot{color:#29443b;background:#dde8d7;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font:600 16px Fraunces,serif;display:grid}.recipe-scroll{scrollbar-width:none;gap:13px;margin-right:-20px;padding:0 20px 12px 0;display:flex;overflow:auto}.recipe-tile{text-align:left;flex:none;width:154px}.tile-art{color:#41624e;background:#d9e4d2;border-radius:12px 12px 0 0;place-items:center;height:89px;margin-bottom:9px;font:42px Fraunces;display:grid}.recipe-tile:nth-child(2) .tile-art{color:#96743b;background:#ead5a6}.recipe-tile b{font-size:13px;line-height:1.2;display:block}.recipe-tile small{color:#6d756e;margin-top:4px;font-size:11px;display:block}.tabbar{z-index:9;height:75px;padding:8px max(15px, calc((100vw - 740px) / 2 + 15px)) calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf8f2ed;border-top:1px solid #e2dfd6;justify-content:space-between;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar button{color:#7a827a;flex-direction:column;align-items:center;gap:4px;width:20%;font-size:10px;display:flex}.tabbar svg{width:20px}.tabbar .active{color:#29443b;font-weight:700}.page-title{justify-content:space-between;align-items:flex-start;padding:25px 0 19px;display:flex}.page-actions{flex:none;align-items:center;gap:12px;display:flex}.page-title h1{font-size:34px}.circle-add{color:#fff;background:#29443b;width:43px;height:43px}.search{color:#687168;background:#ebe9e2;border-radius:13px;align-items:center;gap:9px;height:48px;padding:0 14px;display:flex}.search input{background:0 0;border:0;outline:0;width:100%}.filter-row{gap:8px;padding:15px 0;display:flex;overflow:auto}.filter-row button,.switch button{white-space:nowrap;background:#e9e7df;border-radius:99px;padding:8px 12px;font-size:12px}.filter-row .selected,.switch .selected{color:#fff;background:#29443b}.recipe-list,.cookable-list{border-top:1px solid #dddcd4}.cookable-row{border-bottom:1px solid #dfddd5;padding:12px 0}.cookable-main{text-align:left;align-items:center;gap:11px;width:100%;display:flex}.cookable-main>span:nth-child(2){min-width:0}.cookable-main b,.cookable-main small{display:block}.cookable-main b{font-size:14px}.cookable-main small{color:#6e786f;margin-top:4px;font-size:11px}.cookable-missing{flex-wrap:wrap;gap:5px;margin:8px 0 0 60px;display:flex}.cookable-missing span{color:#815c29;background:#f0e9dd;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:700}.cookable-plan{margin:8px 0 0 60px}.recipe-row,.plan-row,.freezer-row{text-align:left;border-bottom:1px solid #dfddd5;align-items:center;gap:13px;padding:15px 0;display:flex}.recipe-row{width:100%}.recipe-symbol{color:#3e674f;background:#dce8d6;border-radius:13px;flex:none;place-items:center;width:47px;height:47px;font:25px Fraunces;display:grid}.recipe-row:nth-child(3n+2) .recipe-symbol,.freezer-row:nth-child(3n+2) .recipe-symbol{color:#916d2a;background:#eedcaf}.row-title{align-items:center;gap:7px;display:flex}.row-title h3,.plan-row h3,.inventory-row h3,.freezer-row h3{margin:0;font-size:15px;line-height:1.15}.row-title svg{color:#d49a20}.recipe-row p,.plan-row p,.freezer-row p{color:#667067;margin:5px 0;font-size:12px}.recipe-row small{color:#8a9089;font-size:11px}.bare{place-items:center;padding:5px;display:grid}.recipe-row .bare{color:#849087;margin-left:auto}.favorite{background:#ebe8df;border-radius:50%;place-items:center;width:43px;height:43px;display:grid}.favorite.on{color:#bc8420}.back{color:#456050;align-items:center;gap:5px;margin-top:15px;font-size:13px;font-weight:600;display:flex}.recipe-hero{justify-content:space-between;gap:15px;padding:22px 0 17px;display:flex}.recipe-hero h1{font-size:36px}.recipe-hero>div>p:last-child{color:#667067;margin:12px 0 0;font-size:14px;line-height:1.5}.stats{border-top:1px solid #dddcd4;border-bottom:1px solid #dddcd4;gap:14px;padding:12px 0;display:flex;overflow:auto}.stats span{white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:flex}.stats svg{color:#4e735b;width:16px}.recipe-source-meta{color:#6d756e;margin:10px 0 0;font-size:12px}.recipe-source-meta a{color:#315b4a;text-underline-offset:2px;font-weight:700;text-decoration:underline}.switch{flex-wrap:wrap;gap:7px;padding-top:20px;display:flex}.helper{color:#69726b;background:#e6ecdf;border-radius:10px;padding:12px;font-size:13px;line-height:1.5}.recipe-detail{padding-bottom:12px}.ingredient{align-items:baseline;gap:6px;padding:9px 0;font-size:14px;display:flex}.ingredient-editable{text-align:left;cursor:pointer;border-bottom:1px dashed #e0ded6;width:100%}.ingredient-editable svg{color:#9aa39a;flex-shrink:0;align-self:center;margin-left:auto}.ingredient-editable:active{opacity:.6}.ingredient b{font-weight:500}.ingredient small{color:#737a73;font-size:12px}.component-row,.component-edit-row{border-bottom:1px solid #e4e1d9;align-items:center;gap:10px;padding:10px 0;display:flex}.component-row:last-child,.component-edit-row:last-child{border-bottom:0}.component-row .recipe-symbol,.component-edit-row .recipe-symbol{border-radius:9px;width:34px;height:34px;font-size:19px}.component-row b,.component-edit-copy b{font-size:13px;display:block}.component-row small,.component-edit-copy small{color:#7a847b;margin-top:3px;font-size:11px;display:block}.component-edit-copy{flex:1;min-width:0}.component-remove{color:#a95a44}.component-empty{color:#7a847b;margin:8px 0 0;font-size:12px;line-height:1.45}.check-empty,.big-check{border:1.5px solid #a9b0a6;border-radius:5px;flex:none;place-items:center;width:18px;height:18px;display:inline-grid}.step{gap:12px;padding:9px 0;display:flex}.step>span{color:#315a45;background:#dae6d4;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:grid}.step p{margin:2px 0;font-size:14px;line-height:1.4}.step small{color:#697269;align-items:center;gap:3px;margin-top:7px;font-size:11px;display:flex}.step-equipment{background:#eef0e9;border-radius:999px;width:fit-content;padding:2px 7px;color:#53675a!important}.sticky-actions{gap:10px;padding-top:16px;display:flex;position:sticky;bottom:6px}.sticky-actions button{flex:1;justify-content:center}.secondary{border:1px solid #c9cdc4;border-radius:12px;align-items:center;gap:7px;padding:12px 15px;font-weight:700;display:flex}.form{padding-bottom:20px}.form label,.modal label{color:#59645c;font-size:12px;font-weight:600;display:block}.form input,.form select,.form textarea,.modal input,.modal select,.modal textarea{color:#202925;background:#fffdfa;border:1px solid #d6d5cd;border-radius:9px;width:100%;margin:6px 0 14px;padding:11px 10px}.form textarea{resize:vertical;min-height:68px}.form-grid{grid-template-columns:1fr 1fr;gap:0 10px;display:grid}.form-section{border-top:1px solid #dfddd5;padding:18px 0}.alias-editor{border-top:1px solid #dfddd5;margin-top:2px;padding-top:16px}.alias-editor .section-head{margin-bottom:3px}.alias-list{flex-wrap:wrap;gap:7px;margin:10px 0 3px;display:flex}.alias-chip{color:#315b4a;background:#e8eee2;border-radius:99px;align-items:center;gap:5px;padding:6px 8px 6px 10px;font-size:12px;font-weight:600;display:inline-flex}.alias-chip button{color:#6e7d70;place-items:center;padding:0;display:grid}.alias-add-row{align-items:center;gap:8px;display:flex}.alias-add-row input{flex:1;margin-bottom:0}.alias-add-row .text-button{white-space:nowrap}.alias-empty{margin:9px 0;font-size:12px}.edit-ingredient{grid-template-columns:minmax(86px,1fr) 54px 66px auto auto 24px;align-items:center;gap:5px;margin-bottom:7px;display:grid}.edit-ingredient input,.edit-ingredient select{margin:0;padding:9px 7px;font-size:12px}.taste{color:#5e695f;padding:7px 3px;font-size:10px}.taste.active{color:#fff;background:#53735d;border-radius:6px}.optional-toggle{white-space:nowrap;font-size:9px}.danger{color:#a95a44}.edit-step{grid-template-columns:25px 1fr 52px;align-items:start;gap:7px;margin-bottom:7px;display:grid}.edit-step>b{text-align:center;padding-top:11px}.edit-step textarea,.edit-step input,.edit-step select{margin:0;padding:8px}.edit-step select{grid-column:2/-1;font-size:12px}.submit{justify-content:center;width:100%;margin-top:12px}.plan-summary{border-top:1px solid #dddcd4;border-bottom:1px solid #dddcd4;gap:0;margin-bottom:7px;padding:14px 0;display:flex}.plan-summary span{color:#6d766e;text-align:center;border-right:1px solid #dfddd5;width:33%;font-size:11px}.plan-summary span:last-child{border:0}.plan-summary b{color:#253329;font-size:13px;display:block}.archive-action{color:#8b5e4a;align-items:center;gap:6px;margin:18px auto 0;display:flex}.plan-row .recipe-symbol{cursor:pointer;border:0;padding:0}.plan-row>div{flex:1}.portion{align-items:center;gap:12px;margin-top:9px;display:flex}.portion button,.quantity-control button{background:#e5e8e1;border-radius:50%;width:25px;height:25px;font-weight:700}.portion b{font-size:14px}.portion span{color:#6d756e;margin-left:-8px;font-size:11px}.add-wide{color:#456451;border:1px dashed #aab9ab;border-radius:11px;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:13px;padding:13px;font-weight:600;display:flex}.picker{background:#e5eee0;border-radius:15px;margin-top:15px;padding:13px}.shop-group{padding-top:12px}.shopping-item{text-align:left;border-bottom:1px solid #e0ded6;align-items:center;gap:11px;width:100%;padding:12px 0;display:flex}.shopping-item b{font-size:15px;display:block}.shopping-item small{color:#778077;margin-top:3px;font-size:11px;display:block}.shopping-item.checked{opacity:.48}.shopping-item.checked b{text-decoration:line-through}.big-check{width:23px;height:23px}.big-check svg{color:#315e49;stroke-width:3px;width:16px}.pressed{color:#fff;background:#29443b}.inventory{border-top:1px solid #dfddd5}.inventory-row{border-bottom:1px solid #dfddd5;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:14px 0;display:grid}.inventory-row small{color:#7a8179;font-size:11px}.pantry-edit{color:#315e49;background:#e7eee2;border-radius:9px;justify-content:center;width:32px;height:32px}.catalog-link{align-items:center;gap:4px;margin-top:7px;display:inline-flex}.catalog-loading{text-align:center;padding:28px 0}.catalog-edit{color:#315e49;justify-content:center;width:36px;height:36px}.quantity-control{align-items:center;gap:7px;display:flex}.quantity-control b{text-align:center;min-width:34px;font-size:13px}.quantity-control small{font-weight:400;display:block}.modal-backdrop{z-index:20;background:#18231d5c;align-items:flex-end;display:flex;position:fixed;inset:0}.modal{width:min(740px,100%);padding:22px 20px calc(22px + env(safe-area-inset-bottom));background:#f8f7f1;border-radius:20px 20px 0 0;box-shadow:0 -10px 30px #15231922}.kitchen{min-height:calc(100svh - 68px);padding:22px 0 25px}.kitchen-back{margin:0 0 22px}.kitchen-select label{color:#748077;font-size:12px;font-weight:600}.kitchen-select select{background:0 0;border:0;width:100%;margin-top:5px;padding:0;font:600 17px Fraunces}.progress{background:#d9ddd5;border-radius:10px;height:5px;margin:25px 0 23px}.progress span{background:#dba938;border-radius:10px;height:100%;transition:width .25s;display:block}.kitchen h1{max-width:580px;font-size:31px;line-height:1.16}.timer{color:#315a46;border:1px solid #bbc7b8;border-radius:11px;align-items:center;gap:8px;margin:24px 0 13px;padding:13px 15px;font-weight:700;display:flex}.timer-stack{background:#eef3ea;border:1px solid #d8e0d3;border-radius:12px;gap:5px;margin:-4px 0 12px;padding:10px 12px;display:grid}.timer-stack-title{color:#68766b;letter-spacing:.08em;font:500 9px DM Mono,monospace}.timer-stack-row{text-align:left;color:#315a46;align-items:center;gap:8px;width:100%;min-height:32px;font-size:12px;display:flex}.timer-stack-row span{flex:1}.timer-stack-row b{font:600 14px DM Mono,monospace}.timer-stack-row svg{color:#879587}.timer-notice{color:#17613f;background:#e3f2e9;border-radius:13px;margin:0 0 8px;padding:12px 14px;font-size:13px;font-weight:750}.kitchen-actual{color:#17613f;margin-top:3px;margin-left:35px;font-size:11px;font-weight:700;display:block}.kitchen-planned{color:#718076;margin-top:3px;margin-left:35px;font-size:11px;display:block}.kitchen-ingredient-copy{flex:1;min-width:0}.kitchen-extra-row{color:#17613f;align-items:center;gap:10px;padding:10px 0;display:flex}.kitchen-extra-row>span:nth-child(2){flex:1;min-width:0}.kitchen-extra-row b,.kitchen-extra-row small{display:block}.kitchen-extra-row small{color:#718076;margin-top:3px;font-size:11px}.kitchen-extra-row .bare{color:#8b5e4a;justify-content:center;width:34px;min-height:34px}.kitchen-extra{color:#315e49;border:1px dashed #aebcaf;border-radius:11px;justify-content:flex-start;width:100%;margin-top:8px;font-weight:700;padding:11px 12px!important}.modal-hint{color:#687269;margin:4px 0 14px;font-size:13px;line-height:1.45}.check-option{align-items:center;gap:9px;margin:2px 0 0;color:#4c5d51!important;font-weight:500!important;display:flex!important}.check-option input{accent-color:#315e49;height:18px;width:18px!important;margin:0!important}.feedback-fields{gap:10px;margin:3px 0 14px;display:grid}.feedback-field>span{color:#59645c;margin-bottom:5px;font-size:12px;font-weight:700;display:block}.choice-row{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.choice-row button{color:#4f6255;border:1px solid #d2d6cc;border-radius:9px;padding:9px 6px;font-size:12px;font-weight:700}.choice-row button.selected{color:#1d563b;background:#e1eee2;border-color:#315e49}.kitchen-ingredients{border-top:1px solid #d9d9d1;margin-top:20px;padding-top:20px}.mise-title{padding-bottom:8px}.mise-progress{margin:12px 0 18px}.mise-switch{padding:0 0 9px}.mise-equipment{padding:14px 0 4px}.equipment-grid{gap:8px;display:grid}.equipment-card{background:#fbfaf5;border:1px solid #d9ddd4;border-radius:12px;overflow:hidden}.equipment-card summary{color:#315e49;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:12px 13px;font-size:13px;font-weight:700;list-style:none;display:flex}.equipment-card summary::-webkit-details-marker{display:none}.equipment-card summary b{background:#e3ecdf;border-radius:99px;place-items:center;min-width:23px;height:23px;font-size:11px;display:grid}.equipment-card ul{color:#69736b;margin:0;padding:0 14px 12px 28px;font-size:12px;line-height:1.4}.equipment-card li+li{margin-top:6px}.mise-list{border-top:1px solid #dfddd5}.mise-row{text-align:left;border-bottom:1px solid #dfddd5;align-items:center;gap:12px;width:100%;padding:14px 1px;display:flex}.mise-row b{font-size:14px;display:block}.mise-row small{color:#718076;margin-top:4px;font-size:11px;line-height:1.35;display:block}.mise-row.done{opacity:.54}.mise-row.done b{text-decoration:line-through}.kitchen-ingredients h2{margin:0 0 10px;font:600 20px Fraunces}.kitchen-ingredients button{text-align:left;align-items:center;gap:10px;width:100%;padding:10px 0;font-size:14px;display:flex}.kitchen-ingredients .done{opacity:.52;text-decoration:line-through}.kitchen-controls{z-index:10;bottom:calc(89px + env(safe-area-inset-bottom));gap:10px;max-width:700px;margin:auto;display:flex;position:fixed;left:20px;right:20px}.kitchen-controls button{flex:1;justify-content:center}.fefo{background:#e4ecdc;border-radius:14px;align-items:center;gap:12px;margin-bottom:12px;padding:15px;display:flex}.fefo>svg{color:#b18026}.fefo b{font:600 17px Fraunces;display:block}.fefo small{color:#68736a;margin-top:3px;font-size:11px;display:block}.freezer-row>div:nth-child(2){flex:1;min-width:0}.freezer-edit{color:#315e49;background:#e7eee2;border-radius:9px;flex:none;width:34px;height:34px}.consume{text-align:right;flex:none}.consume b{font:600 19px Fraunces;display:block}.consume b small{font:400 10px DM Sans}.consume button{color:#325e48;margin-top:6px;font-size:11px;font-weight:700}.undo-toast{z-index:12;left:20px;right:20px;bottom:calc(88px + env(safe-area-inset-bottom));color:#f8f6ee;background:#29443b;border-radius:12px;align-items:center;gap:10px;max-width:700px;margin:auto;padding:11px 13px;font-size:13px;animation:.2s both rise;display:flex;position:fixed;box-shadow:0 7px 20px #1b2e2450}.undo-toast span{flex:1}.undo-toast button{color:#f2c75a;font-size:12px;font-weight:700}.empty{text-align:center;color:#69736b;padding:70px 28px}.empty>div{color:#416953;background:#e0e9da;border-radius:50%;place-items:center;width:52px;height:52px;margin:auto;display:grid}.empty h2{color:#28382e;margin:17px 0 7px;font:600 23px Fraunces}.empty p{margin:0;font-size:13px;line-height:1.5}.history{border-top:1px solid #dddcd4}.history-link{color:#315e49;text-align:left;border-top:1px solid #dfddd5;align-items:center;gap:10px;width:100%;margin:9px 0 4px;padding:13px 0;display:flex}.history-link>svg:last-child{margin-left:auto}.history-link b,.history-link small{display:block}.history-link b{font-size:13px}.history-link small{color:#737c73;margin-top:3px;font-size:11px}.feedback-loading{padding:13px 0 2px;font-size:12px}.feedback-history{border-top:1px solid #dddcd4;padding-top:17px}.feedback-overview{background:#e6ecdf;border-radius:13px;align-items:center;gap:15px;padding:13px 14px;display:flex}.feedback-score{border-right:1px solid #cad7c5;align-items:baseline;gap:6px;padding-right:15px;display:flex}.feedback-score strong{color:#29443b;font:600 25px Fraunces,serif}.feedback-score span,.feedback-score-detail small{color:#647267;font-size:11px}.feedback-score-detail{gap:4px;display:grid}.feedback-stars{color:#be8420;gap:2px;display:flex}.feedback-entries{gap:0;margin-top:9px;display:grid}.feedback-entry{border-bottom:1px solid #e0ded6;padding:11px 0}.feedback-entry-head,.feedback-tags{align-items:center;gap:7px;display:flex}.feedback-entry-head{color:#707970;justify-content:space-between;font-size:11px}.feedback-entry-rating{color:#a9771d;align-items:center;gap:3px;font-weight:700;display:inline-flex}.feedback-tags{flex-wrap:wrap;margin-top:7px}.feedback-tags span{color:#5f6d62;background:#f0efe8;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:700}.feedback-entry p{color:#4e5d51;margin:8px 0 0;font-size:12px;line-height:1.4}.feedback-more{margin:9px 0 0;font-size:11px}@media (width>=760px){.app{padding-left:35px;padding-right:35px}.tabbar{padding-left:max(20px,50vw - 350px);padding-right:max(20px,50vw - 350px)}}@media (width<=380px){.app{padding-left:15px;padding-right:15px}.edit-ingredient{grid-template-columns:1fr 55px 65px 42px 20px}.overview b{font-size:24px}.stats{gap:10px}.kitchen-controls{left:15px;right:15px}}.edit-version{color:#315b4a;white-space:nowrap;margin-left:auto;padding:8px 3px;font-size:12px;font-weight:700}.compare-version{margin-left:0}.version-compare{background:#fbfaf5;border:1px solid #d8ddd3;border-radius:14px;padding:16px 13px 8px}.version-compare .section-head{margin-bottom:14px}.compare-grid{border-top:1px solid #e3e1d8;grid-template-columns:minmax(92px,1.3fr) repeat(2,minmax(74px,1fr));align-items:center;gap:8px;padding:10px 0;font-size:12px;display:grid}.compare-grid b{font-weight:600}.compare-grid span{color:#68736a}.compare-heading{color:#8a9189;text-transform:uppercase;letter-spacing:.05em;border-top:0;padding-top:0;font-size:10px;font-weight:700}.compare-grid .added{color:#2f684b;font-weight:700}.version-row{color:#69746b;align-items:center;gap:7px;padding-top:11px;font-size:11px;display:flex;overflow-x:auto}.version-row span{flex:none;margin-right:2px}.version-row button{color:#4e6254;background:#e9e7df;border-radius:999px;flex:none;padding:7px 10px;font-size:11px;font-weight:700}.version-row button.selected{color:#fff;background:#315e49}.version-row .version-activate{color:#9a6a12;text-underline-offset:3px;background:0 0;text-decoration:underline}.first-use{padding:clamp(50px,13svh,110px) 0 20px;animation:.42s both rise}.first-mark{color:#315e49;background:#dce8d6;border-radius:20px;place-items:center;width:64px;height:64px;margin-bottom:28px;display:grid}.first-use h1{letter-spacing:-1.8px;max-width:570px;margin:0;font:600 clamp(34px,10vw,48px)/1.05 Fraunces,serif}.first-use>p:not(.eyebrow){color:#657069;max-width:440px;margin:17px 0 29px;font-size:15px;line-height:1.55}.first-cta{justify-content:center;width:100%;min-height:52px}.first-steps{color:#687269;justify-content:space-between;align-items:center;gap:5px;margin-top:27px;font-size:11px;display:flex}.first-steps span{white-space:nowrap;align-items:center;gap:6px;display:flex}.first-steps b{color:#fff;background:#557260;border-radius:50%;place-items:center;width:19px;height:19px;font-size:10px;display:grid}.first-steps svg{color:#9aa29a;width:14px}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.feedback h2{letter-spacing:-1px;margin:4px 0 7px;font:600 28px Fraunces,serif}.feedback>p:not(.eyebrow){color:#687269;margin:0 0 18px;font-size:13px}.star-rating{gap:5px;margin:0 0 18px;display:flex}.star-rating button{color:#d69c24;padding:4px}.star-rating svg{width:28px;height:28px}.feedback textarea{resize:vertical;background:#fffdfa;border:1px solid #d6d5cd;border-radius:9px;width:100%;min-height:78px;margin:6px 0 12px;padding:10px}.modal-cancel{margin:15px auto 0;display:block}.auth{max-width:560px;min-height:100svh;padding:31px 20px calc(28px + env(safe-area-inset-bottom));background:#f6f4ee;flex-direction:column;margin:auto;display:flex}.auth-brand{align-items:center;gap:7px;font:600 25px Fraunces,serif;display:flex}.auth-brand span{color:#f9f6ec;background:#29443b;border-radius:50%;place-items:center;width:27px;height:27px;font:700 14px DM Sans;display:grid}.auth-intro{padding:clamp(56px,14svh,120px) 0 26px;animation:.42s both rise}.auth-intro h1{letter-spacing:-2px;max-width:490px;margin:0;font:600 clamp(36px,10vw,53px)/1.04 Fraunces,serif}.auth-intro>p:last-child{color:#667068;max-width:390px;margin:16px 0 0;font-size:15px;line-height:1.55}.auth-form{margin-top:auto;animation:.5s 80ms both rise}.auth-form label{color:#526057;margin-top:12px;font-size:12px;font-weight:700;display:block}.auth-form input{color:#202925;background:#fffdfa;border:1px solid #d8d7cf;border-radius:10px;width:100%;margin-top:6px;padding:13px 12px}.password{display:block;position:relative}.password input{padding-right:47px}.password button{color:#68756c;place-items:center;width:37px;height:37px;display:grid;position:absolute;bottom:4px;right:5px}.password svg{width:18px}.auth-submit{justify-content:center;width:100%;min-height:52px;margin-top:23px}.auth-submit:disabled{opacity:.65}.auth-switch{color:#315b4a;margin:17px auto 0;font-size:13px;font-weight:700;display:block}.form-error{color:#ad4d35;margin:10px 0 0;font-size:12px}.import-text{color:#315b4a;margin:14px auto 0;font-size:13px;font-weight:700;display:block}.import-modal h2{letter-spacing:-1px;margin:3px 0 0;font:600 27px Fraunces,serif}.import-modal>p{color:#687269;margin:15px 0 12px;font-size:13px;line-height:1.45}.import-modal textarea{resize:vertical;color:#263129;background:#fffdfa;border:1px solid #d6d5cd;border-radius:10px;width:100%;height:min(32svh,245px);padding:12px;line-height:1.45}.import-file{color:#315b4a;background:#f3f6ef;border:1px dashed #b9c5b6;border-radius:12px;margin:12px 0;padding:12px;font-size:13px;font-weight:700;display:block}.import-file input{width:100%;margin-top:8px;font-size:12px;display:block}.import-file small{color:#718074;margin-top:5px;font-size:11px;font-weight:400;display:block}.import-modal .submit{justify-content:center;margin-top:13px}.import-modal .submit:disabled{opacity:.45}.settings-title{align-items:flex-start}.settings-mark{color:#315b4a;background:#e4eddf;border-radius:15px;flex:none;place-items:center;width:45px;height:45px;display:grid}.settings-form{gap:14px;padding-bottom:18px}.settings-card{background:#fffdfa;border:1px solid #deddd5;border-radius:16px;padding:16px}.settings-card .section-head{margin-bottom:4px}.settings-card h2{margin-top:2px;font-size:21px}.settings-copy{margin:9px 0 13px;font-size:12px;line-height:1.45}.settings-card label{margin-top:12px}.toggle-row{justify-content:space-between;align-items:center;gap:16px;display:flex;margin-top:13px!important}.toggle-row span{gap:4px;display:grid}.toggle-row small{color:#687269;font-size:12px;font-weight:400;line-height:1.35}.toggle-row input{appearance:none;cursor:pointer;background:#d3d6cf;border:0;border-radius:999px;flex:none;width:48px;height:28px;transition:background .2s;position:relative}.toggle-row input:after{content:"";background:#fffdfa;border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #27382c33}.toggle-row input:checked{background:#315b4a}.toggle-row input:checked:after{transform:translate(20px)}.permission-button{align-items:center;gap:6px;margin-top:14px;display:inline-flex}.settings-form>.submit{margin-top:2px}
