@import"https://fonts.googleapis.com/css2?family=Cabin+Sketch:wght@400;700&family=Caveat:wght@500;600&family=Lora:ital,wght@0,500;0,600;1,500&family=Nunito+Sans:opsz,wght@6..12,400;6..12,600;6..12,700&display=swap";:root{--cream: #f7efdf;--cream-deep: #eadbc3;--paper: #fffaf0;--white: #fffdf8;--ink: #25312a;--muted: #6f746b;--line: #d8cbb7;--tomato: #d65f3d;--tomato-dark: #ae4227;--mustard: #e6aa31;--leaf: #638562;--berry: #a94f70;--blue: #4e7f8c;--plum: #765371;--olive: #838143;--category: var(--tomato);--category-soft: #f5ded4;--serif: "Lora", Georgia, serif;--sans: "Nunito Sans", system-ui, sans-serif;--hand: "Caveat", cursive;--chalk: "Cabin Sketch", "Caveat", cursive;--chalkboard: #292728;--cover-orange: #ed8a19;color:var(--ink);background:var(--cream);font-family:var(--sans);font-synthesis:none;text-rendering:optimizeLegibility}[data-category=suppen]{--category: #df8b2e;--category-soft: #f8e6c8}[data-category=salate]{--category: #668b61;--category-soft: #e2eddb}[data-category=hauptspeisen]{--category: #ce6343;--category-soft: #f4ddd3}[data-category=suesses]{--category: #b95072;--category-soft: #f4dce5}[data-category=kuchen]{--category: #765371;--category-soft: #e9dfe9}[data-category=getraenke]{--category: #4f8492;--category-soft: #dcebee}[data-category=sonstiges]{--category: #858344;--category-soft: #ece9ce}*{box-sizing:border-box}html{max-width:100%;overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:106.25%}body{max-width:100%;margin:0;min-width:320px;min-height:100vh;overflow-x:clip;background:var(--cream)}#root{width:100%;min-width:0;overflow-x:clip}body:before{content:"";position:fixed;inset:0;z-index:30;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.24'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit;-webkit-tap-highlight-color:transparent}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--category, var(--tomato)) 42%,transparent);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.handwritten{font-family:var(--hand)}.site-shell{min-height:100vh;display:flex;flex-direction:column}main{flex:1}.site-header{position:sticky;top:0;z-index:20;min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:max(10px,env(safe-area-inset-top)) max(17px,env(safe-area-inset-right)) 10px max(17px,env(safe-area-inset-left));border-bottom:1px solid rgba(128,103,71,.22);background:color-mix(in srgb,var(--cream) 90%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{min-width:0;display:flex;align-items:center;gap:12px;white-space:nowrap}.brand-mark{position:relative;width:47px;height:47px;display:grid;flex:0 0 auto;place-items:center;border:2px solid var(--cover-orange);border-radius:50% 47% 52% 46%;color:var(--cover-orange);background:var(--chalkboard);box-shadow:inset 0 0 0 3px var(--chalkboard),inset 0 0 0 4px #ed8a1961,2px 3px #7c4b1629;transform:rotate(-3deg);transition:transform .2s ease,box-shadow .2s ease}.brand-mark i{position:absolute;right:-3px;bottom:-3px;width:17px;height:17px;display:grid;place-items:center;border:2px solid var(--cream);border-radius:50%;background:var(--cover-orange);color:var(--chalkboard);font:700 .5rem/1 var(--sans)}.brand:hover .brand-mark{box-shadow:inset 0 0 0 3px var(--chalkboard),inset 0 0 0 4px #ed8a1980,3px 4px #7c4b1633;transform:rotate(0) translateY(-1px)}.brand-copy{min-width:0;display:grid;gap:5px;line-height:1}.brand-name{display:flex;align-items:baseline;gap:7px;letter-spacing:-.035em}.brand-name strong{color:var(--cover-orange);font:700 1.3rem/.85 var(--chalk);letter-spacing:-.02em}.brand-name>span{color:var(--ink);font:600 1rem/1 var(--serif)}.brand-copy small{display:flex;align-items:center;gap:7px;color:var(--muted);font:800 .54rem/1 var(--sans);letter-spacing:.17em;text-transform:uppercase}.brand-copy small b{width:14px;height:1px;display:block;background:color-mix(in srgb,var(--cover-orange) 65%,transparent)}.site-header nav{display:flex;align-items:center;gap:2px}.site-header nav a,.nav-button{min-height:42px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 9px;border:0;border-radius:14px;background:transparent;font-size:.75rem;font-weight:700;cursor:pointer}.site-header nav a:hover,.site-header nav a.active,.nav-button:hover{color:var(--tomato-dark);background:#ffffff94}.nav-list-count{min-width:19px;height:19px;display:grid;place-items:center;margin-left:-2px;padding:0 4px;border-radius:99px;background:var(--tomato);color:#fff;font-size:.58rem;line-height:1}.nav-button span{display:none}footer{min-height:110px;display:flex;align-items:center;justify-content:center;gap:12px;padding:24px max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));border-top:5px solid var(--cover-orange);color:#ffffffe0;background-color:var(--chalkboard);background-image:repeating-linear-gradient(168deg,transparent 0 35px,rgba(255,255,255,.018) 36px 38px);font:700 .9rem var(--chalk);letter-spacing:.05em;text-align:center}footer .footer-dot{color:var(--cover-orange)}.footer-dot{color:var(--tomato)}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 12px;color:var(--tomato-dark);font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{content:"";width:25px;height:2px;border-radius:9px;background:currentColor}.recipe-title-block h1,.auth-card h1,.editor-heading h1,.not-found h1{margin:0;font:600 clamp(3.25rem,15vw,5.4rem)/.96 var(--serif);letter-spacing:-.06em}.catalog{position:relative;padding:24px max(17px,env(safe-area-inset-right)) 90px max(17px,env(safe-area-inset-left));border-top:1px solid var(--line);border-bottom:9px solid #d4c19f;background:var(--paper);box-shadow:inset 0 -12px 22px #4d34190d}.catalog:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle at 9px 9px,rgba(169,79,112,.09) 1.2px,transparent 1.3px);background-size:18px 18px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 190px);mask-image:linear-gradient(to bottom,black,transparent 190px)}.catalog>*{position:relative;width:100%;min-width:0;max-width:1300px;margin-left:auto;margin-right:auto}.section-title h2,.form-fields h2{margin:0;font:600 clamp(2.15rem,9vw,3.65rem)/1.06 var(--serif);letter-spacing:-.045em}.result-count{flex:0 0 auto;margin:0 0 6px;color:var(--muted);font-size:.73rem}.result-count strong{color:var(--ink)}.filters{width:100%;min-width:0;margin-bottom:34px}.filter-main{width:100%;min-width:0;display:grid;gap:10px}.search-field{min-height:56px;display:flex;align-items:center;gap:12px;padding:0 16px;border:1px solid var(--line);border-radius:17px;background:var(--white);box-shadow:0 5px 20px #4b39200a}.search-field>svg{flex:0 0 auto;color:var(--tomato)}.search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:.95rem}.search-field button{width:38px;height:38px;display:grid;flex:0 0 auto;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}.random-button{min-height:58px;display:flex;align-items:center;justify-content:center;gap:11px;padding:0 18px;border:0;border-radius:4px;background:var(--cover-orange);color:#282525;box-shadow:0 8px #a9570e,0 13px 25px #9455192b;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.random-button:hover{transform:translateY(-2px);box-shadow:0 10px #a9570e,0 15px 28px #94551933}.random-button:active{transform:translateY(5px);box-shadow:0 3px #a9570e}.random-button:disabled{opacity:.45;transform:none;cursor:not-allowed}.random-button span{display:grid;line-height:1.1}.random-button strong{font-size:.82rem}.random-button small{margin-top:3px;opacity:.8;font-size:.65rem}.category-filter{position:relative;display:flex;align-items:stretch;gap:10px;margin:22px -17px 0;padding:12px 17px 16px;overflow-x:auto;scroll-padding-inline:17px;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}.category-filter:before{content:"";position:absolute;left:17px;right:17px;bottom:7px;border-bottom:1px solid rgba(116,91,61,.2)}.category-filter::-webkit-scrollbar{display:none}.category-filter-label{width:42px;min-width:42px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--muted)}.category-filter-label>svg{flex:0 0 auto}.category-filter button{position:relative;min-width:126px;min-height:68px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;flex:0 0 auto;padding:10px 13px 10px 15px;scroll-snap-align:start;border:1px solid color-mix(in srgb,var(--category, var(--tomato)) 25%,var(--line));border-radius:3px;background:color-mix(in srgb,var(--category-soft, var(--white)) 40%,var(--white));color:var(--ink);box-shadow:2px 3px #e4d7c2;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.category-filter button i{position:absolute;width:4px;left:0;top:8px;bottom:8px;border-radius:0 3px 3px 0;background:var(--category, var(--tomato))}.chapter-number{color:var(--category, var(--tomato));font:600 .66rem/1 var(--serif);letter-spacing:.08em}.chapter-copy{min-width:0;display:grid;gap:4px}.chapter-copy strong{overflow:hidden;color:inherit;font:700 .78rem/1.1 var(--sans);text-overflow:ellipsis;white-space:nowrap}.chapter-copy small{color:var(--muted);font-size:.61rem;line-height:1}.category-filter button:hover{transform:translateY(-2px);box-shadow:3px 5px #dfd0b8}.category-filter button.active{border-color:var(--ink);background:var(--ink);color:#fff;box-shadow:3px 5px #cdbb9e}.category-filter button.active .chapter-number,.category-filter button.active .chapter-copy small{color:#ffffffb3}.category-filter button.active i{background:var(--cover-orange)}.results-toolbar{min-height:49px;display:flex;align-items:center;gap:10px;margin:23px 0 16px;padding-bottom:12px;border-bottom:1px solid var(--line)}.results-toolbar .result-count{margin-left:auto}.mobile-filter-button,.clear-facets-inline{min-height:40px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--ink);font-size:.72rem;font-weight:800;cursor:pointer}.mobile-filter-button{padding:0 12px}.mobile-filter-button b{min-width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:var(--tomato);color:#fff;font-size:.63rem}.clear-facets-inline{padding:0 8px;border-color:transparent;background:transparent;color:var(--muted)}.results-layout,.recipe-results{width:100%;min-width:0}.facet-sidebar{position:fixed;z-index:80;width:100%;max-height:min(84dvh,720px);left:0;right:0;bottom:0;overflow-y:auto;overscroll-behavior:contain;padding:22px max(18px,env(safe-area-inset-right)) max(20px,calc(14px + env(safe-area-inset-bottom))) max(18px,env(safe-area-inset-left));border:1px solid #cdbb9e;border-bottom:0;border-radius:20px 20px 0 0;background:var(--paper);box-shadow:0 -20px 60px #31241538;transform:translateY(105%);visibility:hidden;transition:transform .25s ease,visibility .25s}.facet-sidebar.open{transform:translateY(0);visibility:visible}.filter-backdrop{position:fixed;z-index:79;inset:0;border:0;background:#25312a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.facet-sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:16px;border-bottom:2px solid var(--ink)}.facet-sidebar-head span{display:block;margin-bottom:1px;color:var(--tomato);font-size:1.15rem;transform:rotate(-2deg)}.facet-sidebar-head h3{margin:0;font:600 1.55rem var(--serif)}.facet-close{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--ink);cursor:pointer}.clear-facets{width:100%;min-height:39px;display:flex;align-items:center;justify-content:center;gap:6px;margin:12px 0 -2px;border:0;border-bottom:1px dashed var(--line);background:transparent;color:var(--tomato);font-size:.68rem;font-weight:800;cursor:pointer}.facet-group{padding:18px 0;border-bottom:1px dashed var(--line)}.facet-group h4{display:flex;align-items:center;gap:7px;margin:0 0 10px;color:var(--ink);font-size:.68rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.facet-group h4 svg{color:var(--tomato)}.facet-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.facet-option{min-width:0;min-height:43px;display:flex;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--muted);text-align:left;font-size:.72rem;font-weight:700;cursor:pointer}.facet-option i{width:16px;height:16px;display:grid;flex:0 0 auto;place-items:center;border:1.5px solid #afaa9e;border-radius:3px;background:#fff}.facet-option.active{border-color:var(--ink);background:#f2eadb;color:var(--ink);box-shadow:inset 3px 0 0 var(--tomato)}.facet-option.active i{border-color:var(--ink);background:var(--ink)}.facet-option.active i:after{content:"✓";color:#fff;font-size:.62rem;font-style:normal}.facet-option.vegan.active,.facet-option.vegetarian.active{box-shadow:inset 3px 0 0 var(--leaf)}.facet-option.fish.active{box-shadow:inset 3px 0 0 var(--blue)}.facet-option.meat.active{box-shadow:inset 3px 0 0 var(--tomato)}.facet-apply{position:sticky;bottom:0;width:100%;min-height:50px;margin-top:18px;border:0;border-radius:5px;background:var(--ink);color:#fff;font-size:.78rem;font-weight:900;box-shadow:0 8px 20px #25312a33;cursor:pointer}.recipe-grid{display:grid;grid-template-columns:1fr;gap:15px}.recipe-card{position:relative;min-height:250px;display:flex;flex-direction:column;overflow:hidden;padding:25px 21px 19px;border:1px solid color-mix(in srgb,var(--category) 30%,var(--line));border-top:6px solid var(--category);border-radius:3px 3px 8px 8px;background:var(--category-soft);box-shadow:3px 5px #e0d2bb,0 10px 22px #42311912;transition:transform .22s ease,box-shadow .22s ease;animation:card-in .45s both;animation-delay:var(--delay)}.card-pin{position:absolute;z-index:3;width:13px;height:13px;left:50%;top:5px;border:2px solid rgba(255,255,255,.85);border-radius:50%;background:var(--category);box-shadow:0 2px 4px #37281440}.recipe-card:after{content:"";position:absolute;width:112px;height:112px;right:-42px;top:30px;border:18px double color-mix(in srgb,var(--category) 17%,transparent);border-radius:50%;transform:rotate(12deg)}.recipe-card:active{transform:scale(.985)}.card-topline{position:relative;z-index:1;display:flex;justify-content:space-between;color:color-mix(in srgb,var(--category) 72%,var(--ink));font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.card-category{display:inline-flex;align-items:center;gap:7px}.card-category i{width:8px;height:8px;display:inline-block;border-radius:50%;background:var(--category)}.card-body{position:relative;z-index:1;margin:auto 0;padding:23px 0}.card-body>svg{margin-bottom:11px;color:var(--category)}.card-body h3{max-width:90%;margin:0;font:600 clamp(1.55rem,6vw,2rem)/1.17 var(--serif);letter-spacing:-.035em}.card-meta{min-height:26px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:14px;color:var(--muted);font-size:.7rem}.card-meta>span:first-child{display:inline-flex;align-items:center;gap:5px}.tag{display:inline-flex;padding:5px 9px;border-radius:99px;color:var(--leaf);background:#ffffffb3;font-size:.66rem;font-weight:800;text-transform:capitalize}.tag-vegan{color:#4c7548;background:#e4f1df}.tag-vegetarisch{color:#6e7040;background:#f1f0d6}.tag-fisch{color:#3e7180;background:#dfedf1}.tag-fleisch{color:#96513d;background:#f3dfd8}.card-link{position:relative;z-index:1;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px dashed color-mix(in srgb,var(--category) 35%,var(--line));color:color-mix(in srgb,var(--category) 75%,var(--ink));font-size:.73rem;font-weight:800}.card-folio{margin-left:auto;color:color-mix(in srgb,var(--category) 55%,var(--muted));font:600 .62rem var(--serif);letter-spacing:.1em}.card-arrow{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--category);border-radius:50% 47% 52% 46%;background:transparent;color:var(--category);transform:rotate(-3deg)}@keyframes card-in{0%{opacity:0;transform:translateY(10px) rotate(.3deg)}}.pantry-page{min-height:80vh;padding-bottom:90px;background:var(--paper)}.pantry-hero{position:relative;min-height:340px;display:flex;align-items:center;overflow:hidden;padding:62px 20px 72px;border-bottom:7px solid #cfb990;background:var(--cream)}.pantry-hero:after{content:"";position:absolute;width:250px;height:250px;right:-125px;top:-80px;border:34px solid rgba(230,170,49,.14);border-radius:50%}.pantry-hero-copy{position:relative;z-index:1;max-width:760px}.pantry-hero h1{margin:0;font:600 clamp(3.1rem,14vw,6.2rem)/.96 var(--serif);letter-spacing:-.06em}.pantry-hero h1 em{color:var(--leaf);font-weight:500}.pantry-hero-copy>p:last-child{max-width:610px;margin:20px 0 0;color:var(--muted);line-height:1.7}.pantry-jar{position:absolute;z-index:1;right:20px;bottom:-15px;width:126px;height:146px;display:none;place-items:center;align-content:center;gap:10px;border:2px solid #c5ad84;border-radius:10px 10px 36px 36px;background:var(--white);color:var(--leaf);box-shadow:5px 8px #ddcdb2;transform:rotate(4deg)}.pantry-jar span{color:var(--ink);font:600 1.2rem/1 var(--hand);text-align:center}.pantry-workspace{width:min(1300px,calc(100% - 30px));display:grid;gap:52px;margin:42px auto 0}.pantry-input-card{min-width:0;padding:27px 23px 23px;border:1px solid #cdbb9e;border-radius:4px;background:#fff9e9;box-shadow:4px 6px #e3d4b9}.pantry-step{display:flex;align-items:flex-start;gap:13px}.pantry-step>span{width:35px;height:35px;display:grid;flex:0 0 auto;place-items:center;border:1px solid var(--tomato);border-radius:50%;color:var(--tomato);font-size:.68rem;font-weight:900}.pantry-step h2{margin:-3px 0 2px;font:600 clamp(1.55rem,7vw,2.2rem) var(--serif);letter-spacing:-.035em}.pantry-step p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}.pantry-form{display:grid;gap:10px;margin-top:27px}.pantry-field{min-height:58px;display:flex;align-items:center;gap:11px;padding:0 16px;border:1px solid var(--line);border-radius:13px;background:#fff}.pantry-field svg{flex:0 0 auto;color:var(--leaf)}.pantry-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:.85rem}.pantry-add{min-height:54px;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:5px;background:var(--leaf);color:#fff;font-size:.76rem;font-weight:900;cursor:pointer}.pantry-add:disabled{opacity:.45;cursor:not-allowed}.quick-ingredients{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}.quick-ingredients>span{width:100%;color:var(--muted);font-size:.65rem;font-weight:800}.quick-ingredients button{min-height:34px;padding:0 10px;border:1px dashed #b9aa91;border-radius:99px;background:#ffffff8c;color:var(--muted);font-size:.67rem;cursor:pointer}.quick-ingredients button:hover{border-color:var(--leaf);color:var(--leaf)}.pantry-chips{min-height:84px;display:flex;align-content:flex-start;flex-wrap:wrap;gap:9px;margin-top:22px;padding:17px;border:1px dashed var(--line);background:#ffffff73}.pantry-chips>span{min-height:38px;display:inline-flex;align-items:center;gap:6px;padding:0 5px 0 14px;border-radius:99px;background:#e4eee0;color:#456542;font-size:.72rem;font-weight:800}.pantry-chips>span button{width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.pantry-chips p{margin:auto;color:var(--muted);font:600 1.05rem var(--hand)}.pantry-clear{margin-top:10px;padding:3px 0;border:0;border-bottom:1px solid;background:transparent;color:var(--tomato);font-size:.67rem;cursor:pointer}.pantry-basics{margin:18px 0 0;padding-top:14px;border-top:1px dashed var(--line);color:var(--muted);font-size:.65rem;line-height:1.5}.pantry-results{min-width:0}.pantry-results-head{display:flex;align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:29px;padding-bottom:22px;border-bottom:1px solid var(--line)}.missing-select{width:100%;display:grid;gap:5px;color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.missing-select select{width:100%;min-height:44px;padding:0 34px 0 11px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--ink);font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:none}.pantry-empty{min-height:330px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;border:1px dashed var(--line);color:var(--leaf);text-align:center}.pantry-empty h3{margin:17px 0 5px;color:var(--ink);font:600 1.8rem var(--serif)}.pantry-empty p{max-width:430px;margin:4px 0 18px;color:var(--muted);line-height:1.6}.pantry-grid{grid-template-columns:1fr}.pantry-grid .recipe-card{min-height:320px}.pantry-result-card{min-width:0;display:flex;flex-direction:column}.pantry-result-card .recipe-card{width:100%;flex:1}.pantry-shopping-button{min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 0 0 3px;padding:0 14px;border:1px solid var(--leaf);border-radius:4px;background:#e4eee0;color:#456542;font-size:.75rem;font-weight:900;box-shadow:3px 4px #d6cbb8;cursor:pointer}.pantry-shopping-button:hover{background:#d8e8d2}.pantry-match{display:grid;gap:5px;margin-top:15px;padding:11px 12px;border-left:3px solid var(--leaf);background:#ffffffb8}.pantry-match strong{color:var(--leaf);font-size:.72rem}.pantry-match span{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:.66rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.status,.empty-state,.not-found{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 20px;text-align:center;color:var(--muted)}.status svg{color:var(--tomato)}.status h2,.empty-state h3{margin:15px 0 0;color:var(--ink);font:600 2rem var(--serif)}.status p,.empty-state p{max-width:540px;line-height:1.65}.loading-state p{margin-top:25px;font:600 1.05rem var(--serif);color:var(--ink)}.loading-state p:after{content:"Bitte einen kleinen Moment";display:block;margin-top:7px;color:var(--tomato);font:600 1rem var(--hand);transform:rotate(-1deg)}.book-loader{position:relative;width:164px;height:104px;perspective:800px;transform-style:preserve-3d;animation:cookbook-breathe 2.8s ease-in-out infinite}.book-loader:before{content:"";position:absolute;width:142px;height:14px;left:11px;bottom:-8px;border-radius:50%;background:#4830172e;filter:blur(7px);animation:cookbook-shadow 2.8s ease-in-out infinite}.book-loader-cover{position:absolute;width:82px;height:100px;left:80px;top:2px;border:2px solid #b94931;border-radius:2px 9px 9px 2px;background:var(--tomato);box-shadow:3px 5px #d1b68d}.book-loader-page{position:absolute;width:80px;height:94px;top:4px;border:1px solid #d6c39f;background-color:#fffaf0;background-image:repeating-linear-gradient(to bottom,transparent 0 14px,rgba(220,191,142,.38) 14px 15px);box-shadow:0 3px 8px #402b141f;backface-visibility:visible}.book-loader-page:before{content:"";position:absolute;width:32px;height:4px;left:16px;top:11px;background:var(--tomato);box-shadow:0 8px #36483e4d}.book-loader-page:after{content:"✦";position:absolute;right:9px;bottom:6px;color:var(--mustard);font-size:.55rem}.book-loader-page-right{left:81px;z-index:1;border-radius:1px 7px 7px 1px}.book-loader-page-left{left:1px;z-index:3;border-radius:7px 1px 1px 7px;transform-origin:right center;animation:cookbook-open 2.8s cubic-bezier(.5,.05,.2,1) infinite}.book-loader-page-turn{left:81px;z-index:4;border-radius:1px 7px 7px 1px;transform-origin:left center;opacity:0;animation:cookbook-page-turn 2.8s ease-in-out infinite}.book-loader-spine{position:absolute;z-index:6;width:3px;height:92px;left:80px;top:6px;border-radius:50%;background:#704c2547;box-shadow:0 0 8px #4d321740}@keyframes cookbook-open{0%,10%{transform:rotateY(-178deg)}38%,82%{transform:rotateY(0)}96%,to{transform:rotateY(-178deg)}}@keyframes cookbook-page-turn{0%,43%{opacity:0;transform:rotateY(0)}47%{opacity:1;transform:rotateY(0)}68%{opacity:1;transform:rotateY(-180deg)}69%,to{opacity:0;transform:rotateY(-180deg)}}@keyframes cookbook-breathe{0%,to{transform:translateY(2px) rotate(-.4deg)}45%,75%{transform:translateY(-3px) rotate(.4deg)}}@keyframes cookbook-shadow{0%,to{opacity:.5;transform:scaleX(.72)}45%,75%{opacity:1;transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.book-loader,.book-loader:before,.book-loader-page-left,.book-loader-page-turn{animation:none}.book-loader-page-left{transform:rotateY(0)}.book-loader-page-turn{display:none}}.empty-state>span{color:var(--tomato);font:3rem var(--serif)}.text-button{border:0;border-bottom:1px solid;background:transparent;color:var(--tomato);cursor:pointer}.recipe-detail{max-width:1300px;margin:0 auto;padding:24px max(15px,env(safe-area-inset-right)) 85px max(15px,env(safe-area-inset-left))}.recipe-nav{display:flex;justify-content:space-between;align-items:center;gap:10px}.back-link{min-height:42px;display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.76rem;font-weight:800}.back-link:hover{color:var(--category)}.recipe-actions{display:flex;align-items:center;gap:2px}.recipe-actions button,.recipe-actions a{min-width:42px;min-height:42px;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 9px;border:0;border-radius:13px;background:transparent;color:var(--muted);font-size:0;cursor:pointer}.recipe-actions button:hover,.recipe-actions a:hover{color:var(--category);background:var(--category-soft)}.recipe-actions .danger:hover{color:#a52e2e}.recipe-actions .favorite.active{color:var(--berry);background:#f4dce5}.recipe-title-block{position:relative;max-width:970px;padding:61px 0 49px}.recipe-title-block:after{content:"Aus Fischers Kochbuch";position:absolute;right:2px;bottom:12px;color:var(--category);font:600 1.25rem var(--hand);transform:rotate(-4deg);opacity:.78}.recipe-title-block .eyebrow{color:var(--category)}.recipe-title-block h1{font-size:clamp(2.75rem,13vw,6.8rem);overflow-wrap:anywhere}.detail-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:24px;color:var(--muted);font-size:.78rem}.detail-meta>span{display:inline-flex;align-items:center;gap:7px}.allergen-summary{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;padding:17px 19px;border:1px solid #d6c99e;border-radius:8px;background:#fff7d9;color:#8a691d}.allergen-summary>svg{flex:0 0 auto;margin-top:2px}.allergen-summary strong{color:var(--ink);font:600 .9rem var(--serif)}.allergen-summary p{margin:4px 0;color:var(--ink);font-size:.76rem;line-height:1.5}.allergen-summary small{display:block;color:var(--muted);font-size:.66rem;line-height:1.45}.scaling-bar{display:flex;align-items:stretch;flex-direction:column;gap:15px;padding:20px;border:1px solid color-mix(in srgb,var(--category) 37%,var(--line));border-radius:18px 18px 0 0;background:var(--category-soft)}.scaling-intro{display:flex;align-items:center;gap:13px}.scaling-intro>svg{flex:0 0 auto;color:var(--category)}.scaling-intro>div{display:grid;gap:3px}.scaling-intro strong{font:600 1.03rem var(--serif)}.scaling-intro span{color:var(--muted);font-size:.68rem;line-height:1.35}.serving-stepper{min-height:52px;display:flex;align-items:stretch;border:1px solid color-mix(in srgb,var(--category) 50%,var(--line));border-radius:14px;overflow:hidden;background:var(--white)}.serving-stepper button{width:54px;display:grid;flex:0 0 auto;place-items:center;border:0;background:transparent;color:var(--category);cursor:pointer}.serving-stepper button:active:not(:disabled){background:var(--category-soft)}.serving-stepper button:disabled{opacity:.25}.serving-stepper output{min-width:100px;display:flex;flex:1;align-items:baseline;justify-content:center;gap:7px;padding:7px 12px;border-right:1px solid var(--line);border-left:1px solid var(--line)}.serving-stepper output strong{font:600 1.7rem var(--serif)}.serving-stepper output span{color:var(--muted);font-size:.68rem}.recipe-paper{position:relative;display:grid;border:1px solid color-mix(in srgb,var(--category) 28%,var(--line));border-top:0;border-radius:0 0 4px 4px;overflow:hidden;background:var(--white);box-shadow:5px 8px #dfd0b8,0 25px 60px #4330181f}.book-running-head{min-height:39px;display:flex;grid-column:1 / -1;align-items:center;justify-content:center;gap:13px;padding:8px 20px;border-bottom:1px solid var(--line);background:#f9f1e2;color:#8b7d68;font:600 .55rem var(--serif);letter-spacing:.12em;text-transform:uppercase}.book-running-head i{color:var(--category);font-style:normal}.ingredients-panel,.instructions-panel{min-width:0;display:flex;flex-direction:column;padding:32px 22px 25px}.ingredients-panel{position:relative;background:color-mix(in srgb,var(--category-soft) 76%,var(--paper))}.ingredients-panel:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:repeating-linear-gradient(0deg,transparent 0 28px,color-mix(in srgb,var(--category) 18%,transparent) 29px)}.ingredients-panel>*{position:relative;z-index:1}.section-title{display:flex;align-items:baseline;gap:13px;margin-bottom:27px}.section-title>span{color:var(--category);font-size:.68rem;font-weight:900}.section-title h2{font-size:clamp(2rem,9vw,3rem)}.ingredient-list,.instruction-list{margin:0;padding:0;list-style:none}.ingredient-list li{border-bottom:1px dashed color-mix(in srgb,var(--category) 27%,var(--line))}.ingredients-title{flex-wrap:wrap}.ingredients-add-all{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-left:auto;padding:0 11px;border:1px solid color-mix(in srgb,var(--category) 45%,var(--line));border-radius:5px;background:#ffffff9e;color:var(--category);font-size:.68rem;font-weight:900;cursor:pointer}.shopping-notice{display:flex;align-items:center;gap:7px;margin:-14px 0 14px;color:var(--leaf);font-size:.72rem;font-weight:800}.ingredient-row{display:grid;grid-template-columns:minmax(0,1fr) 45px;align-items:stretch}.ingredient-list li .ingredient-check{width:100%;min-height:49px;display:flex;align-items:flex-start;gap:11px;padding:12px 5px 12px 0;border:0;background:transparent;text-align:left;line-height:1.45;cursor:pointer}.ingredient-to-shopping{width:45px;min-height:45px;display:grid;place-items:center;align-self:center;border:0;border-left:1px dashed color-mix(in srgb,var(--category) 25%,var(--line));background:transparent;color:var(--category);cursor:pointer}.ingredient-to-shopping:hover{background:#ffffff80}.check-box{width:21px;height:21px;display:grid;flex:0 0 auto;place-items:center;margin-top:0;border:1.5px solid color-mix(in srgb,var(--category) 58%,#888);border-radius:7px;background:#ffffff8c}.ingredient-list li.checked .ingredient-check{color:#98988f;text-decoration:line-through}.ingredient-list li.checked .check-box{border-color:var(--category);background:var(--category);color:#fff}.ingredient-list .ingredient-heading{padding:24px 0 8px;border-bottom:0;color:var(--category);font-size:.69rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.muted{color:var(--muted);line-height:1.6}.instruction-list li{position:relative;display:grid;grid-template-columns:38px 1fr;gap:14px;padding:0 0 27px}.instruction-list li:not(:last-child):after{content:"";position:absolute;left:18px;top:38px;bottom:4px;border-left:1px dashed color-mix(in srgb,var(--category) 37%,var(--line))}.instruction-list li>span{width:37px;height:37px;display:grid;place-items:center;border:1.5px solid var(--category);border-radius:50% 48% 52% 46%;background:var(--white);color:var(--category);font:700 .74rem var(--sans);transform:rotate(-2deg)}.instruction-list p{margin:4px 0 0;line-height:1.72}.recipe-note{position:relative;display:flex;gap:14px;margin:18px 4px 10px;padding:23px 20px 19px;border:1px solid color-mix(in srgb,var(--mustard) 45%,var(--line));border-radius:2px;background:#fff2c9;box-shadow:2px 3px #6f562714;transform:rotate(-.5deg)}.note-tape{position:absolute;width:70px;height:18px;left:calc(50% - 35px);top:-10px;background:#d3b4707a;transform:rotate(2deg)}.recipe-note svg{flex:0 0 auto;color:#a87915}.recipe-note strong{color:#7a5710;font:600 1.35rem var(--hand)}.recipe-note p{margin:6px 0 0;color:#665d47;line-height:1.55}.page-folio{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:auto;padding-top:35px;color:color-mix(in srgb,var(--category) 55%,var(--muted));font:600 .55rem var(--serif);letter-spacing:.12em;text-transform:uppercase}.page-folio b{min-width:28px;text-align:center;color:var(--ink);font-size:.72rem}.page-folio b:before,.page-folio b:after{content:"—";margin:0 5px;color:var(--category);font-weight:400}.page-folio-right{flex-direction:row-reverse}.activity-page{min-height:75vh;padding:50px max(15px,env(safe-area-inset-right)) 95px max(15px,env(safe-area-inset-left));background:var(--paper)}.activity-heading,.activity-layout,.activity-empty{width:min(100%,1040px);margin-left:auto;margin-right:auto}.activity-heading{padding:18px 0 43px;border-bottom:2px solid var(--ink)}.activity-heading h1{margin:0;font:600 clamp(3rem,13vw,6.2rem)/.96 var(--serif);letter-spacing:-.06em}.activity-heading h1 em{color:var(--berry);font-weight:500}.activity-heading>p:last-child{max-width:600px;margin:18px 0 0;color:var(--muted);line-height:1.65}.activity-layout{padding-top:30px}.activity-intro{display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;margin-bottom:26px;padding:15px;border:1px solid #cdbb9e;background:#fff9e9;color:var(--berry)}.activity-intro strong{color:var(--ink);font:600 1.05rem var(--serif)}.activity-intro p{width:100%;margin:0;color:var(--muted);font-size:.67rem}.activity-feed{position:relative;display:grid;gap:18px;margin:0;padding:0;list-style:none}.activity-feed:before{content:"";position:absolute;width:1px;left:17px;top:20px;bottom:20px;border-left:1px dashed var(--line)}.activity-item{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);gap:11px}.activity-marker{z-index:1;width:35px;height:35px;display:grid;place-items:center;border:1.5px solid var(--category);border-radius:50%;background:var(--paper);color:var(--category)}.activity-item>article{min-width:0;padding:17px;border:1px solid color-mix(in srgb,var(--category) 23%,var(--line));border-top:4px solid var(--category);border-radius:3px;background:var(--white);box-shadow:3px 4px #e5dac7}.activity-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;color:var(--muted);font-size:.65rem}.activity-meta strong{color:var(--ink);font:600 .92rem var(--serif)}.activity-meta time{width:100%;font-size:.58rem}.activity-photo{display:block;max-width:600px;aspect-ratio:4 / 3;overflow:hidden;margin-top:14px;background:#e6ddce}.activity-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .25s ease}.activity-photo:hover img{transform:scale(1.02)}.activity-content{margin:14px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.62}.activity-recipe{min-height:42px;display:flex;align-items:center;gap:5px;margin-top:15px;padding-top:11px;border-top:1px dashed var(--line);color:var(--category);font-size:.68rem}.activity-recipe strong{overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.activity-recipe svg{flex:0 0 auto;margin-left:auto}.activity-more{min-height:50px;display:block;margin:28px auto 0;padding:0 20px;border:1px solid var(--ink);border-radius:4px;background:var(--ink);color:#fff;font-size:.73rem;font-weight:900;cursor:pointer}.activity-more:disabled{opacity:.5;cursor:wait}.activity-empty{min-height:470px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--berry);text-align:center}.activity-empty h2{margin:17px 0 4px;color:var(--ink);font:600 2rem var(--serif)}.activity-empty p{margin:5px 0 23px;color:var(--muted);line-height:1.55}.recipe-photos{margin-top:70px;padding-top:34px;border-top:2px solid var(--ink);scroll-margin-top:92px}.photos-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:27px;color:var(--leaf)}.photos-heading>svg{margin-top:5px}.photos-heading p{margin:0 0 -3px;font-size:1.15rem;transform:rotate(-1deg)}.photos-heading h2{margin:0;color:var(--ink);font:600 clamp(2rem,8vw,3rem) var(--serif);letter-spacing:-.04em}.photos-heading span{display:block;margin-top:5px;color:var(--muted);font-size:.68rem}.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:27px}.photo-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:4px;background:var(--white);box-shadow:2px 3px #e5dac7}.photo-open{width:100%;aspect-ratio:1;display:block;overflow:hidden;padding:0;border:0;background:#e6ddce;cursor:zoom-in}.photo-open img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .25s ease}.photo-open:hover img{transform:scale(1.025)}.photo-info{padding:11px}.photo-info>div{display:grid;gap:2px}.photo-info strong{font:600 .79rem var(--serif)}.photo-info time{color:var(--muted);font-size:.57rem}.photo-info p{margin:8px 0 0;overflow-wrap:anywhere;font-size:.7rem;line-height:1.45}.photo-info>button{display:inline-flex;align-items:center;gap:4px;margin-top:9px;padding:2px 0;border:0;border-bottom:1px solid;background:transparent;color:var(--muted);font-size:.59rem;cursor:pointer}.photos-empty,.photos-status{min-height:155px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:24px;padding:22px;border:1px dashed var(--line);color:var(--leaf);text-align:center}.photos-empty p,.photos-status{color:var(--muted);line-height:1.55}.photo-upload{display:grid;gap:14px;padding:19px;border:1px solid #cdbb9e;background:#fff9e9;box-shadow:3px 5px #e3d4b9}.photo-upload-intro{display:flex;align-items:center;gap:11px;color:var(--leaf)}.photo-upload-intro>div{display:grid;gap:2px}.photo-upload-intro strong{color:var(--ink);font:600 1.05rem var(--serif)}.photo-upload-intro p{margin:0;color:var(--muted);font-size:.68rem}.photo-preview{position:relative;width:min(100%,280px);aspect-ratio:4 / 3;overflow:hidden;border:1px solid var(--line);background:#e6ddce}.photo-preview img{width:100%;height:100%;display:block;object-fit:cover}.photo-preview button{position:absolute;width:34px;height:34px;display:grid;place-items:center;right:7px;top:7px;border:0;border-radius:50%;background:#25312ad1;color:#fff;cursor:pointer}.photo-picker{min-height:45px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px dashed var(--leaf);border-radius:5px;background:#ffffff8c;color:var(--leaf);font-size:.72rem;font-weight:900;cursor:pointer}.photo-picker input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.photo-caption{display:grid;gap:6px;color:var(--ink);font-size:.68rem;font-weight:800}.photo-caption small{color:var(--muted);font-weight:400}.photo-caption input{min-height:45px;padding:0 12px;border:1px solid var(--line);border-radius:8px;outline:0;background:#fff}.photo-caption input:focus{border-color:var(--leaf);box-shadow:0 0 0 3px #6385621a}.photo-rules{color:var(--muted);font-size:.58rem;line-height:1.45}.photo-login{display:flex;align-items:stretch;flex-direction:column;gap:14px;padding:19px;border:1px solid var(--line);background:#fff9e9}.photo-login p{margin:0;color:var(--muted);line-height:1.55}.recipe-photos>.form-error{margin:14px 0}.photo-dialog{width:min(940px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:0;overflow:auto;border:0;border-radius:5px;background:var(--paper);box-shadow:0 25px 90px #14110c73}.photo-dialog::backdrop{background:#191916c7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.photo-dialog>img{width:100%;max-height:76dvh;display:block;object-fit:contain;background:#1f211f}.photo-dialog>div{padding:17px 20px}.photo-dialog>div strong{font:600 1rem var(--serif)}.photo-dialog>div p{margin:5px 0 0;color:var(--muted);line-height:1.5}.photo-dialog-close{position:fixed;z-index:2;width:40px;height:40px;display:grid;place-items:center;margin:10px;right:max(12px,calc((100vw - 940px)/2 + 10px));border:0;border-radius:50%;background:#141412c7;color:#fff;cursor:pointer}.recipe-comments{margin-top:70px;padding-top:34px;border-top:2px solid var(--ink);scroll-margin-top:92px}.comments-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:27px;color:var(--berry)}.comments-heading>svg{margin-top:5px}.comments-heading p{margin:0 0 -3px;font-size:1.15rem;transform:rotate(-1deg)}.comments-heading h2{display:inline;margin:0;color:var(--ink);font:600 clamp(2rem,8vw,3rem) var(--serif);letter-spacing:-.04em}.comments-heading span{display:block;margin-top:5px;color:var(--muted);font-size:.68rem}.comment-list{display:grid;gap:13px;margin:0 0 28px;padding:0;list-style:none}.comment-list li{display:grid;grid-template-columns:39px minmax(0,1fr);gap:11px;padding:18px 15px;border:1px solid var(--line);border-radius:4px;background:var(--white);box-shadow:2px 3px #e5dac7}.comment-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#f4dce5;color:var(--berry)}.comment-content{min-width:0}.comment-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px}.comment-meta strong{font:600 .92rem var(--serif)}.comment-meta time{color:var(--muted);font-size:.61rem}.comment-content>p{margin:9px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.62}.comment-delete{display:inline-flex;align-items:center;gap:4px;margin-top:11px;padding:3px 0;border:0;border-bottom:1px solid;background:transparent;color:var(--muted);font-size:.62rem;cursor:pointer}.comments-empty,.comments-status{min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 0 24px;padding:22px;border:1px dashed var(--line);color:var(--berry);text-align:center}.comments-empty p,.comments-status{color:var(--muted);line-height:1.55}.comment-form{display:grid;gap:9px;padding:19px;border:1px solid #cdbb9e;background:#fff9e9;box-shadow:3px 5px #e3d4b9}.comment-form label{font-size:.72rem;font-weight:900}.comment-form textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:9px;outline:0;background:#fff;resize:vertical;line-height:1.55}.comment-form textarea:focus{border-color:var(--berry);box-shadow:0 0 0 3px #a94f701a}.comment-form>div{display:flex;align-items:center;justify-content:space-between;gap:14px}.comment-form small{color:var(--muted);font-size:.62rem}.comment-form .primary-button{min-height:46px;background:var(--berry);box-shadow:0 5px #803650}.comment-login{display:flex;align-items:stretch;flex-direction:column;gap:14px;padding:19px;border:1px solid var(--line);background:#fff9e9}.comment-login p{margin:0;color:var(--muted);line-height:1.55}.comments-heading+.form-error,.recipe-comments>.form-error{margin:14px 0}.auth-page{min-height:calc(100vh - 160px);display:grid;place-items:center;padding:45px 17px;background:radial-gradient(circle at 10% 10%,var(--category-soft),transparent 40%)}.auth-card{width:min(100%,510px);padding:35px 25px;border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:0 22px 60px #412d141a}.auth-card h1{font-size:clamp(2.8rem,13vw,4.5rem)}.auth-card>p:not(.eyebrow){margin:20px 0 29px;color:var(--muted);line-height:1.65}.auth-card form{display:grid;gap:18px;margin-bottom:25px}.auth-card label,.editor-form label{display:grid;gap:8px;color:var(--muted);font-size:.74rem;font-weight:800}.input-with-icon{min-height:52px;display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:#fff}.input-with-icon svg{color:var(--tomato)}.input-with-icon input{width:100%;border:0;outline:0;background:transparent}.primary-button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 22px;border:0;border-radius:14px;background:var(--tomato);color:#fff;box-shadow:0 5px 0 var(--tomato-dark);font-size:.81rem;font-weight:800;cursor:pointer}.primary-button:active{transform:translateY(3px);box-shadow:0 2px 0 var(--tomato-dark)}.primary-button:disabled{opacity:.55;cursor:wait}.form-error{padding:13px 14px;border:1px solid #d5a49b;border-radius:12px;background:#f8e8e3;color:#7f3024;font-size:.8rem;line-height:1.5}.form-success{display:flex;gap:13px;margin:5px 0 28px;padding:17px;border:1px solid #a9c2a5;border-radius:12px;background:#e4f1df;color:#456542}.form-success svg{flex:0 0 auto}.form-success strong{font:600 1.1rem var(--serif)}.form-success p{margin:4px 0 0;font-size:.76rem;line-height:1.55}.auth-links{display:grid;gap:9px;margin:-8px 0 22px;color:var(--tomato);font-size:.75rem;font-weight:700}.auth-links a:hover{text-decoration:underline}.auth-card label small{font-weight:400}.form-honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.requests-page{width:min(1050px,calc(100% - 30px - env(safe-area-inset-left) - env(safe-area-inset-right)));min-height:75vh;margin:0 auto;padding:55px 0 100px}.requests-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:20px 0 42px;border-bottom:2px solid var(--ink)}.requests-heading h1{margin:0;font:600 clamp(3rem,10vw,5.5rem)/.95 var(--serif);letter-spacing:-.055em}.requests-heading>div:first-child>p:last-child{max-width:650px;margin:17px 0 0;color:var(--muted);line-height:1.6}.requests-count{min-width:120px;display:grid;grid-template-columns:auto auto;align-items:center;justify-content:center;gap:1px 9px;padding:17px;border:1px solid #b7c9b1;border-radius:6px;background:#e4eee0;color:var(--leaf)}.requests-count svg{grid-row:1 / 3}.requests-count strong{font:600 1.9rem/1 var(--serif)}.requests-count span{color:var(--muted);font-size:.65rem}.requests-page>.form-error{margin-top:25px}.requests-list{display:grid;gap:13px;padding-top:30px}.request-card{display:grid;gap:18px;padding:20px;border:1px solid var(--line);border-left:4px solid var(--sun);border-radius:8px;background:var(--paper);box-shadow:3px 4px #eadfce}.request-approved{border-left-color:var(--leaf)}.request-rejected{border-left-color:#aa766e;opacity:.72}.request-person{min-width:0;display:flex;align-items:center;gap:13px}.request-person>span{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;border-radius:50%;background:#f2e5ca;color:var(--tomato)}.request-person h2{margin:0 0 3px;font:600 1.25rem var(--serif);overflow-wrap:anywhere}.request-person a{color:var(--muted);font-size:.72rem;overflow-wrap:anywhere}.request-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;color:var(--muted);font-size:.66rem}.request-meta time,.request-status{display:inline-flex;align-items:center;gap:5px}.request-status{padding:5px 8px;border-radius:20px;background:#f2e5ca;color:var(--ink);font-weight:800}.request-actions{display:flex;gap:9px}.request-actions button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border-radius:6px;font-size:.7rem;font-weight:900;cursor:pointer}.request-actions button:disabled{opacity:.5;cursor:wait}.request-reject{border:1px solid #aa766e;background:transparent;color:#874c43}.request-approve{border:1px solid var(--leaf);background:var(--leaf);color:#fff}.requests-empty{min-height:340px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--leaf);text-align:center}.requests-empty h2{margin:7px 0 0;color:var(--ink);font:600 1.9rem var(--serif)}.requests-empty p{margin:0;color:var(--muted)}@media(min-width:720px){.request-card{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.request-actions{justify-content:flex-end}}@media(max-width:600px){.requests-heading{align-items:flex-start;flex-direction:column}.requests-count{min-width:105px}.request-actions button{flex:1}}.shopping-page{min-height:75vh;padding:52px max(15px,env(safe-area-inset-right)) 100px max(15px,env(safe-area-inset-left));background:var(--paper)}.shopping-heading,.shopping-paper{width:min(100%,900px);margin-left:auto;margin-right:auto}.shopping-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding:18px 0 48px;border-bottom:2px solid var(--ink)}.shopping-heading h1{margin:0;font:600 clamp(3.1rem,12vw,6rem)/.95 var(--serif);letter-spacing:-.06em}.shopping-heading h1 em{color:var(--leaf);font-weight:500}.shopping-heading>div:first-child>p:last-child{max-width:580px;margin:17px 0 0;color:var(--muted);line-height:1.6}.shopping-summary{min-width:125px;display:grid;grid-template-columns:auto auto;align-items:center;justify-content:center;gap:2px 9px;padding:17px;border:1px solid #b7c9b1;border-radius:5px;background:#e4eee0;color:var(--leaf);box-shadow:4px 5px #d6cbb8}.shopping-summary svg{grid-row:1 / 3}.shopping-summary strong{font:600 1.9rem/1 var(--serif)}.shopping-summary span{color:var(--muted);font-size:.65rem;line-height:1.05}.shopping-paper{position:relative;margin-top:40px;padding:25px 20px 30px;border:1px solid #cdbb9e;border-radius:3px;background-color:#fffaf0;background-image:repeating-linear-gradient(to bottom,transparent 0 46px,rgba(115,142,111,.1) 46px 47px);box-shadow:5px 7px #e2d5bf}.shopping-paper:before{content:"";position:absolute;width:74px;height:17px;left:calc(50% - 37px);top:-9px;background:#d2b77e85;transform:rotate(-2deg)}.shopping-add-form{display:grid;gap:8px;padding-bottom:26px;border-bottom:1px solid var(--line)}.shopping-add-form>label{font-size:.76rem;font-weight:900}.shopping-add-form>div{display:grid;gap:9px}.shopping-add-form input{min-width:0;min-height:52px;padding:0 14px;border:1px solid var(--line);border-radius:10px;outline:0;background:#fff}.shopping-add-form input:focus{border-color:var(--leaf);box-shadow:0 0 0 3px #6385621f}.shopping-add-form button{min-height:50px;display:flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:5px;background:var(--leaf);color:#fff;font-size:.78rem;font-weight:900;cursor:pointer}.shopping-add-form button:disabled{opacity:.45}.shopping-add-form>small{color:var(--muted);font-size:.65rem}.shopping-section{padding-top:29px}.shopping-section-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.shopping-section-head h2{margin:0;font:600 1.7rem var(--serif)}.shopping-section-head>span{min-width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:#fff;font-size:.68rem;font-weight:900}.shopping-section-head>button,.shopping-clear-all{display:inline-flex;align-items:center;gap:5px;padding:4px 0;border:0;border-bottom:1px solid;background:transparent;color:var(--tomato);font-size:.68rem;cursor:pointer}.shopping-section ul{margin:0;padding:0;list-style:none}.shopping-section li{min-height:57px;display:grid;grid-template-columns:43px minmax(0,1fr) 43px;align-items:center;border-bottom:1px dashed var(--line)}.shopping-check,.shopping-remove{width:43px;height:43px;display:grid;place-items:center;border:0;background:transparent;cursor:pointer}.shopping-check>span{width:23px;height:23px;display:grid;place-items:center;border:1.5px solid var(--leaf);border-radius:7px;color:#fff}.shopping-section li>div{min-width:0;display:grid;gap:2px;padding:9px 5px}.shopping-section li strong{overflow-wrap:anywhere;font-size:.9rem;font-weight:700;line-height:1.4}.shopping-section li small{color:var(--muted);font-size:.65rem}.shopping-remove{color:var(--muted)}.shopping-section li.checked strong{color:#8e928b;text-decoration:line-through}.shopping-section li.checked .shopping-check>span{border-color:var(--leaf);background:var(--leaf)}.shopping-completed{margin-top:12px;opacity:.8}.shopping-done-note{display:flex;align-items:center;gap:8px;padding:18px 0;color:var(--leaf);font-weight:800}.shopping-clear-all{margin-top:35px}.shopping-sync-note{margin:22px 0 0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.68rem;line-height:1.5}.shopping-empty{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px 15px;color:var(--leaf);text-align:center}.shopping-empty h2{margin:16px 0 4px;color:var(--ink);font:600 1.9rem var(--serif)}.shopping-empty p{max-width:520px;margin:7px 0 23px;color:var(--muted);line-height:1.6}.account-page{width:min(1300px,calc(100% - 30px - env(safe-area-inset-left) - env(safe-area-inset-right)));margin:0 auto;padding:55px 0 100px}.account-heading{padding:20px 0 46px;border-bottom:2px solid var(--ink)}.account-heading h1{margin:0;font:600 clamp(2.8rem,11vw,5.5rem)/1 var(--serif);letter-spacing:-.055em;overflow-wrap:anywhere}.account-heading>p:last-child{margin:14px 0 0;color:var(--muted);font-size:.76rem}.account-layout{display:grid;gap:40px;padding-top:35px}.account-sidebar{padding:23px 19px;border:1px solid #cdbb9e;background:#fff9e9;box-shadow:4px 6px #e3d4b9}.account-avatar{width:62px;height:62px;display:grid;place-items:center;margin-bottom:22px;border-radius:50%;background:var(--ink);color:#fff}.account-sidebar form{display:grid;gap:12px}.account-sidebar label{display:grid;gap:7px;color:var(--muted);font-size:.68rem;font-weight:800}.account-sidebar input{width:100%;min-height:47px;padding:0 12px;border:1px solid var(--line);border-radius:9px;outline:0;background:#fff}.account-sidebar .primary-button{min-height:46px}.account-message{color:var(--leaf);font-size:.7rem;line-height:1.45}.account-pantry-link{display:flex;align-items:center;gap:11px;margin-top:22px;padding:16px 0;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);color:var(--leaf)}.account-pantry-link span{display:grid;gap:2px}.account-pantry-link strong{color:var(--ink);font-size:.78rem}.account-pantry-link small{color:var(--muted);font-size:.64rem}.push-setting{padding:16px 0;border-bottom:1px dashed var(--line)}.push-setting>div{display:flex;align-items:center;gap:11px;color:var(--berry)}.push-setting>div span{display:grid;gap:2px}.push-setting strong{color:var(--ink);font-size:.78rem}.push-setting small{color:var(--muted);font-size:.61rem;line-height:1.35}.push-setting>button{min-height:34px;margin-top:11px;padding:0 10px;border:1px solid var(--berry);border-radius:4px;background:transparent;color:var(--berry);font-size:.63rem;font-weight:900;cursor:pointer}.push-setting>button:disabled{opacity:.5}.push-setting>p{margin:9px 0 0;color:var(--tomato-dark);font-size:.61rem;line-height:1.4}.account-logout{display:flex;align-items:center;gap:7px;margin-top:17px;padding:5px 0;border:0;background:transparent;color:var(--tomato);font-size:.72rem;font-weight:800;cursor:pointer}.account-favorites{min-width:0}.account-section-title{display:flex;align-items:center;gap:13px;margin-bottom:23px;color:var(--berry)}.account-section-title h2{margin:0;color:var(--ink);font:600 2rem var(--serif)}.account-section-title p{margin:3px 0 0;color:var(--muted);font-size:.7rem}.account-empty{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;border:1px dashed var(--line);color:var(--berry);text-align:center}.account-empty h3{margin:16px 0 4px;color:var(--ink);font:600 1.8rem var(--serif)}.account-empty p{margin:4px 0 22px;color:var(--muted);line-height:1.55}.editor-page{max-width:1100px;margin:0 auto;padding:30px 17px 90px}.editor-heading{padding:58px 0 43px}.editor-heading h1{font-size:clamp(3rem,13vw,6rem)}.editor-form{display:grid;gap:42px}.form-section{display:grid;gap:12px;padding-top:25px;border-top:2px solid var(--tomato)}.form-number{color:var(--tomato);font-size:.73rem;font-weight:900}.form-fields{display:grid;gap:19px}.form-fields h2{margin-bottom:9px;font-size:2.1rem}.form-fields label>span{color:var(--ink)}.form-fields small{color:var(--muted);font-weight:400}.form-fields input,.form-fields select,.form-fields textarea{width:100%;min-height:48px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;outline:0;background:var(--paper);color:var(--ink);resize:vertical;line-height:1.5}.form-fields textarea{font-family:var(--sans)}.form-fields input:focus,.form-fields select:focus,.form-fields textarea:focus{border-color:var(--tomato);box-shadow:0 0 0 3px #d65f3d1f}.editor-submit{display:flex;justify-content:stretch}.editor-submit .primary-button{width:100%}.not-found>span{color:var(--tomato);font:600 1rem var(--serif)}.not-found h1{margin-top:12px;color:var(--ink);font-size:clamp(3rem,13vw,6rem)}.not-found p{margin-bottom:28px}@media(min-width:620px){.site-header{min-height:76px;padding-left:max(4vw,env(safe-area-inset-left));padding-right:max(4vw,env(safe-area-inset-right))}.nav-button span{display:inline}.catalog{width:calc(100% - 32px);max-width:1400px;margin:0 auto 42px;padding:32px 4vw 110px;border:1px solid #d3c4ac;border-bottom:10px solid #c7b18d;box-shadow:7px 10px #e0d2bb,0 22px 55px #46321917}.filter-main{grid-template-columns:minmax(0,1fr) 205px}.category-filter{margin-left:0;margin-right:0;padding-left:0;padding-right:0}.category-filter:before{left:0;right:0}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.recipe-card{min-height:280px;padding:23px}.recipe-detail{padding:35px 4vw 110px}.recipe-title-block{padding:85px 0 70px}.scaling-bar{min-height:88px;align-items:center;justify-content:space-between;flex-direction:row;padding:17px 30px}.serving-stepper{flex:0 0 auto;min-width:240px}.recipe-paper{grid-template-columns:minmax(290px,.78fr) minmax(0,1.22fr)}.ingredients-panel,.instructions-panel{padding:45px 38px 55px}.ingredients-panel{border-right:1px solid color-mix(in srgb,var(--category) 25%,var(--line));box-shadow:inset -18px 0 24px -25px #3726148c}.instructions-panel{box-shadow:inset 18px 0 24px -25px #37261480}.recipe-actions button,.recipe-actions a{font-size:.73rem}.activity-page{padding:70px 4vw 115px}.activity-heading{padding-bottom:55px}.activity-layout{display:grid;grid-template-columns:205px minmax(0,1fr);align-items:start;gap:32px;padding-top:42px}.activity-intro{position:sticky;top:100px;margin:0}.activity-feed,.activity-layout>.form-error,.activity-more{grid-column:2}.activity-feed{grid-row:1}.activity-item{grid-template-columns:42px minmax(0,1fr);gap:15px}.activity-feed:before{left:20px}.activity-marker{width:41px;height:41px}.activity-item>article{padding:22px}.activity-meta time{width:auto;margin-left:auto}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.photo-upload{grid-template-columns:auto minmax(0,1fr) auto;align-items:end;padding:24px}.photo-upload-intro,.photo-preview,.photo-rules{grid-column:1 / -1}.photo-picker{padding:0 18px}.photo-login{align-items:center;justify-content:space-between;flex-direction:row}.comment-list li{grid-template-columns:46px minmax(0,1fr);padding:21px}.comment-avatar{width:44px;height:44px}.comment-form,.comment-login{padding:24px}.comment-login{align-items:center;justify-content:space-between;flex-direction:row}.auth-card{padding:58px}.shopping-add-form>div{grid-template-columns:minmax(0,1fr) 165px}.shopping-paper{padding:34px 38px 38px}.account-layout{grid-template-columns:250px minmax(0,1fr);align-items:start}.account-sidebar{position:sticky;top:100px}.editor-page{padding-left:4vw;padding-right:4vw}.form-section{grid-template-columns:45px 1fr;gap:15px}.form-fields{grid-template-columns:repeat(2,1fr)}.form-fields h2,.form-fields .full{grid-column:1 / -1}.editor-submit{justify-content:flex-end}.editor-submit .primary-button{width:auto}.pantry-hero{width:calc(100% - 32px);min-height:430px;margin:18px auto 0;padding:75px 6vw;border:1px solid #c9b58f;border-bottom:9px solid #bda57b;box-shadow:7px 10px #ddcdb2}.pantry-hero-copy{max-width:calc(100% - 155px)}.pantry-jar{display:grid;right:5vw;bottom:45px}.pantry-input-card{padding:32px}.pantry-form{grid-template-columns:minmax(0,1fr) 155px}.pantry-results-head{align-items:center;justify-content:space-between;flex-direction:row}.missing-select,.missing-select select{width:auto}.pantry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:980px){.site-header{max-width:1440px;width:100%;margin:0 auto}.site-header nav{gap:8px}.site-header nav a,.nav-button{padding:0 13px}.results-toolbar{margin-bottom:20px}.mobile-filter-button,.facet-close,.facet-apply{display:none}.results-layout{display:grid;grid-template-columns:228px minmax(0,1fr);align-items:start;gap:28px}.facet-sidebar{position:sticky;z-index:1;width:auto;max-height:none;inset:20px auto auto;overflow:visible;padding:20px 17px;border:1px solid #cdbb9e;border-radius:3px;background:#fff9e9;box-shadow:3px 5px #e3d4b9;transform:none;visibility:visible;transition:none}.facet-sidebar:before{content:"";position:absolute;width:58px;height:16px;left:calc(50% - 29px);top:-8px;background:#d2b77e85;transform:rotate(-2deg)}.facet-sidebar-head{padding:4px 0 14px}.facet-sidebar-head h3{font-size:1.35rem}.facet-group{padding:16px 0}.facet-group>div{grid-template-columns:1fr;gap:6px}.facet-option{min-height:39px}.clear-facets{margin-top:8px}.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.recipe-card:hover{transform:translateY(-5px) rotate(-.25deg);box-shadow:0 17px 36px #4231191c}.pantry-hero{max-width:1400px;padding-left:7vw;padding-right:7vw}.pantry-jar{width:165px;height:188px;right:8vw}.pantry-workspace{display:block;margin-top:70px}.pantry-input-card{display:grid;grid-template-columns:minmax(235px,.65fr) minmax(0,1.8fr);column-gap:clamp(38px,5vw,76px);padding:40px 44px 36px}.pantry-input-card>.pantry-step{grid-column:1;grid-row:1 / 6;padding-right:12px}.pantry-input-card>.pantry-step h2{font-size:2.55rem;line-height:1.05}.pantry-input-card>.pantry-step p{max-width:210px;margin-top:8px;font-size:.78rem;line-height:1.6}.pantry-input-card>.pantry-form{grid-column:2;grid-row:1;margin-top:0}.pantry-input-card>.quick-ingredients{grid-column:2;grid-row:2}.pantry-input-card>.pantry-chips{grid-column:2;grid-row:3}.pantry-input-card>.pantry-clear{grid-column:2;grid-row:4;justify-self:start}.pantry-input-card>.pantry-basics{grid-column:2;grid-row:5}.pantry-results{margin-top:76px}.pantry-results-head{margin-bottom:34px;padding-bottom:25px}.pantry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}footer{gap:24px;font-size:.86rem}}@media(min-width:1200px){.pantry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:619px){.site-header nav>a:first-child{display:none}.site-header nav a span,.nav-button span{display:none}.site-header nav a,.nav-button{width:42px;padding:0}}@media(max-width:519px){.brand-copy{display:none}}@media(max-width:430px){.results-toolbar{flex-wrap:wrap}.results-toolbar .result-count{margin-top:0}.clear-facets-inline{display:none}.recipe-title-block:after{display:none}}.brand-copy small{font-size:.58rem}.site-header nav a,.nav-button{font-size:.8rem}.eyebrow{font-size:.73rem}.result-count{font-size:.8rem}.search-field input{font-size:1rem}.category-filter-label,.facet-group h4{font-size:.7rem}.category-filter button,.mobile-filter-button,.clear-facets-inline,.facet-option{font-size:.78rem}.facet-sidebar-head span{font-size:1.22rem}.clear-facets{font-size:.72rem}.card-topline{font-size:.7rem}.card-meta{font-size:.82rem}.tag{font-size:.74rem}.card-link{font-size:.8rem}.card-folio{font-size:.68rem}.back-link{font-size:.82rem}.recipe-actions button,.recipe-actions a{font-size:.78rem}.detail-meta{font-size:.86rem}.scaling-intro span,.serving-stepper output span{font-size:.74rem}.section-title>span,.ingredient-list .ingredient-heading{font-size:.73rem}.pantry-step p{font-size:.76rem}.pantry-field input{font-size:.94rem}.pantry-add,.missing-select select{font-size:.8rem}.quick-ingredients>span,.quick-ingredients button,.pantry-clear,.pantry-basics{font-size:.72rem}.pantry-chips>span{font-size:.78rem}.pantry-match strong{font-size:.78rem}.pantry-match span,.activity-intro p,.activity-meta,.activity-recipe{font-size:.73rem}.activity-meta time{font-size:.68rem}.photo-info strong{font-size:.84rem}.photo-info time,.photo-info>button,.photo-rules{font-size:.68rem}.photo-info p,.photo-upload-intro p,.photo-caption,.comments-heading span,.photos-heading span{font-size:.74rem}.comment-meta strong{font-size:.98rem}.comment-meta time,.comment-delete,.comment-form small{font-size:.69rem}.comment-form label{font-size:.78rem}.auth-card label,.editor-form label{font-size:.8rem}.primary-button{font-size:.86rem}.auth-links{font-size:.8rem}.account-heading>p:last-child{font-size:.82rem}.account-sidebar label,.account-message,.account-section-title p{font-size:.74rem}.account-pantry-link strong,.push-setting strong{font-size:.82rem}.account-pantry-link small,.push-setting small,.push-setting>button,.push-setting>p,.account-logout{font-size:.69rem}.shopping-add-form>label,.shopping-add-form button{font-size:.82rem}.shopping-add-form>small,.shopping-section li small,.shopping-sync-note{font-size:.72rem}.shopping-section-head>button,.shopping-clear-all{font-size:.73rem}.shopping-section li strong{font-size:.94rem}@media(pointer:coarse){input,select,textarea{font-size:1rem!important}.site-header nav a,.nav-button,.recipe-actions button,.recipe-actions a,.back-link{min-width:46px;min-height:46px}.category-filter button,.mobile-filter-button,.clear-facets-inline,.facet-option,.quick-ingredients button{min-height:44px}.text-button,.pantry-clear,.comment-delete,.photo-info>button,.account-logout{min-height:44px;display:inline-flex;align-items:center}.recipe-card:hover,.photo-open:hover img,.activity-photo:hover img,.category-filter button:hover{transform:none}}@media(min-width:620px)and (max-width:899px){.site-header nav a span,.nav-button span{display:none}.site-header nav a,.nav-button{width:46px;padding:0}.site-header nav>a:first-child{width:auto;padding:0 11px}.site-header nav>a:first-child span{display:inline}.account-layout{grid-template-columns:1fr}.account-sidebar{position:static}}@media(min-width:620px)and (max-width:819px){.activity-layout{display:grid;grid-template-columns:1fr}.activity-intro{position:static;margin-bottom:26px}.activity-feed,.activity-layout>.form-error,.activity-more{grid-column:1}.activity-feed{grid-row:auto}}@media(min-width:620px)and (max-width:767px){.recipe-paper{grid-template-columns:1fr}.ingredients-panel{border-right:0;border-bottom:1px solid color-mix(in srgb,var(--category) 25%,var(--line));box-shadow:none}.instructions-panel{box-shadow:none}.photo-upload{grid-template-columns:1fr}.photo-upload-intro,.photo-preview,.photo-rules{grid-column:1}.photo-login,.comment-login{align-items:stretch;flex-direction:column}}@media(min-width:620px)and (max-width:699px){.recipe-grid,.pantry-grid,.form-fields{grid-template-columns:1fr}.scaling-bar{align-items:stretch;flex-direction:column}.serving-stepper{width:100%}}@media(min-width:620px)and (max-width:979px){.recipe-title-block h1{font-size:clamp(3.2rem,10vw,5.4rem)}.pantry-hero h1,.activity-heading h1{font-size:clamp(3.2rem,9vw,5.3rem)}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:619px){.catalog,.recipe-detail{padding-bottom:max(72px,calc(54px + env(safe-area-inset-bottom)))}.recipe-title-block{padding-top:48px;padding-bottom:42px}.recipe-title-block h1{font-size:clamp(2.65rem,12vw,4rem)}.recipe-actions{gap:4px}.recipe-actions button,.recipe-actions a{padding:0 10px}.scaling-bar{border-radius:12px 12px 0 0}.ingredients-panel,.instructions-panel{padding-left:20px;padding-right:20px}.pantry-hero{min-height:310px;padding-top:48px;padding-bottom:58px}.pantry-hero h1{font-size:clamp(3rem,13vw,4.2rem)}.pantry-workspace{width:calc(100% - 24px);margin-top:30px}.pantry-input-card{padding:24px 18px 20px}.activity-page{padding-top:38px}.activity-heading{padding-bottom:35px}.activity-heading h1{font-size:clamp(3rem,13vw,4.2rem)}.auth-page{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.auth-card{padding:34px 21px}.account-page{width:calc(100% - 24px);padding-top:38px}.shopping-page{padding-top:38px}.shopping-heading{align-items:flex-start;flex-direction:column;padding-bottom:35px}.shopping-heading h1{font-size:clamp(3rem,13vw,4.2rem)}.shopping-summary{min-width:0;width:100%;grid-template-columns:auto auto auto;justify-content:flex-start;padding:13px 16px}.shopping-summary svg{grid-row:auto}.shopping-summary strong{font-size:1.55rem}.shopping-paper{margin-top:30px;padding:24px 17px 28px}.shopping-section li{grid-template-columns:43px minmax(0,1fr) 43px}.photo-grid{gap:9px}.photo-info{padding:10px}.photo-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}footer{min-height:96px;padding-bottom:max(24px,calc(14px + env(safe-area-inset-bottom)))}}.quick-filters{display:flex;align-items:center;gap:8px;margin-top:17px;padding:3px 0 8px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}.quick-filters::-webkit-scrollbar{display:none}.quick-filters>span{flex:0 0 auto;margin-right:3px;color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase}.quick-filters button{min-height:42px;display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:0 12px;scroll-snap-align:start;border:1px solid var(--line);border-radius:99px;background:var(--white);color:var(--muted);font-size:.75rem;font-weight:800;cursor:pointer}.quick-filters button small{color:color-mix(in srgb,currentColor 72%,transparent);font-size:.65rem}.quick-filters button.active{border-color:var(--leaf);background:#e4eee0;color:#456542;box-shadow:inset 0 0 0 1px #6385621f}.sort-select{min-height:42px;display:flex;align-items:center;gap:7px;margin-left:auto;padding:0 9px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--muted)}.sort-select select{max-width:150px;border:0;outline:0;background:transparent;color:var(--ink);font-size:.74rem;font-weight:800}.results-toolbar .result-count{margin-left:0}.applied-filters{display:flex;flex-wrap:wrap;gap:7px;margin:-7px 0 24px}.applied-filters button{min-height:37px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:1px solid #b7c9b1;border-radius:99px;background:#e4eee0;color:#456542;font-size:.7rem;font-weight:800;cursor:pointer}.applied-filters .clear-applied{border-color:transparent;background:transparent;color:var(--tomato)}.facet-option{width:100%}.facet-option>span{min-width:0;flex:1}.facet-option small{margin-left:auto;color:var(--muted);font-size:.64rem}.allergen-filter>p{margin:-2px 0 12px;color:var(--muted);font-size:.67rem;line-height:1.45}@media(min-width:620px){.facet-sidebar{position:fixed;z-index:80;width:min(500px,calc(100% - 32px));max-width:none;max-height:100dvh;inset:0 0 0 auto;overflow-y:auto;overscroll-behavior:contain;padding:28px max(26px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) 26px;border:0;border-left:1px solid #cdbb9e;border-radius:0;background:var(--paper);box-shadow:-24px 0 70px #31241533;transform:translate(105%);visibility:hidden}.facet-sidebar.open{visibility:visible;transform:translate(0)}.facet-sidebar:before{display:none}.facet-close{display:grid}.facet-apply{display:block}.mobile-filter-button{display:inline-flex}}@media(min-width:980px){.recipe-results .recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:619px){.results-toolbar{align-items:stretch;flex-wrap:wrap}.results-toolbar .result-count{align-self:center;margin-left:auto}.sort-select{width:100%;margin-left:0}.sort-select select{width:100%;max-width:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{:root,body{background:#fff}body:before,.site-header,footer,.recipe-nav,.scaling-bar,.ingredients-add-all,.ingredient-to-shopping,.shopping-notice{display:none!important}.recipe-detail{max-width:none;padding:0}.recipe-title-block{padding:25px 0 35px}.recipe-title-block:after{display:none}.recipe-title-block h1{font-size:3.1rem}.recipe-paper{display:grid;grid-template-columns:.75fr 1.25fr;border:1px solid #bbb;box-shadow:none}.ingredients-panel,.instructions-panel{padding:28px}.ingredient-list li button{color:#000}.check-box{display:none}}
