@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(./dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2)format("woff2-variations");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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(./dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations");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}.alphabetical-list{isolation:isolate;min-width:0}.alphabetical-list.has-index{grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:14px;display:grid}.alphabetical-content{min-width:0;max-width:100%;container-type:inline-size}.alphabetical-content>ul{grid-template-columns:minmax(0,1fr)}.alphabetical-content>ul>li{min-width:0}.alphabetical-rail-track{z-index:1;justify-self:end;width:34px;height:min(432px,100dvh - 190px);min-height:216px;position:sticky;top:100px}.alphabetical-rail{border:1px solid var(--line,#dedfd8);background:var(--papier,#fff);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:18px;flex-direction:column;width:100%;height:100%;padding:5px 2px;display:flex;box-shadow:0 2px 9px #0000000a}.alphabetical-rail button{min-width:0;min-height:0;color:var(--forest,#264b38);font:750 12px/1 var(--font-body,sans-serif);cursor:pointer;touch-action:none;background:0 0;border:0;border-radius:6px;flex:1 1 0;place-items:center;padding:0;display:grid}.alphabetical-rail button:disabled{opacity:.28;cursor:default}.alphabetical-rail button:not(:disabled):hover{background:var(--surface-muted,#eff2eb)}.alphabetical-rail button[aria-current=location]{background:var(--forest,#264b38);color:#fff}.alphabetical-rail button:focus-visible{outline:2px solid var(--brand,#b94732);outline-offset:1px}.alphabetical-rail.is-held{box-shadow:0 4px 12px #0000001f}.alphabetical-announcement{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.alphabetical-first,.alphabetical-more{margin-top:12px}.catalog-browser-results-layout{flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.catalog-browser-results-layout.has-index{grid-template-columns:minmax(0,1fr) 44px;gap:10px;padding-right:12px}.catalog-browser .catalog-browser-results-layout>.catalog-browser-body{min-width:0;min-height:0;padding-right:12px}.catalog-browser-results-layout>.alphabetical-rail-track{height:min(432px,100dvh - 200px);margin-top:12px;position:static}@container (width<=300px){.alphabetical-content .shopping-list>li{grid-template-columns:minmax(0,1fr);gap:6px;padding-block:8px;display:grid}.alphabetical-content .shopping-list .shopping-item-actions{flex-wrap:wrap;justify-self:end;max-width:100%}.alphabetical-content .shopping-list label{gap:10px}.alphabetical-content .shopping-list input{width:24px;height:24px}.alphabetical-content .shopping-list .shopping-line-photo{width:40px;height:40px}.alphabetical-content .shopping-picker-line{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.alphabetical-content .shopping-picker-line .shopping-picker-add{grid-column:1/-1}.alphabetical-content .shopping-picker-line .product-sheet-button{justify-self:start}.alphabetical-content .shopping-picker-line .drive-search-link{justify-self:end}.alphabetical-content .shopping-picker-rows .shopping-picker-text strong{overflow-wrap:anywhere;-webkit-line-clamp:unset;display:block}}@media (width<=700px){.alphabetical-list.has-index{grid-template-columns:minmax(0,1fr) 40px;gap:10px}.alphabetical-rail-track{width:30px;height:min(405px,100dvh - 200px);top:94px}.alphabetical-rail button{font-size:11px}.alphabetical-list .stock-use-tiles{grid-template-columns:repeat(auto-fit,minmax(min(100%,110px),1fr))}.catalog-browser-results-layout.has-index{grid-template-columns:minmax(0,1fr) 40px;gap:6px;padding-right:10px}}.presentation-dialog{color:#284c38;box-sizing:border-box;background:#fbf8f0;border:1px solid #d4decf;border-radius:22px;width:min(560px,100vw - 24px);max-height:calc(100dvh - 32px);padding:24px;overflow:auto}.presentation-dialog::backdrop{background:#1423198c}.presentation-dialog h2{margin:0 0 18px;padding:0;font-size:1.4rem}.presentation-fields{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.presentation-fields label{gap:6px;font-weight:600;display:grid}.presentation-fields input,.presentation-fields select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;font:inherit;color:inherit;background:#fff;border:1px solid #d4decf;border-radius:12px;padding:10px}.presentation-fields p{margin:0;font-size:.9rem}.presentation-photo-picker{flex-wrap:wrap;align-items:center;gap:16px;min-width:0;margin:18px 0;display:flex}.presentation-photo-picker>img,.presentation-photo-empty{object-fit:contain;background:#fff;border-radius:16px;width:132px;height:132px}.presentation-photo-empty{place-items:center;display:grid}.presentation-photo-controls{flex:1;gap:10px;min-width:150px;display:grid}.presentation-photo-controls label,.presentation-photo-controls button{white-space:normal;text-align:center;justify-content:center;min-height:44px}.presentation-photo-picker .form-error{flex-basis:100%}.presentation-dialog .dialog-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.presentation-dialog .dialog-actions button{flex:1;min-height:44px}.retail-personalize{justify-content:flex-end;margin:4px 0 12px;display:flex}.retail-personalize button,.recipe-presentation-action{min-height:44px}.recipe-presentation-action{margin:12px 0}@media (width<=420px){.presentation-dialog{padding:18px}.presentation-photo-picker{justify-content:center}.presentation-photo-controls{flex-basis:100%}}.product-photo-dialog.browsing{width:min(1100px,100vw - 16px);height:calc(100dvh - 24px);padding:0}.product-photo-dialog .catalog-browser{width:100%;height:100%;max-height:none;box-shadow:none;border:0;position:relative;inset:auto}.stock-department{grid-template-columns:minmax(0,1fr);align-content:start}.stock-families.stock-departments{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.stock-departments .stock-family-label{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;line-height:1.25;overflow:visible}.shopping-products .stock-departments .stock-department{flex-basis:112px}.stock-departments .stock-family-photo>svg{width:45%;height:45%;margin:20% auto}.stock-department:focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:12px}.stock-subrayons-heading{margin:0 0 8px;font-size:15px;font-weight:800}.stock-families.stock-subrayons{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));margin-top:0}.stock-subrayon{grid-template-columns:minmax(0,1fr);align-content:start}.stock-subrayon .stock-family-label{white-space:normal;text-overflow:clip;overflow-wrap:anywhere;line-height:1.25;overflow:visible}.shopping-products .stock-subrayons .stock-subrayon{flex-basis:112px}.stock-subrayon .stock-family-photo>svg{width:45%;height:45%;margin:20% auto}.stock-subrayon:focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:12px}@media (width<=820px){.stock-families.stock-departments{grid-template-columns:repeat(3,minmax(0,1fr))}}.retail-catalog-browser{--catalog-ink:var(--text,#252525);--catalog-soft:var(--bg,#f5f5f5)}.retail-catalog-browser .catalog-browser-body{padding-top:8px}.retail-catalog-browser.from-store-map .catalog-browser-header h2{font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.2}.retail-catalog-browser.from-store-map .catalog-store-context{margin:4px 0 8px;font-size:14px}.retail-catalog-browser.from-store-map .stock-subrayons-heading{margin:4px 0 6px}.retail-catalog-browser.from-store-map .catalog-charcuterie-groups{gap:6px;margin:8px 0}.retail-catalog-browser.from-store-map .catalog-charcuterie-groups button{font-size:14px}.retail-catalog-browser.from-store-map .generic-catalog-heading h3{font-size:1rem}.generic-catalog-layout{grid-template-columns:minmax(0,1fr) 34px;align-items:start;gap:8px;margin-top:8px;display:grid}.generic-catalog-layout>div:first-child{min-width:0}.generic-catalog-layout .alphabetical-rail-track{top:8px}.retail-catalog-browser.from-store-map .generic-catalog-card strong{font-size:14px;line-height:1.25}.retail-catalog-browser.from-store-map .generic-catalog-card{gap:4px;padding:8px}.retail-catalog-browser.from-store-map .generic-catalog-card .catalog-browser-action{min-height:40px;padding:6px;font-size:14px;line-height:1.15}.retail-catalog-browser.from-store-map .generic-catalog-card .text-button{min-height:32px;padding:4px;font-size:13px;line-height:1.2}.retail-catalog-browser .catalog-browser-crumbs{min-height:36px;color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 12px;display:flex}.retail-catalog-browser .catalog-browser-crumbs>span{align-items:center;gap:4px;display:inline-flex}.retail-catalog-browser .catalog-browser-crumbs button{min-height:36px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px 7px;font-size:14px}.retail-catalog-browser .catalog-browser-crumbs button[aria-current=page]{color:var(--catalog-ink);font-weight:800}.retail-catalog-browser .catalog-browser-tile{min-height:100%}.retail-catalog-browser .catalog-browser-tile img{object-fit:cover}.catalog-department-symbol{aspect-ratio:1;width:100%;color:var(--text-secondary);place-items:center;display:grid}.retail-catalog-browser .catalog-browser-tile>small{line-height:1.3}.retail-catalog-browser .catalog-browser-all-products{background:var(--catalog-soft);align-content:center;min-height:170px}.retail-catalog-browser .catalog-browser-all-icon{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:48px;height:48px;font-size:30px;display:grid}.retail-catalog-browser .catalog-browser-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:4px 0 10px;display:grid}.retail-catalog-browser .catalog-browser-filters label{color:var(--text-secondary);gap:5px;font-size:13px;font-weight:700;display:grid}.retail-catalog-browser .catalog-browser-filters select{border:1px solid var(--line);width:100%;min-width:0;min-height:46px;color:var(--brand);font:inherit;background:#fff;border-radius:11px;padding:6px 34px 6px 10px;font-size:15px}.retail-catalog-browser .catalog-browser-result-count{color:var(--text-secondary);margin:8px 0 4px;font-size:14px;font-weight:700}.retail-catalog-browser .catalog-browser-category{background:var(--catalog-soft);width:fit-content;max-width:100%;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:11px;line-height:1.2;display:block;overflow:hidden}.retail-catalog-browser .catalog-browser-more{border:1px solid var(--brand);width:min(100%,420px);min-height:52px;color:var(--brand);font:inherit;cursor:pointer;background:#fff;border-radius:13px;margin:18px auto 12px;padding:10px 18px;font-size:16px;font-weight:800;display:block}.catalog-online-search{border:1px solid var(--line);background:#f2f6ec;border-radius:12px;margin:6px 0 12px;padding:10px 12px}.catalog-online-search p{margin:0 0 7px;font-size:13px}.retail-catalog-browser .catalog-browser-product{cursor:default}.catalog-hideable-card,.retail-catalog-browser .catalog-browser-product{position:relative}.catalog-product-hide{border:1px solid var(--line);width:38px;height:38px;color:var(--brand);cursor:pointer;background:#fff;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 1px 4px #0002}.catalog-hidden-products{margin:2px 0 10px}.catalog-hidden-panel{border:1px solid var(--line);background:#fff;border-radius:12px;gap:8px;padding:12px;display:grid}.catalog-hidden-panel p{margin:0}.catalog-hidden-panel>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.catalog-no-photo{color:var(--text-secondary);text-align:center;place-items:center;padding:6px;font-size:12px;display:grid}.retail-catalog-browser .catalog-browser-letters{background:var(--catalog-soft)}.retail-catalog-browser .catalog-browser-letters span{font-size:12px}@media (width<=620px){.retail-catalog-browser .catalog-browser-body{padding-left:12px;padding-right:10px}.retail-catalog-browser.from-store-map .generic-catalog-card img{height:90px}.retail-catalog-browser .catalog-browser-filters{grid-template-columns:minmax(0,1fr);gap:7px}.retail-catalog-browser .catalog-browser-filters select{min-height:44px}.retail-catalog-browser .catalog-browser-tiles{gap:9px}.retail-catalog-browser .catalog-browser-tile{border-radius:13px;padding:7px}.retail-catalog-browser .catalog-browser-tile strong{font-size:15px}.retail-catalog-browser .catalog-browser-all-products{min-height:145px}.retail-catalog-browser .catalog-browser-category{font-size:10px}}.catalog-charcuterie-groups{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.catalog-meat-navigation{flex-wrap:wrap;gap:8px;margin:6px 0 14px;display:flex}.catalog-meat-navigation button{color:#254d34;min-height:44px;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #b9cbb9;border-radius:10px;padding:8px 15px;font-weight:700}.catalog-meat-navigation button[aria-pressed=true]{color:#fff;background:#345c43}.retail-catalog-browser.has-meat-filters .stock-subrayons-heading,.retail-catalog-browser.has-meat-filters .stock-subrayons{display:none}.catalog-charcuterie-groups button{color:#254d34;min-height:42px;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #b9cbb9;border-radius:10px;padding:8px 12px}.catalog-charcuterie-groups button[aria-pressed=true]{color:#fff;background:#345c43}.charcuterie-filters{margin:12px 0}.charcuterie-filters h3{color:#254d34;margin:12px 0 6px;font-size:14px}.charcuterie-other-rayons{margin:4px 0 10px}.charcuterie-other-rayons>summary{color:#345c43;cursor:pointer;align-items:center;min-height:36px;font-size:14px;font-weight:700;display:flex}.charcuterie-other-rayons>summary:before{content:"▸";margin-right:7px}.charcuterie-other-rayons[open]>summary:before{content:"▾"}.retail-catalog-browser .catalog-charcuterie-groups.charcuterie-types{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin:0;display:grid}.retail-catalog-browser .charcuterie-types button{text-align:left;white-space:normal;overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;min-height:62px;padding:6px;font-size:14px;line-height:1.2;display:flex}.charcuterie-type-photo{background-image:url(../magasin/charcuterie-familles-20261102.png);background-repeat:no-repeat;background-size:300% 300%;border-radius:8px;flex:0 0 48px;width:48px;height:48px}.catalog-counter-request{flex-wrap:wrap;align-items:end;gap:8px;margin:12px 0;display:flex}.catalog-counter-request label{flex:220px;gap:5px;font-weight:700;display:grid}.catalog-counter-request input{min-width:0;min-height:42px;font:inherit;border:1px solid #b9cbb9;border-radius:10px;padding:8px 10px}.generic-catalog-heading,.generic-reference-dialog header{justify-content:space-between;align-items:center;gap:12px;display:flex}.generic-catalog-card{flex-direction:column;gap:7px;min-width:0;padding:10px;display:flex}.generic-catalog-card img{object-fit:contain;background:#f4f3ed;border-radius:9px;width:100%;height:120px;display:block}.generic-catalog-card strong{overflow-wrap:anywhere}.generic-catalog-card small{color:#596d60}.generic-catalog-card .catalog-browser-action{margin-top:auto}.generic-reference-backdrop{z-index:150;background:#1a2a20a8;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.generic-reference-dialog{background:#fffdf7;border-radius:18px;width:min(100%,1000px);max-height:92dvh;padding:20px;overflow:auto}.generic-reference-dialog h3{margin:0}.retail-catalog-browser .generic-reference-backdrop,.retail-catalog-browser .shopping-article-sheet-backdrop{z-index:2200}@media (width>=821px){.retail-catalog-browser .stock-families.stock-departments{grid-template-columns:repeat(13,minmax(0,1fr))}}@media (width<=820px){.retail-catalog-browser .stock-families{-webkit-overflow-scrolling:touch;gap:8px;padding:3px 3px 10px;display:flex;overflow-x:auto}.retail-catalog-browser .stock-family{flex:0 0 88px}.catalog-charcuterie-groups{flex-wrap:nowrap;padding-bottom:8px;overflow-x:auto}.catalog-charcuterie-groups button{flex:none}.catalog-meat-navigation{flex-wrap:nowrap;padding-bottom:8px;overflow-x:auto}.catalog-meat-navigation button{flex:none}.retail-catalog-browser .catalog-charcuterie-groups.charcuterie-types{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:0;overflow:visible}.retail-catalog-browser .charcuterie-types button{min-height:58px;font-size:13px}.charcuterie-type-photo{flex-basis:42px;width:42px;height:42px}.retail-catalog-browser .catalog-meat-navigation.charcuterie-species{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;display:grid;overflow:visible}.charcuterie-species button{white-space:normal;overflow-wrap:anywhere;min-width:0;min-height:44px;padding:6px;font-size:13px;line-height:1.2}.charcuterie-species button:first-child{grid-column:span 3}}.shopping-articles{z-index:120;background:var(--paper,#fffdf7);color:var(--ink);padding:22px max(16px, env(safe-area-inset-right));flex-direction:column;min-width:0;display:flex;position:fixed;inset:0}.shopping-articles.is-inline{z-index:auto;background:0 0;padding:0;position:static}.shopping-articles-heading{align-items:center;gap:14px;display:flex}.shopping-articles-heading h2{flex:1;margin:0;font-size:25px}.shopping-articles-search{border:1px solid var(--border);border-radius:13px;align-items:center;gap:10px;margin:18px 0 0;padding:11px 14px;display:flex}.shopping-articles-search input{min-width:0;color:inherit;font:inherit;background:0 0;border:0;flex:1;min-height:28px}.shopping-articles-toolbar{justify-content:space-between;align-items:center;gap:10px;margin:9px 0;display:flex}.shopping-articles-toolbar p{color:var(--muted);font-size:13px}.shopping-aisle-brand{background:#f4f7ef;border:1px solid #d5dfd1;border-radius:13px;flex-wrap:wrap;align-items:end;gap:10px 16px;width:100%;max-width:1120px;margin:0 auto 14px;padding:12px 14px;display:flex}.shopping-aisle-brand>label,.shopping-aisle-brand form label{color:#294934;flex:0 310px;gap:5px;width:min(100%,310px);min-width:0;font-size:13px;font-weight:700;display:grid}.shopping-aisle-brand select,.shopping-aisle-brand input{color:#294934;width:100%;min-width:0;max-width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #c5d0c0;border-radius:9px;padding:7px 10px}.shopping-aisle-brand small{color:#526a57;flex:200px;padding-bottom:7px;line-height:1.4}.shopping-aisle-brand form{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.shopping-articles-content{overscroll-behavior:contain;min-height:0;padding:3px 3px 20px;overflow:auto}.shopping-article-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:16px;display:grid}.shopping-article-card{border:1px solid var(--border);background:var(--paper,white);border-radius:17px;min-width:0;position:relative;overflow:hidden}.shopping-article-card.is-picked{border-color:#345c43;box-shadow:0 0 0 1px #345c43}.shopping-article-open{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.shopping-article-open img,.shopping-article-placeholder{aspect-ratio:1.15;object-fit:contain;background:#f5f3ea;width:100%;display:block}.shopping-article-placeholder{color:#74866e;place-items:center;font-size:45px;display:grid}.shopping-article-open strong{overflow-wrap:anywhere;padding:12px 11px 7px;font-size:14px;line-height:1.4;display:block}.shopping-article-open>span:last-child{color:#345c43;align-items:center;gap:6px;padding:0 11px 10px;font-size:12px;display:flex}.shopping-article-add{color:#234634;width:calc(100% - 20px);min-height:39px;font:inherit;cursor:pointer;background:#e9f0e7;border:1px solid #345c43;border-radius:10px;justify-content:center;align-items:center;gap:6px;margin:0 10px 10px;font-size:13px;font-weight:700;display:flex}.shopping-article-add[aria-pressed=true]{color:#fff;background:#345c43}.shopping-article-hide{color:#3b4c37;cursor:pointer;background:#fffffff2;border:1px solid #b8c1b2;border-radius:50%;place-items:center;width:35px;height:35px;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 2px 8px #0001}.shopping-hidden-panel{max-width:850px;margin:auto}.shopping-hidden-panel>p{color:var(--muted);font-size:14px;line-height:1.6}.shopping-hidden-panel>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:13px 0;display:flex}.shopping-articles-pages{justify-content:center;align-items:center;gap:15px;margin-top:25px;display:flex}.shopping-article-sections{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-bottom:20px;display:grid}.shopping-article-sections button{border:1px solid var(--border);min-height:48px;color:var(--ink);text-align:left;font:inherit;cursor:pointer;background:#f8f7f0;border-radius:12px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.shopping-article-sections button[aria-pressed=true]{background:#e5eddf;border-color:#345c43}.shopping-article-sections span{color:var(--muted);font-size:12px}.shopping-article-family{margin-bottom:24px}.shopping-article-family h3{margin:6px 0 12px;font-size:17px}.shopping-article-section-select{display:none}.shopping-custom-article{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.shopping-article-sheet-backdrop{z-index:140;background:#1a2a20a8;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.shopping-article-sheet{background:var(--paper,#fffdf7);width:min(100%,560px);max-height:min(95dvh,900px);color:var(--ink);border-radius:19px;gap:15px;padding:22px;display:grid;overflow:auto;box-shadow:0 20px 70px #0004}.shopping-article-sheet header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.shopping-article-sheet h2{margin:2px 0 0;font-size:24px}.shopping-article-sheet p{color:var(--muted);margin:0;font-size:13px}.shopping-article-sheet-photo{background:#f5f3ea;border-radius:13px;justify-content:center;align-items:center;height:180px;display:flex;overflow:hidden}.shopping-article-sheet-photo img{object-fit:contain;width:100%;height:180px;min-height:0;max-height:100%;display:block}.shopping-article-sheet-photo span{color:#74866e;font-size:54px}.shopping-article-sheet-photo-actions{flex-wrap:wrap;gap:7px;display:flex}.shopping-article-sheet-photo-actions input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.shopping-article-sheet label:not(.secondary-button){gap:5px;font-size:13px;font-weight:700;display:grid}.shopping-article-sheet input:not([type=file]),.shopping-article-sheet select,.shopping-article-sheet textarea{border:1px solid var(--border);width:100%;min-width:0;min-height:43px;color:inherit;font:inherit;background:#fff;border-radius:10px;padding:9px 11px;font-weight:400}.shopping-article-sheet footer{flex-wrap:wrap;gap:8px;display:flex}@media (width<=560px){.shopping-article-sections{display:none}.shopping-article-section-select{gap:7px;margin:0 0 18px;font-size:12px;display:grid}.shopping-article-section-select select{min-width:0;max-width:100%;min-height:44px;color:inherit;border:1px solid var(--border);font:inherit;background:#fffdf7;border-radius:10px;padding:12px}.shopping-articles{padding:max(12px, env(safe-area-inset-top)) 10px max(12px, env(safe-area-inset-bottom))}.shopping-articles-heading{gap:7px}.shopping-articles-heading h2{font-size:19px}.shopping-article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.shopping-article-hide{width:44px;height:44px}.shopping-hidden-panel>div{flex-wrap:wrap}.shopping-article-sheet-backdrop{padding:0}.shopping-article-sheet{width:100%;min-height:100dvh;max-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 16px max(20px, env(safe-area-inset-bottom));border-radius:0}}.shopping-articles-depth{color:#36513d;background:#f0f5e9;border:1px solid #d8e2d1;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:9px 18px;margin:0 0 13px;padding:12px 14px;font-size:13px;display:flex}.shopping-articles-heading,.shopping-articles-search,.shopping-articles-toolbar,.shopping-articles-depth,.shopping-articles-loading,.shopping-articles-content{width:100%;max-width:1120px;margin-left:auto;margin-right:auto}.shopping-articles-depth button{min-height:42px;padding:6px 10px;font-weight:750}.shopping-aisle-hero{background:#eaf0e4;border:1px solid #d6dece;border-radius:17px;flex:none;grid-template-columns:minmax(270px,38%) minmax(0,1fr);width:100%;max-width:1120px;height:160px;margin:14px auto 5px;display:grid;overflow:hidden}.shopping-aisle-hero-scene{background:#dce8d4;width:100%;height:100%;display:block}.shopping-aisle-hero-copy{color:#244833;flex-direction:column;justify-content:center;min-width:0;padding:22px 28px;display:flex}.shopping-aisle-hero-copy>span{letter-spacing:.11em;text-transform:uppercase;font-size:12px;font-weight:800}.shopping-aisle-hero-copy>strong{margin-top:8px;font-size:clamp(28px,3vw,39px);line-height:1.08}.shopping-aisle-hero-copy>p{max-width:42ch;margin:12px 0 0;font-size:14px;line-height:1.45}.shopping-aisle-switcher{flex-wrap:wrap;gap:8px;width:100%;max-width:1120px;margin:8px auto 5px;display:flex}.shopping-aisle-switcher button{color:#294934;min-height:42px;font:inherit;cursor:pointer;background:#fffef9;border:1px solid #cdd9ca;border-radius:11px;padding:8px 13px;font-size:13px;font-weight:700}.shopping-aisle-switcher button[aria-pressed=true]{color:#fff;background:#345c43;border-color:#345c43}.shopping-articles-loading{color:var(--muted);padding:5px 14px;font-size:13px}.shopping-article-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.shopping-article-card{border-radius:13px}.shopping-article-open{grid-template-rows:auto auto;grid-template-columns:68px minmax(0,1fr);align-content:start;column-gap:11px;min-height:93px;padding:14px 50px 9px 13px;display:grid}.shopping-article-open:not(:has(.shopping-article-thumb,.shopping-article-symbol)){grid-template-columns:minmax(0,1fr)}.shopping-article-open strong{grid-column:2;padding:0;font-size:16px;line-height:1.3}.shopping-article-open:not(:has(.shopping-article-thumb,.shopping-article-symbol)) strong{grid-column:1}.shopping-article-location{color:#647361;margin-top:3px;font-size:11px;line-height:1.2;display:block}.shopping-article-open>span:last-child{grid-column:2;padding:6px 0 0;font-size:11px}.shopping-article-open:not(:has(.shopping-article-thumb,.shopping-article-symbol))>span:last-child{grid-column:1}.shopping-article-open img.shopping-article-thumb,.shopping-article-open .shopping-article-symbol{aspect-ratio:auto;object-fit:contain;background:#f0f5e9;border-radius:9px;grid-area:1/1/3;width:68px;height:68px;display:block}.shopping-article-open .shopping-article-symbol{place-items:center;font-size:38px;display:grid}.shopping-article-add{min-height:38px}.shopping-article-references{color:#315d40;width:calc(100% - 20px);min-height:38px;font:inherit;cursor:pointer;background:#f1f5ed;border:0;border-radius:8px;margin:0 10px 10px;padding:7px;font-size:12px}.shopping-photo-hint{color:#627362;margin:0 11px 7px;font-size:10px;display:block}.shopping-article-create{flex-wrap:wrap;align-items:end;gap:8px;width:100%;max-width:1120px;margin:0 auto 12px;display:flex}.shopping-article-create label{flex:220px;gap:5px;font-size:13px;font-weight:700;display:grid}.shopping-article-create input{border:1px solid var(--border);min-width:0;min-height:44px;color:inherit;font:inherit;background:#fff;border-radius:10px;padding:8px 12px}.shopping-product-chooser-list{gap:8px;min-height:0;max-height:40dvh;display:grid;overflow-y:auto}.shopping-product-chooser{align-content:start}.shopping-product-choice{border:1px solid var(--border);width:100%;min-height:54px;color:inherit;text-align:left;font:inherit;cursor:pointer;background:#fff;border-radius:10px;gap:4px;padding:10px 12px;display:grid}.shopping-product-choice small{color:var(--muted);overflow-wrap:anywhere}.shopping-own-products{margin-bottom:20px}.shopping-own-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.shopping-own-card{background:#f8fbf5;border:1px solid #bfd1bd;border-radius:13px;overflow:hidden}.shopping-own-open{width:100%;min-height:92px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:10px;display:flex}.shopping-own-open img,.shopping-own-placeholder{object-fit:contain;background:#fff;border-radius:9px;flex:0 0 68px;width:68px;height:68px}.shopping-own-placeholder{color:#607a61;place-items:center;font-size:24px;display:grid}.shopping-own-open>span:last-child{gap:4px;min-width:0;display:grid}.shopping-own-open strong,.shopping-own-open small{overflow-wrap:anywhere}.shopping-own-open small{color:#526a57;font-size:11px}.shopping-card-status{color:#315d40;gap:4px;padding:4px 10px 8px;font-size:12px;display:grid}.shopping-card-status small{font-size:inherit;overflow-wrap:anywhere}.shopping-card-status button{color:#234a35;width:100%;min-height:36px;font:inherit;text-align:left;cursor:pointer;background:#f2f7ef;border:1px solid #b6cdb9;border-radius:8px;padding:5px 7px}.shopping-search-results .shopping-articles.is-inline{flex-direction:column;display:flex}.shopping-search-results .shopping-articles-content{order:0}.shopping-search-results .shopping-articles-toolbar{order:1}.shopping-search-results .shopping-articles-depth{order:2}.shopping-own-open{padding-right:45px}.shopping-own-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr))}.shopping-card-menu{min-width:0}.shopping-card-menu summary{color:#274634;cursor:pointer;background:#fff;border:1px solid #d5dfd1;border-radius:50%;place-items:center;width:38px;height:38px;font-size:24px;line-height:1;list-style:none;display:grid;position:absolute;top:6px;right:6px}.shopping-card-menu summary::-webkit-details-marker{display:none}.shopping-card-menu>div{gap:2px;padding:4px 10px 10px;display:grid}.shopping-card-menu>div button{color:#274634;text-align:left;min-height:38px;font:inherit;cursor:pointer;background:#edf4e9;border:0;border-radius:8px;padding:7px 9px}.shopping-essential-index{overscroll-behavior:contain;width:100%;max-width:1120px;min-height:0;margin:15px auto 0;padding:0 3px 20px;overflow:auto}.shopping-essential-index>p{color:#526250;margin:0 0 15px;font-size:14px}.shopping-essential-departments{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:11px;display:grid}.shopping-essential-departments details{background:#fffef9;border:1px solid #d8dfd1;border-radius:13px;min-width:0;overflow:hidden}.shopping-essential-departments summary{color:#274634;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:61px;padding:15px 17px;font-size:17px;font-weight:750;list-style-position:inside;display:flex}.shopping-essential-departments summary span,.shopping-essential-departments button span{color:#647361;flex:none;font-size:12px;font-weight:500}.shopping-essential-departments details>div{padding:0 9px 9px}.shopping-essential-departments button{color:#243c2e;width:100%;min-height:49px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #edf0e9;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:14px;display:flex}.shopping-essential-departments button:hover,.shopping-essential-departments button:focus-visible{background:#edf4e9}@media (width<=560px){.shopping-articles:not(.is-inline){overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;height:100dvh;display:block;overflow:hidden auto}.shopping-articles:not(.is-inline) .shopping-articles-content,.shopping-articles:not(.is-inline) .shopping-essential-index{overflow:visible}.shopping-aisle-hero{border-radius:13px;grid-template-columns:38% minmax(0,1fr);height:138px;margin-top:10px}.shopping-aisle-hero-copy{padding:10px 12px}.shopping-aisle-hero-copy>span{letter-spacing:.06em;font-size:9px}.shopping-aisle-hero-copy>strong{margin-top:5px;font-size:22px}.shopping-aisle-hero-copy>p{margin-top:5px;font-size:11px}.shopping-aisle-switcher{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.shopping-aisle-switcher button{font-size:12px}.shopping-article-grid{grid-template-columns:1fr}.shopping-articles-depth{padding:10px 12px}.shopping-articles-depth button{justify-content:center;width:100%}.shopping-essential-departments{grid-template-columns:1fr}.shopping-essential-departments summary{min-height:56px;font-size:16px}}.product-resolution{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;padding:12px}.product-resolution p{margin:0 0 8px;font-size:13px;line-height:1.5}.product-resolution button{white-space:normal;min-height:44px}.product-resolution-choice{gap:8px;display:grid}.product-resolution-photo{border:1px solid var(--border);width:fit-content;max-width:100%;color:inherit;text-align:left;cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:12px;padding:8px;display:flex}.product-resolution-photo img{object-fit:contain;background:#f5f3ea;border-radius:7px;flex:0 0 100px;width:100px;height:100px}.product-resolution-photo span{color:var(--muted);font-size:12px}.product-resolution-choice>div{flex-wrap:wrap;gap:8px;display:flex}.receipt-document{margin-block:16px}.receipt-document>summary{cursor:pointer;color:var(--forest);padding:12px 0;font-weight:650}.receipt-dialog .receipt-line{grid-template-columns:minmax(0,2fr) minmax(75px,.65fr) minmax(85px,.75fr) minmax(130px,1fr)}.receipt-dialog .receipt-line-toggle{grid-column:1/3}.receipt-dialog .receipt-stock-toggle{grid-column:3/5;justify-self:end;align-items:center;gap:8px;min-height:44px;display:flex}.receipt-dialog .receipt-stock-toggle input{width:18px;height:18px}.receipt-dialog .receipt-line-name{grid-column:1}.receipt-dialog .receipt-line input:not([type=checkbox]),.receipt-dialog .receipt-line select{min-height:44px}.receipt-dialog .receipt-line-details{min-width:0;color:var(--muted);grid-column:1/-1;font-size:12px}.receipt-line-details summary{cursor:pointer;padding-block:10px}.receipt-line-details>label{max-width:320px}.receipt-dialog .receipt-line-meta{flex-wrap:wrap;margin:10px 0}.receipt-line-details small{white-space:normal;overflow-wrap:anywhere;display:block}@media (width<=700px){.receipt-dialog .receipt-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.receipt-dialog .receipt-line-toggle{grid-column:1}.receipt-dialog .receipt-stock-toggle{grid-column:2!important}.receipt-dialog .receipt-line-name,.receipt-dialog .receipt-line-location{grid-column:1/-1}.product-resolution button{width:100%}}.shopping-plan-tabs{border:1px solid var(--border);background:var(--surface-muted);border-radius:15px;flex-wrap:wrap;gap:4px;width:fit-content;margin:0 0 22px;padding:4px;display:flex}.shopping-nav-actions{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:15px;display:flex}.shopping-nav-actions .shopping-plan-tabs,.shopping-rays-page .shopping-nav-actions .shopping-plan-tabs{margin-bottom:0}.shopping-product-access{flex-wrap:wrap;gap:8px;display:flex}.shopping-product-access button{min-height:44px}.shopping-extra-rayons select{border:1px solid var(--border);background:var(--paper);max-width:160px;min-height:44px;color:var(--ink);font:inherit;border-radius:11px;padding:8px}.shopping-line-main{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.shopping-line-main label{margin:0}.shopping-scan-dialog,.shopping-line-dialog{max-height:calc(100dvh - 32px);overflow-y:auto}.shopping-scan-photo{cursor:pointer;position:relative}.shopping-scan-photo input{opacity:0;width:1px;height:1px;position:absolute}.shopping-scan-photo:focus-within{outline-offset:3px;outline:3px solid #b98c30}.shopping-scan-result{align-items:center;gap:12px;display:flex}.shopping-scan-result img,.shopping-line-sheet-photo{object-fit:contain;border-radius:8px;width:80px;height:80px}.shopping-scan-result small{display:block}@media (width<=600px){.shopping-nav-actions{gap:8px}.shopping-product-access{width:100%}.shopping-product-access button{flex:1;padding-inline:8px;font-size:13px}}.shopping-plan-tabs button{min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:10px 19px;font-weight:650;display:inline-flex}.shopping-plan-tabs button[aria-pressed=true]{color:var(--ink);background:var(--paper);box-shadow:0 2px 8px #3c4f3512}.shopping-essentials-entry{justify-content:center;align-items:center;gap:9px;width:100%;min-height:56px;margin:0 0 20px;font-size:16px;display:flex}.shopping-store-experience{grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);align-items:start;gap:24px;margin:16px 0 22px;display:grid}.store-map{color:#34523e;background:#fcfaf2;border:1px solid #dddcc8;border-radius:23px;min-width:0;padding:24px 20px 18px}.store-map-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.store-map-kicker{letter-spacing:1.45px;color:#788367;align-items:center;gap:6px;font-size:10px;font-weight:750;display:flex}.store-map-heading h3{letter-spacing:-.6px;margin:8px 0 6px;font-size:clamp(22px,2vw,30px);font-weight:700}.store-map-heading p{color:#7b806e;margin:0;font-size:12px}.store-map-heading p strong{color:#3a5e41;font-weight:750}.store-map-edit{color:#53694c;cursor:pointer;background:#fffdf7;border:1px solid #dddfcb;border-radius:11px;flex-shrink:0;align-items:center;gap:6px;min-height:44px;padding:10px;font-size:11px;display:inline-flex}.store-map-caption{color:#75806a;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 15px;margin:0 0 18px;font-size:10px;display:flex}.store-map-caption small{text-align:center;flex-basis:100%;font-size:10px}.shopping-store-selection{border:1px solid var(--border);background:var(--paper);border-radius:20px;min-width:0;padding:22px 16px;scroll-margin-top:85px;position:sticky;top:20px}.shopping-store-selection-kicker{letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:750}.shopping-store-selection h3{margin:8px 0;font-size:21px;line-height:1.2}.shopping-store-selection-count{color:var(--muted);margin:0 0 18px;font-size:12px}.shopping-store-selection .shopping-list{padding:0}.shopping-store-selection .shopping-list>li{flex-wrap:wrap;gap:8px;padding:13px 0}.shopping-store-selection .shopping-list>li>label{flex-basis:100%;min-width:0}.shopping-store-selection .shopping-item-actions{margin-left:auto}.shopping-store-selection .shopping-line-text{overflow-wrap:anywhere}.shopping-store-selection .shopping-line-detail{font-size:11px}.shopping-store-selection .shopping-line-photo{width:38px;height:38px}.shopping-store-selection-empty{border:1px dashed var(--border);color:var(--muted);border-radius:12px;padding:18px 12px;font-size:13px;line-height:1.6}.shopping-store-selection-next{justify-content:center;align-items:center;gap:7px;width:100%;margin-top:18px;display:flex}.shopping-store-extras{border-top:1px solid var(--border);padding-top:15px}.shopping-store-extras>p{color:var(--muted);font-size:13px}.store-map-editor{border-top:1px solid #d6dcc8;margin-top:20px;padding-top:18px}.store-map-editor-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.store-map-editor-heading h4{margin:0;font-size:17px}.store-map-editor>p{color:#6d7863;font-size:12px;line-height:1.6}.store-map-editor>label{gap:8px;font-size:12px;font-weight:650;display:grid}.store-map-editor input{color:#34523e;width:100%;min-width:0;min-height:44px;font:inherit;background:#fff;border:1px solid #c5cdb9;border-radius:10px;padding:10px}.store-map-editor ol{margin:16px 0;padding:0;list-style:none}.store-map-editor li{border-bottom:1px solid #e5e5d7;align-items:center;gap:5px;padding:6px 0;font-size:12px;display:flex}.store-map-editor li>span{flex:1}.store-map-editor li>button{color:#486644;cursor:pointer;background:#fffdf6;border:1px solid #dce0cd;border-radius:9px;place-items:center;min-width:44px;min-height:44px;display:grid}.store-map-editor li>button:disabled{opacity:.35;cursor:default}.store-map-editor-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.store-map-editor-actions>.text-button{align-items:center;gap:5px;margin-right:auto;font-size:12px;display:inline-flex}.store-map button:focus-visible,.shopping-plan-tabs button:focus-visible{outline-offset:3px;outline:3px solid #b98c30}@media (width<=560px){.shopping-page.has-store-plan{padding-left:10px;padding-right:10px}.shopping-plan-tabs{width:100%;margin-bottom:16px}.shopping-plan-tabs>button{flex:1;padding-inline:7px;font-size:12px}.shopping-store-experience{gap:14px}.store-map{border-radius:17px;padding:17px 12px 13px}.store-map-heading{gap:7px}.store-map-kicker{letter-spacing:1px;font-size:8px}.store-map-heading h3{font-size:23px}.store-map-heading p{font-size:11px}.store-map-edit{gap:4px;max-width:90px;padding:7px;font-size:10px}.store-map-caption{margin-bottom:12px;font-size:9px}.store-map-caption small{font-size:9px}.shopping-store-selection{padding:19px 14px}.store-map-editor-actions>button{font-size:12px}}.store-desktop-plan{aspect-ratio:1600/1240;width:100%;margin-top:20px;position:relative}.store-plan-floor{width:100%;height:100%;position:absolute;inset:0}.store-plan-fixture{--panel-tint:#dfe5cb;color:#294432;cursor:pointer;background:#fffdf3;border:1px solid #c3c7b5;border-radius:8px;flex-direction:column;justify-content:space-between;align-items:stretch;min-width:0;padding:5px;display:flex;position:absolute;box-shadow:4px 5px #b7b9a98a}.store-plan-fixture strong{z-index:1;text-align:center;overflow-wrap:anywhere;background:var(--panel-tint);border-radius:4px;min-height:24px;padding:3px;font-size:clamp(10px,.78vw,13px);line-height:1.15;position:relative}.store-fixture-art{background-image:var(--scene-image);background-size:300% 400%;background-position:var(--scene-position);border-radius:3px;flex:1;width:100%;min-height:15px;margin-top:3px;display:block}.store-plan-fixture small{color:#fff;background:#345c43;border-radius:5px;padding:2px 5px;font-size:10px;position:absolute;bottom:4px;right:4px}.store-plan-fixture:hover,.store-plan-fixture.is-selected{border-color:#345c43;box-shadow:0 0 0 2px #345c43,4px 5px #b7b9a98a}.store-mobile-browser{display:none}@media (width<=1023px){.shopping-page.has-store-plan .page-header{margin-bottom:0}.store-desktop-plan,.shopping-rays-page .store-aisle-jump{display:none}.store-mobile-browser{display:block}.store-mobile-search{gap:6px;margin:16px 0 10px;font-size:12px;font-weight:650;display:grid}.store-mobile-search input{width:100%;min-width:0;min-height:44px;font:inherit;background:#fffdf7;border:1px solid #d4dbca;border-radius:12px;padding:10px 12px}.store-mobile-groups{gap:7px;margin-bottom:7px;padding:4px 0 13px;display:flex;overflow-x:auto}.store-mobile-groups button{color:#36563c;min-height:42px;font:inherit;background:#fffdf7;border:1px solid #d5dcc9;border-radius:999px;flex-shrink:0;padding:8px 12px;font-size:12px}.store-mobile-groups button[aria-pressed=true]{color:#fff;background:#345c43;border-color:#345c43}.store-mobile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.store-aisle-card{--panel-tint:#dfe5cb;background:var(--panel-tint);text-align:left;color:#254330;min-width:0;font:inherit;border:1px solid #d0d6c6;border-radius:14px;padding:0;position:relative;overflow:hidden}.store-aisle-card strong{overflow-wrap:anywhere;align-items:center;min-height:52px;padding:9px 10px;font-size:13px;line-height:1.3;display:flex}.store-aisle-card svg{width:100%;height:90px;display:block}.store-aisle-card small{background:#ffffffed;border-radius:6px;padding:3px 6px;font-size:10px;position:absolute;bottom:5px;right:5px}}.shopping-page.has-store-plan .shopping-page-search{position:static}.retail-catalog-browser.from-store-map.has-active-department .stock-departments{display:none}.catalog-store-context{color:var(--muted);margin:8px 0 18px;font-size:14px}.retail-catalog-browser.from-store-map .catalog-browser-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.store-map-editor{scroll-margin-top:35px}@media (width<=1000px){.shopping-store-experience{grid-template-columns:minmax(0,1fr)}.shopping-store-selection{position:static}}.store-panel-deck{outline-offset:4px;border-radius:20px;max-width:620px;margin:23px auto 0;padding:0 6px 8px;overflow:hidden}.store-panel-backgrounds{flex-direction:column;padding:0 7px;display:flex}.store-panel-tab{--panel-tint:#e9ebdf;isolation:isolate;color:#243d32;background:var(--panel-tint);width:100%;min-height:53px;font:inherit;text-align:left;cursor:pointer;border:1px solid #354c3c1c;border-bottom:0;border-radius:16px 16px 0 0;align-items:center;gap:8px;margin-bottom:-7px;padding:10px 13px 16px;font-size:15px;font-weight:750;display:flex;position:relative;box-shadow:0 -2px 7px #463a2210}.store-panel-tab>span:first-child{z-index:1;overflow-wrap:anywhere;text-shadow:0 1px 1px #ffffff6b;flex:1;min-width:0;position:relative}.store-panel-tab>svg{z-index:1;background:#ffffffa8;border-radius:50%;flex-shrink:0;position:relative}.store-panel-glimpse{z-index:-1;border-top-right-radius:inherit;background-image:linear-gradient(90deg, var(--panel-tint), transparent 42%), var(--scene-image);background-size:100% 100%,300% 400%;background-position:center, var(--scene-position);opacity:.8;background-repeat:no-repeat;width:42%;position:absolute;top:0;bottom:0;right:0}.store-panel-front{--panel-tint:#e9ebdf;background:var(--panel-tint);touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab;border:1px solid #34483424;border-radius:19px;transition:transform .18s;position:relative;overflow:hidden;box-shadow:0 6px 14px #493c221a}.store-panel-front:active{cursor:grabbing}.store-panel-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:5px 10px;min-height:63px;padding:14px 17px;display:flex}.store-panel-title h4{color:#213f32;letter-spacing:-.35px;overflow-wrap:anywhere;margin:0;font-size:clamp(19px,2.1vw,25px);line-height:1.2}.store-panel-title>span{color:#294735;background:#ffffffb8;border:1px solid #fff;border-radius:999px;align-items:center;gap:4px;padding:4px 7px;font-size:11px;font-weight:650;display:inline-flex}.store-panel-scene{aspect-ratio:4/3;width:100%;display:block;overflow:hidden}.department-frais{--panel-tint:#dce9be}.department-boulangerie{--panel-tint:#f6dfac}.department-boucherie{--panel-tint:#f1cfca}.department-mer{--panel-tint:#cee3e7}.department-laitiers{--panel-tint:#dce9ef}.department-traiteur{--panel-tint:#f0d9c8}.department-sale{--panel-tint:#dfe5cb}.department-sucre{--panel-tint:#f2ddc6}.department-boissons{--panel-tint:#d9e4e5}.department-surgeles{--panel-tint:#d6e8ed}.department-bebe{--panel-tint:#e8dff0}.slide-from-next{animation:.26s ease-out store-panel-next}.slide-from-previous{animation:.26s ease-out store-panel-previous}@keyframes store-panel-next{0%{opacity:.5;transform:translate(16%)}to{opacity:1;transform:translate(0)}}@keyframes store-panel-previous{0%{opacity:.5;transform:translate(-16%)}to{opacity:1;transform:translate(0)}}.store-panel-controls{justify-content:space-between;align-items:center;gap:10px;max-width:620px;margin:10px auto 12px;display:flex}.store-panel-arrow{color:#3b5946;cursor:pointer;background:#fffef9;border:1px solid #deded2;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.store-panel-controls p{text-align:center;color:#304f3c;min-width:0;margin:0}.store-panel-controls strong{font-size:13px;display:block}.store-panel-controls small{color:#68705f;margin-top:4px;font-size:11px;display:block}.store-panel-open{justify-content:center;align-items:center;gap:8px;width:100%;max-width:620px;min-height:48px;margin:0 auto;display:flex}.store-panel-directory{color:#3b5946;max-width:620px;margin:16px auto 0;font-size:13px}.store-panel-directory summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:650}.store-panel-directory>div{flex-wrap:wrap;gap:7px;margin-top:8px;display:flex}.store-panel-directory button{color:#3d5945;min-height:44px;font:inherit;cursor:pointer;background:#fffef9;border:1px solid #d9dfcd;border-radius:11px;padding:8px 12px}.store-panel-directory button[aria-pressed=true]{color:#fff;background:#345c43;border-color:#345c43}.store-panel-deck:focus-visible,.store-panel-directory summary:focus-visible{outline:3px solid #b98c30}@media (width<=560px){.shopping-page.has-store-plan .shopping-panel{padding:16px 10px}.store-map{padding:17px 10px 13px}.store-map-edit{max-width:95px}.store-panel-deck{border-radius:15px;margin-top:18px;padding-inline:0}.store-panel-backgrounds{padding-inline:5px}.store-panel-tab{min-height:51px;padding-inline:10px;font-size:13px}.store-panel-title{min-height:58px;padding:12px}.store-panel-title h4{font-size:20px}.store-panel-front{border-radius:16px}.store-panel-controls strong{font-size:12px}.store-panel-controls small{font-size:10px}}@media (prefers-reduced-motion:reduce){.store-panel-front{transition:none;animation:none}}.shopping-page.has-store-plan,.app-shell .page.shopping-page.has-store-plan{gap:14px;width:100%;max-width:none;padding:24px 28px 50px}.shopping-rays-page{min-width:0;margin:0;padding:0}.shopping-rays-page .shopping-store-experience{margin:0;display:block}.shopping-rays-page .store-map{background:0 0;border:0;border-radius:0;padding:0}.shopping-rays-page .store-map-heading{align-items:center}.shopping-rays-page .store-map-heading h3{display:none}.shopping-rays-page .store-map-heading p{margin-top:6px}.shopping-rays-page .store-panel-deck,.shopping-rays-page .store-panel-controls,.shopping-rays-page .store-panel-open,.shopping-rays-page .store-panel-directory{max-width:none}.shopping-rays-page .store-panel-deck{margin-top:16px;padding-inline:0}.shopping-rays-page .store-panel-scene{aspect-ratio:auto;height:clamp(320px,100dvh - 450px,600px)}.shopping-rays-page .store-panel-backgrounds{padding-inline:8px}.shopping-rays-page .store-panel-tab{font-size:16px}.shopping-page.has-store-plan .page-header h1{margin-bottom:5px}.shopping-page.has-store-plan .page-header p{font-size:13px}.shopping-rays-page .shopping-plan-tabs{margin-bottom:15px}.store-aisle-jump{color:#34523e;align-items:center;gap:12px;margin:16px 0 0;font-size:12px;font-weight:650;display:flex}.store-aisle-jump select{color:#254333;min-width:0;max-width:100%;min-height:44px;font:inherit;background:#fffdf7;border:1px solid #d5dbc9;border-radius:12px;padding:9px 36px 9px 12px}.store-counter-choices{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;padding:20px 0;display:grid}.store-counter-choices button{text-align:left;justify-content:space-between;min-height:70px}.store-counter-choices button[aria-pressed=true]{background:#e1ecd8;border-color:#345c43}.store-counter-form{border-top:1px solid var(--border);flex-wrap:wrap;align-items:end;gap:12px;margin-top:24px;padding-top:24px;display:flex}.store-counter-form label{flex:250px;gap:8px;min-width:0;font-weight:650;display:grid}.store-counter-form input{border:1px solid var(--border);width:100%;min-width:0;min-height:46px;font:inherit;border-radius:12px;padding:12px}@media (width<=560px){.shopping-page.has-store-plan,.app-shell .page.shopping-page.has-store-plan{gap:12px;padding:12px 10px 100px}.shopping-page.has-store-plan .shopping-rays-page{padding:0}.shopping-page.has-store-plan .page-header h1{font-size:27px}.shopping-page.has-store-plan .page-header .eyebrow{display:none}.shopping-page.has-store-plan .page-header p{font-size:12px}.shopping-rays-page .store-panel-deck{margin-top:12px}.shopping-rays-page .store-panel-scene{height:clamp(220px,34dvh,330px)}.shopping-rays-page .store-panel-tab{font-size:13px}.shopping-rays-page .store-map-heading p{font-size:11px}.shopping-rays-page .store-panel-backgrounds{padding-inline:5px}.shopping-rays-page .store-map-kicker{font-size:10px}.store-aisle-jump{gap:6px;display:grid}.store-aisle-jump select{width:100%}}.store-plan-scroll{background:#f4f0e7;border:1px solid #d4d8ca;border-radius:18px;margin-top:18px;overflow:auto}.store-desktop-plan{aspect-ratio:1400/900;background:#f3efe5;width:100%;min-width:780px;margin:0;display:block;position:relative;overflow:hidden}.store-plan-floor{pointer-events:none;background:repeating-linear-gradient(0deg,#f4f0e7 0 75px,#f0ebdf 76px 77px);border:10px solid #c9d5ca;width:auto;height:auto;position:absolute;inset:0}.store-plan-floor>span{color:#47634d;letter-spacing:.11em;font-size:clamp(11px,1vw,16px);font-weight:850;position:absolute;top:1.1%;left:3%}.store-plan-floor>small{color:#446651;font-size:clamp(10px,.85vw,14px);font-weight:850;position:absolute;bottom:1%;right:3%}.store-plan-zone{background:var(--panel-tint,#dfe5cb);color:#183e2a;text-align:left;min-width:0;font:inherit;cursor:pointer;border:2px solid #55715f;border-radius:16px;flex-direction:column;justify-content:center;gap:6px;padding:clamp(8px,1.5vw,24px);display:flex;position:absolute;overflow:hidden;box-shadow:4px 6px #49614c39}.store-plan-zone:before{content:"";opacity:.76;background:#446c50;height:11px;position:absolute;inset:0 0 auto}.store-plan-zone strong{overflow-wrap:anywhere;font-size:clamp(17px,1.65vw,30px);font-weight:850;line-height:1.15;display:block;position:relative}.store-plan-zone>span{font-size:clamp(12px,1vw,17px);font-weight:680;position:relative}.store-plan-zone>small{color:#36543e;background:#fffef7be;border-radius:999px;align-self:flex-start;padding:4px 8px;font-size:clamp(10px,.8vw,14px);font-weight:700;position:relative}.store-plan-zone.has-pending>small{color:#fff;background:#2f6643}.store-plan-zone:hover,.store-plan-zone.is-selected{border-color:#244c34;box-shadow:0 0 0 3px #244c34,4px 6px #49614c39}.store-plan-zone:focus-visible{outline-offset:3px;outline:3px solid #bd8c2e}.store-plan-zone .store-zone-photo{width:47%;height:calc(100% - 11px);position:absolute;inset:11px 0 0 auto}.store-plan-zone strong,.store-plan-zone>span,.store-plan-zone>small{z-index:1;max-width:53%}.store-plan-zone:before{z-index:2}.store-desktop-plan.is-editing .store-plan-zone{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab}.store-desktop-plan.is-editing .store-plan-zone:active{cursor:grabbing}.store-desktop-plan.is-editing .store-plan-zone>button{color:#285136;cursor:pointer;background:#fffef5;border:1px solid #4e6d54;border-radius:10px;place-items:center;width:37px;height:37px;display:grid;position:absolute;top:14px;right:8px}.store-zone-directory{grid-template-columns:minmax(180px,240px) minmax(0,1fr);align-items:start;gap:22px;padding:23px 4px 6px;display:grid}.store-zone-directory h4{margin:5px 0 6px;font-size:clamp(20px,1.6vw,29px);line-height:1.2}.store-zone-directory p{color:#607365;margin:0;font-size:13px}.store-zone-aisles{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:9px;display:grid}.store-zone-aisles button{color:#254d34;text-align:left;min-height:54px;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #cfdbca;border-radius:12px;justify-content:space-between;align-items:center;gap:7px;padding:10px 12px;display:flex}.store-zone-aisles button:hover{background:#edf5e9;border-color:#426949}.store-zone-aisles strong{font-size:13px;line-height:1.25}.store-zone-aisles small{color:#477153;flex-shrink:0;font-size:11px}.store-map-position-controls{flex-wrap:wrap;align-items:end;gap:14px;margin:14px 0 4px;display:flex}.store-map-position-controls>label{flex:210px;gap:6px;font-size:12px;font-weight:650;display:grid}.store-map-position-controls select{color:#34523e;width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #c5cdb9;border-radius:10px;padding:8px}.store-map-position-controls>div{flex-wrap:wrap;gap:5px;display:flex}.store-map-position-controls button{color:#34523e;min-width:44px;min-height:44px;font:inherit;cursor:pointer;background:#fffdf7;border:1px solid #c5cdb9;border-radius:10px;justify-content:center;align-items:center;gap:5px;padding:9px;display:inline-flex}.store-map-editor-actions{margin-top:16px}.store-mobile-zones{gap:10px;display:grid}.store-mobile-zone{background:var(--panel-tint,#e5e9dc);border:1px solid #bdcdbd;border-radius:15px;overflow:hidden}.store-mobile-zone-head{color:#1a4330;text-align:left;width:100%;min-height:82px;font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;padding:14px 18px;display:flex}.store-mobile-zone-head strong{font-size:clamp(20px,5vw,27px);font-weight:850;line-height:1.12}.store-mobile-zone-head span{font-size:12px;font-weight:650}.store-mobile-zone-head{min-height:108px;padding-right:44%;position:relative}.store-mobile-zone-head .store-zone-photo{width:42%;height:100%;position:absolute;inset:0 0 0 auto}.store-mobile-zone-head strong,.store-mobile-zone-head span{z-index:1;position:relative}.store-zone-photo{background:#e5eadc;display:block;overflow:hidden}.store-mobile-zone-aisles{gap:4px;padding:0 9px 10px;display:grid}.store-mobile-zone-aisles button{color:#2b4e37;text-align:left;min-height:48px;font:inherit;background:#fffdf8;border:1px solid #d6e0d0;border-radius:9px;justify-content:space-between;align-items:center;padding:9px 12px;font-size:14px;font-weight:690;display:flex}.store-mobile-zone-aisles small{background:#dfeee0;border-radius:10px;margin-left:6px;padding:2px 6px}@media (width<=1023px){.store-map:not(.is-editing) .store-plan-scroll,.store-map:not(.is-editing) .store-zone-directory{display:none}.store-map.is-editing .store-desktop-plan{display:block}.store-plan-zone strong{font-size:19px}}@media (width<=560px){.store-map-heading{align-items:start}.store-map-edit{min-width:82px;max-width:none;padding:8px;font-size:11px}.store-mobile-search{margin-top:20px}.store-map-position-controls>div{width:100%}.store-map-position-controls button:last-child{flex:1}}.store-desktop-view-switch{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.store-desktop-view-switch button,.store-illustration-extra button{color:#254d34;min-height:44px;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #b9cbb9;border-radius:10px;padding:9px 14px;font-weight:700}.store-desktop-view-switch button[aria-pressed=true]{color:#fff;background:#345c43;border-color:#345c43}.store-illustration-wrap>p{color:#536957;margin:12px 0;font-size:13px}.store-illustration{aspect-ratio:1288/959;background:#f4ead8;border:1px solid #c7d3c4;border-radius:16px;width:100%;position:relative;overflow:hidden}.store-illustration>img{pointer-events:none;width:119.25%;max-width:none;height:auto;position:absolute;top:-6.78%;left:0}.store-illustration-desktop-image{display:block}.store-illustration-zone{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:9px;justify-content:flex-end;align-items:flex-end;padding:5px;display:flex;position:absolute}.store-illustration-zone:hover,.store-illustration-zone:focus-visible{outline-offset:-2px;background:#345c4324;border-color:#fff;outline:3px solid #244c34}.store-illustration-zone span{color:#fff;background:#255c3e;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:750;box-shadow:0 1px 4px #0008}.store-illustration-sign{color:#fff;text-align:center;text-transform:uppercase;overflow-wrap:anywhere;background:#813f35;border:2px solid #fff1ca;border-radius:4px;padding:5px 3px;font-size:clamp(10px,1vw,14px);font-weight:850;line-height:1.1;position:absolute;top:0;left:0;right:0;box-shadow:0 2px 5px #0009}.store-illustration-sign.sign-bebe{background:#6e5182;font-size:clamp(9px,.8vw,12px)}.store-illustration-extra{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.store-illustration-extra span{color:#536957;font-size:13px}.store-switch-mobile,.store-illustration-mobile-directory,.store-mobile-view-switch{display:none}.store-illustration-zone{left:var(--desktop-left)!important;top:var(--desktop-top)!important;width:var(--desktop-width)!important;height:var(--desktop-height)!important}.store-illustration-zone.scene-surgeles,.store-illustration-zone.scene-bebe{z-index:2}.store-illustration-zone.scene-sale{clip-path:polygon(23% 4%,100% 45%,100% 80%,78% 100%,0 58%,0 23%)}.store-illustration-zone.scene-surgeles{clip-path:polygon(25% 0,83% 35%,100% 48%,100% 79%,60% 92%,2% 57%,2% 24%)}.store-illustration-zone.scene-bebe{clip-path:polygon(24% 2%,75% 30%,100% 45%,100% 96%,0 35%,0 20%)}@media (width<=1023px){.shopping-page.has-store-plan .page-header p{display:none}.shopping-page.has-store-plan .page-header h1{margin-bottom:0}.store-mobile-view-switch{color:#315c43;min-height:40px;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:4px 0;font-size:14px;font-weight:700;display:inline-flex}.store-mobile-view-switch:focus-visible{outline-offset:3px;outline:3px solid #b98c30}.store-desktop-view-switch{margin-top:12px;display:flex}.store-desktop-view-switch button{flex:1;padding-inline:8px;font-size:13px}.store-switch-desktop,.store-illustration-extra{display:none}.store-switch-mobile,.store-illustration-mobile-directory{display:block}.store-illustration{border-radius:12px;width:100%}.store-illustration-wrap>p{margin:10px 0 6px}.store-illustration-zone span{padding:2px 4px;font-size:10px}.store-illustration-sign{padding:3px 2px;font-size:9px}.store-illustration-mobile-directory .store-mobile-search{margin:14px 0 10px}.store-illustration-mobile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.store-illustration-mobile-grid button{color:#1a4330;text-align:left;min-width:0;min-height:65px;font:inherit;cursor:pointer;background:#fffdf8;border:1px solid #bdcdbd;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:10px;display:flex}.store-illustration-mobile-grid strong{overflow-wrap:anywhere;font-size:14px;line-height:1.2}.store-illustration-mobile-grid span{font-size:11px}}@media (width>=1024px){.shopping-rays-page .shopping-nav-actions{margin-bottom:5px}.store-illustration-mobile-image{display:none}.store-illustration-desktop-image{display:block}.store-illustration-zone{left:var(--desktop-left)!important;top:var(--desktop-top)!important;width:var(--desktop-width)!important;height:var(--desktop-height)!important}.store-illustration-zone.scene-surgeles,.store-illustration-zone.scene-bebe{z-index:2}.store-illustration-zone.scene-sale{clip-path:polygon(23% 4%,100% 45%,100% 80%,78% 100%,0 58%,0 23%)}.store-illustration-zone.scene-surgeles{clip-path:polygon(25% 0,83% 35%,100% 48%,100% 79%,60% 92%,2% 57%,2% 24%)}.store-illustration-zone.scene-bebe{clip-path:polygon(24% 2%,75% 30%,100% 45%,100% 96%,0 35%,0 20%)}.store-illustration-sign{display:none}.shopping-page.has-store-plan,.app-shell .page.shopping-page.has-store-plan{gap:6px;padding-top:10px}.shopping-page.has-store-plan .page-header .eyebrow,.shopping-page.has-store-plan .page-header p{display:none}.shopping-page.has-store-plan .page-header h1{margin:0;font-size:28px}.shopping-rays-page .shopping-plan-tabs{margin-bottom:5px}.shopping-rays-page .store-map{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;display:grid}.store-map-heading{grid-area:1/1}.store-map-heading p{display:none}.store-desktop-view-switch{grid-area:1/2;align-items:center;margin-top:0}.store-illustration-wrap,.store-plan-scroll,.store-map-editor,.store-map-editor-actions{grid-column:1/-1}.store-map-editor{grid-row:2}.store-illustration-wrap>p{margin:2px 0 5px}.store-illustration{width:min(100%,max(370px,134.3dvh - 390px));margin-inline:auto}.store-illustration-extra{justify-content:center;margin-top:5px}}@media (width>=1024px) and (width<=1240px){.shopping-rays-page .shopping-nav-actions{gap:6px}.shopping-rays-page .shopping-plan-tabs button{padding-inline:8px;font-size:13px}.shopping-rays-page .shopping-product-access{gap:5px}.shopping-rays-page .shopping-product-access button{padding-inline:8px;font-size:13px}.shopping-rays-page .shopping-extra-rayons select{max-width:130px;font-size:13px}}@media (width<=1023px){.shopping-page.has-store-plan,.app-shell .page.shopping-page.has-store-plan{padding-inline:6px}.shopping-store-product-search{color:#42644f;background:#fffdf7;border:1px solid #d4dbca;border-radius:12px;align-items:center;gap:9px;width:100%;min-height:48px;padding:0 12px;display:flex}.shopping-store-product-search:focus-within{outline-offset:1px;outline:2px solid #345c43}.shopping-store-product-search input{color:#1a4330;min-width:0;height:46px;font:inherit;background:0 0;border:0;outline:0;flex:1;padding:0}.shopping-store-product-search input:focus-visible{box-shadow:none;outline:0}.shopping-store-product-search input::-webkit-search-cancel-button{display:none}.shopping-store-product-search button{color:#345c43;background:0 0;border:0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;display:grid}.shopping-mobile-options{color:#34523e;width:100%;margin-top:14px}.shopping-mobile-options summary{cursor:pointer;min-height:44px;padding:12px 4px;font-size:14px;font-weight:700}.shopping-mobile-options .shopping-product-access{padding:4px 0 8px}.store-map.is-list-view:not(.is-editing) .store-map-heading{display:none}.shopping-rays-page .store-desktop-view-switch{margin-top:0}.shopping-rays-page .store-mobile-search{margin:4px 0 10px}.store-mobile-zones{grid-template-columns:minmax(0,1fr);gap:14px;width:100%}.store-mobile-zone-head{appearance:none;background:#fffdf8;border:1px solid #d8e2d6;border-radius:15px;flex-direction:column;align-items:stretch;width:100%;min-width:0;min-height:0;padding:0;display:flex;box-shadow:0 3px 12px #2d493b12}.store-mobile-zone-title{box-sizing:border-box;flex:none;align-items:center;gap:8px;width:100%;min-height:64px;padding:8px 12px 8px 15px;display:flex}.store-mobile-zone-title strong{overflow-wrap:anywhere;flex:1;min-width:0;font-size:17px;font-weight:750;line-height:1.2}.store-mobile-zone-count{color:#245839;white-space:nowrap;background:#e3f0e3;border-radius:999px;flex:none;padding:5px 8px;font-size:12px;font-weight:700}.store-mobile-zone-title svg{color:#52745d;flex:none}.store-mobile-scene-frame{box-sizing:border-box;flex:none;width:100%;height:165px;display:block;position:relative;overflow:hidden}.store-mobile-zone-head .store-mobile-scene-frame>.store-zone-photo,.store-mobile-zone-head .store-mobile-scene-frame>.store-mobile-scene{border-radius:0;width:100%;min-width:100%;max-width:none;height:100%;display:block;position:absolute;inset:0}}@media (width<=350px){.store-mobile-zone-title strong{font-size:15px}}.shopping-quick-trigger{z-index:2400;color:#fff;min-height:46px;font:inherit;cursor:pointer;background:#244b37;border:1px solid #b7c9b6;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:750;display:inline-flex;position:fixed;bottom:110px;left:18px;box-shadow:0 5px 18px #17382735}.shopping-quick-trigger span{color:#244b37;background:#fff;border-radius:50%;place-items:center;min-width:25px;height:25px;padding:0 5px;display:grid}.shopping-quick-trigger.is-over-catalog{bottom:9px;left:14px}.shopping-quick-panel{z-index:2410;color:#244b37;background:#fffdf7;border-left:1px solid #d6dfd0;flex-direction:column;width:min(400px,38vw);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-6px 0 22px #19351d20}.shopping-quick-panel>header{border-bottom:1px solid #d6dfd0;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px;display:flex}.shopping-quick-panel h2{margin:0;font-size:21px}.shopping-quick-panel header p{color:#647365;margin:3px 0 0;font-size:13px}.shopping-quick-tools{border-bottom:1px solid #e5e9e0;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 18px;display:flex}.shopping-quick-tools>div{flex:1;gap:3px;display:grid}.shopping-quick-tools small{color:#526b59;font-size:11px}.shopping-quick-tools .text-button{justify-self:start;align-items:center;gap:4px;min-height:32px;padding:0;display:inline-flex}.shopping-quick-tools .form-error{flex-basis:100%;margin:0}.shopping-quick-content{overscroll-behavior:contain;min-height:0;padding:12px 18px 24px;overflow-y:auto}.shopping-quick-content .shopping-aisle h3{margin:12px 0 4px;font-size:14px}.shopping-quick-content .shopping-list>li{grid-template-columns:minmax(0,1fr);gap:6px;padding:9px 0;display:grid}.shopping-quick-content .shopping-item-actions{justify-self:end}.shopping-quick-done{margin-top:15px}.shopping-quick-done>summary{cursor:pointer;font-weight:700}.shopping-quick-backdrop{display:none}.shopping-quick-editor-layer{z-index:2600;pointer-events:none;position:fixed;inset:0}.shopping-quick-editor-layer>*{pointer-events:auto}body.shopping-quick-list-open .product-quick-backdrop,body.shopping-in-store-open .product-quick-backdrop{z-index:2600}.shopping-in-store{z-index:2500;color:#234a35;background:#fffdf7;flex-direction:column;display:flex;position:fixed;inset:0}.shopping-in-store>header{padding:max(12px, env(safe-area-inset-top)) 18px 12px;background:#fffdf7;border-bottom:1px solid #d6dfd0;align-items:center;gap:15px;display:flex}.shopping-in-store>header h2{margin:0;font-size:21px}.shopping-in-store>header p{color:#617365;margin:3px 0 0;font-size:13px}.shopping-in-store-content{overscroll-behavior:contain;width:min(100%,760px);min-height:0;padding:12px 16px calc(24px + env(safe-area-inset-bottom));flex:1;margin:0 auto;overflow-y:auto}.shopping-in-store-content h3{margin:16px 0 7px;font-size:14px}.shopping-in-store-content ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.shopping-in-store-row{background:#fff;border:1px solid #dae2d7;border-radius:12px;grid-template-columns:36px 58px minmax(0,1fr) 42px;align-items:center;gap:9px;padding:10px;display:grid}.shopping-in-store-row>input{accent-color:#315d40;width:30px;height:30px}.shopping-in-store-photo,.shopping-in-store-photo .shopping-line-photo,.shopping-in-store-photo img{object-fit:contain;width:58px;height:58px}.shopping-in-store-text{gap:5px;min-width:0;display:grid}.shopping-in-store-text strong{overflow-wrap:anywhere}.shopping-in-store-text small{color:#795318}.shopping-in-store-menu{align-self:start;position:relative}.shopping-in-store-menu summary{cursor:pointer;border:1px solid #d5dfd1;border-radius:50%;place-items:center;width:40px;height:40px;font-size:22px;list-style:none;display:grid}.shopping-in-store-menu summary::-webkit-details-marker{display:none}.shopping-in-store-menu>div{z-index:2;background:#fff;border:1px solid #d5dfd1;border-radius:10px;gap:4px;width:190px;padding:8px;display:grid;position:absolute;top:44px;right:0;box-shadow:0 6px 16px #19351d25}.shopping-in-store-menu>div button{color:#234a35;text-align:left;min-height:40px;font:inherit;background:#f2f7ef;border:0;border-radius:6px;padding:7px}.shopping-in-store-done,.shopping-in-store-plans{margin:18px 0}.shopping-in-store-done>summary,.shopping-in-store-plans>summary{cursor:pointer;min-height:44px;font-weight:750}.shopping-in-store-row.is-checked{opacity:.72}.shopping-in-store-entry{margin:8px 0}body.shopping-quick-has-catalog .catalog-browser{bottom:calc(64px + env(safe-area-inset-bottom))}body.shopping-quick-has-catalog:after{content:"";z-index:2390;height:calc(64px + env(safe-area-inset-bottom));pointer-events:none;background:#fffdf7;border-top:1px solid #d6dfd0;position:fixed;inset:auto 0 0}@media (width>=1024px){body.shopping-quick-list-open .app-shell[data-view=shopping] .workspace{padding-right:min(400px,38vw)}body.shopping-quick-list-open .catalog-browser{right:min(400px,38vw)}}@media (width<=1023px){.shopping-quick-trigger{left:12px;bottom:calc(89px + env(safe-area-inset-bottom))}.shopping-quick-trigger.is-over-catalog{bottom:calc(9px + env(safe-area-inset-bottom))}.shopping-quick-backdrop{z-index:2405;background:#1a302170;border:0;display:block;position:fixed;inset:0}.shopping-quick-panel{width:100%;max-height:min(75dvh,680px);padding-bottom:env(safe-area-inset-bottom);border:1px solid #d6dfd0;border-radius:20px 20px 0 0;inset:auto 0 0;box-shadow:0 -6px 24px #19351d28}body.shopping-quick-list-open .shopping-quick-trigger{visibility:hidden}.shopping-quick-panel>header{flex:none}.shopping-quick-content{overflow-y:auto}.app-shell[data-view=shopping] .workspace{min-height:0;height:calc(100dvh - 148px - env(safe-area-inset-bottom));overscroll-behavior:contain;overflow-y:auto}}.inventory-validation-summary{gap:7px;margin:0 0 18px;display:grid}.inventory-validation-summary ul{gap:4px;margin:0;padding-left:20px;display:grid}.inventory-validation-summary li::marker{color:var(--state-urgent-ink,#8f2828)}.inventory-validation-summary button{color:inherit;font:inherit;text-align:left;text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.inventory-field-error{margin-top:5px;font-weight:650;display:block;color:var(--state-urgent-ink,#8f2828)!important}.inventory-field-error:before{content:"⚠ "}.form-dialog [aria-invalid=true]{outline:2px solid color-mix(in srgb, var(--state-urgent,#b53a3a) 30%, transparent);outline-offset:1px;border-color:var(--state-urgent,#b53a3a)!important}.form-dialog label:has([aria-invalid=true])>span{color:var(--state-urgent-ink,#8f2828)}.inventory-retail-rayon{color:var(--forest);gap:7px;font-size:12px;font-weight:750;display:grid}.inventory-retail-rayon select{border:1px solid var(--border);width:100%;min-height:46px;color:var(--ink);background:#fff;border-radius:11px;padding:10px 12px}.inventory-retail-rayon small{color:var(--muted);font-size:10px;font-weight:550}@media (width<=820px){.inventory-validation-summary{scroll-margin-top:90px}}.kesta-logo{color:#234732;flex:none;align-items:center;gap:7px;display:inline-flex}.kesta-logo-tomato{object-fit:contain;width:58px;height:58px;display:block}.kesta-wordmark{font-family:var(--font-body,sans-serif);letter-spacing:-.065em;font-size:38px;font-weight:850;line-height:1.15;display:block;position:relative}.kesta-wordmark>svg{width:17px;height:17px;position:absolute;top:-12px;right:21%}.kesta-logo-compact{flex-direction:column;gap:0}.kesta-logo-compact .kesta-logo-tomato{width:62px;height:62px}.kesta-logo-compact .kesta-wordmark{font-size:28px}.kesta-logo-compact .kesta-wordmark>svg{width:12px;height:12px;top:-7px}.brand .kesta-wordmark{font-size:35px}.mobile-app-brand .kesta-logo{gap:3px}.mobile-app-brand .kesta-logo-tomato{width:43px;height:43px}.mobile-app-brand .kesta-wordmark{font-size:28px}.mobile-app-brand .kesta-wordmark>svg{width:12px;height:12px;top:-7px}.access-gate-card>h1 .kesta-logo{margin:0 auto}.access-gate-card>h1 .kesta-logo-tomato{width:76px;height:76px}.access-gate-card>h1 .kesta-wordmark{font-size:46px}@media (width<=360px){.mobile-app-brand .kesta-wordmark{font-size:25px}.mobile-app-brand .kesta-logo-tomato{width:38px;height:38px}}.page.camembert-dashboard{color:#253c2e;max-width:600px;margin-inline:auto;padding:36px 24px 40px}.camembert-card{background:var(--papier);border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:0 14px 38px #253c2e0f}.camembert-heading .eyebrow{color:#637065}.camembert-heading h1{color:#253c2e;letter-spacing:-.04em;margin:8px 0 6px;font-size:36px;line-height:1.15}.camembert-heading p{color:#637065;margin:0;font-size:16px}.camembert-wheel{aspect-ratio:1;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:50%;width:100%;max-width:410px;margin:24px auto 16px;position:relative;overflow:hidden}.camembert-rotor{border-radius:50%;transition:transform .45s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.camembert-sector{background:var(--camembert-part);color:#253c2e;width:100%;height:100%;font:inherit;-webkit-tap-highlight-color:transparent;border:0;padding:0;position:absolute;inset:0}.camembert-sector:hover{filter:brightness(.95)}.camembert-sector:focus-visible{filter:brightness(.9);outline:none}.camembert-sector:focus-visible .camembert-label{outline-offset:5px;border-radius:7px;outline:3px solid #315a3e}.camembert-label{pointer-events:none;flex-direction:column;align-items:center;gap:4px;width:29%;transition:transform .45s cubic-bezier(.2,.7,.2,1);display:flex;position:absolute}.camembert-label strong{white-space:nowrap;font-size:clamp(11px,3.25vw,15px);font-weight:750;line-height:1.2}.camembert-step{letter-spacing:.1em;font-size:11px;font-weight:750}.camembert-wheel.is-dragging .camembert-rotor,.camembert-wheel.is-dragging .camembert-label{transition:none}.camembert-hub{aspect-ratio:1;background:var(--papier);width:30%;box-shadow:0 0 0 5px var(--papier);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.camembert-hub b{color:#315a3e;letter-spacing:-.06em;font-size:clamp(22px,6.5vw,31px);line-height:1}.camembert-hub small{color:#637065;font-size:12px;line-height:1.3}.camembert-hint{color:#637065;text-align:center;margin:0;font-size:13px;line-height:1.5}.camembert-controls{justify-content:center;gap:10px;margin:16px 0 20px;display:flex}.camembert-controls button{border:1px solid var(--line);background:var(--papier);color:#253c2e;min-height:44px;font:inherit;border-radius:99px;justify-content:center;align-items:center;gap:8px;padding:10px 15px;font-size:14px;display:inline-flex}.camembert-current{border-top:1px solid var(--line);padding-top:16px}.camembert-current>button{color:#253c2e;width:100%;min-height:68px;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:6px 0;display:flex}.camembert-current-icon{background:var(--camembert-part);border-radius:15px;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.camembert-current-copy{flex:1;gap:3px;min-width:0;display:grid}.camembert-current-copy strong{font-size:17px}.camembert-current-copy small{color:#637065;font-size:13px}.camembert-current>button>svg{color:#315a3e;flex-shrink:0}.camembert-note{color:#637065;text-align:center;margin:15px 0 0;font-size:11px;line-height:1.5}.camembert-access{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.camembert-access button{border:1px solid var(--line);background:var(--papier);min-height:58px;color:var(--brand);font:inherit;border-radius:18px;justify-content:center;align-items:center;gap:10px;padding:10px;font-size:16px;font-weight:750;display:flex}@media (width<=1023px){.page.camembert-dashboard{padding:22px 16px 24px}:root[data-accueil=camembert] .app-shell[data-view=dashboard]{padding-bottom:calc(20px + env(safe-area-inset-bottom))}:root[data-accueil=camembert] .app-shell[data-view=dashboard] .mobile-nav{display:none}}@media (width<=400px){.camembert-card{border-radius:24px;padding:18px 14px}.camembert-heading h1{font-size:30px}.camembert-wheel{margin-top:20px}.camembert-label{gap:3px}.camembert-label>svg{width:21px;height:21px}.camembert-step,.camembert-hub small{font-size:10px}.camembert-current-copy strong{font-size:15px}}@media (prefers-reduced-motion:reduce){.camembert-rotor,.camembert-label{transition:none}}.page.camembert-dashboard{--camembert-paper:var(--kesta-background,#fbf8f0);--camembert-ink:var(--kesta-ink,#284c38);max-width:1280px;padding:58px 42px 50px}.camembert-card{background:var(--camembert-paper);box-shadow:none;border:0;border-radius:28px;grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);gap:18px 36px;padding:36px;display:grid}.camembert-heading{grid-column:2;align-self:end;padding-top:8px}.camembert-heading .eyebrow{letter-spacing:.15em;font-size:10px}.camembert-heading h1{color:var(--camembert-ink);font-family:var(--font-body,sans-serif);letter-spacing:-.065em;margin:12px 0;font-size:clamp(34px,4vw,60px);font-weight:800}.camembert-heading p{font-size:16px;line-height:1.6}.camembert-wheel-area{grid-area:1/1/span 2;align-self:center;min-width:0}.camembert-wheel{max-width:540px;margin:0 auto 16px;overflow:visible;container-type:inline-size}.camembert-rotor{overflow:visible}.camembert-sector{color:var(--camembert-ink);pointer-events:none;background:0 0}.camembert-sector:before{content:"";clip-path:var(--camembert-clip);background:var(--camembert-part);pointer-events:auto;position:absolute;inset:0}.camembert-courses{--camembert-part:var(--kesta-courses,#edc269)}.camembert-range{--camembert-part:var(--kesta-range,#d98566)}.camembert-stock{--camembert-part:var(--kesta-stock,#b5c9a2)}.camembert-envie{--camembert-part:var(--kesta-envie,#e3b0a8)}.camembert-use{--camembert-part:var(--kesta-use,#a9c7b7)}.camembert-label{z-index:2;color:var(--camembert-ink);pointer-events:auto;cursor:pointer;gap:5px}.camembert-sector:focus-visible .camembert-label strong{outline-offset:4px;border-radius:4px;outline:3px solid}.camembert-label strong{font-size:clamp(12px,3.5cqw,17px);font-weight:800}.camembert-label>svg{stroke-width:1.5px;width:clamp(23px,6.8cqw,34px);height:clamp(23px,6.8cqw,34px)}.camembert-step{opacity:.75;font-size:clamp(10px,2.5cqw,12px)}.camembert-hub{background:var(--camembert-paper);width:28%;box-shadow:0 0 0 4px var(--camembert-paper);pointer-events:none;gap:0}.camembert-hub .kesta-logo-tomato{width:clamp(36px,13cqw,70px);height:clamp(36px,13cqw,70px)}.camembert-hub .kesta-wordmark{font-size:clamp(20px,6.5cqw,34px)}.camembert-hub .kesta-wordmark>svg{width:13px;height:13px}.camembert-hint{font-size:12px;line-height:1.6}.camembert-hint br{display:none}.camembert-controls{margin:13px 0 0}.camembert-controls button{background:0 0;border-color:#d8dfd2;min-height:44px;font-size:12px}.camembert-companion{grid-column:2;min-width:0}.camembert-journey{gap:3px;display:grid}.camembert-journey-item{width:100%;min-height:63px;color:var(--camembert-ink);text-align:left;font:inherit;background:0 0;border:0;border-bottom:1px solid #dfe3d6;align-items:center;gap:12px;padding:9px 0;display:flex}.camembert-journey-item>svg{flex-shrink:0}.camembert-journey-item>svg:last-child{opacity:.5;width:17px;margin-left:auto}.camembert-journey-number{color:#627461;font-size:11px;font-weight:700}.camembert-journey-item>span:nth-last-child(2){gap:4px;min-width:0;display:grid}.camembert-journey-item strong{font-size:17px;font-weight:750}.camembert-journey-item small{color:#637065;font-size:12px;line-height:1.4}.camembert-journey-item:hover strong{text-underline-offset:4px;text-decoration:underline}.camembert-current{display:none}.camembert-access{gap:10px;margin-top:18px}.camembert-access button{min-height:47px;color:var(--camembert-ink);background:0 0;border-color:#d8dfd2;border-radius:12px;font-size:13px}.camembert-designs{flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;margin-top:22px;display:flex}.camembert-designs>span{color:#637065;margin-right:8px;font-size:11px}.camembert-designs button{color:#284c38;min-height:44px;font:inherit;background:0 0;border:1px solid #dce2d7;border-radius:9px;padding:9px 12px;font-size:12px}.camembert-designs button[aria-pressed=true]{color:#fff;background:#284c38;border-color:#284c38}.camembert-style-petales{--camembert-paper:#fffefa}.camembert-style-petales .camembert-wheel{width:calc(100% - 18px)}.camembert-style-petales .camembert-rotor{overflow:visible}.camembert-style-petales .camembert-sector{border-radius:50%;scale:.94}.camembert-style-petales .camembert-hub{width:27%;box-shadow:0 0 0 5px var(--camembert-paper)}.camembert-style-petales .camembert-sector.camembert-courses{--camembert-part:#f2d992;translate:0 -6px}.camembert-style-petales .camembert-sector.camembert-range{--camembert-part:#efbaa4;translate:6px -2px}.camembert-style-petales .camembert-sector.camembert-stock{--camembert-part:#c6d6b1;translate:4px 5px}.camembert-style-petales .camembert-sector.camembert-envie{--camembert-part:#e8c5c1;translate:-4px 5px}.camembert-style-petales .camembert-sector.camembert-use{--camembert-part:#bbd4c8;translate:-6px -2px}.camembert-style-cadran{--camembert-paper:#edf1e9}.camembert-style-cadran .camembert-wheel{outline-offset:10px;outline:1px solid #a9b6a3}.camembert-style-cadran .camembert-sector{--camembert-part:#355b44;color:#fffdf4}.camembert-style-cadran .camembert-label{color:#fffdf4}.camembert-style-cadran .camembert-sector.camembert-range,.camembert-style-cadran .camembert-sector.camembert-envie{--camembert-part:#41664e}.camembert-style-cadran .camembert-step{color:#edcc85;opacity:1}.camembert-style-cadran .camembert-hub{width:28%;box-shadow:0 0 0 3px var(--camembert-paper)}.camembert-preview{background:conic-gradient(#edc269 0 20%, #d98566 20% 40%, #b5c9a2 40% 60%, #e3b0a8 60% 80%, #a9c7b7 80%);border-radius:50%;flex:none;width:46px;height:46px;-webkit-mask:radial-gradient(circle,#0000 31%,#000 33%);mask:radial-gradient(circle,#0000 31%,#000 33%)}.camembert-preview-petales{border:4px solid #fffefa;-webkit-mask:none;mask:none}.camembert-preview-cadran{background:repeating-conic-gradient(#355b44 0deg 70deg,#edf1e9 70deg 72deg)}:root[data-couleurs=vitamine] .camembert-dashboard{--camembert-paper:var(--kesta-background)}:root[data-couleurs=vitamine] .camembert-courses{--camembert-part-ink:#40150d}:root[data-couleurs=vitamine] .camembert-range{--camembert-part-ink:#401e0d}:root[data-couleurs=vitamine] .camembert-stock{--camembert-part-ink:#fff}:root[data-couleurs=vitamine] .camembert-envie{--camembert-part-ink:#352a12}:root[data-couleurs=vitamine] .camembert-use{--camembert-part-ink:#103323}:root[data-couleurs=vitamine] .camembert-sector.camembert-courses{--camembert-part:var(--kesta-courses)}:root[data-couleurs=vitamine] .camembert-sector.camembert-range{--camembert-part:var(--kesta-range)}:root[data-couleurs=vitamine] .camembert-sector.camembert-stock{--camembert-part:var(--kesta-stock)}:root[data-couleurs=vitamine] .camembert-sector.camembert-envie{--camembert-part:var(--kesta-envie)}:root[data-couleurs=vitamine] .camembert-sector.camembert-use{--camembert-part:var(--kesta-use)}:root[data-couleurs=vitamine] .camembert-label,:root[data-couleurs=vitamine] .camembert-current-icon{color:var(--camembert-part-ink)}:root[data-couleurs=vitamine] .camembert-step{color:inherit;opacity:1}:root[data-couleurs=vitamine] .camembert-preview{background:conic-gradient(var(--kesta-courses) 0 20%, var(--kesta-range) 20% 40%, var(--kesta-stock) 40% 60%, var(--kesta-envie) 60% 80%, var(--kesta-use) 80%)}@media (width>=1600px){.page.camembert-dashboard{padding-top:78px}.camembert-card{column-gap:54px;padding:48px}}@media (width<=1100px) and (width>=1024px){.page.camembert-dashboard{padding:38px 24px}.camembert-card{grid-template-columns:minmax(0,1fr) minmax(240px,.85fr);column-gap:24px;padding:24px}.camembert-journey-item small{display:none}.camembert-journey-item{min-height:56px}}@media (width<=1023px){.page.camembert-dashboard{max-width:660px;padding:22px 8px 30px}.camembert-card{border-radius:24px;flex-direction:column;gap:0;padding:23px 6px;display:flex}.camembert-heading{text-align:center;width:100%;padding:0 14px 23px}.camembert-heading h1{margin:8px 0;font-size:39px}.camembert-heading p{font-size:14px;line-height:1.5}.camembert-heading p br{display:none}.camembert-heading .eyebrow{font-size:9px}.camembert-wheel-area,.camembert-companion{width:100%}.camembert-wheel{max-width:470px}.camembert-companion{padding-inline:12px}.camembert-journey{display:none}.camembert-current{margin-top:20px;display:block}.camembert-current>button{min-height:60px}.camembert-access{margin-top:12px}.camembert-style-cadran .camembert-wheel{width:calc(100% - 18px)}.camembert-designs>span{text-align:center;flex-basis:100%;margin:0 0 3px}.camembert-designs button{flex:1;padding:8px 6px;font-size:11px}}@media (width<=370px){.camembert-card{padding:20px 6px}.camembert-label strong{font-size:11px}.camembert-label{gap:2px}.camembert-label>svg{width:21px;height:21px}.camembert-hint br{display:inline}}.sync-feedback{border:1px solid var(--line);background:var(--papier);color:var(--brand);border-radius:16px;align-items:flex-start;gap:12px;margin:18px 44px 0;padding:14px 16px;display:flex}.sync-feedback>svg{flex-shrink:0;margin-top:2px}.sync-feedback-copy{flex:1;gap:4px;min-width:0;display:grid}.sync-feedback-copy strong{font-size:15px}.sync-feedback-copy span,.sync-feedback-copy small{overflow-wrap:anywhere;font-size:13px;line-height:1.45}.sync-feedback.error{color:#8b281c;background:#fff1ee;border-color:#b43224}.sync-feedback.pending{color:#654a11;background:#fff8df;border-color:#bf912c}.sync-feedback.offline{background:var(--surface-muted)}.sync-feedback-actions{flex-wrap:wrap;gap:8px;display:flex}.sync-feedback-actions button{min-height:44px;color:inherit;font:inherit;background:0 0;border:1px solid;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.sync-feedback-actions button:disabled{opacity:.55;cursor:default}@media (width<=1023px){.sync-feedback{flex-wrap:wrap;margin:14px 16px 0}.sync-feedback-actions{flex-basis:100%;margin-left:33px}}@media (width<=370px){.sync-feedback-actions{margin-left:0}}.sync-indicator{z-index:35;color:#34513c;justify-content:flex-end;margin:0 24px 20px;display:flex;position:relative}.sync-indicator-toggle{min-height:40px;color:inherit;font:inherit;background:#fffef9;border:1px solid #d7ded3;border-radius:20px;align-items:center;gap:7px;padding:8px 12px;font-size:11px;display:inline-flex;box-shadow:0 3px 12px #253c2e12}.sync-indicator.error{color:#963a28}.sync-indicator.error .sync-indicator-toggle{background:#fff5ef;border-color:#dba493}.sync-indicator.pending{color:#77591e}.sync-indicator .sync-feedback{flex-wrap:wrap;width:min(440px,100vw - 28px);max-height:calc(100dvh - 170px);margin:0;padding:20px 17px 16px;display:flex;position:absolute;bottom:50px;right:0;overflow-y:auto;box-shadow:0 16px 50px #253c2e25}.sync-feedback .sync-feedback-close{width:36px;height:36px;color:inherit;background:0 0;border:0;place-items:center;padding:6px;display:grid;position:absolute;top:5px;right:5px}.sync-indicator .sync-feedback-copy{padding-right:10px}.sync-indicator .sync-feedback-actions{flex-basis:100%;margin:0}.sync-repair-actions{flex-basis:100%;gap:8px;display:grid}.sync-repair-actions button{min-height:44px;color:inherit;text-align:left;font:inherit;background:#fff;border:1px solid;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:750}.sync-repair-actions p{margin:0;font-size:12px;line-height:1.5}@media (width<=1023px){.sync-indicator{margin:0 16px 20px}}:root{color:var(--brand);background:var(--lin);font-synthesis:none;text-rendering:optimizelegibility;--font-display:"Manrope Variable", "Manrope", system-ui, sans-serif;--font-text:"DM Sans Variable", "DM Sans", system-ui, sans-serif;--brand:#1e1e1e;--brand-hover:#000;--brand-rgb:30 30 30;--surface-muted:#f2f2ef;--border:#e3e3df;--text-secondary:#5c5c5c;--action:#c9361d;--action-hover:#a92b15;--action-soft:#fde8e3;--forest:var(--brand);--forest-hover:var(--brand-hover);--surface-strong:var(--brand);--stock-out:#5c5c5c;--lin:#fafaf8;--papier:#fff;--lin-2:var(--surface-muted);--line:var(--border);--separator:#ecece8;--paprika:var(--action);--paprika-hover:var(--action-hover);--paprika-soft:var(--action-soft);--beurre:#e3e3df;--beurre-ink:var(--brand);--beurre-soft:#f4f4f1;--olive:#5c5c5c;--olive-ink:#3e4247;--olive-soft:var(--surface-muted);--sauge:#d6d6d1;--ardoise:var(--text-secondary);--ink:var(--brand);--cream:var(--lin);--paper:var(--papier);--yellow:var(--beurre);--orange:var(--paprika);--danger:var(--state-urgent);--forest-2:var(--forest-hover);--muted:var(--ardoise);--apricot:#efefeb;--on-dark-muted:#cfd1d4;--card-1a:#f1eee8;--card-1b:#d6cfc3;--card-2a:#ececea;--card-2b:#bcbec1;--card-3a:#f4f0eb;--card-3b:#dcd2c7;--shadow:0 12px 34px rgb(var(--brand-rgb) / 8%);--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--app-viewport-height:100dvh;--app-viewport-offset-top:0px;--app-keyboard-inset:0px;font-family:DM Sans Variable,DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;max-width:100%;overflow-x:clip}html{background:var(--cream);overscroll-behavior-x:none}body{overscroll-behavior-x:none;min-width:0;min-height:100dvh;margin:0}img,video,canvas{max-width:100%}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.cooking-mode :focus-visible{outline-color:#fff}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{background:var(--papier);width:250px;color:var(--brand);z-index:20;border-right:1px solid var(--border);flex-direction:column;padding:30px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:var(--brand);text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:0 8px 30px;display:flex}.brand-mark{width:46px;height:46px;color:var(--forest);background:0 0;border-radius:15px;place-items:center;display:grid}.brand strong{letter-spacing:-.02em;font-size:22px;font-weight:800;display:block}.brand small{color:var(--text-secondary);margin-top:3px;font-size:11px;display:block}.sidebar nav{gap:7px;display:grid}.nav-item{width:100%;color:var(--text-secondary);text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:13px;padding:12px 14px;transition:all .18s;display:flex}.nav-item:hover{background:var(--surface-muted);color:var(--brand)}.offline-badge{color:var(--text-secondary);align-items:center;gap:8px;margin:auto 8px 0;font-size:12px;display:flex}.offline-badge span{background:var(--on-dark-muted);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #ffffff1a}.offline-badge.standalone{color:var(--forest);margin:20px 0 0}.workspace{grid-column:2;min-width:0}.version-chip{z-index:18;border:1px solid rgb(var(--brand-rgb) / 14%);color:var(--forest);box-shadow:0 8px 20px rgb(var(--brand-rgb) / 8%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);letter-spacing:.03em;background:#ffffffeb;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:850;position:fixed;top:14px;right:18px}.page{max-width:1450px;margin:0 auto;padding:54px 52px 70px}.page-header{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:34px;display:flex}.page-header h1{max-width:800px;font-family:var(--font-display);letter-spacing:-.035em;color:var(--forest);margin:7px 0 8px;font-size:clamp(34px,4vw,54px);font-weight:400;line-height:1.04}.page-header p{max-width:680px;color:var(--muted);margin:0;font-size:16px;line-height:1.6}.eyebrow{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:800}.primary-button,.secondary-button,.text-button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-weight:750;display:inline-flex}.primary-button{background:var(--forest);color:#fff;box-shadow:0 8px 20px rgb(var(--brand-rgb) / 16%)}.secondary-button{background:var(--paper);color:var(--forest);border-color:var(--border)}.text-button{color:var(--forest);background:0 0;padding-inline:8px}.text-button:hover{background:rgb(var(--brand-rgb) / 7%)}.full{width:100%}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.metric-card{background:var(--paper);border:1px solid rgb(var(--brand-rgb) / 8%);min-height:116px;box-shadow:0 10px 30px rgb(var(--brand-rgb) / 5%);border-radius:18px;align-items:center;gap:16px;padding:22px;display:flex}.metric-card>svg{color:var(--forest);background:var(--surface-muted);border-radius:14px;width:48px;height:48px;padding:11px}.metric-card.attention>svg{color:var(--danger);background:var(--state-urgent-soft)}.metric-card strong{font-family:var(--font-display);color:var(--forest);font-size:31px;font-weight:400;display:block}.metric-card span{color:var(--muted);margin-top:2px;font-size:13px;line-height:1.35;display:block}.dashboard-columns,.planner-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:20px;display:grid}.panel{background:var(--paper);border:1px solid rgb(var(--brand-rgb) / 9%);box-shadow:var(--shadow);border-radius:20px;padding:24px}.section-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.section-heading h2,.panel h2{font-family:var(--font-display);color:var(--forest);margin:5px 0 0;font-size:25px;font-weight:400}.recipe-list.compact{gap:7px;display:grid}.recipe-row{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:13px;grid-template-columns:46px 1fr auto;align-items:center;gap:13px;padding:10px;display:grid}.recipe-row:hover{background:var(--surface-muted)}.recipe-letter{border:1px solid var(--forest);background:var(--surface-muted);width:46px;height:46px;color:var(--forest);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:21px;display:grid}.recipe-row-main strong{font-size:14px;display:block}.recipe-row-main small{color:var(--muted);margin-top:5px;display:block}.match-pill,.score{background:var(--surface-muted);color:var(--brand);white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800}.priority-list{margin:0 0 20px;padding:0;list-style:none;display:grid}.priority-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:15px;padding:12px 2px;font-size:14px;display:flex}.priority-list em{color:var(--danger);font-size:12px;font-style:normal;font-weight:750}.empty-copy{color:var(--muted);line-height:1.6}.toolbar{gap:12px;margin-bottom:24px;display:flex}.search-field{border:1px solid var(--border);background:var(--paper);min-width:220px;min-height:48px;color:var(--muted);border-radius:13px;flex:1;align-items:center;gap:10px;padding:0 15px;display:flex}.search-field input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.search-field:focus-within,.stock-search:focus-within,.stock-use-custom:focus-within,.product-association-search:focus-within{outline:3px solid var(--brand);outline-offset:2px}.toolbar select,.day-row select{border:1px solid var(--border);background:var(--paper);color:var(--ink);border-radius:13px;min-height:48px;padding:0 38px 0 14px}.recipe-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.recipe-toolbar>.search-field{grid-column:1/-1}.recipe-toolbar .recipe-filter{min-width:0;color:var(--ink);gap:5px;font-size:14px;font-weight:700;display:grid}.recipe-toolbar .recipe-filter select{width:100%;min-width:0;font:inherit;font-weight:400}.recent-imports{margin:0 0 20px}.recent-imports h2{margin:0 0 10px;font-size:1.2rem}.recent-imports-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:8px;display:grid}.recent-import-button{text-align:left;border:1px solid var(--border);background:var(--paper);min-width:0;color:var(--ink);font:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:7px;display:flex}.recent-import-button img{object-fit:contain;background:var(--surface-muted);border-radius:8px;width:48px;height:48px}.recent-import-button span{flex:1;gap:2px;min-width:0;display:grid}.recent-import-button strong{overflow-wrap:anywhere}.recent-import-button small{color:var(--muted)}@media (width<=620px){.page .recipe-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recipe-toolbar .recipe-filter select{min-height:44px;padding-left:9px;padding-right:24px;font-size:14px}}.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.inventory-card{background:var(--paper);border:1px solid rgb(var(--brand-rgb) / 9%);min-height:210px;box-shadow:0 9px 24px rgb(var(--brand-rgb) / 4%);border-radius:17px;flex-direction:column;padding:19px;transition:all .18s;display:flex}.inventory-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.inventory-card.unavailable{opacity:.55;filter:grayscale(.4)}.inventory-photo{object-fit:contain;background:var(--surface-muted);border-radius:17px 17px 0 0;width:calc(100% + 38px);height:138px;margin:-19px -19px 16px}.inventory-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-actions{align-items:center;gap:6px;display:flex}.mini-icon-button{border:1px solid var(--border);width:30px;height:30px;color:var(--forest);background:#fff;border-radius:9px;place-items:center;display:grid}.category-tag{color:var(--orange);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800}.priority{background:var(--surface-muted);color:var(--muted);text-transform:uppercase;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.priority-urgent,.priority-a_utiliser{background:var(--state-urgent-soft);color:var(--state-urgent-ink)}.inventory-card h3{color:var(--forest);margin:17px 0 6px;font-size:17px;line-height:1.3}.inventory-card p,.inventory-card small{color:var(--muted);margin:0}.inventory-card small{margin-top:5px}.product-brand{font-size:12px;font-weight:750;color:var(--orange)!important;margin-top:-2px!important}.stock-dates,.stock-barcode,.stock-origin{color:var(--muted);align-items:flex-start;gap:7px;margin-top:10px;font-size:12px;line-height:1.4;display:flex}.stock-dates svg,.stock-barcode svg,.stock-origin svg{color:var(--forest);flex:none;margin-top:1px}.stock-barcode span{letter-spacing:.04em;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.stock-stepper{grid-template-columns:40px minmax(92px,1fr) 40px;align-items:center;margin:5px 0 12px;display:grid}.stock-stepper button{border:1px solid var(--border);height:40px;color:var(--forest);background:#fff;place-items:center;display:grid}.stock-stepper button:first-child{border-radius:11px 0 0 11px}.stock-stepper button:last-child{border-radius:0 11px 11px 0}.stock-stepper button:disabled{opacity:.4;cursor:default}.stock-stepper strong{border-block:1px solid var(--border);background:var(--surface-muted);height:40px;color:var(--forest);text-align:center;place-items:center;padding-inline:8px;font-size:13px;display:grid}.unknown-quantity{margin-bottom:12px}.compact-button{min-height:34px;margin-top:3px;padding:4px 0;font-size:12px}.stock-status{color:var(--danger);text-transform:uppercase;letter-spacing:.06em;margin-top:auto;padding-top:10px;font-size:11px;font-weight:800}.shopping-list input{width:18px;height:18px;accent-color:var(--forest)}.acquisition-roadmap{grid-template-columns:minmax(280px,1.3fr) repeat(3,minmax(150px,.55fr));align-items:stretch;gap:14px;margin-top:24px;display:grid}.acquisition-roadmap>div,.acquisition-roadmap article{border:1px solid rgb(var(--brand-rgb) / 9%);background:var(--paper);border-radius:17px;padding:20px}.acquisition-roadmap h2{font-family:var(--font-display);color:var(--forest);margin:6px 0;font-size:24px;font-weight:400}.acquisition-roadmap p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.acquisition-roadmap article{align-content:center;gap:6px;display:grid}.acquisition-roadmap article svg{color:var(--orange)}.acquisition-roadmap article strong{color:var(--forest)}.acquisition-roadmap article span{color:var(--muted);font-size:12px}.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.recipe-card{background:var(--paper);border:1px solid rgb(var(--brand-rgb) / 9%);box-shadow:0 10px 30px rgb(var(--brand-rgb) / 5%);border-radius:19px;overflow:hidden}.recipe-card-visual{background:linear-gradient(135deg, var(--card-1a), var(--card-1b));justify-content:space-between;align-items:flex-start;min-height:112px;padding:16px;display:flex}.recipe-card:nth-child(3n+2) .recipe-card-visual{background:linear-gradient(135deg, var(--card-2a), var(--card-2b))}.recipe-card:nth-child(3n+3) .recipe-card-visual{background:linear-gradient(135deg, var(--card-3a), var(--card-3b))}.recipe-card-visual>span,.recipe-card-tags>span{color:var(--forest);background:#ffffffb8;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.recipe-card-tags{flex-wrap:wrap;gap:7px;display:flex}.recipe-card-tags .dietary-tag{background:var(--surface-muted);color:var(--brand)}.recipe-card-actions{justify-items:end;gap:8px;display:grid}.recipe-card-actions .coverage-pill{white-space:nowrap}.icon-button{border:1px solid rgb(var(--brand-rgb) / 14%);width:38px;height:38px;color:var(--forest);background:#ffffffbd;border-radius:11px;place-items:center;display:grid}.icon-button.favorite{color:var(--danger)}.recipe-card-content{padding:20px}.recipe-card h3{min-height:47px;font-family:var(--font-display);color:var(--forest);margin:0 0 12px;font-size:20px;font-weight:400;line-height:1.2}.recipe-card-content>p{min-height:38px;color:var(--muted);margin:13px 0 17px;font-size:13px;line-height:1.45}.recipe-card-content>p.allergen-summary{background:var(--state-soon-soft);min-height:0;color:var(--state-soon-ink);border-radius:10px;margin:-7px 0 15px;padding:8px 10px;font-size:11px}.recipe-card-content>p.recipe-stock-summary{min-height:0;color:var(--forest);margin-bottom:13px;font-weight:750}.recipe-meta{color:var(--muted);flex-wrap:wrap;gap:13px;font-size:12px;display:flex}.recipe-meta span{align-items:center;gap:5px;display:inline-flex}.suggestion-controls{grid-template-columns:1fr 260px;align-items:center;gap:40px;margin-bottom:20px;display:grid}.suggestion-controls label>span{color:var(--muted);font-size:12px;display:block}.suggestion-controls label>strong{color:var(--forest);margin:3px 0 10px;font-size:18px;display:block}.suggestion-controls input[type=range]{width:100%;accent-color:var(--forest)}.stepper{grid-template-columns:44px 60px 44px;align-items:center;margin-top:8px;display:grid}.stepper button{border:1px solid var(--border);height:42px;color:var(--forest);background:#fff;font-size:20px}.stepper button:first-child{border-radius:11px 0 0 11px}.stepper button:last-child{border-radius:0 11px 11px 0}.stepper strong{border-block:1px solid var(--border);background:#fff;place-items:center;height:42px;display:grid}.suggestions-list{gap:14px;display:grid}.meal-suggestions{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:26px;display:grid}.meal-card{border:1px solid rgb(var(--brand-rgb) / 12%);background:linear-gradient(145deg, var(--papier), var(--surface-muted));box-shadow:0 12px 32px rgb(var(--brand-rgb) / 7%);border-radius:20px;gap:15px;padding:21px;display:grid}.meal-card-heading{justify-content:space-between;align-items:flex-start;gap:13px;display:flex}.meal-card-heading h2{color:var(--forest);font:400 23px/1.15 var(--font-display);margin:4px 0 0}.meal-component-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.meal-component-grid>span{color:var(--forest);background:#ffffffb8;border-radius:11px;padding:10px;font-size:12px;font-weight:750}.meal-component-grid small{color:var(--orange);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:9px;display:block}.section-divider{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:14px;margin:28px 0 18px;font-size:11px;font-weight:800;display:flex}.section-divider:before,.section-divider:after{content:"";background:var(--line);flex:1;height:1px}.suggestion-card{background:var(--paper);border:1px solid rgb(var(--brand-rgb) / 9%);border-radius:19px;grid-template-columns:54px 1fr;gap:17px;padding:22px;display:grid}.rank{background:var(--forest);color:#fff;width:48px;height:48px;font-family:var(--font-display);border-radius:15px;place-items:center;font-size:21px;display:grid}.suggestion-title{justify-content:space-between;gap:20px;display:flex}.suggestion-title h2{font-family:var(--font-display);color:var(--forest);margin:5px 0 9px;font-size:24px;font-weight:400}.reason-list{color:var(--brand);flex-wrap:wrap;gap:7px 16px;margin:16px 0 10px;padding:0;font-size:12px;list-style:none;display:flex}.reason-list li{align-items:center;gap:5px;display:inline-flex}.missing{color:var(--muted);align-items:flex-start;gap:7px;margin:10px 0 16px;font-size:13px;display:flex}.week-list{display:grid}.planner-side{align-content:start;gap:20px;display:grid}.rotation-panel ul{margin:0;padding:0;list-style:none;display:grid}.rotation-panel li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.rotation-panel li strong,.rotation-panel li small{display:block}.rotation-panel li strong{color:var(--forest);font-size:14px}.rotation-panel li small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.45}.rotation-panel .text-button{flex:none;min-height:34px;font-size:11px}.learning-note{color:var(--muted);margin:14px 0 0;font-size:11px}.day-row{border-bottom:1px solid var(--line);grid-template-columns:95px minmax(0,1fr) 42px;align-items:center;gap:10px;min-height:64px;display:grid}.day-row:last-child{border-bottom:0}.day-row strong{color:var(--forest);font-size:13px}.day-row select{width:100%;min-height:42px}.shopping-form{grid-template-columns:1fr 48px;gap:8px;margin-bottom:16px;display:grid}.shopping-form input{border:1px solid var(--border);background:#fff;border-radius:11px;min-width:0;height:44px;padding:0 13px}.shopping-form .primary-button{padding:0}.shopping-list{margin:0;padding:0;list-style:none;display:grid}.shopping-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:52px;display:flex}.shopping-list label{align-items:center;gap:10px;font-size:14px;display:flex}.shopping-list li.checked span{color:var(--muted);text-decoration:line-through}.shopping-list .icon-button{width:34px;height:34px;color:var(--muted);background:0 0;border:0}.count-badge{background:var(--yellow);min-width:30px;height:30px;color:var(--forest);border-radius:999px;place-items:center;font-size:12px;font-weight:850;display:grid}.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.settings-grid .panel p{color:var(--muted);line-height:1.65}.movement-panel{grid-column:span 2}.movement-panel ul{margin:16px 0 0;padding:0;list-style:none}.movement-panel li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:11px 0;display:flex}.movement-panel li span strong,.movement-panel li span small{display:block}.movement-panel li span small{color:var(--muted);margin-top:3px}.movement-panel li em{color:var(--brand);font-style:normal;font-weight:800}.movement-panel li em.negative{color:var(--danger)}dl{margin:20px 0 0}dl div{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:11px 0;display:flex}dt{color:var(--muted)}dd{color:var(--forest);text-align:right;margin:0;font-weight:700}.hash{font-family:ui-monospace,monospace;font-size:12px}.dialog-backdrop{z-index:200;background:rgb(var(--brand-rgb) / 72%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overscroll-behavior:contain;place-items:center;max-width:100%;padding:24px;display:grid;position:fixed;inset:0;overflow-x:hidden}.catalog-product-backdrop{z-index:2200}.catalog-product-editor .catalog-stock-only,.catalog-product-editor .package-sentence,.catalog-product-editor .stock-tracking-choice{display:none}.catalog-product-editor label:has(#inventory-field-purchaseDate){display:none}.catalog-product-editor label:has(#inventory-field-frozenDate){display:none}.catalog-product-editor label:has(#inventory-field-quantity){display:none}.catalog-product-editor label:has(#inventory-field-quantityUnit){display:none}.recipe-dialog{background:var(--paper);overscroll-behavior:contain;border-radius:24px;width:min(740px,100%);max-width:100%;max-height:calc(100dvh - 48px);padding:34px;position:relative;overflow:hidden auto;box-shadow:0 30px 100px #00000059}.meal-dialog{width:min(880px,100%)}.meal-components{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.meal-components article{border:1px solid var(--line);background:var(--lin);color:var(--forest);border-radius:13px;gap:4px;padding:13px;display:grid}.meal-components small{color:var(--orange);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:850}.timeline-note{font-size:12px;margin-bottom:13px!important}.dialog-close{background:var(--surface-muted);width:42px;height:42px;color:var(--forest);border:0;border-radius:12px;place-items:center;display:grid;position:absolute;top:18px;right:18px}.recipe-dialog>h1{font-family:var(--font-display);color:var(--forest);margin:8px 50px 18px 0;font-size:35px;font-weight:400;line-height:1.08}.recipe-meta.prominent{border-block:1px solid var(--line);padding:15px 0}.recipe-meta .dietary-inline{background:var(--surface-muted);color:var(--brand);border-radius:999px;padding:5px 9px;font-weight:800}.dialog-section{margin-top:22px}.dialog-section h2{color:var(--forest);margin:0 0 9px;font-size:15px}.dialog-section p{color:var(--muted);margin:0;line-height:1.7}.stock-correlation{border:1px solid var(--line);background:var(--papier);border-radius:15px;padding:16px}.stock-correlation-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.stock-correlation-heading h2{margin:0}.stock-correlation-heading>strong{background:var(--forest);color:#fff;border-radius:999px;padding:6px 9px;font-size:11px}.stock-correlation .stock-correlation-note{margin:6px 0 12px;font-size:11px;line-height:1.45}.stock-correlation-list{gap:7px;display:grid}.stock-correlation-line{background:var(--surface-muted);min-height:48px;color:var(--brand);border-radius:11px;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;display:grid}.stock-correlation-line>span{background:var(--brand);color:#fff;border-radius:999px;place-items:center;width:23px;height:23px;font-weight:900;display:grid}.stock-correlation-line strong,.stock-correlation-line small{display:block}.stock-correlation-line strong{font-size:13px}.stock-correlation-line small{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.35}.stock-correlation-line em{text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-style:normal;font-weight:850}.stock-correlation-line.quantity_unknown,.stock-correlation-line.insufficient{background:var(--state-soon-soft);color:var(--state-soon-ink)}.stock-correlation-line.quantity_unknown>span,.stock-correlation-line.insufficient>span{background:var(--state-soon)}.stock-correlation-line.missing{background:var(--state-urgent-soft);color:var(--state-urgent-ink)}.stock-correlation-line.missing>span{background:var(--state-urgent)}.stock-correlation .optional-stock-note{margin-top:10px;font-size:11px}.source-panel{border:1px solid var(--border);background:var(--surface-muted);border-radius:14px;padding:15px}.source-panel>div{flex-wrap:wrap;gap:12px;margin-top:9px;display:flex}.source-panel a,.text-link{color:var(--forest);font-size:12px;font-weight:800}.source-panel small{color:var(--text-secondary);margin-top:10px;line-height:1.45;display:block}.classification-panel{border:1px solid var(--border);background:var(--surface-muted);border-radius:15px;grid-template-columns:1fr 1.5fr;gap:12px;margin-top:18px;padding:16px;display:grid}.classification-panel>div{align-content:start;gap:8px;display:grid}.classification-panel strong{color:var(--forest);font-size:12px}.classification-panel>div>span{color:var(--muted);font-size:13px}.classification-panel>p{color:var(--text-secondary);grid-column:1/-1;align-items:flex-start;gap:7px;margin:2px 0 0;font-size:11px;line-height:1.45;display:flex}.classification-panel>p svg{flex:none}.allergen-list{flex-wrap:wrap;gap:6px;display:flex}.allergen-list span{background:var(--state-soon-soft);color:var(--state-soon-ink);border-radius:999px;padding:5px 8px;font-size:11px;font-weight:750}.guidance-section h2{align-items:center;gap:7px;display:flex}.guidance-section>ul{color:var(--muted);margin:0;padding-left:20px;line-height:1.7}.detailed-steps{gap:12px;margin:0;padding:0;list-style:none;display:grid}.detailed-steps li{grid-template-columns:34px 1fr;align-items:flex-start;gap:11px;display:grid}.detailed-steps li>span{background:var(--forest);color:#fff;border-radius:10px;place-items:center;width:32px;height:32px;font-weight:850;display:grid}.detailed-steps small{color:var(--orange);text-transform:uppercase;letter-spacing:.08em;margin:1px 0 3px;font-size:9px;font-weight:850;display:block}.detailed-steps p{color:var(--ink)}.chip-list{flex-wrap:wrap;gap:7px;display:flex}.chip-list span{background:var(--surface-muted);color:var(--brand);border-radius:999px;padding:7px 10px;font-size:12px}.chip-list.light span{background:var(--surface-muted);color:var(--state-soon-ink)}.recipe-editor{gap:18px;display:grid}.recipe-editor-basics{background:var(--lin-2);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:16px;display:grid}.recipe-editor label{min-width:0;color:var(--forest);gap:6px;font-size:11px;font-weight:800;display:grid}.recipe-editor label.wide{grid-column:1/-1}.recipe-editor input:not([type=checkbox]),.recipe-editor select,.recipe-editor textarea{border:1px solid var(--line);width:100%;min-width:0;min-height:42px;color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:9px;padding:8px 10px}.recipe-editor input[type=checkbox]{width:17px;height:17px;accent-color:var(--forest)}.recipe-editor-section{gap:11px;padding-top:4px;display:grid}.recipe-editor-section>h2,.recipe-editor-heading h2{color:var(--forest);font-family:var(--font-display);margin:4px 0 0;font-size:22px;font-weight:400}.recipe-editor-help{color:var(--muted);margin:4px 0 0;font-size:11px}.recipe-editor-heading{justify-content:space-between;align-items:end;gap:12px;display:flex}.recipe-editor-heading .secondary-button{min-height:40px}.recipe-ingredient-editor-list,.recipe-step-editor-list{gap:8px;display:grid}.recipe-ingredient-editor-row{border:1px solid var(--line);background:var(--papier);border-radius:13px;grid-template-columns:minmax(150px,2fr) 90px 105px 42px;align-items:end;gap:8px;padding:11px;display:grid}.recipe-ingredient-editor-row .ingredient-note{grid-column:1/3}.recipe-inline-check{grid-column:3/4;grid-auto-flow:column;justify-content:start;align-items:center;min-height:42px;display:flex!important}.recipe-ingredient-editor-row>.icon-button{grid-area:1/4/3;align-self:center}.recipe-step-editor-row{border:1px solid var(--line);background:var(--papier);border-radius:13px;grid-template-columns:34px 130px minmax(220px,1fr) 92px auto;align-items:end;gap:8px;padding:11px;display:grid}.recipe-step-number{background:var(--forest);color:#fff;border-radius:10px;align-self:center;place-items:center;width:32px;height:32px;font-weight:850;display:grid}.recipe-step-actions{align-items:center;gap:4px;padding-bottom:1px;display:flex}.recipe-step-actions .icon-button{width:34px;height:34px}.recipe-step-actions button:disabled{opacity:.35}.recipe-allergen-editor{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.recipe-allergen-editor label{border:1px solid var(--line);background:var(--papier);border-radius:10px;align-items:center;gap:7px;min-height:38px;padding:7px 9px;display:flex}.recipe-advice-editor textarea{margin-top:3px}.recipe-editor-actions{z-index:2;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;margin-inline:-34px;padding:15px 34px;position:sticky;bottom:-34px}.recipe-import-dialog{background:var(--paper);overscroll-behavior:contain;border-radius:24px;width:min(980px,100%);max-width:100%;max-height:calc(100dvh - 48px);padding:34px;position:relative;overflow:hidden auto;box-shadow:0 30px 100px #00000059}.recipe-import-dialog>h1{color:var(--forest);font-family:var(--font-display);margin:8px 50px 12px 0;font-size:35px;font-weight:400;line-height:1.08}.recipe-import-intro{max-width:700px;color:var(--muted);margin:0 0 20px;line-height:1.6}.recipe-import-tabs{background:var(--lin-2);border-radius:15px;grid-template-columns:1fr 1fr;gap:9px;padding:5px;display:grid}.recipe-import-tabs button{min-height:50px;color:var(--muted);font:inherit;background:0 0;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:flex}.recipe-import-tabs button.active{border-color:var(--line);color:var(--forest);box-shadow:0 5px 14px rgb(var(--brand-rgb) / 8%);background:#fff}.recipe-import-tabs small{background:var(--yellow);color:var(--forest);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 6px;font-size:9px}.recipe-import-form{gap:14px;margin-top:18px;display:grid}.recipe-import-form label{color:var(--forest);gap:7px;font-size:12px;font-weight:800;display:grid}.recipe-import-form input,.recipe-import-form textarea{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);font:inherit;resize:vertical;background:#fff;border-radius:11px;padding:11px 13px}.recipe-import-form input{min-height:48px}.recipe-import-form label small,.recipe-import-privacy{color:var(--muted);font-size:10px;font-weight:550;line-height:1.5}.recipe-import-submit{width:fit-content}.recipe-import-privacy{border-top:1px solid var(--line);margin:18px 0 0;padding-top:13px}.recipe-import-back{color:var(--forest);font:inherit;background:0 0;border:0;align-items:center;gap:6px;margin:0 0 17px;padding:0;font-size:12px;font-weight:800;display:inline-flex}.recipe-import-review{border:1px solid var(--border);background:var(--surface-muted);border-radius:15px;gap:9px;margin:16px 0 20px;padding:15px;display:grid}.recipe-import-review>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.recipe-import-review a{color:var(--forest);align-items:center;gap:5px;font-size:11px;font-weight:800;display:inline-flex}.recipe-import-review p,.recipe-import-review ul{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.5}.recipe-import-review ul{padding-left:18px}.recipe-import-review>small{color:var(--muted);line-height:1.5}.recipe-import-review .import-existing-warning{background:var(--state-soon-soft);color:var(--state-soon-ink);border-radius:9px;padding:9px 11px;font-weight:750}.dialog-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.mobile-keyboard-actions,.keyboard-demand-control{display:none}.form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px;min-width:0;max-width:100%;margin-top:22px;display:grid}.form-grid label{min-width:0;max-width:100%;color:var(--forest);gap:7px;font-size:12px;font-weight:750;display:grid}.form-grid label.wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid var(--border);width:100%;min-width:0;max-width:100%;min-height:46px;color:var(--ink);resize:vertical;background:#fff;border-radius:11px;padding:10px 12px}.form-grid label>small{color:var(--muted);font-size:10px;font-weight:550}.form-grid label em{color:var(--muted);font-style:normal;font-weight:550}.product-media-panel{border:1px solid var(--line);background:var(--lin);border-radius:16px;grid-template-columns:150px minmax(0,1fr);align-items:stretch;gap:15px;min-width:0;max-width:100%;padding:15px;display:grid}.product-media-panel>*{min-width:0;max-width:100%}.product-photo-preview,.product-photo-placeholder{background:var(--surface-muted);border-radius:13px;min-height:128px;position:relative;overflow:hidden}.product-photo-preview img{object-fit:contain;width:100%;height:100%;min-height:128px;display:block}.product-photo-source{background:rgb(var(--brand-rgb) / 86%);color:#fff;border-radius:6px;max-width:calc(100% - 16px);padding:4px 6px;font-size:10px;font-weight:700;position:absolute;bottom:8px;left:8px}.product-photo-preview .mini-icon-button{background:#ffffffeb;position:absolute;top:8px;right:8px}.product-photo-placeholder{color:var(--muted);place-content:center;justify-items:center;gap:7px;font-size:11px;display:grid}.media-picker-grid{grid-template-columns:minmax(0,1fr);align-content:center;gap:8px;min-width:0;max-width:100%;display:grid}.media-picker-grid .secondary-button,.media-picker-grid .primary-button{cursor:pointer;white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%}.media-status{background:var(--surface-muted);color:var(--forest);border-radius:11px;margin:10px 0 0;padding:10px 12px;font-size:12px;line-height:1.45}.import-success{border:1px solid var(--border);background:var(--surface-muted);color:var(--brand);border-radius:12px;margin:-12px 0 22px;padding:12px 14px;font-size:13px;font-weight:700}.lookup-button{border:1px solid var(--border);background:var(--surface-muted);width:100%;min-height:36px;color:var(--forest);border-radius:9px;font-size:11px;font-weight:800}.lookup-button:disabled{opacity:.48;cursor:default}.product-candidate{border:1px solid var(--border);background:var(--surface-muted);color:var(--forest);border-radius:14px;gap:7px;margin-top:12px;padding:14px;display:grid}.product-candidate>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.product-candidate p,.product-candidate small{color:var(--muted);margin:0}.product-candidate a{color:var(--forest);font-size:11px}.product-candidate .text-button{justify-self:start;min-height:34px;padding:4px 8px}.receipt-dialog{width:min(1120px,100%)}.receipt-privacy{background:var(--surface-muted);color:var(--brand);border-radius:13px;align-items:flex-start;gap:9px;margin:0 0 18px;padding:13px 15px;font-size:13px;line-height:1.5;display:flex}.receipt-privacy svg{flex:none}.receipt-source-actions{flex-wrap:wrap;gap:10px;margin-bottom:15px;display:flex}.receipt-source-actions label{cursor:pointer}.leclerc-invoice-bridge{border:1px solid var(--line);background:var(--papier);color:var(--forest);border-radius:14px;gap:7px;margin:0 0 18px;padding:14px 16px;display:grid}.leclerc-invoice-bridge>strong{font-size:14px}.leclerc-invoice-bridge p{color:var(--ardoise);margin:0;font-size:12px;line-height:1.5}.leclerc-invoice-bridge a{width:max-content;max-width:100%;color:var(--forest);align-items:center;gap:6px;font-size:12px;font-weight:800;display:inline-flex}.ocr-progress{background:var(--state-soon-soft);color:var(--state-soon-ink);border-radius:12px;margin:12px 0;padding:13px}.ocr-progress>div{align-items:center;gap:8px;margin-bottom:8px;font-size:12px;display:flex}.ocr-progress strong{margin-left:auto}.ocr-progress progress{width:100%;accent-color:var(--forest)}.raw-ticket-field{color:var(--forest);gap:7px;font-size:12px;font-weight:750;display:grid}.raw-ticket-field textarea{border:1px solid var(--border);width:100%;min-height:120px;color:var(--ink);resize:vertical;background:#fff;border-radius:11px;padding:12px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.receipt-summary-grid{border:1px solid var(--line);background:var(--lin);border-radius:14px;grid-template-columns:1fr 190px 170px;gap:12px;margin-top:20px;padding:15px;display:grid}.receipt-summary-grid label,.receipt-summary-grid>div{color:var(--forest);align-content:start;gap:6px;font-size:12px;font-weight:750;display:grid}.receipt-summary-grid input{border:1px solid var(--border);background:#fff;border-radius:9px;width:100%;min-height:42px;padding:9px 10px}.receipt-summary-grid strong{padding-top:11px}.receipt-warnings{background:var(--state-soon-soft);color:var(--state-soon-ink);border-radius:12px;margin:14px 0;padding:12px 15px 12px 34px;font-size:12px;line-height:1.55}.receipt-lines-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin:22px 0 11px;display:flex}.receipt-lines-heading h2{font-family:var(--font-display);color:var(--forest);margin:4px 0 0;font-size:24px;font-weight:400}.confidence-legend{color:var(--muted);text-align:right;font-size:11px}.receipt-lines{gap:10px;display:grid}.receipt-line{border:1px solid var(--border);background:#fff;border-radius:13px;grid-template-columns:74px minmax(170px,1.5fr) 90px 125px minmax(150px,1fr) 140px;align-items:end;gap:9px;padding:13px;display:grid}.receipt-line.excluded{opacity:.48;background:var(--surface-muted)}.receipt-line label{color:var(--forest);gap:5px;font-size:10px;font-weight:800;display:grid}.receipt-line input:not([type=checkbox]),.receipt-line select{border:1px solid var(--border);width:100%;min-width:0;min-height:39px;color:var(--ink);background:#fff;border-radius:8px;padding:7px 8px;font-size:12px}.receipt-line-toggle{align-items:center;height:39px;gap:6px!important;display:flex!important}.receipt-line-toggle input{width:17px;height:17px;accent-color:var(--forest)}.receipt-line-meta{color:var(--muted);grid-column:2/7;align-items:center;gap:9px;font-size:11px;display:flex}.receipt-line>small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);grid-column:2/7;font-size:10px;overflow:hidden}.confidence{border-radius:999px;margin-left:auto;padding:4px 7px;font-weight:800}.confidence.good{background:var(--surface-muted);color:var(--brand)}.confidence.review{background:var(--surface-muted);color:var(--state-soon-ink)}.receipt-detected-date{color:var(--muted);margin:13px 0 0;font-size:10px}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.form-error{border:1px solid var(--state-urgent);background:var(--state-urgent-soft);color:var(--state-urgent-ink);border-radius:11px;padding:11px 13px;font-size:13px}.form-error:before,.priority-urgent:before{content:"⚠ "}.consumption-intro{background:var(--surface-muted);color:var(--forest);border-radius:14px;margin:16px 0 18px;padding:16px}.consumption-intro p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.5}.consumption-list{gap:9px;display:grid}.consumption-row{border:1px solid var(--line);border-radius:13px;grid-template-columns:22px minmax(180px,1fr) 100px 42px;align-items:center;gap:10px;padding:12px;display:grid}.consumption-row>input[type=checkbox]{width:18px;height:18px;accent-color:var(--forest)}.consumption-row>input[type=number]{border:1px solid var(--border);border-radius:9px;min-width:0;height:40px;padding:0 9px}.consumption-row span strong,.consumption-row span small{display:block}.consumption-row span small{color:var(--muted);margin-top:4px;line-height:1.35}.consumption-row em{color:var(--forest);font-size:12px;font-style:normal;font-weight:800}.consumption-row.unavailable-line{opacity:.58}.unmatched-note{color:var(--muted);font-size:12px;line-height:1.5}.empty-state,.startup-state{text-align:center;color:var(--muted)}.empty-state{border:1px dashed var(--border);border-radius:18px;margin-top:24px;padding:50px 20px}.empty-state h2,.startup-state h1{color:var(--forest)}.startup-state{align-content:center;justify-items:center;min-height:100vh;padding:30px;display:grid}.startup-state>*{margin:5px}.loading-mark{background:var(--yellow);width:70px;height:70px;color:var(--forest);border-radius:22px;place-items:center;animation:1.6s ease-in-out infinite pulse;display:grid}.mobile-nav{inset:auto 10px calc(10px + env(safe-area-inset-bottom)) 10px;border:1px solid var(--border);background:var(--papier);border-radius:24px;height:70px;padding:6px;display:none;box-shadow:0 10px 30px #0000001f}@keyframes pulse{50%{box-shadow:0 0 0 13px rgb(var(--brand-rgb) / 8%);transform:scale(1.05)}}@media (width<=1150px){.metric-grid,.inventory-grid,.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid,.recipe-toolbar{grid-template-columns:1fr 1fr}}@media (width<=820px){.app-shell{padding-bottom:calc(76px + env(safe-area-inset-bottom));display:block}.sidebar{background:var(--papier);color:var(--brand);border-right:1px solid var(--border);display:none}.workspace{min-height:100vh}.version-chip{padding:6px 9px;font-size:10px;top:8px;right:10px}.page{padding:30px 18px 42px}.page-header{flex-direction:column;align-items:flex-start;margin-bottom:25px}.page-header h1{font-size:37px}.page-header .primary-button,.page-header .secondary-button{width:100%}.dashboard-columns,.planner-layout,.acquisition-roadmap{grid-template-columns:1fr}.mobile-nav{inset:auto 10px calc(10px + env(safe-area-inset-bottom)) 10px;z-index:50;background:var(--papier);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:24px;grid-template-columns:repeat(4,1fr);height:70px;padding:6px;display:grid;position:fixed;box-shadow:0 10px 30px #0000001f}.mobile-nav button{min-width:0;color:var(--text-secondary);background:0 0;border:0;border-radius:18px;justify-items:center;gap:3px;padding:5px 1px;font-size:9px;display:grid}.mobile-nav button.active{color:var(--action-hover);background:var(--action-soft);box-shadow:none;font-weight:850}.toolbar{flex-direction:column}.toolbar select{min-height:48px}.recipe-toolbar{grid-template-columns:1fr;display:grid}.suggestion-controls{grid-template-columns:1fr;gap:24px}.meal-suggestions,.meal-component-grid,.meal-components{grid-template-columns:1fr}.recipe-dialog{border-radius:20px;padding:28px 20px}.dialog-backdrop{padding:10px}.dialog-actions>*{width:100%}.consumption-row{grid-template-columns:22px minmax(0,1fr) 84px 30px}.classification-panel{grid-template-columns:1fr}.classification-panel>p{grid-column:auto}.product-media-panel{grid-template-columns:120px minmax(0,1fr)}.receipt-line{grid-template-columns:70px minmax(150px,1fr) 85px 120px}.receipt-line label:nth-of-type(5),.receipt-line label:nth-of-type(6){grid-column:span 2}.receipt-line-meta,.receipt-line>small{grid-column:2/-1}}@media (width<=580px){.metric-grid,.inventory-grid,.recipe-grid,.settings-grid{grid-template-columns:1fr}.metric-card{min-height:96px}.suggestion-card{grid-template-columns:40px 1fr;padding:17px}.rank{border-radius:12px;width:38px;height:38px}.suggestion-title{display:block}.score{margin-bottom:10px;display:inline-block}.suggestion-title h2{font-size:21px}.day-row{grid-template-columns:72px 1fr}.day-row .icon-button{display:none}.recipe-row{grid-template-columns:42px 1fr}.recipe-row .match-pill{display:none}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}.product-media-panel{grid-template-columns:1fr}.product-photo-preview,.product-photo-placeholder,.product-photo-preview img{min-height:170px}.receipt-summary-grid{grid-template-columns:1fr}.receipt-lines-heading{flex-direction:column;align-items:flex-start}.confidence-legend{text-align:left}.receipt-line{grid-template-columns:78px minmax(0,1fr)}.receipt-line label,.receipt-line label:nth-of-type(5),.receipt-line label:nth-of-type(6){grid-column:auto}.receipt-line-name{grid-column:2!important}.receipt-line-meta,.receipt-line>small{grid-column:1/-1}.receipt-line>small{white-space:normal}.movement-panel{grid-column:auto}.consumption-row{grid-template-columns:22px 1fr 40px}.consumption-row>input[type=number]{grid-column:2/3;width:100%}.consumption-row em{grid-area:2/3}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button,input,select,textarea{font-family:var(--font-text)}button{min-height:44px}.app-shell{background:var(--lin);grid-template-columns:248px minmax(0,1fr)}.sidebar{background:var(--papier);width:248px;color:var(--brand);border-right:1px solid var(--border);padding:28px 18px 22px}.brand{color:var(--brand);gap:11px;padding:0 10px 28px}.brand-mark{background:0 0;border-radius:12px;width:42px;height:42px}.brand-mark img,.mobile-app-mark img{border-radius:inherit;width:100%;height:100%;display:block}.brand strong{font-family:var(--font-display);letter-spacing:-.02em;font-size:21px;font-weight:800}.brand small{color:var(--text-secondary);font-size:11px}.sidebar nav{gap:4px}.nav-item{min-height:44px;color:var(--text-secondary);border-radius:12px;padding:10px 12px;font-weight:600}.nav-item.active{background:var(--action-soft);color:var(--action-hover);box-shadow:none;font-weight:800}.offline-badge{color:var(--text-secondary);align-items:flex-start;margin:auto 8px 0;line-height:1.35}.offline-badge>span{background:var(--olive);box-shadow:none;margin-top:4px}.offline-badge.is-offline>span{background:var(--paprika)}.offline-badge small{color:var(--text-secondary);margin-top:4px;font-size:10px;display:block}.workspace{background:var(--lin);grid-column:2;min-height:100vh}.page{max-width:1180px;padding:36px 44px 60px}.page-header{align-items:flex-start;margin-bottom:24px}.page-header h1{margin-top:6px;font-size:38px;line-height:1.08}.page-header p{color:var(--ardoise);font-size:15px;line-height:1.5}.eyebrow{color:var(--text-secondary);letter-spacing:.12em;font-size:12px;font-weight:800}.panel{background:var(--papier);box-shadow:none;border:0;border-radius:20px}.primary-button,.secondary-button,.forest-button,.text-button{min-height:44px;transition:background-color .12s var(--ease-in-out), border-color .12s var(--ease-in-out), transform .12s var(--ease-in-out);border-radius:14px;padding:10px 16px;font-weight:800}.primary-button{background:var(--paprika);color:var(--papier);box-shadow:none;border:0}.primary-button:hover{background:var(--paprika-hover)}.primary-button:active,.forest-button:active{transform:scale(.98)}.primary-button:disabled,.secondary-button:disabled,.forest-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.forest-button{background:var(--forest);color:var(--lin);border:0;justify-content:center;align-items:center;gap:8px;display:inline-flex}.forest-button:hover{background:var(--forest-hover)}.secondary-button{border:1.5px solid var(--sauge);color:var(--forest);background:0 0}.secondary-button:hover{border-color:var(--forest)}.text-button{color:var(--forest)}.icon-button,.mini-icon-button{min-width:44px;min-height:44px}.section-heading h2,.panel h2{font-size:21px;line-height:1.15}.mobile-app-header{background:var(--papier);color:var(--brand);border-bottom:1px solid var(--border);display:none}.home-heading{margin-bottom:22px}.home-heading h1{font-family:var(--font-display);color:var(--forest);margin:6px 0 0;font-size:38px;font-weight:400;line-height:1.08}.launcher-heading{color:var(--brand);background:0 0;border:0;border-radius:28px;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:10px;padding:4px 4px 0;display:flex}.launcher-heading .eyebrow{color:var(--action-hover)}.launcher-heading h1{font-family:var(--font-display);color:var(--brand);letter-spacing:-.03em;margin:2px 0 0;font-size:30px;font-weight:800;line-height:1.05}.launcher-heading p{color:var(--text-secondary);margin:0;font-size:14px}.dashboard-personalize-footer{justify-content:flex-end;margin-top:26px;display:flex}.dashboard-personalize-footer .secondary-button{background:var(--papier);border-radius:13px;align-items:center;gap:8px;min-height:44px;padding:0 17px;display:inline-flex}.dashboard-launcher{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:18px;display:grid}.dashboard-shortcut-group{margin:0 0 28px}.dashboard-shortcut-group h2{color:var(--brand);font:800 15px/1.3 var(--font-text);align-items:center;gap:10px;margin:0 0 14px;display:flex}.dashboard-shortcut-group h2:before{content:"";background:var(--beurre);width:4px;height:18px;box-shadow:inset 0 0 0 1px rgb(var(--brand-rgb) / 16%);border-radius:4px}.dashboard-app-icon{border:1px solid rgb(var(--brand-rgb) / 8%);min-width:0;min-height:174px;color:var(--forest);text-align:center;box-shadow:0 12px 32px rgb(var(--brand-rgb) / 7%);transition:transform .15s var(--ease-in-out), box-shadow .15s var(--ease-in-out);background:#ffffffc7;border-radius:26px;flex-direction:column;justify-content:center;align-items:center;gap:9px;padding:18px 14px 15px;display:flex}.dashboard-app-icon:hover{box-shadow:0 16px 38px rgb(var(--brand-rgb) / 12%);transform:translateY(-3px)}.dashboard-app-icon:active{transform:scale(.97)}.dashboard-app-icon-mark{background:var(--shortcut-color,var(--forest));color:#fff;width:72px;height:72px;box-shadow:inset 0 0 0 1px #fff3, 0 9px 20px color-mix(in srgb, var(--shortcut-color,var(--forest)) 30%, transparent);border-radius:22px;place-items:center;display:grid}.dashboard-app-icon strong{overflow-wrap:anywhere;max-width:100%;font-size:15px;line-height:1.15}.dashboard-app-icon small{color:var(--ardoise);font-size:11px;line-height:1.25}.dashboard-app-icon-copy{text-align:center;justify-items:center;gap:4px;min-width:0;max-width:100%;display:grid}.dashboard-shortcut-group[aria-label="Entrées en stock"] .dashboard-launcher{grid-template-columns:1fr}.dashboard-app-icon.stock-all-shortcut{border:2px solid var(--brand);text-align:left;flex-direction:row;justify-content:flex-start;gap:18px;min-height:112px;padding:18px 22px}.stock-all-shortcut .dashboard-app-icon-mark{flex:0 0 72px}.stock-all-shortcut .dashboard-app-icon-copy{text-align:left;justify-items:start;gap:6px;min-width:0;display:grid}.stock-all-shortcut strong{font-size:21px}.stock-all-shortcut small{font-size:13px}.tone-mint{--shortcut-color:var(--olive)}.tone-clay{--shortcut-color:var(--stock-out)}.tone-sun,.tone-sage{--shortcut-color:var(--olive)}.tone-forest{--shortcut-color:var(--brand)}.tone-berry,.tone-amber,.tone-blue,.tone-violet,.tone-red,.tone-gold{--shortcut-color:var(--olive)}.dashboard-customizer{border:1px solid var(--line);background:var(--papier);border-radius:24px;margin-top:24px;padding:22px}.dashboard-customizer .section-heading{margin-bottom:18px}.dashboard-customizer .section-heading h2{margin:4px 0 0}.dashboard-customizer .text-button{align-items:center;gap:6px;display:inline-flex}.dashboard-customizer-grid{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:22px;display:grid}.shortcut-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.shortcut-catalog label,.dashboard-widget-options label{background:var(--lin-2);cursor:pointer;border-radius:14px;align-items:flex-start;gap:10px;min-width:0;padding:11px 12px;display:flex}.shortcut-catalog input,.dashboard-widget-options input{width:19px;height:19px;accent-color:var(--forest);flex:none}.shortcut-catalog span,.dashboard-widget-options span{gap:2px;min-width:0;display:grid}.shortcut-catalog strong,.dashboard-widget-options strong{color:var(--forest);font-size:13px}.shortcut-catalog small,.dashboard-widget-options small{color:var(--ardoise);font-size:11px;line-height:1.3}.shortcut-order{min-width:0}.shortcut-order h3{color:var(--forest);margin:0 0 9px;font-size:14px}.shortcut-order-group h4{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;margin:16px 0 4px;font-size:11px}.shortcut-order-group:first-of-type h4{margin-top:8px}.shortcut-order-group>div{border-bottom:1px solid var(--line);min-width:0;min-height:42px;color:var(--forest);justify-content:space-between;align-items:center;gap:8px;padding:5px 6px 5px 11px;font-size:12px;font-weight:800;display:flex}.shortcut-order-group>div>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shortcut-order-group button{background:var(--lin-2);width:32px;height:32px;color:var(--forest);border:0;border-radius:9px;place-items:center;display:inline-grid}.shortcut-order-group button:disabled{opacity:.3}.recipe-desire-choices{flex-wrap:wrap;align-items:center;gap:8px;margin:-6px 0 18px;display:flex}.recipe-desire-choices>span{color:var(--text-secondary);margin-right:4px;font-size:13px;font-weight:750}.recipe-desire-choices button{border:1px solid var(--border);background:var(--papier);min-height:42px;color:var(--brand);border-radius:999px;padding:8px 13px;font-weight:750}.recipe-desire-choices button.selected{border-color:var(--brand);background:var(--brand);color:#fff}.recipe-ingredient-match{background:var(--surface-muted);color:var(--brand);border-radius:9px;margin:8px 0 12px;padding:8px 10px;font-size:12px}.shortcut-order>div{border-bottom:1px solid var(--line);min-width:0;min-height:42px;color:var(--forest);justify-content:space-between;align-items:center;gap:8px;padding:5px 6px 5px 11px;font-size:12px;font-weight:800;display:flex}.shortcut-order>div>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shortcut-order button{background:var(--lin-2);width:32px;height:32px;color:var(--forest);border:0;border-radius:9px;place-items:center;display:inline-grid}.shortcut-order button:disabled{opacity:.3}.dashboard-widget-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.launcher-widgets{margin-top:24px}.dashboard-quick-ideas{margin-top:12px}.home-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,1fr);align-items:start;gap:20px;display:grid}.hero-meal{background:var(--papier);box-shadow:0 14px 40px rgb(var(--brand-rgb) / 10%);border-radius:24px;overflow:hidden}.hero-visual{background:var(--surface-muted);place-items:center;min-height:180px;display:grid;position:relative}.hero-visual small{color:var(--ardoise);font-size:11px;font-weight:700;position:absolute;bottom:12px;left:16px}.hero-letter{border:1px solid var(--forest);background:var(--lin);width:88px;height:88px;color:var(--forest);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:40px;display:grid}.hero-content{padding:18px}.hero-meta{color:var(--ardoise);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:800;display:flex}.hero-meta strong{background:var(--olive);color:var(--papier);letter-spacing:0;border-radius:999px;flex:none;padding:4px 8px;font-size:11px}.hero-content h2{font-family:var(--font-display);color:var(--forest);margin:14px 0 12px;font-size:25px;font-weight:400;line-height:1.15}.hero-content>p{color:var(--ardoise);margin:14px 0;font-size:13px;line-height:1.5}.hero-content .button-row{grid-template-columns:2fr 1fr;display:grid}.home-side{gap:14px;display:grid}.home-side .section-heading{margin:0}.soon-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.soon-card{background:var(--papier);min-width:0;color:var(--forest);text-align:left;border:0;border-radius:16px;gap:5px;padding:13px;display:grid}.soon-card>span{color:var(--beurre-ink);align-items:center;gap:4px;font-size:11px;font-weight:800;display:flex}.soon-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.soon-card small{color:var(--ardoise);font-size:11px}.stock-stat{background:var(--forest);color:var(--lin);text-align:left;border:0;border-radius:18px;justify-items:start;padding:16px;display:grid}.stock-stat strong{font-family:var(--font-display);font-size:32px;font-weight:400}.stock-stat span{font-size:12px}.plan-stat{color:var(--ardoise);margin:-6px 4px 0;font-size:12px}.dashboard-quick-add{gap:10px;margin-top:18px;display:flex}.dashboard-quick-add button{border:1.5px solid var(--line);background:var(--papier);color:var(--forest);border-radius:14px;align-items:center;gap:7px;padding:0 14px;font-weight:800;display:inline-flex}.pollen-main-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:30px;display:grid}.pollen-action{min-width:0;min-height:176px;color:var(--forest);text-align:left;transition:transform .15s var(--ease-in-out), box-shadow .15s var(--ease-in-out);border:0;border-radius:24px;align-items:center;gap:22px;padding:26px;display:flex}.pollen-action:hover{box-shadow:0 18px 40px rgb(var(--brand-rgb) / 13%);transform:translateY(-3px)}.pollen-action:active{transform:scale(.985)}.pollen-action-range{background:var(--beurre);color:var(--brand)}.pollen-action-use{background:var(--brand);color:var(--papier)}.pollen-action-icon{width:68px;height:68px;color:var(--forest);background:#ffffffb8;border-radius:20px;flex:none;place-items:center;display:grid}.pollen-action-use .pollen-action-icon{background:var(--beurre);color:var(--brand)}.pollen-action>span:last-child{gap:6px;min-width:0;display:grid}.pollen-action strong{font-family:var(--font-display);letter-spacing:-.035em;font-size:clamp(25px,3vw,38px);font-weight:800;line-height:1}.pollen-action small{opacity:.82;font-size:14px;font-weight:650}.pollen-action-envie{background:var(--beurre-soft);min-height:176px;color:var(--brand);box-shadow:inset 0 0 0 2px var(--beurre);grid-column:1/-1}.pollen-envie-photos{flex:0 460px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-width:0;display:grid}.pollen-envie-photos img{aspect-ratio:1;object-fit:cover;background:var(--papier);border-radius:18px;width:100%;height:auto;display:block}.inventory-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:-4px 0 20px;display:grid}.inventory-quick-actions button{text-align:left;cursor:pointer;justify-content:flex-start;gap:14px;min-width:0;min-height:74px;padding:14px 18px}.inventory-quick-actions button>span{gap:3px;display:grid}.inventory-quick-actions strong{font-size:17px;line-height:1.2}.inventory-quick-actions small{opacity:.9;font-size:12px;font-weight:600;line-height:1.35}.inventory-quick-actions .inventory-use-action{background:var(--surface-muted);color:var(--brand);border-color:var(--border)}.dashboard-shortcut-heading{margin:0 0 11px}.dashboard-shortcut-heading .eyebrow{color:var(--forest)}.page-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.stock-toolbar{grid-template-columns:minmax(220px,1fr) minmax(340px,1.4fr) minmax(170px,.65fr) auto auto;align-items:center;gap:10px;margin-bottom:12px;display:grid}.stock-toolbar .search-field{border:1.5px solid var(--line);background:var(--papier);border-radius:12px;min-height:48px}.location-segment{background:var(--lin-2);border-radius:14px;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;display:grid}.location-segment button{min-height:40px;color:var(--ardoise);background:0 0;border:0;border-radius:11px;padding:0 8px;font-size:13px;font-weight:800}.location-segment button.active{background:var(--papier);color:var(--forest);box-shadow:0 2px 6px rgb(var(--brand-rgb) / 10%)}.category-filter{border:1.5px solid var(--line);background:var(--papier);border-radius:12px;grid-column:1/3;align-items:center;gap:12px;min-height:48px;padding:5px 8px 5px 14px;display:flex}.category-filter>span{color:var(--ardoise);text-transform:uppercase;letter-spacing:.06em;flex:none;font-size:12px;font-weight:800}.category-filter select{border:0;border-left:1px solid var(--line);width:100%;min-width:0;min-height:38px;color:var(--forest);font:inherit;cursor:pointer;background-color:#0000;border-radius:0;padding:0 34px 0 10px;font-weight:800}.category-filter select:focus-visible{outline:3px solid var(--brand);outline-offset:2px;border-radius:7px}.tracking-filter{border:1.5px solid var(--line);background:var(--papier);border-radius:12px;grid-area:1/3;align-items:center;gap:8px;min-height:48px;padding:5px 8px 5px 12px;display:flex}.tracking-filter>span{color:var(--ardoise);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:800}.tracking-filter select{min-width:0;min-height:36px;color:var(--forest);font:inherit;background:0 0;border:0;font-size:12px;font-weight:800}.filter-chips::-webkit-scrollbar{display:none}.filter-chips button{border:1.5px solid var(--line);background:var(--papier);min-height:36px;color:var(--forest);border-radius:999px;flex:none;padding:0 12px;font-size:12px;font-weight:800}.filter-chips button.active{border-color:var(--forest);background:var(--forest);color:var(--lin)}.sort-filter{border:1.5px solid var(--line);background:var(--papier);border-radius:12px;grid-area:1/4;align-items:center;gap:8px;min-height:48px;padding:5px 8px 5px 12px;display:flex}.sort-filter>span{color:var(--ardoise);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:800}.sort-filter select{min-width:145px;min-height:36px;color:var(--forest);font:inherit;background:0 0;border:0;font-size:12px;font-weight:800}.inventory-display-toggle{background:var(--lin-2);border-radius:13px;grid-area:1/5;min-height:48px;padding:4px;display:flex}.inventory-display-toggle button{color:var(--ardoise);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:12px;font-weight:800;display:inline-flex}.inventory-display-toggle button.active{background:var(--papier);color:var(--forest);box-shadow:0 2px 6px rgb(var(--brand-rgb) / 10%)}.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.inventory-grid.list{grid-template-columns:1fr;gap:7px}.inventory-list-row{background:var(--papier);min-height:82px;color:var(--forest);border-radius:15px;grid-template-columns:56px minmax(190px,1.2fr) minmax(180px,1fr) minmax(168px,.7fr) auto;align-items:center;gap:14px;padding:11px 12px;display:grid}:is(.inventory-list-row:has(.priority-urgent),.inventory-list-row:has(.priority-a_utiliser)){box-shadow:inset 3px 0 var(--beurre)}.inventory-list-row.unavailable{opacity:.55}.inventory-list-row.untracked,.inventory-card.untracked{box-shadow:inset 3px 0 var(--sauge)}.inventory-product-group{background:var(--papier);min-width:0;color:var(--forest);border-radius:15px;padding:10px 12px}.inventory-product-group>.inventory-select-check{margin:0 0 8px 68px}.inventory-product-group details{min-width:0}.inventory-group-summary{cursor:pointer;grid-template-columns:56px minmax(160px,1.2fr) minmax(115px,.7fr) minmax(110px,.6fr) auto;align-items:center;gap:14px;min-height:60px;list-style:none;display:grid}.inventory-group-summary::-webkit-details-marker{display:none}.inventory-group-summary:focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:8px}.inventory-group-name{gap:3px;min-width:0;display:grid}.inventory-group-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.inventory-group-name>small:last-child:not(:first-child){color:var(--ardoise)}.inventory-group-count{color:var(--ardoise);font-size:12px}.inventory-group-total{white-space:nowrap;font-size:15px;font-weight:800}.inventory-group-expand{color:var(--ardoise);white-space:nowrap;justify-self:end;font-size:12px;font-weight:800}.inventory-group-expand-open,.inventory-product-group details[open] .inventory-group-expand-closed{display:none}.inventory-product-group details[open] .inventory-group-expand-open{display:inline}.inventory-group-expand:after{content:"⌄";margin-left:7px;font-size:18px;line-height:0;display:inline-block}.inventory-product-group details[open] .inventory-group-expand:after{transform:rotate(180deg)}.inventory-group-entries{border-top:1px solid var(--line);gap:8px;margin:12px 0 1px 68px;padding-top:12px;display:grid}.inventory-group-entry{background:var(--lin);border-radius:12px;grid-template-columns:minmax(170px,1fr) minmax(150px,190px) minmax(170px,210px);align-items:center;gap:12px;padding:10px;display:grid}.inventory-group-entry-info{gap:3px;min-width:0;font-size:12px;display:grid}.inventory-group-entry-info span,.inventory-group-entry-info small{color:var(--ardoise)}.inventory-group-entry .stock-stepper{margin:0}.inventory-grid.cards .inventory-group-summary{grid-template-columns:56px minmax(0,1fr);gap:8px 11px}.inventory-grid.cards .inventory-group-count,.inventory-grid.cards .inventory-group-total,.inventory-grid.cards .inventory-group-expand{grid-column:2;justify-self:start}.inventory-grid.cards .inventory-group-entries{margin-left:0}.inventory-grid.cards .inventory-group-entry{grid-template-columns:1fr}.inventory-list-photo,.inventory-list-photo-placeholder{border-radius:12px;grid-column:1;width:56px;height:56px}.inventory-list-photo{object-fit:contain}.inventory-list-photo-placeholder{background:var(--lin-2);color:var(--ardoise);place-items:center;display:grid}.inventory-list-primary{min-width:0}.inventory-list-primary>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inventory-list-primary h3{color:var(--forest);text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:15px;line-height:1.25;overflow:hidden}.inventory-list-primary p{color:var(--ardoise);margin:2px 0 0;font-size:11px}.inventory-list-details{min-width:0;color:var(--ardoise);gap:4px;font-size:11px;display:grid}.inventory-list-details span{align-items:center;gap:5px;min-width:0;display:flex}.inventory-list-details svg{flex:none}.inventory-list-details small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inventory-list-stepper{width:100%;margin:0}.inventory-list-quantity-actions{gap:6px;display:grid}.package-removal-button{border:1px solid var(--sauge);background:var(--olive-soft);width:100%;min-height:38px;color:var(--forest);border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:6px 9px;font-size:11px;font-weight:800;display:flex}.package-removal-button>span{text-align:left;gap:1px;min-width:0;line-height:1.2;display:grid}.package-removal-button small{color:var(--ardoise);font-size:9px;font-weight:700}.inventory-card-quantity-actions .package-removal-button{width:calc(100% - 52px);margin-top:6px}.stock-removal-dialog{width:min(720px,100%)}.stock-removal-dialog>p{color:var(--muted);line-height:1.55}.stock-removal-dialog>p strong{color:var(--forest)}.stock-removal-options{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.stock-removal-options>section{border:1px solid var(--line);background:var(--lin);border-radius:15px;align-content:start;gap:13px;min-width:0;padding:16px;display:grid}.stock-removal-options h2{color:var(--forest);margin:0;font-size:17px}.package-commercial-format{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.package-commercial-format strong{color:var(--forest)}.stock-removal-options label{min-width:0;color:var(--forest);gap:7px;font-size:12px;font-weight:800;display:grid}.stock-removal-options label small{color:var(--muted);font-size:10px;font-weight:600;line-height:1.45}.quantity-with-unit{border:1px solid var(--border);background:#fff;border-radius:11px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;display:grid;overflow:hidden}.quantity-with-unit input{width:100%;min-width:0;min-height:46px;color:var(--ink);background:0 0;border:0;padding:10px 12px}.quantity-with-unit strong{color:var(--muted);padding:0 12px;font-size:12px}.stock-removal-options button{justify-content:center;width:100%}.product-stock-removal-action{gap:6px;display:grid}.product-qr-panel{border:1px solid var(--line);background:var(--papier);border-radius:16px;gap:12px;margin:16px 0;padding:16px;display:grid}.product-qr-summary{align-items:flex-start;gap:12px;min-width:0;display:flex}.product-qr-summary>svg{color:var(--forest);flex:none}.product-qr-summary h2{margin:0 0 5px;font-size:17px}.product-qr-summary p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.product-qr-panel>button{white-space:normal;text-align:left;justify-self:start;max-width:100%;min-height:44px}.product-qr-panel>button svg{flex:none}.product-stock-removal-action>small{color:var(--muted);font-size:10px;line-height:1.4}.list-quantity-missing{justify-content:center;min-height:44px;margin:0}.inventory-list-edit{white-space:nowrap;min-height:44px;padding-inline:12px}.inventory-card{background:var(--papier);box-shadow:none;border:0;border-radius:20px;padding:14px;position:relative}:is(.inventory-card:has(.priority-urgent),.inventory-card:has(.priority-a_utiliser)){box-shadow:inset 0 0 0 1.5px var(--beurre)}.inventory-card.unavailable{opacity:.55}.inventory-select-check{border:1px solid var(--sauge);background:var(--olive-soft);width:max-content;min-height:30px;color:var(--olive-ink);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:4px 9px;font-size:11px;font-weight:800;display:inline-flex}.inventory-select-check input,.stock-tracking-choice input,.receipt-stock-toggle input{width:18px;height:18px;accent-color:var(--forest)}.pantry-selection-bar,.preferred-products-panel{border:1px solid var(--sauge);background:var(--olive-soft);color:var(--forest);border-radius:16px;justify-content:space-between;align-items:center;gap:18px;margin:0 0 14px;padding:15px 17px;display:flex}.pantry-selection-bar>div,.preferred-products-panel>div{gap:4px;display:grid}.pantry-selection-bar span{color:var(--ardoise);font-size:12px}.untracked-badge{border:1px dashed var(--sauge);min-height:40px;color:var(--olive-ink);border-radius:11px;justify-content:center;align-items:center;padding:8px 11px;font-size:11px;font-weight:800;display:inline-flex}.stock-tracking-choice{border:1px solid var(--sauge);background:var(--olive-soft);cursor:pointer;border-radius:12px;align-items:start;padding:13px;grid-template-columns:auto minmax(0,1fr)!important}.stock-tracking-choice>span{gap:4px;display:grid}.stock-tracking-choice small{color:var(--ardoise);font-weight:600;line-height:1.4}.untracked-purchase-history{border:1px solid var(--sauge);background:var(--lin-2);color:var(--forest);border-radius:14px;gap:12px;padding:14px;display:grid}.untracked-purchase-history>div{gap:4px;display:grid}.untracked-purchase-history>div span,.untracked-purchase-history>small{color:var(--ardoise);font-size:12px;line-height:1.45}.untracked-purchase-history ul{gap:0;margin:0;padding:0;list-style:none;display:grid}.untracked-purchase-history li{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding:7px 0;font-size:12px;display:flex}.product-identity-summary{background:var(--lin-2);color:var(--forest);border-radius:12px;gap:4px;padding:12px 14px;font-size:11px;display:grid}.product-identity-summary span{color:var(--ardoise);overflow-wrap:anywhere}.receipt-stock-toggle{border:1px solid var(--sauge);background:var(--olive-soft);cursor:pointer;border-radius:9px;grid-column:2/-1;align-items:center;min-height:39px;padding:7px 9px;gap:7px!important;display:flex!important}.receipt-line-name{grid-column:1/3}.receipt-line-meta,.receipt-line>small{grid-column:1/-1}.inventory-photo{object-fit:contain;border-radius:14px;width:64px;height:64px;margin:0 0 10px}.inventory-card-top{align-items:center;margin-top:9px}.category-tag{color:var(--ardoise);letter-spacing:.08em;text-transform:uppercase;background:0 0;font-size:10px;font-weight:800}.inventory-card h3{color:var(--forest);margin:7px 0 4px;font-size:16px}.priority{border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.priority-a_finir,.priority-a_utiliser,.priority-urgent{background:var(--beurre-soft);color:var(--beurre-ink)}.inventory-card.unavailable .priority{background:var(--paprika-soft);color:var(--paprika-hover)}.stock-stepper{border:1.5px solid var(--line);border-radius:12px;grid-template-columns:44px minmax(70px,1fr) 44px;margin:12px 52px 0 0;overflow:hidden}.stock-stepper button,.stock-stepper strong{background:0 0;border:0;height:44px}.stock-stepper strong{border-inline:1px solid var(--line)}.stock-dates,.stock-barcode,.stock-origin{color:var(--ardoise);font-size:12px}.quantity-missing{border:1.5px dashed var(--paprika);background:var(--paprika-soft);color:var(--paprika-hover);border-radius:12px;align-items:center;gap:7px;margin:12px 52px 0 0;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.edit-product{border:1px solid var(--line);color:var(--forest);background:0 0;position:absolute;bottom:14px;right:14px}.acquisition-header{margin-bottom:20px}.acquisition-live-preview{border:1px solid var(--sauge);background:var(--surface);color:var(--forest);border-radius:16px;align-items:center;gap:14px;margin:0 0 18px;padding:10px;font-weight:700;display:flex}.acquisition-live-preview img{object-fit:cover;border-radius:10px;flex:none;width:74px;height:74px}.photo-stock-matches{border:1px solid var(--sauge);background:var(--surface);border-radius:14px;margin:10px 0;padding:14px}.photo-stock-matches p{margin:5px 0 12px}.photo-stock-matches>div{flex-wrap:wrap;gap:8px;display:flex}.acquisition-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.acquisition-unified-grid{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}.acquisition-card{background:var(--papier);min-height:240px;color:var(--forest);text-align:left;box-shadow:var(--shadow);border:0;border-radius:20px;align-content:start;justify-items:start;gap:10px;padding:20px;display:grid}.acquisition-card:hover{transform:translateY(-2px)}.acquisition-icon{background:var(--lin-2);border-radius:14px;place-items:center;width:52px;height:52px;display:grid}.acquisition-card strong{font-family:var(--font-display);margin-top:12px;font-size:22px;font-weight:400}.acquisition-card>span:not(.acquisition-icon){color:var(--ink);line-height:1.45}.acquisition-card small{color:var(--ardoise);font-size:12px;line-height:1.45}.acquisition-photo-entry{background:var(--surface-strong);color:var(--papier)}.acquisition-photo-entry .acquisition-icon{background:var(--beurre);color:var(--brand)}.acquisition-photo-entry>span:not(.acquisition-icon),.acquisition-photo-entry small{color:var(--papier)}.privacy-note{max-width:760px;color:var(--ardoise);align-items:flex-start;gap:9px;margin:20px 0 0;font-size:13px;display:flex}.embedded-editor{width:100%;min-width:0;max-width:100%}.embedded-form{width:100%;min-width:0;max-width:100%;max-height:none;box-shadow:none;background:0 0;border-radius:0;padding:0;overflow:hidden visible}.embedded-form>h1{margin-top:16px}.detail-back{border:1.5px solid var(--sauge);width:max-content;min-height:44px;color:var(--forest);background:0 0;border-radius:12px;align-items:center;gap:7px;margin-bottom:18px;padding:0 12px;font-weight:800;display:flex}.form-dialog .product-media-panel,.receipt-dialog .receipt-summary-grid{background:var(--papier)}.suggestion-controls{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.preferred-products-panel{background:var(--beurre-soft);border-color:var(--beurre);margin-bottom:14px}.preferred-products-panel h2{font-family:var(--font-display);color:var(--forest);margin:2px 0 8px;font-size:20px;font-weight:400}.preferred-product-chips{flex-wrap:wrap;gap:6px;display:flex}.preferred-product-chips span{background:var(--papier);color:var(--forest);border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.suggestion-controls .filter-tile:nth-child(-n+3){grid-column:span 2}.suggestion-controls .filter-tile:nth-child(n+4){grid-column:span 3}.filter-tile{background:var(--papier);border-radius:16px;min-width:0;padding:16px}.filter-tile>span{color:var(--ardoise);font-size:12px;font-weight:700;display:block}.filter-tile>strong{color:var(--forest);font-family:var(--font-display);margin-top:4px;font-size:20px;font-weight:400;display:block}.filter-hint{color:var(--ardoise);margin-top:8px;font-size:11px;line-height:1.35;display:block}.filter-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex;overflow-x:visible}.allergen-checkboxes{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px;display:grid}.allergen-checkboxes label{border:1px solid var(--line);min-width:0;min-height:36px;color:var(--forest);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:7px 9px;font-size:11px;font-weight:750;display:flex}.allergen-checkboxes input{width:17px;height:17px;accent-color:var(--forest);flex:none}.allergen-checkboxes span{overflow-wrap:anywhere}.allergen-clear{min-height:34px;margin-top:7px;padding:0}.allergen-advisory{color:var(--ardoise);margin:10px 0 20px;font-size:12px}.results-title{font-family:var(--font-display);color:var(--forest);margin:0 0 12px;scroll-margin-top:84px;font-size:21px;font-weight:400}.meal-card{background:var(--papier);box-shadow:var(--shadow);border:0;border-radius:22px;padding:16px 18px}.meal-card.allergen-excluded{opacity:.6;filter:grayscale(.3)}.coverage-pill,.excluded-pill{border-radius:999px;width:max-content;padding:4px 8px;font-size:11px;font-weight:800}.coverage-pill.soon,.excluded-pill{background:var(--beurre-soft);color:var(--beurre-ink)}.excluded-pill{margin:-4px 0 0}.meal-component-grid>span{background:var(--lin)}.meal-component-grid small{color:var(--paprika)}.meal-reason{color:var(--ardoise);margin:0;font-size:13px}.detail-page-shell{min-height:100vh;padding:36px 44px 60px}.detail-page{width:min(1040px,100%);max-height:none;box-shadow:none;background:0 0;border-radius:0;margin:0 auto;padding:0;overflow:visible}.detail-page>h1{margin-top:8px;font-size:38px}.meal-dialog.detail-page{width:min(1040px,100%)}.meal-components article{background:var(--papier);border:0}.classification-panel{border-color:var(--beurre);background:var(--beurre-soft)}.source-panel{background:var(--papier);border:0}.detailed-steps li>span{background:var(--forest);color:var(--papier);border-radius:10px}.cooking-mode{z-index:200;padding:max(22px, env(safe-area-inset-top)) 22px max(22px, env(safe-area-inset-bottom));background:var(--forest);color:var(--lin);animation:screen-rise .24s var(--ease-out);grid-template-rows:auto auto 1fr auto;gap:18px;display:grid;position:fixed;inset:0}.cooking-mode header{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.cooking-mode header button{color:var(--lin);background:0 0;border:1px solid #ffffff4d;border-radius:12px;justify-self:start;padding:0 14px;font-weight:800}.cooking-mode header strong{color:var(--beurre);letter-spacing:.12em;font-size:12px}.cooking-mode header span{background:#ffffff1a;border-radius:999px;justify-self:end;align-items:center;gap:6px;padding:8px 10px;display:inline-flex}.cooking-progress{gap:5px;display:flex}.cooking-progress i{background:#fff3;border-radius:2px;flex:1;height:4px}.cooking-progress i.done{background:var(--beurre)}.cooking-mode main{width:100%;max-width:980px;margin:auto}.cooking-mode main>span{color:var(--sauge);letter-spacing:.1em;text-transform:uppercase;font-size:14px;font-weight:800}.cooking-mode main p{color:var(--lin);font-family:var(--font-display);margin:18px 0;font-size:clamp(30px,4vw,44px);line-height:1.22}.cooking-mode main em{background:var(--beurre);color:var(--forest);border-radius:999px;padding:8px 12px;font-style:normal;font-weight:800;display:inline-flex}.cooking-mode footer{grid-template-columns:1fr 2fr;gap:10px;display:grid}.cooking-mode footer button{min-height:72px;color:var(--lin);background:0 0;border:1px solid #ffffff4d;border-radius:16px;justify-content:center;align-items:center;gap:8px;font-size:16px;font-weight:800;display:flex}.cooking-mode footer .next{background:var(--beurre);color:var(--forest);border:0}.settings-grid{grid-template-columns:1fr 1fr;gap:16px;min-width:0}.settings-grid .panel{min-width:0;max-width:100%;padding:20px}.sync-panel{grid-column:1/-1}.sync-heading{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;display:grid}.sync-heading h2{margin:3px 0 0}.sync-icon{background:var(--olive-soft);width:48px;height:48px;color:var(--forest);border-radius:14px;place-items:center;display:grid}.sync-state{background:var(--lin-2);color:var(--ardoise);border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800}.sync-state.enabled{background:var(--olive-soft);color:var(--olive-ink)}.sync-consent{background:var(--lin);color:var(--forest);border-radius:14px;align-items:flex-start;gap:10px;margin:16px 0;padding:14px;line-height:1.45;display:flex}.sync-consent input{width:18px;height:18px;accent-color:var(--forest);margin-top:2px}.sync-consent a{color:var(--paprika-hover);font-weight:800}.sync-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sync-actions button{align-items:center;gap:7px;display:inline-flex}.sync-actions>span{color:var(--ardoise);text-transform:uppercase;font-size:12px;font-weight:800}.sync-join{flex:1;grid-template-columns:1fr auto;gap:8px;min-width:min(440px,100%);display:grid}.sync-join input{border:1.5px solid var(--line);background:var(--papier);min-width:0;min-height:44px;color:var(--forest);font:inherit;border-radius:12px;padding:0 13px}.sync-tip{border-left:3px solid var(--beurre);margin:14px 0 0;padding-left:12px;font-size:13px}.sync-code-row{border:1.5px solid var(--line);border-radius:14px;grid-template-columns:1fr auto auto;align-items:center;gap:8px;margin:16px 0;padding:12px;display:grid}.sync-code-row>div{gap:4px;min-width:0;display:grid}.sync-code-row span{color:var(--ardoise);text-transform:uppercase;font-size:11px;font-weight:800}.sync-code-row code{color:var(--forest);text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:all;user-select:all;font-size:13px;overflow:hidden}.sync-status{gap:5px;margin:0 0 14px;display:grid}.sync-status span{color:var(--olive-ink);align-items:center;gap:7px;font-size:13px;display:flex}.sync-status strong{color:var(--paprika-hover);font-size:12px}.sync-health{border:1.5px solid var(--line);background:var(--lin);border-radius:18px;margin:18px 0;padding:18px}.sync-health.warning{border-color:var(--beurre);background:var(--beurre-soft)}.sync-health.error{border-color:color-mix(in srgb, var(--paprika) 55%, white);background:color-mix(in srgb, var(--paprika) 7%, var(--papier))}.sync-health-heading{grid-template-columns:auto 1fr auto;align-items:center;gap:11px;display:grid}.sync-health-heading h3{margin:2px 0 0;font-size:22px}.sync-health-heading>strong{background:var(--olive-soft);color:var(--olive-ink);border-radius:999px;padding:6px 10px;font-size:11px}.sync-health.warning .sync-health-heading>strong{background:var(--beurre);color:var(--beurre-ink)}.sync-health.error .sync-health-heading>strong{background:var(--paprika);color:#fff}.sync-health-icon{background:var(--papier);width:40px;height:40px;color:var(--forest);border-radius:12px;place-items:center;display:grid}.sync-health>p{color:var(--ardoise);margin:12px 0;font-size:13px;line-height:1.5}.sync-device-name{gap:6px;margin:14px 0;display:grid}.sync-device-name>label{color:var(--forest);font-size:12px;font-weight:800}.sync-device-name>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.sync-device-name input{border:1.5px solid var(--line);background:var(--papier);min-width:0;min-height:44px;color:var(--forest);font:inherit;border-radius:12px;padding:0 13px}.sync-device-name button{align-items:center;gap:7px;display:inline-flex}.sync-device-name small,.sync-location-consent small{color:var(--ardoise);line-height:1.4}.sync-location-consent{border:1px solid var(--line);background:var(--papier);border-radius:13px;align-items:flex-start;gap:10px;margin:14px 0;padding:13px;display:flex}.sync-location-consent input{width:18px;height:18px;accent-color:var(--forest);margin-top:2px}.sync-location-consent span{gap:3px;display:grid}.sync-location-consent strong{color:var(--forest);font-size:13px}.sync-devices{margin-top:18px}.sync-devices h4{color:var(--forest);align-items:center;gap:7px;margin:0 0 10px;display:flex}.sync-device-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:9px;display:grid}.sync-device-card{border:1px solid var(--line);background:var(--papier);border-radius:13px;gap:5px;padding:12px;display:grid}.sync-device-card>div{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sync-device-card>span,.sync-device-card>small{color:var(--ardoise);font-size:11px}.sync-device-card .sync-device-warning{color:var(--paprika-hover);font-weight:800}.sync-badge{background:var(--lin-2);color:var(--ardoise);text-transform:uppercase;border-radius:999px;padding:3px 6px;font-size:9px;font-weight:900}.sync-badge.current{background:var(--beurre-soft);color:var(--beurre-ink)}.sync-badge.active{background:var(--olive-soft);color:var(--olive-ink)}.sync-history{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.sync-history summary{cursor:pointer;color:var(--forest);font-size:13px;font-weight:800}.sync-history>p{color:var(--ardoise);font-size:12px}.sync-history ol{gap:7px;margin:10px 0 0;padding:0;list-style:none;display:grid}.sync-history li{background:var(--papier);border-radius:11px;grid-template-columns:auto 1fr;gap:8px;padding:9px;display:grid}.sync-history li>span{color:var(--olive-ink)}.sync-history li.error>span{color:var(--paprika-hover)}.sync-history li.warning>span{color:var(--beurre-ink)}.sync-history li>div{gap:2px;display:grid}.sync-history li strong{color:var(--forest);font-size:12px}.sync-history li small{color:var(--ardoise);font-size:10px}.sync-active-actions{align-items:stretch}.danger-text{color:var(--paprika-hover);align-items:center;gap:6px;display:inline-flex}.sync-message{background:var(--beurre-soft);width:fit-content;color:var(--beurre-ink);border-radius:10px;margin:14px 0 0;padding:8px 11px;font-size:13px;font-weight:800}.future-row{border:1.5px dashed var(--sauge);min-height:48px;color:var(--ardoise);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:0 12px;display:flex}.future-row em{background:var(--beurre-soft);color:var(--beurre-ink);border-radius:999px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:800}.app-toast{z-index:250;background:var(--forest);max-width:min(480px,100vw - 32px);color:var(--lin);box-shadow:0 14px 40px rgb(var(--brand-rgb) / 30%);animation:rise .24s var(--ease-out);border-radius:16px;align-items:center;gap:10px;padding:14px 16px;font-size:14px;font-weight:700;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.app-toast svg{color:var(--beurre)}.inventory-recipe-back{margin-bottom:12px}.recipe-stock-targets{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.recipe-stock-targets button{border:1px solid rgb(var(--brand-rgb) / 22%);min-height:34px;color:var(--forest);text-align:left;background:#ffffffb8;border-radius:10px;align-items:center;gap:6px;padding:6px 9px;font-size:11px;font-weight:800;display:inline-flex}.recipe-stock-targets button:hover{border-color:var(--forest);background:#fff}.recipe-stock-targets button small{color:var(--ardoise);margin:0 0 0 2px;font-size:10px;font-weight:650}.merge-suggestions{border:1px solid var(--beurre);background:var(--beurre-soft);border-radius:16px;margin:0 0 20px;overflow:hidden}.merge-suggestions summary{min-height:62px;color:var(--forest);cursor:pointer;align-items:center;gap:10px;padding:11px 15px;list-style:none;display:flex}.merge-suggestions summary::-webkit-details-marker{display:none}.merge-suggestions summary>span{gap:2px;display:grid}.merge-suggestions summary small{color:var(--ardoise);font-size:11px;font-weight:600}.merge-suggestion-list{gap:8px;padding:0 12px 12px;display:grid}.merge-suggestion-list article{border:1px solid rgb(var(--brand-rgb) / 10%);background:var(--papier);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px;display:flex}.merge-suggestion-list article>div{flex-wrap:wrap;align-items:center;gap:5px 8px;display:flex}.merge-suggestion-list article span{color:var(--ardoise);font-size:12px}.merge-suggestion-list article small{color:var(--ardoise);flex-basis:100%;font-size:10px}.merge-dialog{max-width:760px}.merge-comparison{grid-template-columns:1fr 1fr;gap:12px;margin:18px 0;display:grid}.merge-comparison article{border:1px solid var(--line);background:var(--papier);border-radius:14px;grid-template-columns:74px minmax(0,1fr);gap:12px;min-width:0;padding:12px;display:grid}.merge-comparison img,.merge-photo-placeholder{object-fit:cover;background:var(--beurre-soft);border-radius:12px;width:74px;height:74px}.merge-photo-placeholder{color:var(--sauge);place-items:center;display:grid}.merge-comparison article>div{gap:3px;min-width:0;display:grid}.merge-comparison article small{color:var(--paprika);text-transform:uppercase;font-size:10px;font-weight:850}.merge-comparison article strong{overflow-wrap:anywhere;color:var(--forest)}.merge-comparison article span{overflow-wrap:anywhere;color:var(--ardoise);font-size:11px}.merge-warning{background:var(--paprika-soft);color:var(--paprika-hover);border-radius:11px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:12px;font-weight:700;display:flex}.bulk-stock-action{border:1px solid var(--sauge);background:var(--olive-soft);color:var(--forest);border-radius:15px;justify-content:space-between;align-items:center;gap:14px;margin:0 0 14px;padding:13px 15px;display:flex}.bulk-stock-action>div{gap:3px;display:grid}.bulk-stock-action small{color:var(--ardoise);line-height:1.4}.bulk-stock-dialog{max-width:660px}.bulk-stock-dialog>ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:220px;padding:0;list-style:none;display:grid;overflow:auto}.bulk-stock-dialog>ul li{background:var(--lin-2);color:var(--forest);overflow-wrap:anywhere;border-radius:9px;padding:8px 10px;font-size:12px;font-weight:750}.add-menu-dialog{background:var(--papier);width:min(620px,100vw - 32px);max-height:calc(100dvh - 32px);box-shadow:0 30px 80px rgb(var(--brand-rgb) / 28%);border-radius:24px;padding:30px;position:relative;overflow:auto}.add-menu-dialog h1{color:var(--forest);font-family:var(--font-display);margin:7px 48px 22px 0;font-size:32px;font-weight:400}.add-menu-choices{grid-template-columns:1fr 1fr;gap:12px;display:grid}.add-menu-choices>button{border:1.5px solid var(--line);background:var(--lin);min-width:0;min-height:150px;color:var(--forest);text-align:left;border-radius:18px;align-content:start;gap:13px;padding:18px;display:grid}.add-menu-choices>button:hover{border-color:var(--forest);background:var(--olive-soft)}.add-menu-choices span{gap:6px;min-width:0;display:grid}.add-menu-choices strong{font-size:17px}.add-menu-choices small{color:var(--ardoise);line-height:1.4}.recipe-import-rights-check{border:1.5px solid var(--beurre);background:var(--beurre-soft);color:var(--forest);cursor:pointer;border-radius:13px;align-items:flex-start;gap:10px;margin:14px 0;padding:13px;display:flex}.recipe-import-rights-check input{width:19px;height:19px;accent-color:var(--forest);flex:none;margin-top:2px}.recipe-import-rights-check span{gap:4px;font-size:12px;line-height:1.45;display:grid}.recipe-save-requirement{color:var(--paprika-hover);margin:12px 0 0;font-size:12px;font-weight:800}.servings-calculator{justify-content:space-between;align-items:center;gap:18px;display:flex}.servings-calculator>div:first-child{min-width:0}.servings-calculator h2{margin:4px 0}.servings-calculator p{color:var(--ardoise);margin:0;font-size:12px}.servings-calculator .stepper{flex:0 0 190px}.scaled-ingredients-section>ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.scaled-ingredients-section li{background:var(--lin-2);border-radius:10px;gap:3px;min-width:0;padding:9px 11px;display:grid}.scaled-ingredients-section li strong{overflow-wrap:anywhere;color:var(--forest);font-size:13px}.scaled-ingredients-section li span{overflow-wrap:anywhere;color:var(--ardoise);font-size:11px}.stock-use-page{max-width:980px}.stock-use-back{min-height:44px;color:var(--forest);background:0 0;border:0;align-items:center;gap:8px;margin-bottom:24px;padding:8px 0;font-weight:800;display:inline-flex}.stock-use-heading{max-width:720px;margin-bottom:24px}.stock-use-heading h1{font-family:var(--font-display);color:var(--forest);letter-spacing:-.045em;margin:7px 0 10px;font-size:clamp(34px,5vw,58px);font-weight:800;line-height:1.02}.stock-use-heading p{color:var(--ardoise);margin:0;font-size:16px;line-height:1.55}.stock-use-panel{background:var(--papier);box-shadow:var(--shadow);border-radius:24px;margin-top:42px;padding:24px;scroll-margin-top:84px}.stock-use-panel .search-field{margin-bottom:16px}.stock-use-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:min(50vh,520px);display:grid;overflow-y:auto}.stock-use-products>button{border:1px solid var(--line);background:var(--lin);min-width:0;color:var(--forest);text-align:left;border-radius:16px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.stock-use-products>button:hover{border-color:var(--forest);background:var(--olive-soft)}.stock-use-products img,.stock-use-product-letter{object-fit:contain;border-radius:14px;width:54px;height:54px}.stock-use-product-letter{background:var(--apricot);font-family:var(--font-display);place-items:center;font-size:24px;font-weight:800;display:grid}.stock-use-products>button>span:last-child{gap:4px;min-width:0;display:grid}.stock-use-products strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stock-use-products small{color:var(--ardoise)}.stock-use-empty,.stock-use-hint{color:var(--ardoise);margin:14px 0 0;line-height:1.5}.stock-use-change{margin:-10px 0 10px}.stock-use-selected{background:var(--olive-soft);border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 14px;padding:16px;display:grid}.stock-use-selected-photo{object-fit:contain;border-radius:16px;width:88px;height:88px;font-size:34px}.stock-use-selected-text{gap:4px;min-width:0;display:grid}.stock-use-selected-text small{color:var(--ardoise);font-size:13px}.stock-use-selected-note{overflow-wrap:anywhere;font-style:italic}.stock-use-open-item{grid-column:1/-1;justify-content:center;min-height:44px}.stock-use-selected strong{font-family:var(--font-display);color:var(--forest);font-size:23px;font-weight:800}.stock-use-selected span{color:var(--ardoise)}.stock-use-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.stock-use-choices>button{border:1.5px solid var(--line);background:var(--lin);min-height:104px;color:var(--forest);text-align:left;border-radius:18px;align-items:center;gap:14px;padding:18px;display:flex}.stock-use-choices>button:hover{border-color:var(--forest);background:var(--beurre-soft)}.stock-use-choices>button>svg{flex:none}.stock-use-choices>button>span{gap:4px;min-width:0;display:grid}.stock-use-choices strong{font-size:16px}.stock-use-choices small{color:var(--ardoise)}.stock-use-custom{color:var(--forest);gap:7px;margin-top:16px;font-weight:750;display:grid}.stock-use-custom>div{border:1.5px solid var(--line);background:var(--lin);border-radius:15px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.stock-use-custom input{min-width:0;height:52px;color:var(--forest);background:0 0;border:0;outline:0;padding:0 15px;font-size:18px}.stock-use-custom strong{padding:0 16px}.stock-use-balance{grid-template-columns:1fr 1fr;gap:12px;margin:18px 0;display:grid}.stock-use-balance>span{background:var(--lin);border-radius:18px;gap:5px;padding:18px;display:grid}.stock-use-balance>span:last-child{background:var(--beurre-soft)}.stock-use-balance small{color:var(--ardoise)}.stock-use-balance strong{color:var(--forest);font-size:20px}.stock-use-confirm-button{background:var(--forest);width:100%;min-height:54px;color:var(--papier)}h1,h2,h3,.brand strong{font-family:var(--font-display)}@keyframes rise{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes screen-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=1023px){.app-shell{padding-bottom:calc(100px + env(safe-area-inset-bottom));display:block}.sidebar{background:var(--papier);color:var(--brand);border-right:1px solid var(--border);display:none}.workspace{min-height:100vh}.page{max-width:720px;padding:max(22px, env(safe-area-inset-top)) 22px 36px}.mobile-app-header{min-height:calc(70px + env(safe-area-inset-top));padding:calc(9px + env(safe-area-inset-top)) 22px 9px;background:var(--papier);color:var(--brand);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;display:flex}.mobile-app-brand{min-width:0;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.mobile-app-mark{width:42px;height:42px;color:var(--brand);background:0 0;border-radius:13px;flex:none;place-items:center;display:grid}.mobile-app-brand strong,.mobile-app-brand small{display:block}.mobile-app-brand strong{font:700 21px/1.1 var(--font-display)}.mobile-app-brand small{color:var(--text-secondary);margin-top:3px;font-size:11px}.mobile-app-settings{border:1px solid var(--border);background:var(--surface-muted);width:44px;height:44px;color:var(--brand);border-radius:13px;flex:none;place-items:center;display:grid}.home-heading h1{font-size:28px;line-height:1.1}.launcher-heading h1{letter-spacing:-.03em;margin:2px 0 0;font-size:30px;font-weight:800}.dashboard-launcher{grid-template-columns:repeat(3,minmax(0,1fr))}.home-grid{grid-template-columns:1fr;gap:16px}.hero-visual{min-height:150px}.inventory-grid,.acquisition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-toolbar{grid-template-columns:1fr}.category-filter{grid-column:1}.tracking-filter,.sort-filter,.inventory-display-toggle{grid-area:auto/1}.inventory-display-toggle button{flex:1}.inventory-list-row{grid-template-columns:56px minmax(0,1fr) minmax(168px,190px)}.inventory-list-photo,.inventory-list-photo-placeholder{grid-area:1/1/3}.inventory-list-primary{grid-area:1/2}.inventory-list-details{grid-area:2/2}.inventory-list-quantity-actions,.list-quantity-missing,.untracked-badge{grid-area:1/3/3}.inventory-list-edit{grid-area:3/3;justify-self:stretch}.inventory-group-summary{grid-template-columns:56px minmax(0,1fr) auto;gap:8px 12px}.inventory-group-summary>.inventory-list-photo,.inventory-group-summary>.inventory-list-photo-placeholder{grid-area:1/1/3}.inventory-group-name{grid-area:1/2}.inventory-group-count{grid-area:2/2}.inventory-group-total{grid-area:1/3}.inventory-group-expand{grid-area:2/3}.inventory-group-entry{grid-template-columns:minmax(0,1fr) minmax(150px,190px)}.inventory-group-entry .inventory-list-quantity-actions,.inventory-group-entry .list-quantity-missing,.inventory-group-entry .untracked-badge{grid-area:1/2}.inventory-group-entry .inventory-item-actions{grid-area:auto/1/auto/-1;justify-self:stretch}.suggestion-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.suggestion-controls .filter-tile:nth-child(n){grid-column:auto}.allergen-checkboxes{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-page-shell{padding:max(22px, env(safe-area-inset-top)) 22px 36px}.recipe-ingredient-editor-row{grid-template-columns:minmax(150px,2fr) 90px 105px 42px}.recipe-ingredient-editor-row .ingredient-note{grid-area:2/1/auto/3}.recipe-inline-check{grid-area:2/3/auto/4}.recipe-ingredient-editor-row>.icon-button{grid-area:1/4/3}.recipe-step-editor-row{grid-template-columns:34px 130px minmax(180px,1fr) 90px}.recipe-step-actions{grid-column:2/-1;justify-content:end}.mobile-nav{inset:auto 10px calc(10px + env(safe-area-inset-bottom)) 10px;z-index:100;background:var(--papier);border-top:1px solid #ffffff24;border:1px solid var(--border);border-radius:24px;grid-template-columns:repeat(4,1fr);align-items:center;height:70px;padding:6px;display:grid;position:fixed;box-shadow:0 10px 30px #0000001f}.mobile-nav button{min-width:0;min-height:44px;color:var(--text-secondary);background:0 0;border:0;border-radius:18px;justify-items:center;gap:4px;padding:6px 2px;font-size:11px;font-weight:700;display:grid}.mobile-nav button.active{color:var(--action-hover);box-shadow:none;background:var(--action-soft);font-weight:800}.app-toast{bottom:calc(96px + env(safe-area-inset-bottom))}}@media (width<=599px){.page,.detail-page-shell{padding-inline:22px}.page-header{gap:16px}.page-header h1,.detail-page>h1{font-size:28px}.page-header .forest-button,.page-header .primary-button,.page-header .secondary-button{width:100%}.page-header-actions,.pantry-selection-bar,.preferred-products-panel{flex-direction:column;align-items:stretch;width:100%}.hero-content h2{font-size:22px}.launcher-heading{background:0 0;border:0;border-radius:22px;flex-direction:column;align-items:stretch;margin-bottom:10px;padding:4px 4px 0}.launcher-heading h1{letter-spacing:-.03em;margin:2px 0 0;font-size:30px;font-weight:800}.dashboard-personalize-footer{justify-content:center}.pollen-main-actions{gap:10px;margin-bottom:24px}.pollen-action{border-radius:20px;flex-direction:column;align-items:flex-start;gap:12px;min-height:134px;padding:16px 12px}.pollen-action-icon{border-radius:15px;width:48px;height:48px}.pollen-action-icon svg{width:25px;height:25px}.pollen-action strong{font-size:22px}.pollen-action small{font-size:11px}.pollen-action-envie{align-items:stretch;gap:14px;min-height:0;padding:14px 14px 18px}.pollen-envie-photos{flex:none;gap:8px}.pollen-envie-photos img{aspect-ratio:4/3;border-radius:14px}.pollen-action-envie strong{font-size:26px}.pollen-action-envie small{font-size:13px}.inventory-quick-actions{grid-template-columns:1fr;margin-top:0}.inventory-quick-actions button{min-height:66px}.dashboard-launcher{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.dashboard-app-icon{border-radius:20px;justify-content:center;gap:7px;min-height:0;padding:12px 7px}.dashboard-app-icon-mark{border-radius:18px;width:58px;height:58px}.dashboard-app-icon-mark svg{width:25px;height:25px}.dashboard-app-icon strong{font-size:12px}.dashboard-app-icon small{font-size:10.5px;line-height:1.2}.dashboard-app-icon.stock-all-shortcut{gap:13px;min-height:100px;padding:14px}.stock-all-shortcut .dashboard-app-icon-mark{flex-basis:58px}.stock-all-shortcut strong{font-size:17px}.stock-all-shortcut small{font-size:11px;display:block}.dashboard-customizer{padding:18px 14px}.dashboard-customizer .section-heading{flex-direction:column;align-items:flex-start}.dashboard-customizer-grid,.shortcut-catalog,.dashboard-widget-options{grid-template-columns:1fr}.hero-meta{flex-direction:column;align-items:flex-start}.hero-content .button-row{grid-template-columns:1fr}.soon-grid{grid-template-columns:1fr 1fr}.dashboard-quick-add{display:grid}.inventory-grid{grid-template-columns:1fr}.inventory-list-row{grid-template-columns:48px minmax(0,1fr);gap:9px 11px;padding:11px}.inventory-list-photo,.inventory-list-photo-placeholder{grid-area:1/1;width:48px;height:48px}.inventory-list-primary{grid-area:1/2}.inventory-list-details{grid-area:2/2}.inventory-list-quantity-actions,.list-quantity-missing,.untracked-badge{grid-area:3/1/auto/-1}.inventory-list-edit{grid-area:4/1/auto/-1}.inventory-product-group{padding:11px}.inventory-product-group>.inventory-select-check{margin-left:0}.inventory-group-summary{grid-template-columns:48px minmax(0,1fr);gap:5px 10px}.inventory-group-summary>.inventory-list-photo,.inventory-group-summary>.inventory-list-photo-placeholder{grid-area:1/1/4}.inventory-group-name{grid-area:1/2}.inventory-group-count{grid-area:2/2}.inventory-group-total{grid-area:3/2}.inventory-group-expand{grid-area:4/1/auto/-1;justify-self:start;margin-top:5px}.inventory-group-entries{margin-left:0}.inventory-group-entry{grid-template-columns:1fr}.inventory-group-entry .inventory-list-quantity-actions,.inventory-group-entry .list-quantity-missing,.inventory-group-entry .untracked-badge{grid-area:2/1}.inventory-group-entry .inventory-item-actions{grid-area:3/1}.category-filter>span{display:none}.category-filter select{border-left:0;padding-left:6px}.acquisition-grid{grid-template-columns:1fr 1fr}.acquisition-unified-grid .acquisition-photo-entry{grid-column:1/-1;min-height:170px}.acquisition-card{min-height:196px;padding:16px}.acquisition-card strong{font-size:19px}.suggestion-controls{grid-template-columns:1fr 1fr}.suggestion-controls .filter-tile:nth-child(n+3){grid-column:1/-1}.allergen-checkboxes,.add-menu-choices,.scaled-ingredients-section>ul,.bulk-stock-dialog>ul{grid-template-columns:1fr}.bulk-stock-action,.servings-calculator{flex-direction:column;align-items:stretch}.bulk-stock-action .secondary-button,.servings-calculator .stepper{flex-basis:auto;width:100%}.add-menu-dialog{padding:24px 18px}.filter-tile .stepper{grid-template-columns:minmax(0,1fr) minmax(32px,1fr) minmax(0,1fr);width:100%}.meal-suggestions{grid-template-columns:1fr}.meal-card-heading{flex-direction:column;align-items:flex-start}.meal-component-grid,.meal-components,.stock-removal-options{grid-template-columns:1fr}.stock-use-page{padding-top:max(18px, env(safe-area-inset-top))}.stock-use-heading h1{font-size:31px}.stock-use-panel{border-radius:20px;margin-top:42px;padding:16px}.stock-use-products{grid-template-columns:1fr;max-height:none}.stock-use-choices{grid-template-columns:1fr 1fr}.stock-use-choices>button{flex-direction:column;align-items:flex-start;gap:8px;min-height:96px;padding:14px 11px}.stock-use-balance,.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:1}.receipt-stock-toggle,.receipt-line-name{grid-column:1/-1!important}.settings-grid{grid-template-columns:1fr}.sync-device-list{grid-template-columns:minmax(0,1fr)}.sync-device-card,.sync-device-card>span,.sync-device-card>small{overflow-wrap:anywhere;min-width:0}.sync-heading{grid-template-columns:auto 1fr}.sync-heading .sync-state{grid-column:1/-1;width:fit-content}.sync-join{grid-template-columns:1fr}.sync-join .secondary-button,.sync-active-actions>button{justify-content:center;width:100%}.sync-health-heading{grid-template-columns:auto 1fr}.sync-health-heading>strong{grid-column:1/-1;width:fit-content}.sync-device-name>div{grid-template-columns:1fr}.sync-device-name button{justify-content:center;width:100%}.movement-panel{grid-column:1}.cooking-mode{padding-inline:18px}.cooking-mode header{grid-template-columns:1fr auto}.cooking-mode header strong{text-align:center;grid-area:2/1/auto/-1}.cooking-mode main p{font-size:30px}.recipe-editor-basics{grid-template-columns:1fr}.recipe-editor label.wide{grid-column:1}.recipe-editor-heading{flex-direction:column;align-items:stretch}.recipe-editor-heading .secondary-button{width:100%}.recipe-ingredient-editor-row{grid-template-columns:1fr 1fr}.recipe-ingredient-editor-row .ingredient-name,.recipe-ingredient-editor-row>label:nth-of-type(4),.recipe-ingredient-editor-row .ingredient-note{grid-area:auto/1/auto/-1}.recipe-inline-check{grid-area:auto/1}.recipe-ingredient-editor-row>.icon-button{grid-area:auto/2;justify-self:end}.recipe-step-editor-row{grid-template-columns:34px 1fr}.recipe-step-editor-row>label,.recipe-step-actions{grid-column:2}.recipe-allergen-editor{grid-template-columns:1fr 1fr}.recipe-editor-actions{margin-inline:-20px;padding-inline:20px;bottom:-20px}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),select,textarea{font-size:16px!important}.recipe-import-dialog{border-radius:20px;max-height:calc(100dvh - 20px);padding:28px 20px}.recipe-import-dialog>h1{font-size:28px}.recipe-import-tabs{grid-template-columns:1fr}.recipe-import-submit{justify-content:center;width:100%}.recipe-import-review>div{flex-direction:column;align-items:flex-start}.cooking-mode footer button{min-height:68px}.stock-correlation-line{grid-template-columns:25px minmax(0,1fr)}.stock-correlation-line>em{grid-column:2}.recipe-stock-targets{display:grid}.recipe-stock-targets button{width:100%}.merge-suggestion-list article{flex-direction:column;align-items:stretch}.merge-suggestion-list article .secondary-button{justify-content:center;width:100%}.merge-comparison{grid-template-columns:1fr}}@media (width<=700px){.keyboard-demand-control{border:1px solid var(--line);background:var(--lin-2);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 4px;padding:12px;display:flex}.keyboard-demand-control>span{gap:2px;min-width:0;display:grid}.keyboard-demand-control strong{color:var(--forest);font-size:13px}.keyboard-demand-control small{color:var(--ardoise);font-size:10px;line-height:1.3}.keyboard-demand-control button{flex:none;min-height:42px;padding-inline:12px}.form-dialog input[readonly],.form-dialog textarea[readonly]{cursor:default;background:var(--surface-muted);color:var(--ardoise)}body.keyboard-open .mobile-nav{display:none}body.keyboard-open .mobile-keyboard-actions{top:calc(var(--app-viewport-offset-top) + var(--app-viewport-height) - 70px);z-index:160;border:1px solid var(--line);box-shadow:0 -8px 20px rgb(var(--brand-rgb) / 16%);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffffa;border-radius:13px;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;margin:0;padding:8px 12px;display:grid;position:fixed;left:8px;right:8px}body.keyboard-open .mobile-keyboard-actions>button{white-space:nowrap;justify-content:center;min-width:0;min-height:44px;padding-inline:12px}body.keyboard-open .recipe-editor-actions,body.keyboard-open .form-dialog>.dialog-actions,body.keyboard-open .receipt-dialog>.dialog-actions{display:none}}.qr-page{max-width:1220px;margin-inline:auto}.qr-page .page-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.qr-heading-mark{background:var(--beurre);width:72px;height:72px;color:var(--forest,var(--brand));border-radius:22px;flex-shrink:0;place-items:center;display:grid}.qr-tabs,.qr-mode{background:var(--surface-muted);border-radius:16px;gap:6px;margin:24px 0;padding:5px;display:flex}.qr-tabs button,.qr-mode button{min-height:48px;color:var(--brand);background:0 0;border:0;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:9px;padding:13px 14px;font-weight:700;display:flex}.qr-tabs button.active,.qr-mode button.active{background:var(--papier);color:var(--brand);box-shadow:0 2px 8px rgb(var(--brand-rgb) / 4%)}.qr-reserve-grid{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-items:start;gap:28px;display:grid}.qr-card{background:var(--papier);border:1px solid var(--border);border-radius:24px;min-width:0;margin-bottom:20px;padding:28px}.qr-card h2{overflow-wrap:anywhere;margin:8px 0 12px;font-size:27px;line-height:1.2}.qr-card p{color:var(--text-secondary);line-height:1.6}.qr-form{gap:18px;margin-top:22px;display:grid}.qr-form label,.qr-scanner label{gap:8px;min-width:0;font-size:14px;font-weight:650;display:grid}.qr-page input,.qr-page select{border:1px solid var(--border);width:100%;min-width:0;min-height:48px;font:inherit;color:var(--brand);background:#fff;border-radius:12px;padding:12px;font-size:16px}.qr-page input[type=file]{font-size:13px}.qr-page button{cursor:pointer}.qr-page button:disabled{opacity:.55;cursor:default}.qr-dimensions,.qr-fields-row{grid-template-columns:1fr 1fr;gap:14px;min-width:0;display:grid}.qr-count{background:var(--surface-muted);border-radius:14px;margin:0;padding:15px 18px}.qr-count strong{color:var(--brand);margin-right:8px;font-size:28px}.qr-paper-panel{padding:8px}.qr-paper-panel p{color:var(--text-secondary);font-size:13px;line-height:1.6}.qr-paper{aspect-ratio:210/297;width:100%;max-width:320px;box-shadow:0 12px 38px rgb(var(--brand-rgb) / 9%);border:1px solid var(--border);background:#fff;margin:0 auto 22px;position:relative}.qr-paper-cell{border:1px dashed var(--border);align-items:center;gap:3px;padding:3px;display:flex;position:absolute;overflow:hidden}.qr-paper-cell svg{width:auto;height:75%;color:var(--brand);flex-shrink:0}.qr-paper-cell span{color:var(--brand);font:5px monospace}.qr-reserves{margin-top:28px}.qr-reserves h2{margin-bottom:18px;font-size:23px}.qr-batch-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.qr-batch-row>div{flex:1;min-width:180px}.qr-batch-row p{margin:4px 0;font-size:14px}.qr-label-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;max-height:340px;padding:4px;display:grid;overflow-y:auto}.qr-label-list button,.qr-product-choice{border:1px solid var(--border);background:var(--lin);text-align:left;overflow-wrap:anywhere;border-radius:12px;gap:7px;width:100%;min-height:64px;padding:14px;display:grid}.qr-label-list button span,.qr-product-choice span{color:var(--text-secondary);font-size:13px}.qr-product-choice{margin-top:10px}.qr-scanner{text-align:center;max-width:670px;margin-inline:auto;padding:40px}.qr-scanner-icon{background:var(--surface-muted);color:var(--brand);border-radius:25px;place-items:center;width:92px;height:92px;display:inline-grid}.qr-scanner .primary-button{margin:14px auto}.qr-scanner form{text-align:left;grid-template-columns:1fr auto;align-items:end;gap:10px;margin:24px 0 20px;display:grid}.qr-container-heading{align-items:center;gap:20px;display:flex}.qr-container-heading img{object-fit:cover;border-radius:18px;width:100px;height:100px}.qr-container-heading h2{margin-top:9px}.qr-balance{background:var(--surface-muted);border-radius:18px;justify-content:space-between;align-items:center;gap:15px;margin:24px 0;padding:22px;display:flex}.qr-balance strong{color:var(--brand);font-size:32px}.qr-actions{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.qr-notice{background:var(--surface-muted);color:var(--brand);border-radius:12px;align-items:start;gap:9px;padding:14px;font-size:14px;display:flex}.qr-notice svg{flex-shrink:0}.qr-photo-preview{object-fit:cover;border-radius:12px;max-width:180px;max-height:130px}.qr-create-start{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.qr-create-card>.qr-photo-preview{margin-top:18px;display:block}.qr-photo-text{margin-top:18px}.qr-photo-text p{margin:6px 0 10px}.qr-photo-text>div{flex-wrap:wrap;gap:8px;display:flex}@media (width<=700px){body:before{content:"";height:env(safe-area-inset-top);z-index:150;background:var(--papier);position:fixed;inset:0 0 auto}.qr-create-page-header{margin-bottom:18px}.qr-create-page-header p,.qr-create-page-header>.qr-heading-mark{display:none}.qr-create-card{padding:20px}}@media (width<=760px){.qr-page .page-header h1{font-size:32px}.qr-heading-mark{border-radius:17px;width:52px;height:52px}.qr-heading-mark svg{width:28px}.qr-reserve-grid{grid-template-columns:1fr;gap:10px}.qr-paper-panel{grid-template-columns:115px minmax(0,1fr);align-items:start;gap:0 16px;display:grid}.qr-paper{grid-row:span 2}.qr-paper-cell span{display:none}.qr-paper-panel p{margin:0 0 8px}.qr-card{border-radius:20px;padding:20px}.qr-card h2{font-size:24px}.qr-scanner{padding:24px 18px}.qr-scanner form{grid-template-columns:1fr}.qr-scanner form button,.qr-form>button{justify-content:center;width:100%}.qr-tabs{gap:3px}.qr-tabs button,.qr-mode button{padding:12px 8px;font-size:13px}.qr-container-heading{gap:12px}.qr-container-heading img{width:68px;height:68px}.qr-fields-row{grid-template-columns:1fr}.qr-actions>button{flex:100%;justify-content:center}.qr-balance strong{font-size:26px}}.qr-print-text{border:1px solid var(--border);border-radius:16px;gap:12px;min-width:0;padding:16px;display:grid}.qr-print-text legend{padding:0 6px;font-weight:700}.qr-print-text p,.qr-print-text small{font-size:.85rem;line-height:1.5}.inventory-item-actions{white-space:normal;gap:8px;width:180px;padding:0;display:grid}.inventory-qr-button{border:1px solid var(--sauge);background:var(--olive-soft);width:100%;min-height:48px;color:var(--forest);font:inherit;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:12px;font-weight:750;line-height:1.35;display:flex}.inventory-qr-button svg{flex-shrink:0}.inventory-qr-button small{margin-top:4px;font-size:10px;font-weight:500;display:block}.inventory-qr-button:disabled{opacity:.6;cursor:default}.qr-print-sample{border:1px solid var(--border);color:var(--brand);background:#fff;border-radius:16px;align-items:center;gap:16px;margin-bottom:20px;padding:20px 14px;display:flex}.qr-print-sample>svg{flex-shrink:0}.qr-print-sample>div{overflow-wrap:anywhere;gap:9px;min-width:0;display:grid}.qr-print-sample small{letter-spacing:.12em;color:var(--text-secondary);font-size:9px}.qr-product-print .qr-paper-cell{background:var(--surface-muted);justify-content:center}.qr-product-print .qr-paper-cell span{font-size:9px;display:inline}.qr-product-print .qr-paper-empty{color:#888;opacity:.4;background:#fff}.qr-product-print .qr-product-name{overflow-wrap:anywhere}.qr-product-draft{max-width:680px;margin:0 auto}.qr-product-draft h2{overflow-wrap:anywhere}.qr-queue-heading{justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;display:flex}.qr-queue-heading>div{max-width:720px}.qr-queue-heading>button{flex-shrink:0}.qr-queue-items{gap:12px;min-width:0;display:grid}.qr-queue-row{align-items:flex-start;gap:12px;padding:18px;display:flex}.qr-queue-number{background:var(--olive-soft);border-radius:8px;flex-shrink:0;place-items:center;width:28px;height:28px;font-weight:700;display:grid}.qr-queue-copy{overflow-wrap:anywhere;flex:1;min-width:0}.qr-queue-copy p{margin:8px 0}.qr-queue-copy small{display:block}.qr-queue-row-actions{gap:8px;display:grid}.qr-queue-row-actions button{width:44px;min-height:44px;position:static}.qr-queue-print{position:sticky;top:24px}.qr-queue-editor{margin-bottom:24px}.qr-print-result{justify-content:space-between;margin-bottom:20px}@media (width<=760px){.qr-queue-heading,.qr-print-result{flex-direction:column;align-items:stretch}.qr-queue-print{grid-row:1;position:static}}@media (width<=600px){.qr-tabs button{flex-direction:column;gap:5px;min-width:0;padding:10px 5px;font-size:11px}.qr-product-print .qr-paper-panel{display:block}}.inventory-card-footer{gap:8px;margin-top:12px;display:flex}.inventory-card-footer>.inventory-qr-button{flex:1;width:auto;min-width:0}.inventory-card-footer>.edit-product{flex-shrink:0;align-self:stretch;width:44px;min-height:48px;position:static}.qr-source-context{margin-bottom:20px}.qr-source-context p{margin:6px 0 0;line-height:1.5}.demo-banner{border:1px solid var(--border);border-left:5px solid var(--beurre);background:var(--surface-muted);max-width:1092px;color:var(--forest);border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin:24px auto 0;padding:18px 22px;display:flex}.demo-banner strong{font-size:16px;display:block}.demo-banner p{margin:6px 0 0;line-height:1.45}.demo-banner>button{flex-shrink:0}.demo-reset-dialog p{line-height:1.55}.demo-reset-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:24px;display:flex}@media (width<=760px){.inventory-item-actions{width:100%}.demo-banner{flex-direction:column;align-items:stretch;margin:18px 20px 0;padding:16px}.demo-banner>button,.demo-reset-actions>button{width:100%}}:root{--state-ok:#1e1e1e;--state-ok-soft:#ececea;--state-ok-ink:#2e3136;--state-urgent:#a11a1a;--state-urgent-soft:#fbe4e4;--state-urgent-ink:#7a1414;--state-soon:#a9620a;--state-soon-soft:#fbebd3;--state-soon-ink:#6b4006;--state-finish-soft:#f1ece6;--state-finish-ink:#5b4636;--state-missing-soft:#ececea;--state-missing-ink:#4c5056}.priority-normal{background:var(--state-ok-soft);color:var(--state-ok-ink)}.priority-urgent{background:var(--state-urgent-soft);color:var(--state-urgent-ink)}.priority-a_utiliser{background:var(--state-soon-soft);color:var(--state-soon-ink)}.priority-a_finir{background:var(--state-finish-soft);color:var(--state-finish-ink)}.priority-manquant{background:var(--state-missing-soft);color:var(--state-missing-ink)}.priority-hors-suivi{color:var(--muted);box-shadow:inset 0 0 0 1px var(--line);background:0 0}.inventory-list-row:has(.priority-urgent){box-shadow:inset 3px 0 var(--state-urgent)}.inventory-list-row:has(.priority-a_utiliser){box-shadow:inset 3px 0 var(--state-soon)}.inventory-card:has(.priority-urgent){box-shadow:inset 0 0 0 1.5px var(--state-urgent)}.inventory-card:has(.priority-a_utiliser){box-shadow:inset 0 0 0 1.5px var(--state-soon)}.coverage-pill.available{background:var(--state-ok);color:#fff}.coverage-pill.soon{background:var(--state-soon-soft);color:var(--state-soon-ink)}.excluded-pill{background:var(--state-missing-soft);color:var(--state-missing-ink)}.missing,.stock-status{color:var(--state-urgent-ink)}.stock-status.available{color:var(--state-ok-ink)}.priority-list em{color:var(--state-urgent-ink)}.soon-card>span{color:var(--state-soon-ink)}.stock-use-split{border:1px dashed var(--sauge);background:var(--papier);border-radius:16px;padding:14px 16px}.stock-use-split summary{cursor:pointer;align-items:center;min-height:44px;font-weight:750;display:flex}.stock-use-split p{color:var(--ardoise);margin:4px 0 12px;font-size:14px}.stock-use-split-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.stock-use-split-fields label{gap:5px;font-size:13px;font-weight:700;display:grid}.stock-use-split-fields input,.stock-use-split-fields select{border:1px solid var(--line);background:var(--lin);min-height:46px;font:inherit;color:inherit;border-radius:12px;padding:0 12px}.stock-use-detected{background:var(--state-ok-soft);color:var(--state-ok-ink);border-radius:16px;padding:12px 16px}.stock-use-detected p{margin:0 0 4px;font-size:14px}.stock-use-detected div{flex-wrap:wrap;gap:4px 16px;display:flex}.stock-use-detected .text-button{min-height:44px;color:var(--state-ok-ink);padding:0;text-decoration:underline}.shopping-picker{gap:8px;margin:-4px 0 16px;display:grid}.shopping-picker h3{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.shopping-picker ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.shopping-picker li{align-items:center;gap:6px;display:flex}.shopping-picker .shopping-picker-add{border:1px solid var(--line);background:var(--papier);width:100%;min-width:0;min-height:56px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:14px;flex:auto;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 12px 7px 7px;display:grid}.shopping-picker .shopping-picker-add:disabled{cursor:default;opacity:.6}.shopping-picker img,.shopping-picker-letter{object-fit:contain;border-radius:11px;width:42px;height:42px}.shopping-picker-letter{background:var(--apricot);font-family:var(--font-display);place-items:center;font-weight:800;display:grid}.shopping-picker-text{gap:2px;min-width:0;display:grid}.shopping-picker-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.shopping-picker-text small{color:var(--muted);font-size:12px}.shopping-picker-empty{color:var(--muted);margin:-6px 0 14px;font-size:13px}.drive-setting{border:1px dashed var(--sauge);background:var(--papier);border-radius:14px;margin:0 0 14px;padding:12px 14px;font-size:14px}.drive-setting summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-weight:750;display:flex}.drive-setting ol{color:var(--ardoise);gap:4px;margin:4px 0 10px;padding-left:20px;display:grid}.drive-setting a{color:var(--forest);font-weight:700}.drive-setting form{gap:6px;display:grid}.drive-setting label{font-size:13px;font-weight:700}.drive-setting form>div{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.drive-setting input{border:1px solid var(--border);min-width:0;height:44px;font:inherit;background:#fff;border-radius:11px;padding:0 12px}.drive-setting-note{color:var(--muted);margin:10px 0 0;font-size:12px}.drive-setting-set{border-style:solid;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.drive-setting-set span{flex:auto;min-width:0}.drive-setting-set .text-button{min-height:44px;padding:0 4px}.shopping-item-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.drive-search-link{border:1px solid var(--line);min-height:36px;color:var(--forest);border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-size:12px;font-weight:750;text-decoration:none;display:inline-flex}.shopping-picker .drive-search-link{flex-shrink:0;min-height:44px}.drive-query-link{min-height:44px;color:var(--forest);text-underline-offset:3px;align-items:center;gap:6px;margin:0 0 14px;font-size:14px;font-weight:750;text-decoration:underline;display:inline-flex}.shopping-picker-all{min-height:44px;color:var(--forest);text-underline-offset:3px;justify-self:start;padding:0;font-weight:750;text-decoration:underline}.shopping-picker:has(.shopping-picker-all[aria-expanded=true]) ul{overscroll-behavior:contain;max-height:60vh;overflow-y:auto}.shopping-page{align-content:start;gap:16px;display:grid}.shopping-page .page-header{margin-bottom:0}.shopping-page-search{z-index:1;background:var(--lin);box-shadow:0 6px 18px rgb(var(--brand-rgb) / 8%);border-radius:16px;margin:0;padding:8px;position:relative}.shopping-page .drive-query-link{margin:0}.shopping-aisle{gap:4px;margin-top:8px;display:grid}.shopping-aisle h3{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}details.shopping-aisle>summary{cursor:pointer;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;min-height:44px;list-style:none;display:flex}details.shopping-aisle>summary::-webkit-details-marker{display:none}details.shopping-aisle>summary span{color:var(--muted);font-size:12px;font-weight:700}.shopping-done h3{margin-top:6px}.shopping-done .text-button{justify-self:start;min-height:44px;padding:0}.shopping-forecast{border:2px solid var(--beurre);background:var(--beurre-soft);gap:10px;margin-bottom:18px;display:grid}.shopping-forecast>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:48px;list-style:none;display:flex}.shopping-forecast>summary::-webkit-details-marker{display:none}.shopping-forecast>summary>span:first-child{gap:2px;display:grid}.shopping-forecast>summary strong{font-family:var(--font-display);color:var(--brand);font-size:20px;font-weight:800}.forecast-intro{color:var(--text-secondary);margin:0;font-size:14px}.shopping-forecast .forecast-message{flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;display:flex}.forecast-message .text-button{min-height:36px;padding:0}.forecast-rows{gap:6px;margin:6px 0 0;padding:0;list-style:none;display:grid}.forecast-row{background:var(--papier);border:1px solid var(--line);border-radius:14px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:60px;padding:8px;display:grid}.forecast-thumb{object-fit:cover;border-radius:11px;width:44px;height:44px}.forecast-letter{background:var(--beurre);color:var(--brand);font-family:var(--font-display);place-items:center;font-weight:800;display:grid}.forecast-text{gap:2px;min-width:0;display:grid}.forecast-text strong{overflow-wrap:anywhere}.forecast-text small{color:var(--text-secondary);align-items:center;gap:4px;font-size:12.5px;display:flex}.forecast-missing .forecast-text small{color:var(--state-missing-ink);font-weight:700}.forecast-exclude,.forecast-restore{border:1.5px solid var(--line);background:var(--papier);min-height:44px;color:var(--brand);font:inherit;cursor:pointer;border-radius:12px;align-items:center;gap:6px;padding:0 14px;font-weight:750;display:inline-flex}.forecast-exclude:hover{border-color:var(--brand)}.forecast-restore{background:var(--beurre);border-color:var(--beurre)}.forecast-row.is-excluded{opacity:.72}.forecast-send{justify-content:center;width:100%;min-height:52px;font-size:16px}.forecast-excluded>summary{cursor:pointer;min-height:40px;color:var(--text-secondary);align-items:center;font-size:14px;font-weight:700;display:flex}.forecast-listed{color:var(--text-secondary);margin:0;font-size:13px}@media (width<=599px){.forecast-row{grid-template-columns:40px minmax(0,1fr) auto;gap:8px;padding:6px}.forecast-thumb{width:40px;height:40px}.forecast-text strong{font-size:14.5px;line-height:1.25}.forecast-exclude,.forecast-restore{gap:4px;min-height:44px;padding:0 9px;font-size:13.5px}.forecast-exclude svg,.forecast-restore svg{width:15px;height:15px}}.shopping-picker-rows{gap:6px;margin:6px 0 0;padding:0;list-style:none;display:grid}.shopping-picker-rows li{align-items:center;gap:6px;display:flex}.shopping-picker-rows .shopping-picker-add{border:1px solid var(--line);background:var(--papier);width:100%;min-width:0;min-height:56px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:14px;flex:auto;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 12px 7px 7px;display:grid}.shopping-picker-rows .shopping-picker-add:disabled{cursor:default;opacity:.6}.shopping-picker-rows img,.shopping-picker-rows .shopping-picker-letter{object-fit:contain;border-radius:11px;width:42px;height:42px}.shopping-picker-rows .drive-search-link{flex-shrink:0;min-height:44px}.shopping-out{font-weight:700;color:var(--state-urgent-ink)!important}.shopping-scope{background:var(--surface-muted);border-radius:14px;gap:4px;margin:4px 0 2px;padding:4px;display:inline-flex}.shopping-scope button{min-height:40px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:0 14px;font-weight:750}.shopping-scope button.active{background:var(--papier);color:var(--brand);box-shadow:0 1px 3px rgb(var(--brand-rgb) / 14%)}.shopping-products-help{color:var(--text-secondary);margin:0;font-size:13px}.shopping-picker-rows li{gap:6px;display:grid}.shopping-picker-line{align-items:center;gap:6px;min-width:0;display:flex}.shopping-picker-rows li.in-list .shopping-picker-add{border-color:var(--brand);background:var(--beurre-soft);box-shadow:inset 0 0 0 1px var(--brand)}.shopping-in-list{font-weight:750;color:var(--brand)!important}.shopping-sheet-toggle{border:1px solid var(--line);background:var(--papier);min-height:44px;color:var(--brand);font:inherit;cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:0 10px;font-size:12px;font-weight:750;display:inline-flex}.shopping-sheet-toggle svg{transition:transform .15s}.shopping-sheet-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.shopping-product-sheet{border:1px solid var(--line);background:var(--papier);border-radius:14px;grid-template-columns:120px minmax(0,1fr);gap:14px;padding:12px;display:grid}.shopping-product-sheet:not(:has(img)){grid-template-columns:minmax(0,1fr)}.shopping-product-sheet img{object-fit:contain;border-radius:12px;width:120px;height:120px}.shopping-product-sheet strong{overflow-wrap:anywhere;margin-bottom:6px;display:block}.shopping-product-sheet dl{gap:4px;margin:0;display:grid}.shopping-product-sheet dl div{flex-wrap:wrap;gap:4px 8px;font-size:13px;display:flex}.shopping-product-sheet dt{color:var(--text-secondary);font-weight:700}.shopping-product-sheet dd{margin:0}.shopping-product-sheet p{color:var(--text-secondary);margin:8px 0 0;font-size:13px}@media (width<=599px){.shopping-sheet-toggle span{display:none}.shopping-sheet-toggle{justify-content:center;width:44px;padding:0}.shopping-product-sheet{grid-template-columns:84px minmax(0,1fr);gap:10px}.shopping-product-sheet img{width:84px;height:84px}}.shopping-open-button{justify-content:center;width:100%;min-height:48px}.shopping-picker-rows .shopping-picker-text strong{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2;display:-webkit-box;overflow:hidden}.shopping-picker-rows .drive-search-link{padding:0 9px}.field-hint{color:var(--muted);margin-top:6px;font-size:12px;font-weight:500;line-height:1.35;display:block}.stop-tracking-button{border:1px dashed var(--sauge);width:100%;min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:6px 9px;font-size:13px;font-weight:700;display:flex}.stop-tracking-button>span{text-align:left;gap:1px;min-width:0;line-height:1.2;display:grid}.stop-tracking-button small{font-size:9px;font-weight:700}.stock-undo-toast span{flex:auto;min-width:0;font-size:14px;font-weight:700}.stock-undo-toast button{min-height:40px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff73;border-radius:999px;padding:0 14px;font-weight:800}.stock-undo-toast{width:min(480px,100vw - 32px)}.stock-use-done{background:var(--brand);color:var(--papier);border-radius:18px;align-items:center;gap:12px;margin:14px 0 0;padding:14px 16px;display:flex}.stock-use-panel>.stock-use-done:first-child{margin:0 0 14px}.stock-use-done>svg{color:var(--beurre);flex:none}.stock-use-done>span{flex:auto;gap:2px;min-width:0;display:grid}.stock-use-done strong{font-size:22px;font-weight:800}.stock-use-done small{overflow-wrap:anywhere;font-size:16px}.stock-use-done button{min-height:52px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1.5px solid #ffffff8c;border-radius:999px;flex:none;padding:0 18px;font-size:16px;font-weight:800}.stock-undo-toast span{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.product-history{background:var(--surface-muted);border-radius:16px;gap:8px;padding:14px 16px;display:grid}.product-history>strong{font-size:15px}.product-history ol{margin:0;padding:0;list-style:none;display:grid}.product-history li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"date delta""what delta";gap:1px 12px;padding:9px 0;display:grid}.product-history li:last-child{border-bottom:0}.product-history-date{color:var(--muted);font-variant-numeric:tabular-nums;grid-area:date;font-size:12px}.product-history-what{overflow-wrap:anywhere;grid-area:what;min-width:0;font-size:14px;font-weight:650}.product-history-delta{font-variant-numeric:tabular-nums;grid-area:delta;align-self:center;justify-items:end;font-weight:800;display:grid}.product-history-delta.plus{color:var(--state-ok-ink)}.product-history-delta.minus{color:var(--state-urgent-ink)}.product-history-delta small{color:var(--muted);font-size:11px;font-weight:600}.product-history-empty{color:var(--muted);font-size:13px}.product-history .text-button{justify-self:start;min-height:44px;padding:0}.catalog-photo-panel{align-content:start;gap:10px;display:grid}.catalog-photo-panel h2,.catalog-photo-panel p{margin:0}.catalog-photo-panel p{color:var(--ardoise);font-size:14px}.catalog-photo-panel details summary{cursor:pointer;align-items:center;min-height:44px;font-weight:750;display:flex}.catalog-photo-list{gap:6px;max-height:320px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.catalog-photo-list li{align-items:center;gap:10px;font-size:14px;display:flex}.catalog-photo-list img{object-fit:cover;border-radius:10px;flex:0 0 40px;width:40px;height:40px}.catalog-photo-panel .primary-button,.catalog-photo-panel .secondary-button{justify-self:start;min-height:46px}.catalog-photo-progress,.catalog-photo-empty{color:var(--muted)!important}.catalog-photo-report{gap:8px;display:grid}.desire-picker{gap:12px;margin-bottom:18px;display:grid}.desire-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px;display:grid}.desire-tile{border:1px solid var(--line);background:var(--papier);min-width:0;color:var(--forest);font:inherit;text-align:left;cursor:pointer;box-shadow:0 6px 18px rgb(var(--brand-rgb) / 8%);transition:transform .12s var(--ease-out);border-radius:20px;grid-template-rows:auto 1fr;padding:0;display:grid;overflow:hidden}.desire-tile-media{aspect-ratio:4/3;background:var(--surface-muted);display:block;overflow:hidden}.desire-tile-media img{object-fit:cover;width:100%;height:100%;display:block}.desire-tile-initial{background:var(--apricot);width:100%;height:100%;color:var(--brand);font-family:var(--font-display);place-items:center;font-size:48px;font-weight:800;display:grid}.desire-tile-caption{align-content:start;gap:2px;padding:9px 12px 11px;display:grid}.desire-tile-caption strong{font-family:var(--font-display);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:17px;font-weight:800;line-height:1.15;display:-webkit-box;overflow:hidden}.desire-tile-caption small{color:var(--muted);font-size:12px;font-weight:700}.desire-tile:active{transform:scale(.98)}.desire-tile:disabled{cursor:default;box-shadow:none;opacity:.55}.desire-tile:disabled img{filter:grayscale()}.desire-tile.selected{border-color:var(--brand);outline:4px solid var(--brand);outline-offset:1px}.desire-tile.selected .desire-tile-caption{background:var(--beurre)}.desire-trail{flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:14px;display:flex}.desire-trail .text-button{align-items:center;gap:4px;min-height:44px;padding:0;display:inline-flex}.desire-trail span{color:var(--muted)}.desire-empty{color:var(--muted);margin:0}.desire-search-hint{color:var(--muted);margin:4px 0 8px;scroll-margin-top:90px;font-size:14px;font-weight:700}.desire-stock{background:var(--surface-muted);border-radius:16px;margin:0 0 14px;padding:12px 14px}.desire-stock h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-size:13px;font-weight:800}.desire-stock ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.desire-stock li{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.desire-stock img,.desire-stock-initial{object-fit:cover;border-radius:11px;width:44px;height:44px}.desire-stock-initial{background:var(--apricot);place-items:center;font-weight:800;display:grid}.desire-stock-text{min-width:0;display:grid}.desire-stock-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.desire-stock-text small{color:var(--muted);font-size:12px}.desire-stock .secondary-button{min-height:44px;padding:0 12px}@media (width>=700px){.desire-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.desire-tile-caption strong{font-size:18px}}@media (width<=420px){.desire-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.desire-tile{border-radius:16px}.desire-tile-caption{padding:8px 10px 9px}.desire-tile-caption strong{font-size:15px}}@media (prefers-reduced-motion:reduce){.desire-tile{transition:none}}.recipe-filters-fold{border:1px solid var(--line);background:var(--papier);border-radius:14px;grid-column:1/-1}.recipe-filters-fold summary{min-height:44px;color:var(--muted);cursor:pointer;align-items:center;padding:0 14px;font-size:14px;font-weight:700;display:flex}.recipe-filters-fold-body{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;padding:0 10px 10px;display:grid}.stock-correlation-line{grid-template-columns:25px minmax(0,1fr) auto auto}.stock-link-toggle{min-height:40px;color:inherit;font:inherit;cursor:pointer;background:#ffffff8c;border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.ingredient-linker{background:var(--papier);color:var(--brand);border-radius:12px;grid-column:1/-1;gap:8px;margin-top:4px;padding:12px;display:grid}.ingredient-linker p{margin:0;font-size:13px}.ingredient-linker ul{gap:5px;max-height:300px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.ingredient-linker li button{border:1px solid var(--line);background:var(--papier);width:100%;min-height:50px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:12px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:5px 10px 5px 5px;display:grid}.ingredient-linker li button:disabled{cursor:default;opacity:.7}.ingredient-linker img,.ingredient-linker-initial{object-fit:cover;border-radius:10px;width:40px;height:40px}.ingredient-linker-initial{background:var(--apricot);place-items:center;font-weight:800;display:grid}.ingredient-linker li strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.ingredient-linker li small{color:var(--muted);font-size:11px}.ingredient-linker-empty{color:var(--muted)}.ingredient-linker-actions{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.ingredient-linker-actions .secondary-button{min-height:44px}.ingredient-linker-actions .text-button{align-items:center;gap:4px;min-height:44px;padding:0;display:inline-flex}@media (width<=700px){.stock-correlation-line{grid-template-columns:25px minmax(0,1fr)}.stock-correlation-line>em,.stock-link-toggle{grid-column:2;justify-self:start}}.ingredient-linker p strong{font-size:inherit;display:inline}.photo-credits-panel{align-content:start;gap:10px;display:grid}.photo-credits-panel h2,.photo-credits-panel p{margin:0}.photo-credits-panel p{color:var(--ardoise);font-size:14px}.photo-credits-panel summary{cursor:pointer;align-items:center;min-height:44px;font-weight:750;display:flex}.photo-credits-panel ul{max-height:360px;color:var(--ardoise);overflow-wrap:anywhere;gap:4px;margin:0;padding-left:18px;font-size:12px;display:grid;overflow-y:auto}.desire-stock-pick{min-width:0;min-height:50px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:3px;display:grid}.desire-stock li{grid-template-columns:minmax(0,1fr) auto}.desire-stock li.selected .desire-stock-pick{border-color:var(--brand);background:var(--beurre-soft)}.desire-stock-all{min-height:44px;margin-top:4px;padding:0}.shopping-product-sheet .shopping-product-tools{border-top:1px solid var(--line);grid-column:1/-1;gap:10px;padding-top:10px;display:grid}.product-links{border:1px solid var(--line);background:var(--papier);border-radius:14px;gap:10px;padding:14px;display:grid}.product-association{gap:8px;display:grid}.product-association-group strong{font-size:13px}.product-association-group ul{margin:4px 0 0;padding-left:18px;font-size:13px}.product-association-group small{color:var(--text-secondary)}.product-association-actions{flex-wrap:wrap;gap:4px 14px;display:flex}.product-association-open,.catalog-finder>.secondary-button{justify-self:start}.product-association-picker,.catalog-finder.open{background:var(--beurre-soft);border-radius:12px;gap:8px;padding:12px;display:grid}.product-association-picker p,.catalog-finder-help,.catalog-finder-credit{color:var(--text-secondary);margin:0;font-size:13px}.product-association-picker ul,.catalog-finder-results{gap:6px;max-height:360px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.product-association-picker li>button:first-child,.catalog-finder-results li button{border:1px solid var(--line);background:var(--papier);width:100%;min-height:52px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:12px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:6px 10px 6px 6px;display:grid}.product-association-picker li>button:first-child:hover,.catalog-finder-results li button:hover{border-color:var(--brand)}.product-association-picker img,.catalog-finder-results img,.product-association-letter,.catalog-finder-nophoto{object-fit:contain;background:#fff;border-radius:10px;width:44px;height:44px}.product-association-letter,.catalog-finder-nophoto{background:var(--beurre);place-items:center;font-weight:800;display:grid}.product-association-picker li span,.catalog-finder-results li span{gap:2px;min-width:0;display:grid}.product-association-picker small,.catalog-finder-results small{color:var(--text-secondary);font-size:12px}.product-association-message,.catalog-finder-message{color:var(--brand);margin:0;font-size:13px;font-weight:700}.catalog-finder{gap:8px;display:grid}.catalog-finder-form{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.catalog-finder-form label{color:var(--text-secondary);gap:3px;font-size:12px;font-weight:700;display:grid}.catalog-finder-form input{border:1px solid var(--line);min-height:44px;font:inherit;color:var(--text);background:var(--papier);border-radius:10px;padding:0 10px}@media (width<=599px){.catalog-finder-form{grid-template-columns:minmax(0,1fr)}}.invoice-completion{border:1.5px dashed var(--beurre);background:var(--beurre-soft);border-radius:14px;gap:8px;margin-top:12px;padding:14px;display:grid}.invoice-completion p{color:var(--text-secondary);margin:0;font-size:13px}.invoice-completion .secondary-button{justify-self:start}.invoice-duplicate-warning{border:2px solid var(--state-soon);background:var(--state-soon-soft);color:var(--state-soon-ink);border-radius:14px;gap:8px;margin:10px 0;padding:14px;display:grid}.invoice-duplicate-warning p{margin:0;font-size:14px}.invoice-duplicate-warning .primary-button{justify-self:start}.invoice-duplicate-warning label{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.link-button{color:inherit;font:inherit;text-align:left;cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:rgb(var(--brand-rgb) / 25%);text-decoration-color:rgb(var(--brand-rgb) / 25%);text-underline-offset:3px;background:0 0;border:0;padding:0}.link-button:hover{text-decoration-color:currentColor}.product-sheet-button{border:1px solid var(--line);background:var(--papier);min-height:44px;color:var(--brand);font:inherit;cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:13px;font-weight:750;display:inline-flex}.product-sheet-button:hover{border-color:var(--brand)}.product-quick-backdrop{z-index:210}.product-quick-sheet{background:var(--papier);border-radius:22px;gap:16px;width:min(720px,100vw - 32px);max-height:calc(100dvh - 32px);padding:24px;display:grid;position:relative;overflow-y:auto;box-shadow:0 24px 60px #00000038}.product-quick-head{grid-template-columns:132px minmax(0,1fr);align-items:center;gap:16px;padding-right:36px;display:grid}.product-quick-head img,.product-quick-letter{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:16px;width:132px;height:132px}.product-quick-letter{background:var(--beurre);font-family:var(--font-display);color:var(--brand);place-items:center;font-size:48px;font-weight:800;display:grid}.product-quick-head h2{font-family:var(--font-display);overflow-wrap:anywhere;color:var(--brand);margin:4px 0;font-size:24px;line-height:1.15}.product-quick-stock{color:var(--brand);margin:0;font-size:16px;font-weight:800}.product-quick-lots h3{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin:0 0 6px;font-size:13px}.product-quick-lots ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.product-quick-lots li{border:1px solid var(--line);background:var(--beurre-soft);border-radius:12px;gap:3px;padding:10px 12px;display:grid}.product-quick-lots li>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.product-quick-lots li small{color:var(--text-secondary);font-size:12.5px}.product-quick-facts{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px 16px;margin:0;display:grid}.product-quick-facts div{border-bottom:1px solid var(--line);justify-content:stretch;gap:1px;padding:0 0 6px;display:grid}.product-quick-facts dt{color:var(--text-secondary);font-size:12px;font-weight:700}.product-quick-facts dd{text-align:left;color:var(--text);overflow-wrap:anywhere;margin:0;font-size:14px}.product-quick-note{background:var(--surface-muted);border-radius:12px;margin:0;padding:10px 12px;font-size:14px}.product-quick-more summary{cursor:pointer;font-weight:700}.product-quick-tools{border-top:1px solid var(--line);gap:10px;padding-top:12px;display:grid}.product-quick-gestures{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.product-quick-gestures button{border:1.5px solid var(--line);background:var(--beurre-soft);min-height:84px;color:var(--brand);font:inherit;text-align:center;cursor:pointer;border-radius:18px;align-content:center;justify-items:center;gap:6px;padding:12px 8px;font-size:16px;font-weight:800;line-height:1.15;display:grid}.product-quick-gestures button:disabled{opacity:.45;cursor:default}.product-quick-gestures button.is-on{border-color:var(--brand);background:var(--brand);color:var(--papier)}.product-quick-extra{gap:12px;display:grid}.product-quick-extra>summary{border:1px solid var(--line);border-radius:14px;align-items:center;min-height:48px;padding:0 14px;font-size:16px;display:flex}.product-quick-extra[open]>summary{margin-bottom:12px}@media (width<=599px){.product-quick-backdrop{padding:0}.product-quick-sheet{width:100vw;height:100dvh;max-height:100dvh;padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:0;align-content:start}.product-quick-head{grid-template-columns:92px minmax(0,1fr);gap:12px}.product-quick-head img,.product-quick-letter{width:92px;height:92px}.product-quick-head h2{font-size:20px}.product-sheet-button span{display:none}.product-sheet-button{width:44px;padding:0}}.forecast-row{grid-template-columns:minmax(0,1fr) auto}.forecast-open{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:0;display:grid}.forecast-open:hover strong{text-underline-offset:3px;text-decoration:underline}@media (width<=599px){.forecast-open{grid-template-columns:40px minmax(0,1fr);gap:8px}}.product-association-picker li,.ingredient-linker li{align-items:center;gap:6px;display:flex}.product-association-picker li>button:first-child,.ingredient-linker li>button:first-child{flex:auto;min-width:0}.consumption-row .product-sheet-button{min-height:36px}.forecast-add{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.forecast-add input{border:1.5px solid var(--line);background:var(--papier);min-height:48px;color:var(--text);font:inherit;border-radius:12px;padding:0 12px}.forecast-add input:focus{border-color:var(--brand);outline:none}.forecast-manual-label{cursor:default}.forecast-manual-actions{align-items:center;gap:6px;display:inline-flex}.forecast-manual .forecast-letter{color:var(--brand)}.product-links{grid-column:1/-1}.product-association-search{border:1.5px solid var(--line);background:var(--papier);border-radius:12px;align-items:center;gap:8px;min-height:46px;padding:0 12px;display:flex}.product-association-search input{min-width:0;min-height:42px;font:inherit;color:var(--text);background:0 0;border:0;outline:none;flex:auto}.product-association-picker li>button:first-child{grid-template-columns:44px minmax(0,1fr) auto}.product-association-picker li>button:first-child strong{overflow-wrap:anywhere}.product-association-picker li.chosen>button:first-child{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand);background:var(--beurre-soft)}.product-association-confirm{flex-wrap:wrap;gap:8px;display:flex}.product-association-confirm .primary-button{flex:260px;justify-content:center}.catalog-finder-form label{gap:3px;display:grid}.package-sentence{border:1px solid var(--line);background:var(--beurre-soft);border-radius:14px;gap:8px;padding:14px;display:grid}.package-sentence>strong{color:var(--forest);font-size:13px}.package-sentence>strong em{color:var(--muted);font-style:normal;font-weight:550}.package-sentence-row{color:var(--forest);flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.package-sentence-row input{border:1px solid var(--border);width:96px;min-height:44px;font:inherit;background:#fff;border-radius:10px;padding:0 10px}.package-sentence-row select{border:1px solid var(--border);min-height:44px;font:inherit;background:#fff;border-radius:10px;padding:0 10px}.package-sentence-row.secondary{color:var(--text-secondary);font-size:13px;font-weight:600}.package-sentence-preview{color:var(--brand);font-size:13px;font-weight:650}.catalog-match{border-radius:999px;justify-self:start;padding:2px 8px;font-size:11px;font-style:normal;font-weight:800}.catalog-match-sure{background:var(--state-ok-soft);color:var(--state-ok-ink)}.catalog-match-possible{background:var(--state-finish-soft);color:var(--state-finish-ink)}.recipe-stock-detail{gap:6px;display:grid}.recipe-stock-lines summary{cursor:pointer;min-height:32px;color:var(--brand);align-items:center;gap:6px;font-size:13px;font-weight:800;list-style:none;display:flex}.recipe-stock-lines summary::-webkit-details-marker{display:none}.recipe-stock-lines ul{gap:4px;margin:2px 0 0;padding:0;list-style:none;display:grid}.recipe-stock-lines li{background:var(--beurre-soft);border-radius:9px;gap:1px;padding:6px 8px;font-size:13px;display:grid}.recipe-stock-lines li small{color:var(--text-secondary);font-size:12px}.catalog-name-search{gap:10px;margin-bottom:18px;display:grid}.catalog-name-search>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:48px;list-style:none;display:flex}.catalog-name-search>summary::-webkit-details-marker{display:none}.catalog-name-search>summary>span:first-child{gap:2px;display:grid}.catalog-name-search>summary strong{font-family:var(--font-display);color:var(--brand);font-size:20px;font-weight:800}.catalog-name-search>.primary-button{justify-self:start}.catalog-name-search progress{width:100%}.catalog-name-summary{margin:0}.catalog-proposals h3{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin:4px 0 6px;font-size:13px}.catalog-proposals ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.catalog-proposals li{border:1px solid var(--line);background:var(--papier);border-radius:14px;gap:8px;padding:10px;display:grid}.catalog-proposal-pair{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:center;gap:10px;display:grid}.catalog-proposal-side{gap:2px;min-width:0;display:grid}.catalog-proposal-side small{color:var(--text-secondary);font-size:11.5px}.catalog-proposal-side strong{overflow-wrap:anywhere;font-size:14px}.catalog-proposal-hit{grid-template-columns:56px minmax(0,1fr);align-items:center;gap:8px}.catalog-proposal-hit img,.catalog-proposal-hit .catalog-finder-nophoto{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:10px;width:56px;height:56px}.catalog-proposal-hit>span{gap:1px;min-width:0;display:grid}.catalog-proposal-actions{flex-wrap:wrap;gap:6px;display:flex}@media (width<=599px){.catalog-proposal-pair{grid-template-columns:minmax(0,1fr)}}.receipt-history{border:1px solid var(--line);background:var(--papier);border-radius:14px;margin:12px 0}.receipt-history>summary{cursor:pointer;min-height:56px;color:var(--brand);align-items:center;gap:10px;padding:10px 14px;list-style:none;display:flex}.receipt-history>summary::-webkit-details-marker{display:none}.receipt-history li>details>summary::-webkit-details-marker{display:none}.receipt-history>summary>span{gap:2px;display:grid}.receipt-history>summary small{color:var(--text-secondary);font-size:12px}.receipt-history>ul{gap:6px;margin:0;padding:0 12px 12px;list-style:none;display:grid}.receipt-history li>details{border:1px solid var(--line);background:var(--beurre-soft);border-radius:12px;gap:8px;padding:8px 10px;display:grid}.receipt-history li>details>summary{cursor:pointer;gap:2px;list-style:none;display:grid}.receipt-history li>details>summary small{color:var(--text-secondary);font-size:12px}.receipt-history-note{color:var(--text-secondary);margin:0;font-size:12.5px}.receipt-history-items{gap:4px;margin:0;padding:0;list-style:none;display:grid}.receipt-history-items li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:4px 0;font-size:13.5px;display:flex}.receipt-history .secondary-button{justify-self:start}.catalog-name-homemade{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;display:flex}.zoomable-image{cursor:zoom-in;background:0 0;border:0;flex-shrink:0;padding:0;display:block;position:relative}.zoomable-image img{object-fit:inherit;border-radius:inherit;width:100%;height:100%;display:block}.zoomable-image-hint{color:#fff;background:#0000008c;border-radius:999px;place-items:center;width:22px;height:22px;display:grid;position:absolute;bottom:3px;right:3px}.inventory-list-photo.zoomable-image,.inventory-photo.zoomable-image{overflow:hidden}.product-quick-head .product-quick-photo{border:1px solid var(--line);background:#fff;border-radius:16px;width:132px;height:132px;overflow:hidden}.product-quick-head .product-quick-photo img{object-fit:contain}@media (width<=599px){.product-quick-head .product-quick-photo{width:92px;height:92px}}.catalog-proposal-side .zoomable-image,.catalog-proposal-side .catalog-finder-nophoto{border:1px solid var(--line);background:#fff;border-radius:12px;width:96px;height:96px;overflow:hidden}.catalog-proposal-side .zoomable-image img{object-fit:contain}.catalog-proposal-mine,.catalog-proposal-hit{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px}.catalog-proposal-mine>span,.catalog-proposal-hit>span:last-child{gap:2px;min-width:0;display:grid}.catalog-proposal-mine small[title]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.catalog-proposal-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.catalog-finder-result{align-items:center;gap:8px;display:flex}.catalog-finder-result .zoomable-image,.catalog-finder-result .catalog-finder-nophoto{border:1px solid var(--line);background:#fff;border-radius:10px;width:72px;height:72px;overflow:hidden}.catalog-finder-result .zoomable-image img{object-fit:contain}.catalog-finder-result>button{flex:auto;min-width:0;grid-template-columns:minmax(0,1fr)!important}.photo-zoom-backdrop{z-index:3000;cursor:zoom-out;background:#0a1016e0;place-items:center;padding:56px 16px 24px;display:grid;position:fixed;inset:0}.photo-zoom-close{color:#fff;cursor:pointer;background:#ffffff29;border:0;border-radius:999px;place-items:center;width:48px;height:48px;display:grid;position:fixed;top:14px;right:14px}.photo-zoom-frames{gap:16px;width:100%;max-width:1100px;display:grid}.photo-zoom-frames.count-2{grid-template-columns:1fr 1fr}.photo-zoom-frames figure{cursor:default;justify-items:center;gap:8px;margin:0;display:grid}.photo-zoom-frames img{object-fit:contain;background:#fff;border-radius:12px;max-width:100%;max-height:72vh}.photo-zoom-frames.count-2 img{max-height:60vh}.photo-zoom-frames figcaption{text-align:center;color:#fff;gap:2px;display:grid}.photo-zoom-frames figcaption small{color:#ffffffbf}.photo-zoom-empty{color:#ffffffbf;border:1px dashed #fff6;border-radius:12px;place-items:center;width:100%;min-height:200px;display:grid}@media (width<=599px){.photo-zoom-frames.count-2{grid-template-columns:1fr}.photo-zoom-frames.count-2 img{max-height:36vh}.catalog-proposal-pair{grid-template-columns:minmax(0,1fr)}}.quick-tonight-button{border:2px solid var(--brand);background:var(--beurre-soft);width:100%;min-height:76px;color:var(--brand);font:inherit;text-align:left;cursor:pointer;border-radius:20px;align-items:center;gap:14px;margin:0 0 16px;padding:14px 18px;display:flex}.quick-tonight-button>span{gap:3px;min-width:0;display:grid}.quick-tonight-button strong{font-family:var(--font-display);font-size:20px;font-weight:800}.quick-tonight-button small{color:inherit;font-size:15px}.quick-tonight-button.active{background:var(--brand);color:var(--papier)}.shopping-list li{min-height:64px}.shopping-list label{cursor:pointer;flex:auto;gap:14px;min-width:0;min-height:56px;font-size:17px}.shopping-list input{flex:none;width:28px;height:28px}.shopping-line-text{gap:3px;min-width:0;display:grid}.shopping-line-text>span{overflow-wrap:anywhere;font-weight:700}.shopping-line-detail{color:var(--muted);align-items:center;gap:5px;font-size:14px;font-weight:500;display:flex}.shopping-search-results{margin:8px 0 18px;scroll-margin-top:150px}.shopping-search-results h2{margin:0 0 10px;font-size:18px}.shopping-search-results h3{margin:12px 0 6px;font-size:15px}.shopping-quantity-button{min-height:34px;color:var(--brand);font:inherit;cursor:pointer;text-align:left;background:#fff;border:1px solid #b5c9b5;border-radius:8px;justify-self:start;padding:3px 8px;font-size:13px;font-weight:700}.shopping-list li.shopping-suggested-line{background:#fbf5e7;border-left:4px solid #c69039;padding:8px}.shopping-suggestion-reason{color:#795318;align-items:center;gap:5px;font-size:13px;font-weight:700;display:flex}.shopping-suggestion-why{color:#70562d;font-size:13px}.shopping-suggestion-why summary{cursor:pointer;width:fit-content;text-decoration:underline}.shopping-suggestion-why p{margin:5px 0}@media (width<=560px){.shopping-search-results{padding:12px}.shopping-own-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}}.shopping-list li.checked .shopping-line-detail{text-decoration:none}.shopping-list .icon-button.shopping-remove{width:44px;height:44px}.inventory-shopping-link{border:1.5px solid var(--line);background:var(--beurre-soft);width:100%;min-height:64px;color:var(--brand);font:inherit;text-align:left;cursor:pointer;border-radius:18px;align-items:center;gap:12px;margin:0 0 14px;padding:12px 16px;display:flex}.inventory-shopping-link>span{gap:2px;display:grid}.inventory-shopping-link strong{font-size:17px}.inventory-shopping-link small{color:var(--text-secondary);font-size:15px}.stock-line{min-width:0;position:relative}.stock-line .inventory-select-check{z-index:1;position:absolute;top:8px;right:8px}.stock-line-button{border:1px solid var(--line);background:var(--papier);width:100%;min-height:76px;color:var(--brand);font:inherit;text-align:left;cursor:pointer;border-radius:18px;grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px 10px 10px;display:grid}.stock-line-button:active{background:var(--beurre-soft)}.stock-line-photo{object-fit:contain;background:#fff;border-radius:14px;width:60px;height:60px}.stock-line-placeholder{background:var(--lin-2);color:var(--text-secondary);place-items:center;display:grid}.stock-line-text{gap:4px;min-width:0;display:grid}.stock-line-text strong{overflow-wrap:anywhere;font-size:17px;line-height:1.2}.stock-line-text small{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px;font-size:14px;display:flex}.stock-line-qty{text-align:right;white-space:nowrap;font-size:17px;font-weight:800}.stock-line-manquant .stock-line-qty{color:var(--text-secondary)}.stock-line.cards .stock-line-button{grid-template-columns:1fr;justify-items:start}.stock-line.cards .stock-line-photo{object-fit:contain;width:100%;height:140px}.stock-line-entry{border:0;border-top:1px solid var(--line);width:100%;min-height:60px;color:var(--brand);font:inherit;text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:12px;display:flex}.product-quick-stopped{background:var(--brand);color:var(--papier);border-radius:14px;align-items:center;gap:10px;margin:0;padding:10px 12px;font-size:15px;display:flex}.product-quick-stopped span{flex:auto}.product-quick-stopped button{min-height:44px;color:inherit;font:inherit;background:0 0;border:1px solid #ffffff80;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-weight:800;display:inline-flex}.dashboard-urgent-line{border:1.5px solid var(--line);background:var(--beurre-soft);width:100%;min-height:60px;color:var(--brand);font:inherit;text-align:left;cursor:pointer;border-radius:18px;align-items:center;gap:12px;margin:16px 0 0;padding:12px 16px;font-size:17px;font-weight:800;display:flex}.dashboard-urgent-line span{flex:auto}.dashboard-access{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.dashboard-access button{border:1px solid var(--line);background:var(--papier);min-height:92px;color:var(--brand);font:inherit;cursor:pointer;border-radius:18px;align-content:center;justify-items:center;gap:8px;padding:12px 6px;font-size:16px;font-weight:800;display:grid}.mobile-nav button{color:var(--text-secondary);border-radius:18px;font-size:13px;line-height:1.15}.stock-compact-summary{font-size:17px;font-weight:700}.stock-filters,.stock-maintenance{border:1px solid var(--line);background:var(--papier);border-radius:16px}.stock-filters>summary,.stock-maintenance>summary{min-height:52px;color:var(--brand);cursor:pointer;align-items:center;padding:12px 16px;font-size:16px;font-weight:800;display:flex}.stock-filters-body,.stock-maintenance-body{gap:12px;padding:0 12px 14px;display:grid}.stock-toolbar .stock-filters{grid-column:1/-1}.shopping-compact-intro{font-size:16px}.recipe-cook-sticky{display:none}.cooking-tap{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}@media (width<=1023px){.recipe-cook-sticky{bottom:calc(96px + env(safe-area-inset-bottom));z-index:40;background:var(--brand);width:100%;min-height:60px;color:var(--papier);font:inherit;box-shadow:0 8px 24px rgb(var(--brand-rgb) / 28%);border:0;border-radius:18px;justify-content:center;align-items:center;gap:10px;margin-top:16px;font-size:19px;font-weight:800;display:flex;position:sticky}}.meals-fold{border:1px solid var(--line);background:var(--papier);border-radius:18px;margin-top:18px}.meals-fold>summary{min-height:56px;color:var(--brand);cursor:pointer;align-items:center;padding:14px 16px;font-size:16px;font-weight:800;display:flex}.meals-fold-list{gap:8px;padding:0 10px 12px;display:grid}.meal-row{border:1px solid var(--line);background:var(--lin);width:100%;min-height:64px;color:var(--brand);font:inherit;text-align:left;cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.meal-row span{gap:3px;display:grid}.meal-row strong{font-size:17px}.meal-row small{color:var(--text-secondary);font-size:14px}.pollen-main-actions.gestes-actions{grid-template-columns:1fr;gap:10px}.gestes-actions .pollen-action-photo{border:1px solid var(--border);background:var(--papier);min-width:0;min-height:104px;color:var(--brand);box-shadow:none;border-radius:22px;flex-direction:row;justify-content:flex-start;align-items:stretch;gap:0;padding:0;display:flex;position:relative;overflow:hidden}.gestes-actions .pollen-action-photo-image{object-fit:cover;object-position:50% 50%;flex:0 0 112px;width:112px;height:104px}.gestes-actions .pollen-action-photo:after{content:"›";color:var(--action);align-self:center;margin-left:auto;padding:0 16px 0 8px;font-size:38px;line-height:1}.gestes-actions .pollen-action-photo-text{overflow-wrap:anywhere;align-self:center;gap:2px;min-width:0;padding:12px 0 12px 16px;display:grid}.gestes-actions .pollen-action-photo-text strong{color:var(--brand);text-shadow:none;font-size:24px}.gestes-actions .pollen-action-photo-text small{color:var(--text-secondary);opacity:1;text-shadow:none;font-size:16px}.gestes-actions .gestes-courses .pollen-action-photo-image{object-position:50% 45%}@media (width<=370px){.gestes-actions .pollen-action-photo-image{flex-basis:88px;width:88px}.gestes-actions .pollen-action-photo-text{padding-left:12px}.gestes-actions .pollen-action-photo-text strong{font-size:21px}.gestes-actions .pollen-action-photo:after{padding-right:10px}}@media (width>=1024px){.pollen-main-actions.gestes-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gestes-actions .pollen-action-photo{min-height:150px}.gestes-actions .pollen-action-photo-image{flex-basis:36%;width:36%;height:150px}.gestes-actions .pollen-action-photo-text strong{font-size:clamp(22px,2.05vw,28px)}}@media (width<=1023px){.pollen-action-range .pollen-action-photo-image,.pollen-action-use .pollen-action-photo-image,.pollen-action-envie .pollen-action-photo-image{object-position:50% 0%}.pollen-action-envie.pollen-action-photo{min-height:330px}}@media (width>=1024px){.pollen-action-range .pollen-action-photo-image,.pollen-action-use .pollen-action-photo-image,.pollen-action-envie .pollen-action-photo-image{object-position:50% 0%}}.stock-families{grid-template-columns:repeat(10,minmax(0,1fr));gap:10px;margin:4px 0 16px;display:grid}.stock-family{min-width:0;color:var(--brand);font:inherit;cursor:pointer;background:0 0;border:0;justify-items:center;gap:6px;padding:0;display:grid}.stock-family-photo{aspect-ratio:4/3;border:2px solid var(--line);background:#fff;border-radius:14px;width:100%;position:relative;overflow:hidden}.stock-family-photo img{object-fit:contain;width:100%;height:100%;display:block}.stock-family-count{background:var(--brand);min-width:26px;height:26px;color:var(--papier);border-radius:999px;place-items:center;padding:0 7px;font-size:14px;font-weight:800;display:grid;position:absolute;bottom:4px;right:4px}.stock-family-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:800;overflow:hidden}.stock-family.active .stock-family-photo{border:3px solid var(--brand);box-shadow:0 0 0 3px var(--surface-muted)}.stock-family:disabled{cursor:default;opacity:.45}.stock-family:disabled img{filter:grayscale()}@media (width<=1023px){.stock-families{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px 6px}.stock-family-photo{aspect-ratio:1;border-radius:12px}.stock-family-count{min-width:22px;height:22px;padding:0 5px;font-size:13px;bottom:3px;right:3px}.stock-family-label{font-size:13px}.stock-family-label.long{letter-spacing:-.02em;font-size:12px}.stock-family{overflow:visible}.stock-family-label.long{text-overflow:clip;letter-spacing:-.03em;max-width:none;overflow:visible}}.shopping-products .stock-families{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;gap:10px;margin:8px 0 12px;padding:2px 2px 8px;display:flex;overflow-x:auto}.shopping-products .stock-family{scroll-snap-align:start;flex:0 0 82px}.shopping-products .stock-family-photo{aspect-ratio:1}.shopping-products .stock-family-label,.shopping-products .stock-family-label.long{text-overflow:clip;letter-spacing:0;max-width:none;font-size:13px;overflow:visible}.shopping-page>*,.shopping-products{min-width:0;max-width:100%}.shopping-products .stock-families{width:100%;min-width:0}.mobile-app-back{border:1px solid var(--border);background:var(--surface-muted);color:var(--brand);display:none}@media (width<=1023px){.mobile-app-header{z-index:90;background:var(--papier);color:var(--brand);border-bottom:1px solid var(--border);position:sticky;top:0}.mobile-app-header.has-back{gap:10px;padding-left:12px}.mobile-app-back{border:1px solid var(--border);background:var(--surface-muted);min-height:52px;color:var(--brand);font:inherit;cursor:pointer;border-radius:16px;flex:none;align-items:center;gap:6px;padding:0 16px 0 10px;font-size:17px;font-weight:800;display:inline-flex}.mobile-app-header.has-back .mobile-app-brand small{display:none}.mobile-app-header.has-back .mobile-app-brand{flex:auto;min-width:0}.stock-use-back,.detail-page>.detail-back{display:none}.recipe-dialog:not(.detail-page):not(.embedded-form){flex-direction:column;display:flex}.recipe-dialog:not(.detail-page):not(.embedded-form)>.dialog-actions{z-index:5;background:var(--paper,var(--papier));border-bottom:1px solid var(--line);box-shadow:0 6px 14px rgb(var(--brand-rgb) / 10%);flex-wrap:nowrap;order:-1;margin:-28px -20px 14px;padding:10px 64px 10px 12px;position:sticky;top:-28px}.recipe-dialog:not(.detail-page):not(.embedded-form)>.dialog-actions>*{flex:1 1 0;width:auto;min-width:0;min-height:50px}.recipe-dialog:not(.detail-page):not(.embedded-form)>.dialog-close{z-index:6;order:-2;align-self:flex-end;margin:-18px -10px -52px 0;position:sticky;top:-18px}.embedded-form>.dialog-actions,.recipe-editor>.recipe-editor-actions{top:calc(70px + env(safe-area-inset-top));z-index:5;background:var(--lin);border-bottom:1px solid var(--line);flex-wrap:nowrap;margin:0 -4px 14px;padding:10px 4px;position:sticky}.embedded-form>.dialog-actions>*,.recipe-editor>.recipe-editor-actions>*{flex:1 1 0;width:auto;min-width:0;min-height:50px}.embedded-form,.recipe-editor{flex-direction:column;display:flex}.embedded-form>.dialog-actions,.recipe-editor>.recipe-editor-actions{order:-1}.recipe-dialog:not(.detail-page):not(.embedded-form)>.dialog-actions{margin-bottom:26px;padding-right:94px}.embedded-form,.embedded-editor,.detail-page,.recipe-editor{max-height:none!important;overflow:visible!important}}.label-short{display:none}@media (width<=1023px){.label-long{display:none}.label-short{display:inline}.embedded-form>.dialog-actions>*,.recipe-dialog:not(.detail-page):not(.embedded-form)>.dialog-actions>*,.recipe-editor>.recipe-editor-actions>*{padding-inline:8px;font-size:15px;line-height:1.15}}.desktop-back-bar{z-index:90;background:var(--lin);border-bottom:1px solid var(--line);margin:0 0 8px;padding:10px 32px;position:sticky;top:0}.desktop-back{border:1.5px solid var(--line);background:var(--papier);min-height:48px;color:var(--brand);font:inherit;cursor:pointer;border-radius:14px;align-items:center;gap:8px;padding:0 18px 0 12px;font-size:16px;font-weight:800;display:inline-flex}.desktop-back:hover{border-color:var(--brand)}@media (width<=1023px){.desktop-back-bar{display:none}}@media (width>=1024px){.stock-use-back,.detail-page>.detail-back{display:none}.recipe-dialog:not(.detail-page):not(.embedded-form){flex-direction:column;display:flex}.recipe-dialog:not(.detail-page):not(.embedded-form)>.dialog-actions{z-index:5;background:var(--papier);border-bottom:1px solid var(--line);box-shadow:0 6px 14px rgb(var(--brand-rgb) / 10%);order:-1;margin:-34px -34px 24px;padding:14px 96px 14px 34px;position:sticky;top:-34px}.recipe-dialog:not(.detail-page):not(.embedded-form)>.dialog-close{z-index:6;order:-2;align-self:flex-end;margin:-22px -16px -50px 0;position:sticky;top:-22px}.embedded-form,.embedded-editor,.detail-page,.recipe-editor{max-height:none!important;overflow:visible!important}.embedded-form,.recipe-editor{flex-direction:column;display:flex}.embedded-form>.dialog-actions,.recipe-editor>.recipe-editor-actions{z-index:5;background:var(--lin);border-bottom:1px solid var(--line);order:-1;margin:0 0 18px;padding:12px 0;position:sticky;top:69px}}.ingredient-product{border:1px solid var(--line);background:var(--papier);color:var(--brand);border-radius:12px;grid-column:1/-1;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:8px 12px;margin-top:2px;padding:10px;display:grid}.ingredient-product.pending,.ingredient-product.added{align-items:center;gap:6px;margin:2px 0 0;padding:8px 10px;font-size:15px;display:flex}.ingredient-product.added{background:var(--surface-muted);font-weight:700}.stock-correlation-line .ingredient-product.added strong{font-size:15px;display:inline}.ingredient-product-photo,.ingredient-product-photo.zoomable-image{border:1px solid var(--line);object-fit:contain;background:#fff;border-radius:10px;width:76px;height:76px;overflow:hidden}.ingredient-product-photo.empty{color:var(--text-secondary);place-items:center;display:grid}.ingredient-product-photo img{object-fit:contain}.stock-correlation-line .ingredient-product-text strong{overflow-wrap:anywhere;font-size:16px;line-height:1.25}.stock-correlation-line .ingredient-product-text small{margin-top:3px;font-size:14px}.ingredient-product-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;display:flex}.ingredient-product-actions .primary-button{flex:180px;justify-content:center;min-height:48px;font-size:16px}.ingredient-product-actions .text-button{min-height:48px;font-size:15px}.shopping-line-photo{border:1px solid var(--line);background:#fff;border-radius:9px;flex-shrink:0;width:52px;height:52px;overflow:hidden}.shopping-line-photo img{object-fit:contain}.access-gate{background:var(--lin);min-height:100dvh;color:var(--brand);place-items:center;padding:24px 16px;display:grid}.access-gate-card{background:var(--papier);border:1px solid var(--line);width:min(100%,520px);box-shadow:0 12px 40px rgb(var(--brand-rgb) / 10%);text-align:center;border-radius:22px;justify-items:stretch;gap:14px;padding:28px 22px;display:grid}.access-gate-logo{justify-self:center;width:72px;height:72px}.access-gate-icon{color:var(--brand);justify-self:center}.access-gate h1{font-family:var(--font-display);margin:0;font-size:34px}.access-gate h2{margin:6px 0 0;font-size:22px}.access-gate p{margin:0;font-size:17px;line-height:1.45}.access-gate-lead{color:var(--text-secondary)}.access-gate-warning{background:var(--state-soon-soft);color:var(--state-soon-ink);border-radius:12px;padding:10px 12px;font-weight:700}.access-gate-main{justify-content:center;min-height:56px;font-size:19px}.access-gate .text-button{justify-content:center;min-height:48px;font-size:16px}.access-gate-input{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:52px;padding:0 14px;font-family:ui-monospace,monospace;font-size:16px}.access-gate-small{color:var(--text-secondary);font-size:14px!important}.access-panel .access-create{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:10px;margin:12px 0;display:grid}.access-panel label{gap:5px;font-size:15px;font-weight:700;display:grid}.access-panel input,.access-panel select{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:48px;padding:0 12px;font-size:16px}.access-panel .access-create .primary-button,.access-created .primary-button{justify-content:center;min-height:48px}.access-created{background:var(--surface-muted);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;display:flex}.access-created code{overflow-wrap:anywhere;flex:100%;font-size:14px}.access-message{overflow-wrap:anywhere;font-weight:700}.access-list,.access-households{gap:10px;margin:0;padding:0;list-style:none;display:grid}.access-list>li{border:1px solid var(--line);background:var(--papier);border-radius:14px;gap:10px;padding:12px;display:grid}.access-invitation-head,.access-households li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.access-invitation-head>span:first-child,.access-households li>span{gap:3px;min-width:0;display:grid}.access-invitation-head strong{align-items:center;gap:6px;font-size:17px;display:inline-flex}.access-list small{color:var(--text-secondary);font-size:14px}.access-actions{flex-wrap:wrap;gap:6px;display:flex}.access-actions button,.access-households button{min-height:44px}.access-households li{background:var(--surface-muted);border-radius:10px;padding:8px 10px}.access-households li.revoked{opacity:.7}.danger-button{border:1px solid var(--state-urgent);color:var(--state-urgent);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-weight:800;display:inline-flex}.danger-button:disabled{opacity:.5;cursor:default}.stock-line.cards .stock-line-photo.is-illustration{object-fit:contain}.dialog-actions:has(>.dialog-actions-error){flex-wrap:wrap!important}.dialog-actions>.dialog-actions-error,.embedded-form>.dialog-actions>.dialog-actions-error{order:10;width:100%;margin:0;font-size:15px;flex:100%!important}img.is-illustration,.zoomable-image.is-illustration{outline:2px dashed rgb(var(--brand-rgb) / 35%);outline-offset:-2px}.stock-search{border:2px solid var(--brand);width:100%;min-height:62px;color:var(--brand);box-shadow:0 4px 14px rgb(var(--brand-rgb) / 8%);background:#fff;border-radius:16px;align-items:center;gap:12px;margin:4px 0 12px;padding:0 18px;display:flex}.stock-search input{min-width:0;min-height:58px;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:20px;font-weight:600}.stock-search:focus-within{box-shadow:0 0 0 4px rgb(var(--brand-rgb) / 18%)}.stock-toolbar{grid-template-columns:minmax(300px,1.4fr) minmax(170px,.65fr) auto auto}@media (width<=1500px){.stock-toolbar{flex-wrap:wrap;display:flex}.stock-toolbar>*{flex:auto}}.stock-maintenance{margin-top:24px}.product-quick-delete{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.product-quick-delete .danger-button{min-height:48px;font-size:16px}.product-quick-delete p{color:var(--state-urgent-ink);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:700;display:flex}.product-quick-delete p>span{flex:100%}.danger-button.solid{background:var(--state-urgent);color:#fff}.stock-use-section-title{margin:14px 0 8px;font-size:18px}.stock-use-tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.stock-use-tile{border:1px solid var(--line);min-width:0;color:var(--forest);text-align:left;cursor:pointer;background:#fff;border-radius:16px;gap:6px;padding:8px;display:grid}.stock-use-tile:hover,.stock-use-tile:focus-visible{border-color:var(--forest);background:var(--olive-soft)}.stock-use-tile-photo{aspect-ratio:4/3;object-fit:contain;background:#fff;border-radius:12px;place-items:center;width:100%;height:auto;font-size:34px;font-weight:800;display:grid}.stock-use-tile strong{overflow-wrap:anywhere;font-size:17px;line-height:1.2}.stock-use-tile small{color:var(--text-secondary);font-size:14px}.stock-use-search{margin-top:0}.stock-use-panel .stock-families{margin-bottom:10px}@media (width<=700px){.stock-use-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.stock-use-scan{justify-content:center;width:100%;min-height:64px;margin-bottom:6px;font-size:19px}.catalog-results{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.catalog-results li{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;display:grid}.catalog-results li.picked{border-color:var(--brand);background:var(--surface-muted)}.catalog-results-photo,.catalog-results-photo.zoomable-image{border:1px solid var(--line);background:#fff;border-radius:10px;width:64px;height:64px;overflow:hidden}.catalog-results-photo img{object-fit:contain}.catalog-results-text{gap:3px;min-width:0;display:grid}.catalog-results-text strong{overflow-wrap:anywhere;font-size:16px;line-height:1.25}.catalog-results-text small{color:var(--text-secondary);font-size:14px}.catalog-results li>button{min-height:48px}.catalog-results-action{white-space:nowrap}.catalog-results .catalog-result-details{color:inherit;text-align:left;white-space:normal;background:0 0;border:0;padding:0}.catalog-results-pending{color:var(--text-secondary);margin:8px 0 0;font-size:15px}.ingredient-product-choose{grid-column:1/-1;gap:8px;display:grid}.ingredient-product-choose input{border:1px solid var(--line);border-radius:10px;min-height:48px;padding:0 12px;font-size:16px}.ingredient-product-mine{color:var(--brand);align-items:center;gap:4px;font-size:14px;font-weight:800;display:inline-flex}@media (width<=520px){.catalog-results li{grid-template-columns:56px minmax(0,1fr)}.catalog-results-action{grid-column:1/-1}}.catalog-browser{z-index:2000;background:var(--lin);color:var(--brand);flex-direction:column;display:flex;position:fixed;inset:0}.catalog-browser-header{padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:var(--brand);color:#fff;align-items:center;gap:12px;display:flex}.catalog-browser-header h2{color:#fff;overflow-wrap:anywhere;margin:0;font-size:20px}.catalog-browser-back{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff59;border-radius:14px;align-items:center;gap:6px;min-height:52px;padding:0 16px;font-size:17px;font-weight:800;display:inline-flex}.catalog-browser-body{padding:14px 44px calc(24px + env(safe-area-inset-bottom)) 16px;flex:1;overflow-y:auto}.catalog-browser-tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.catalog-browser-tile{border:1px solid var(--line);color:var(--brand);text-align:left;cursor:pointer;background:#fff;border-radius:16px;gap:6px;padding:8px;display:grid}.catalog-browser-tile img,.catalog-browser-tile .catalog-browser-noimg{aspect-ratio:4/3;object-fit:cover;background:var(--surface-muted);border-radius:12px;width:100%}.catalog-browser-tile strong{font-size:17px}.catalog-browser-tile small{color:var(--text-secondary);font-size:14px}.catalog-browser-products{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:10px;display:grid}.catalog-browser-product{border:1px solid var(--line);color:var(--brand);text-align:left;cursor:pointer;background:#fff;border-radius:16px;align-content:start;gap:4px;padding:8px;scroll-margin-top:8px;display:grid}.catalog-browser-product.picked{border:2px solid var(--brand);background:var(--surface-muted)}.catalog-browser-product img,.catalog-browser-product .catalog-browser-noimg{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:10px;width:100%}.catalog-browser-product strong{overflow-wrap:anywhere;font-size:15px;line-height:1.25}.catalog-browser-product small{color:var(--text-secondary);font-size:13px}.catalog-browser-action{background:var(--brand);color:#fff;border-radius:10px;justify-content:center;align-items:center;gap:4px;min-height:40px;margin-top:4px;font-size:15px;font-weight:800;display:inline-flex}.catalog-browser-product.picked .catalog-browser-action{color:var(--brand);border:1px solid var(--brand);background:0 0}.catalog-browser-rayon{min-height:48px;margin:0 8px 6px 0}.catalog-browser-empty{color:var(--text-secondary);font-size:16px}.catalog-browser-letters{right:2px;top:calc(80px + env(safe-area-inset-top));bottom:calc(10px + env(safe-area-inset-bottom));background:rgb(var(--brand-rgb) / 8%);touch-action:none;-webkit-user-select:none;user-select:none;z-index:2001;border-radius:18px;flex-direction:column;justify-content:space-between;align-items:center;width:36px;padding:4px 0;display:flex;position:fixed}.catalog-browser-letters span{width:100%;color:var(--brand);cursor:pointer;flex:1;place-items:center;font-size:13px;font-weight:900;display:grid}.catalog-browser-letters span.absent{color:rgb(var(--brand-rgb) / 25%)}.catalog-browser-bubble{background:var(--brand);color:#fff;z-index:2002;pointer-events:none;border-radius:24px;place-items:center;width:96px;height:96px;font-size:54px;font-weight:900;display:grid;position:fixed;top:45%;left:50%;transform:translate(-50%,-50%)}.shopping-catalog-open{justify-content:center;width:100%;min-height:60px;margin:4px 0 12px;font-size:18px}@media (width<=520px){.catalog-browser-products,.catalog-browser-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.ingredient-linker-body{align-content:start;gap:18px;padding-right:16px;display:grid}.ingredient-linker-help{color:var(--text-secondary);margin:0;font-size:16px}.ingredient-linker-section{gap:10px;display:grid}.ingredient-linker-section h3{margin:0;font-size:19px}.ingredient-linker-tile:disabled{cursor:default;opacity:.75}.ingredient-linker-tile.linked{border:2px solid var(--brand);background:var(--surface-muted)}.ingredient-linker-tile small{align-items:center;gap:4px;display:inline-flex}.ingredient-linker-wide{justify-content:center;width:100%;min-height:56px;font-size:17px}.recipe-prepared-from{color:var(--brand);margin-top:4px;font-weight:700;display:block}.catalog-browser-search{flex:none;min-height:56px;margin:10px 16px 0;font-size:18px}.catalog-browser-search input{font-size:18px}.catalog-browser-clear{min-width:44px;min-height:44px;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.catalog-browser-open{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-content:start;gap:4px;padding:0;display:grid}.catalog-browser-product .catalog-browser-action{cursor:pointer;font:inherit;border:0;font-weight:800}.catalog-product-sheet{z-index:2100}.catalog-product-body{align-content:start;gap:14px;padding-bottom:110px;padding-right:16px;display:grid}.catalog-product-photo{border:1px solid var(--line);background:#fff;border-radius:16px;width:100%;padding:0;overflow:hidden}.catalog-product-photo img{object-fit:contain;background:#fff;width:100%;max-height:52vh;display:block}.catalog-product-thumbs{flex-wrap:wrap;gap:8px;display:flex}.catalog-product-thumbs button{border:1px solid var(--line);color:inherit;font:inherit;cursor:pointer;background:#fff;border-radius:12px;gap:4px;padding:4px;font-size:12px;display:grid}.catalog-product-thumbs button.active{border:2px solid var(--brand)}.catalog-product-thumbs img{object-fit:contain;width:76px;height:76px}.catalog-product-facts{gap:2px;margin:0;display:grid}.catalog-product-facts strong{font-size:20px}.catalog-product-facts span{color:var(--text-secondary);font-size:16px}.catalog-product-section{border:1px solid var(--line);background:#fff;border-radius:14px;gap:6px;padding:12px;display:grid}.catalog-product-section h3{margin:0;font-size:17px}.catalog-product-section p{margin:0;font-size:16px;line-height:1.4}.catalog-product-price strong{font-size:26px}.catalog-product-note{color:var(--text-secondary);font-size:13px!important}.catalog-product-scores{flex-wrap:wrap;gap:8px;display:flex}.catalog-product-scores span{background:var(--surface-muted);border-radius:999px;padding:6px 12px;font-weight:800}.nutri-score.nutri-a{color:#fff;background:#1e8f4e}.nutri-score.nutri-b{color:#fff;background:#85bb2f}.nutri-score.nutri-c{color:#222;background:#fecb02}.nutri-score.nutri-d{color:#fff;background:#ee8100}.nutri-score.nutri-e{color:#fff;background:#e63e11}.catalog-product-nutrition{gap:4px;margin:0;display:grid}.catalog-product-nutrition div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:4px 0;font-size:15px;display:flex}.catalog-product-nutrition dt{margin:0}.catalog-product-nutrition dd{margin:0;font-weight:700}.catalog-product-actions{padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--lin);border-top:1px solid var(--line);position:absolute;bottom:0;left:0;right:0}.catalog-product-actions button{justify-content:center;width:100%;min-height:58px;font-size:18px}.zoomable-image.catalog-product-photo{width:100%;height:calc(min(36vh,300px) + 16px);padding:8px;display:block}.zoomable-image.catalog-product-photo img{object-fit:contain;border-radius:12px;width:100%;height:min(36vh,300px);max-height:none}.settings-note{color:var(--text-secondary);margin-top:6px;font-size:14px;display:block}.movement-panel>.secondary-button{min-height:48px;margin-top:12px}.dessert-access{border:2px solid var(--border);background:var(--papier);border-radius:20px;margin:0 0 18px;padding:14px}.dessert-access h2{font-family:var(--font-display);color:var(--brand);align-items:center;gap:8px;margin:0 0 10px;font-size:21px;display:flex}.dessert-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.dessert-choice{border:2px solid var(--line);background:var(--beurre-soft);min-height:84px;color:var(--brand);font:inherit;text-align:left;cursor:pointer;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;display:flex}.dessert-choice>span{gap:3px;min-width:0;display:grid}.dessert-choice strong{font-size:19px;font-weight:800}.dessert-choice small{color:var(--text-secondary);font-size:14px;line-height:1.3}.dessert-choice.active{border-color:var(--brand);background:var(--brand);color:var(--papier)}.dessert-choice.active small{color:#ffffffe0}@media (width<=599px){.dessert-choices{grid-template-columns:1fr}}.ready-dessert-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.ready-dessert-list li{border:1px solid var(--line);background:var(--papier);border-radius:16px;align-items:center;gap:10px;padding:8px;display:flex}.ready-dessert-main{min-width:0;min-height:64px;color:var(--brand);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:12px;padding:4px;display:flex}.ready-dessert-main>span{gap:2px;min-width:0;display:grid}.ready-dessert-main strong{overflow-wrap:anywhere;font-size:17px}.ready-dessert-main small{color:var(--text-secondary);font-size:15px}.ready-dessert-thumb{background:var(--beurre-soft);width:56px;height:56px;color:var(--brand);object-fit:cover;border-radius:12px;flex:none;place-items:center;display:grid;overflow:hidden}.ready-dessert-use{flex:none;align-items:center;gap:6px;min-height:56px;font-size:16px;display:inline-flex}.ready-dessert-empty{text-align:center;border:2px dashed var(--line);color:var(--brand);border-radius:20px;justify-items:center;gap:8px;padding:26px 18px;display:grid}.ready-dessert-empty h3{margin:0;font-size:20px}.ready-dessert-empty p{max-width:42ch;color:var(--text-secondary);margin:0;font-size:16px}.ready-dessert-empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:6px;display:flex}.ready-dessert-empty-actions button{align-items:center;gap:8px;min-height:56px;font-size:17px;display:inline-flex}@media (width<=599px){.ready-dessert-list li{flex-wrap:wrap}.ready-dessert-use{justify-content:center;width:100%}}.appearance-panel>p{margin:6px 0 14px}.appearance-group{border:0;gap:10px;margin:0 0 16px;padding:0;display:grid}.appearance-group legend{color:var(--brand);margin-bottom:8px;padding:0;font-size:15px;font-weight:800}.appearance-choice{border:1.5px solid var(--line);background:var(--papier);width:100%;min-height:72px;color:var(--brand);font:inherit;text-align:left;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;display:flex}.appearance-choice.active{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.appearance-choice>span:nth-child(2){flex:auto;gap:3px;min-width:0;display:grid}.appearance-choice strong{font-size:17px}.appearance-choice small{color:var(--text-secondary);font-size:14px;line-height:1.35}.appearance-check{border:2px solid var(--line);border-radius:999px;flex:none;place-items:center;width:30px;height:30px;display:grid}.appearance-choice.active .appearance-check{border-color:var(--brand);background:var(--brand);color:#fff}.appearance-swatches{flex:none;gap:4px;display:flex}.appearance-swatches i{border:1px solid #0000002e;border-radius:999px;width:22px;height:22px}:root[data-couleurs=ardoise]{--brand:#243746;--brand-hover:#182936;--brand-rgb:36 55 70;--surface-muted:#e8edf1;--border:#d5dce2;--text-secondary:#61707d;--action:#243746;--action-hover:#182936;--action-soft:#e8edf1;--lin:#f5f4ed;--papier:#fffef9;--separator:#e2e6ea;--beurre:#d9f26b;--beurre-soft:#f0f7c8;--olive:#617487;--olive-ink:#40576a;--sauge:#c7d1d9;--apricot:#f4dfcd;--on-dark-muted:#c7d1d9;background:#f5f4ed}.live-dashboard{gap:16px;display:grid}.live-tonight{background:var(--brand);color:#fff;box-shadow:var(--shadow);border-radius:22px;gap:12px;padding:18px;display:grid}.live-tonight-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.live-kicker{letter-spacing:.02em;color:var(--on-dark-muted);font-size:15px;font-weight:800}.live-tonight-meta{color:var(--on-dark-muted);align-items:center;gap:6px;font-size:16px;font-weight:700;display:inline-flex}.live-tonight h1{font-family:var(--font-display);letter-spacing:-.02em;color:#fff;margin:0;font-size:27px;line-height:1.15}.live-tonight-missing{color:var(--on-dark-muted);margin:0;font-size:16px}.live-pills{flex-wrap:wrap;gap:8px;display:flex}.live-pill{color:#fff;min-height:48px;font:inherit;background:#ffffff1a;border:1px solid #ffffff47;border-radius:14px;align-items:center;gap:8px;padding:8px 14px;font-size:17px;font-weight:750;display:inline-flex}.live-pill>span{background:#f2b33d;border-radius:999px;width:12px;height:12px}.live-pill.urgent>span{background:#ff6b5a}.live-tonight-actions{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:10px;display:grid}.live-tonight-actions>:only-child{grid-column:1/-1}.live-cook{justify-content:center;min-height:62px;font-size:18px}.live-other{color:#fff;min-height:62px;font:inherit;background:#ffffff14;border:1px solid #ffffff57;border-radius:16px;justify-content:center;align-items:center;gap:8px;font-size:17px;font-weight:800;display:inline-flex}.live-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.live-tile{border:1.5px solid var(--line);background:var(--papier);min-width:0;color:var(--brand);font:inherit;text-align:left;border-radius:20px;align-content:start;gap:10px;padding:0 0 12px;display:grid;overflow:hidden}.live-tile img,.live-tile-photo-fallback{aspect-ratio:16/9;object-fit:cover;background:var(--surface-muted);place-items:center;width:100%;display:grid}.live-tile-text{gap:4px;padding:0 12px;display:grid}.live-tile strong{font-family:var(--font-display);letter-spacing:-.01em;font-size:21px}.live-tile small{color:var(--text-secondary);font-size:15px;line-height:1.3}.live-tile.highlight{border-color:var(--action);background:var(--action-soft)}.live-tile.highlight small{color:var(--brand);font-weight:750}.live-access{gap:10px;display:grid}.live-access button{border:1.5px solid var(--line);background:var(--papier);min-height:76px;color:var(--brand);font:inherit;text-align:left;border-radius:18px;align-items:center;gap:14px;padding:12px 16px;display:flex}.live-access button>span{flex:auto;gap:2px;min-width:0;display:grid}.live-access strong{font-size:19px}.live-access small{color:var(--text-secondary);font-size:15px}@media (width>=600px){.live-access{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.live-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}.live-tonight h1{font-size:32px}}@media (width<=1023px){:root[data-accueil=vivant] .app-shell[data-view=dashboard]{padding-bottom:calc(20px + env(safe-area-inset-bottom))}:root[data-accueil=vivant] .app-shell[data-view=dashboard] .mobile-nav{display:none}}@media (width<=370px){.live-tonight-actions{grid-template-columns:1fr}.live-tonight h1{font-size:24px}}:root[data-accueil=vivant] .stock-correlation-line{min-height:60px}:root[data-accueil=vivant] .stock-correlation-line strong{font-size:17px}:root[data-accueil=vivant] .stock-correlation-line small{font-size:14px}:root[data-accueil=vivant] .stock-correlation-line em{font-size:13px}.stock-correlation-open{min-width:0;min-height:48px;color:inherit;font:inherit;text-align:left;text-decoration:underline;-webkit-text-decoration-color:rgb(var(--brand-rgb) / 30%);text-decoration-color:rgb(var(--brand-rgb) / 30%);text-underline-offset:4px;background:0 0;border:0;padding:4px 0;display:block}.live-pill small{color:var(--on-dark-muted);font-size:14px;font-weight:650}:root[data-couleurs=ardoise] .live-tonight .live-cook{background:var(--beurre);color:var(--brand)}@media (width<=700px){:root[data-accueil=vivant] .stock-correlation-line{grid-template-columns:25px minmax(0,1fr) auto;row-gap:4px}:root[data-accueil=vivant] .stock-correlation-line>em{grid-area:2/2}:root[data-accueil=vivant] .stock-correlation-line>.stock-link-toggle{grid-area:1/3/span 2;align-self:center}:root[data-accueil=vivant] .stock-correlation-line>:nth-child(n+5){grid-column:1/-1}}.recipe-card-visual.has-photo{isolation:isolate;min-height:180px;overflow:hidden}.recipe-card-visual.has-photo:before,.recipe-photo-frame .recipe-photo:before,.live-tonight-photo-frame:before{content:"";z-index:-2;background:var(--recipe-photo) center / cover no-repeat;filter:blur(20px)saturate(1.1);position:absolute;inset:-30px}.recipe-card-visual.has-photo:after{content:"";z-index:-1;background:linear-gradient(180deg, #0000 55%, #00000038), var(--recipe-photo) center / contain no-repeat;position:absolute;inset:0}.recipe-photo{background:var(--surface-muted);border:0;border-radius:18px;width:100%;margin:12px 0 4px;padding:0;display:block;overflow:hidden}.recipe-photo img{aspect-ratio:16/9;object-fit:contain;width:100%;max-height:340px;display:block}.recipe-photo-frame .recipe-photo{isolation:isolate;position:relative}.live-tonight-photo{aspect-ratio:16/9;object-fit:contain;border-radius:22px 22px 0 0;width:calc(100% + 36px);max-width:none;max-height:210px;margin:-18px -18px 0}.recipe-card-visual.has-photo{position:relative}.recipe-photo-badge{color:#fff;pointer-events:none;background:#0000009e;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:750;position:absolute;bottom:10px;left:10px}.recipe-card-visual .recipe-photo-badge{bottom:12px;left:12px}.recipe-photo-frame,.live-tonight-photo-frame{position:relative}.live-tonight-photo-frame{isolation:isolate;border-radius:22px 22px 0 0;margin:-18px -18px 0;overflow:hidden}.live-tonight-photo-frame .live-tonight-photo{width:100%;margin:0}.recipe-card-visual>.recipe-photo-badge{color:#fff;background:#0000009e;border-radius:999px;padding:5px 11px;font-size:14px;font-weight:750;position:absolute;bottom:12px;left:12px}@media screen{:root,:root[data-couleurs]{--kesta-background:#fbf8f0;--kesta-paper:#fffdf8;--kesta-surface:#f3f2e9;--kesta-ink:#284c38;--kesta-ink-hover:#1d3b2a;--kesta-ink-rgb:40 76 56;--kesta-muted:#637065;--kesta-border:#d8dfd2;--kesta-selected:#e9efe3;--kesta-courses:#edc269;--kesta-range:#d98566;--kesta-stock:#b5c9a2;--kesta-envie:#e3b0a8;--kesta-use:#a9c7b7;--kesta-courses-soft:#faf0d7;--kesta-range-soft:#f8e8df;--kesta-stock-soft:#edf2e6;--kesta-envie-soft:#f8eae6;--kesta-use-soft:#e9f1eb;--kesta-radius-card:22px;--kesta-radius-control:14px;--kesta-radius-pill:999px;--kesta-font:"DM Sans Variable", "DM Sans", system-ui, sans-serif;--kesta-view-accent:var(--kesta-stock);--kesta-view-soft:var(--kesta-selected);--font-body:var(--kesta-font);--font-text:var(--kesta-font);--font-display:var(--kesta-font);--brand:var(--kesta-ink);--brand-hover:var(--kesta-ink-hover);--brand-rgb:var(--kesta-ink-rgb);--forest:var(--kesta-ink);--forest-hover:var(--kesta-ink-hover);--forest-2:var(--kesta-ink-hover);--ink:var(--kesta-ink);--lin:var(--kesta-background);--cream:var(--kesta-background);--papier:var(--kesta-paper);--paper:var(--kesta-paper);--surface-muted:var(--kesta-surface);--lin-2:var(--kesta-surface);--surface-strong:var(--kesta-ink);--border:var(--kesta-border);--line:var(--kesta-border);--separator:var(--kesta-border);--text-secondary:var(--kesta-muted);--muted:var(--kesta-muted);--ardoise:var(--kesta-muted);--action:var(--kesta-ink);--action-hover:var(--kesta-ink-hover);--action-soft:var(--kesta-selected);--paprika:var(--state-urgent);--paprika-hover:var(--state-urgent-ink);--paprika-soft:var(--state-urgent-soft);--olive-soft:var(--kesta-selected);--beurre-soft:var(--kesta-surface);--card-1a:var(--kesta-surface);--card-1b:var(--kesta-surface);--card-2a:var(--kesta-surface);--card-2b:var(--kesta-surface);--card-3a:var(--kesta-surface);--card-3b:var(--kesta-surface)}:root[data-couleurs=ardoise]{--kesta-background:#f5f4ed;--kesta-paper:#fffefa;--kesta-surface:#eceee9;--kesta-ink:#243746;--kesta-ink-hover:#172a36;--kesta-ink-rgb:36 55 70;--kesta-muted:#5d6c73;--kesta-border:#d5dcdb;--kesta-selected:#e8eee7}:root[data-couleurs=vitamine]{--kesta-background:#fffcf5;--kesta-paper:#fff;--kesta-surface:#f5f3ec;--kesta-border:#deded3;--kesta-selected:#f2e7de;--kesta-courses:#ff4842;--kesta-range:#ff9700;--kesta-stock:#995a2d;--kesta-envie:#f0c300;--kesta-use:#00bf78;--kesta-courses-soft:#fff0ed;--kesta-range-soft:#fff1de;--kesta-stock-soft:#f2e7de;--kesta-envie-soft:#fff8d5;--kesta-use-soft:#e3f7ed}@media (width<=599px){.appearance-palette-choice{grid-template-columns:30px minmax(0,1fr);align-items:start;display:grid}.appearance-palette-choice .appearance-swatches{grid-column:2;justify-self:start}}.app-shell[data-view=shopping]{--kesta-view-accent:var(--kesta-courses);--kesta-view-soft:var(--kesta-courses-soft)}.app-shell[data-view=acquisition]{--kesta-view-accent:var(--kesta-range);--kesta-view-soft:var(--kesta-range-soft)}.app-shell[data-view=inventory]{--kesta-view-accent:var(--kesta-stock);--kesta-view-soft:var(--kesta-stock-soft)}.app-shell[data-view=recipes],.app-shell[data-view=suggestions],.app-shell[data-view=recipeDetail],.app-shell[data-view=mealDetail]{--kesta-view-accent:var(--kesta-envie);--kesta-view-soft:var(--kesta-envie-soft)}.app-shell[data-view=useStock]{--kesta-view-accent:var(--kesta-use);--kesta-view-soft:var(--kesta-use-soft)}body{font-family:var(--kesta-font);color:var(--kesta-ink);background:var(--kesta-background)}.app-shell .page:not(.camembert-dashboard){max-width:1280px;padding:40px 42px 52px}.page .page-header{gap:20px;margin-bottom:28px}.page-header h1,.stock-use-heading h1,.detail-page>h1,.acquisition-heading h1{color:var(--kesta-ink);font-family:var(--kesta-font);letter-spacing:-.045em;font-size:clamp(32px,3.3vw,46px);font-weight:800;line-height:1.12}.app-shell h2,.dialog-backdrop h2,.catalog-browser h2{font-family:var(--kesta-font);letter-spacing:-.025em;font-weight:750}.app-shell h3,.dialog-backdrop h3{font-family:var(--kesta-font);letter-spacing:-.015em;font-weight:750}.page-header p,.stock-use-heading p{color:var(--kesta-muted);line-height:1.6}.page-header .eyebrow{border-radius:var(--kesta-radius-pill);background:var(--kesta-view-soft);color:var(--kesta-ink);letter-spacing:.12em;align-items:center;gap:7px;padding:5px 10px;font-size:10px;font-weight:750;display:inline-flex}.page-header .eyebrow:before{content:"";background:var(--kesta-view-accent);border-radius:50%;flex:none;width:7px;height:7px}.app-shell .sidebar,.app-shell .mobile-app-header{background:var(--kesta-paper);border-color:var(--kesta-border);color:var(--kesta-ink)}.app-shell .nav-item{border-radius:var(--kesta-radius-control);border:1px solid #0000}.app-shell .nav-item.active{background:var(--kesta-view-soft);border-color:var(--kesta-border);color:var(--kesta-ink)}.app-shell .mobile-nav{background:var(--kesta-paper);border-color:var(--kesta-border);box-shadow:0 5px 24px rgb(var(--kesta-ink-rgb) / 8%)}.app-shell .mobile-nav button.active{background:var(--kesta-view-soft);color:var(--kesta-ink)}.app-shell .mobile-app-back,.app-shell .mobile-app-settings,.app-shell .desktop-back{border-color:var(--kesta-border);background:var(--kesta-paper);color:var(--kesta-ink)}.app-shell .desktop-back-bar{background:var(--kesta-background);border-color:var(--kesta-border)}.primary-button,.forest-button{background:var(--kesta-ink);color:#fff;border-color:var(--kesta-ink);box-shadow:none;border-radius:var(--kesta-radius-control)}.primary-button:hover,.forest-button:hover{background:var(--kesta-ink-hover)}.secondary-button{color:var(--kesta-ink);border-color:var(--kesta-border);border-radius:var(--kesta-radius-control);box-shadow:none;background:0 0}.secondary-button:hover{background:var(--kesta-surface);border-color:var(--kesta-ink)}.text-button{color:var(--kesta-ink);border-radius:var(--kesta-radius-control)}.text-button:hover{background:var(--kesta-surface)}.text-button.danger-text,.icon-button.danger-text{color:var(--state-urgent)}.text-button.danger-text:hover{background:var(--state-urgent-soft)}.launcher-heading .eyebrow,.sync-consent a{color:var(--kesta-ink)}.page .location-segment,.page .inventory-display-toggle{background:var(--kesta-surface);border-color:var(--kesta-border);border-radius:var(--kesta-radius-pill)}.page .location-segment button,.page .inventory-display-toggle button{border-radius:var(--kesta-radius-pill)}.page .location-segment button.active,.page .inventory-display-toggle button.active{background:var(--kesta-ink);color:#fff}.app-shell .panel,.dialog-backdrop .panel,.page .stock-use-panel,.page .access-panel{background:var(--kesta-paper);border:1px solid var(--kesta-border);border-radius:var(--kesta-radius-card);box-shadow:none}.app-shell .stock-line,.app-shell .inventory-product-group,.app-shell .stock-use-tile,.app-shell .recipe-card,.app-shell .acquisition-card,.app-shell .ready-dessert-list>li,.app-shell .meal-row,.catalog-browser .catalog-browser-product,.catalog-browser .catalog-browser-tile,.dialog-backdrop .catalog-finder-result,.dialog-backdrop .product-association-picker li{background:var(--kesta-paper);border-color:var(--kesta-border);border-radius:var(--kesta-radius-card);box-shadow:none}.page .recipe-card h3{color:var(--kesta-ink);font-family:var(--kesta-font);min-height:0;font-weight:750}.page .recipe-card-content{padding:20px}.page .stock-use-tile:hover,.page .acquisition-card:hover{background:var(--kesta-surface);border-color:var(--kesta-ink)}.app-shell .acquisition-card strong{letter-spacing:-.025em;font-weight:750}.app-shell .acquisition-photo-entry{background:var(--kesta-range-soft);color:var(--kesta-ink)}.app-shell .acquisition-photo-entry>span:not(.acquisition-icon),.app-shell .acquisition-photo-entry small{color:var(--kesta-ink)}.app-shell .acquisition-photo-entry .acquisition-icon{background:var(--kesta-range);color:var(--kesta-ink)}.page .shopping-picker-add{background:var(--kesta-paper);border-color:var(--kesta-border);border-radius:var(--kesta-radius-control)}.page .shopping-aisle h3{color:var(--kesta-ink);letter-spacing:.08em;font-size:12px}.page .shopping-list>li{border-color:var(--kesta-border)}.page .count-badge,.page .category-tag{border-radius:var(--kesta-radius-pill)}.page .search-field,.page .stock-search,.page .shopping-form input,.page .recipe-toolbar select,.page .stock-toolbar select,.catalog-browser .search-field{background:var(--kesta-paper);border-color:var(--kesta-border);border-radius:var(--kesta-radius-control);color:var(--kesta-ink);box-shadow:none}.page input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),.page select,.page textarea,.dialog-backdrop input,.dialog-backdrop select,.dialog-backdrop textarea{font-family:var(--kesta-font)}.page .stock-search svg,.page .search-field svg{color:var(--kesta-muted)}.catalog-browser{color:var(--kesta-ink);background:var(--kesta-background)}.catalog-browser .catalog-browser-header{background:var(--kesta-paper);color:var(--kesta-ink);border-bottom:1px solid var(--kesta-border)}.catalog-browser .catalog-browser-header h2{color:var(--kesta-ink)}.catalog-browser .catalog-browser-back{border-color:var(--kesta-border);color:var(--kesta-ink);border-radius:var(--kesta-radius-pill);background:0 0}.catalog-browser .catalog-browser-open{color:var(--kesta-ink)}.catalog-browser .catalog-browser-product.picked{background:var(--kesta-selected);border-color:var(--kesta-ink)}.catalog-browser .catalog-browser-action,.catalog-browser .catalog-browser-more{border-radius:var(--kesta-radius-control)}.catalog-browser .catalog-browser-action{background:var(--kesta-ink);color:#fff}.dialog-backdrop .recipe-dialog,.dialog-backdrop .product-quick-sheet,.dialog-backdrop .recipe-import-dialog,.access-gate .access-gate-card{background:var(--kesta-paper);border-color:var(--kesta-border);border-radius:var(--kesta-radius-card)}.app-shell .alphabetical-rail,.catalog-browser .alphabetical-rail{background:var(--kesta-paper);border-color:var(--kesta-border);box-shadow:none}.sync-indicator:not(.error):not(.pending){color:var(--kesta-ink)}.sync-indicator:not(.error):not(.pending) .sync-indicator-toggle{background:var(--kesta-paper);border-color:var(--kesta-border);box-shadow:none}@media (width<=1023px){.app-shell .page:not(.camembert-dashboard){max-width:760px;padding:24px 18px 36px}.page .page-header{gap:14px;margin-bottom:22px}.page-header h1,.stock-use-heading h1,.detail-page>h1,.acquisition-heading h1{font-size:clamp(28px,7vw,36px)}.page .recipe-card-content{padding:18px}}@media (width<=370px){.app-shell .page:not(.camembert-dashboard){padding-inline:14px}.page-header h1,.stock-use-heading h1,.detail-page>h1,.acquisition-heading h1{font-size:28px}}}
