:root{--ink:#2a211c;--ink-soft:#6b5d51;--cream:#f4ead9;--paper:#fbf5ec;--green:#c4402a;--green-dark:#a2331f;--lime:#f0cf8f;--orange:#e29a3a;--line:#e7d9c4;--shadow:0 18px 60px rgba(60,40,30,0.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}.skip-link{position:fixed;top:-60px;left:16px;z-index:100;background:var(--ink);color:white;padding:10px 14px;border-radius:8px}.skip-link:focus{top:12px}.site-header{min-height:82px;justify-content:space-between;max-width:1180px;margin:0 auto;padding:0 28px;border-bottom:1px solid rgba(42,33,28,.1)}.brand,.site-header{display:flex;align-items:center}.brand{gap:10px;font-family:Georgia,serif;font-weight:700;font-size:19px}.brand-mark{display:grid;place-items:center;width:40px;height:40px}.brand-mark svg{display:block;overflow:visible}.brand-steam{transform-box:fill-box;transform-origin:center bottom;animation:brandSteam 2.8s cubic-bezier(.4,0,.3,1) infinite}@keyframes brandSteam{0%,to{transform:translateY(1px) scaleY(.92);opacity:.45}50%{transform:translateY(-2.5px) scaleY(1.06);opacity:1}}@media (prefers-reduced-motion:reduce){.brand-steam{animation:none;opacity:.8}}.site-header nav{display:flex;gap:32px;font-size:14px;font-weight:700}.site-header nav a:hover{color:var(--orange)}.hero-section{max-width:1180px;min-height:650px;margin:0 auto;padding:70px 28px 80px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;grid-gap:78px;gap:78px;position:relative;overflow:hidden}.hero-section:after{content:"";position:absolute;z-index:-1;right:-110px;top:30px;width:430px;height:430px;border:1px solid #e8dfc9;border-radius:50%}.eyebrow{margin:0 0 15px;color:#ad5737;font-size:12px;line-height:1.2;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.decision-intro h1,.hero-copy h1,.page-intro h1,.recipe-hero h1{margin:0;max-width:700px;font-family:Georgia,Times New Roman,serif;font-size:clamp(48px,6.1vw,76px);font-weight:500;letter-spacing:-.045em;line-height:.98}.hero-copy h1:first-line{color:var(--green)}.hero-lead{max-width:570px;margin:28px 0;color:var(--ink-soft);font-size:19px;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 24px;border:1px solid transparent;border-radius:999px;font-weight:800;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:white;box-shadow:0 8px 22px rgba(31,91,70,.2)}.button-primary:hover{background:var(--green-dark)}.button-ghost{border-color:var(--line);background:white}.button-light{background:var(--lime);color:var(--green-dark)}.trust-row{display:flex;flex-wrap:wrap;gap:20px;margin:28px 0 0;padding:0;list-style:none;color:var(--ink-soft);font-size:12px}.trust-row span{color:var(--green);font-weight:800}.hero-board{max-width:460px;padding:38px;background:var(--cream);border:1px solid #e6decd;border-radius:34px 8px 34px 8px;box-shadow:var(--shadow);transform:rotate(1deg)}.board-dots{display:flex;gap:5px;margin-bottom:25px}.board-dots i{width:7px;height:7px;border-radius:50%;background:var(--orange)}.board-dots i:nth-child(2){background:var(--lime)}.board-dots i:nth-child(3){background:var(--green)}.board-label{font-size:11px;letter-spacing:.14em;font-weight:800;color:#a65e41}.board-emoji{display:grid;place-items:center;width:108px;height:108px;margin:15px 0 22px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#f7e6c4,#efc98c);font-size:58px}.hero-board h2{margin:0;font-family:Georgia,serif;font-size:33px;line-height:1.1}.hero-board>p:not(.board-label){color:var(--ink-soft)}.board-tags{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.board-tags span{padding:6px 10px;background:white;border-radius:999px;border:1px solid var(--line);font-size:11px;font-weight:700}.board-note{padding:14px 16px;background:#fff8ef;border:1px solid var(--line);border-radius:12px;font-size:13px;color:var(--ink-soft)}.board-note strong{display:block;color:var(--ink)}.board-photo{display:block;width:100%;aspect-ratio:4/3;margin:16px 0 22px;border-radius:20px;object-fit:cover;border:1px solid #e6decd;box-shadow:0 10px 30px rgba(60,40,30,.12);background:var(--paper)}.mobile-tabbar{display:none}.section-shell{max-width:1180px;margin:0 auto;padding:95px 28px}.how-section{max-width:none;background:var(--green);color:white;padding-left:max(28px,calc((100vw - 1124px) / 2));padding-right:max(28px,calc((100vw - 1124px) / 2))}.how-section .eyebrow{color:var(--green)}.section-heading h2{margin:0;font-family:Georgia,serif;font-size:clamp(36px,4vw,53px);font-weight:500;letter-spacing:-.03em}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px;margin-top:48px}.step-grid article{padding:30px;border-top:1px solid rgba(255,255,255,.25)}.step-grid b{color:var(--green)}.step-grid b,.step-grid h3{font-family:Georgia,serif;font-size:24px}.step-grid h3{margin:32px 0 8px}.step-grid p{margin:0;color:rgba(255,255,255,.72)}.heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.text-link{font-weight:800;font-size:14px;color:var(--green)}.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;margin-top:45px}.recipe-card{position:relative;overflow:hidden;background:white;border:1px solid var(--line);border-radius:22px 5px 22px 5px;transition:transform .2s,box-shadow .2s}.recipe-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.recipe-visual{position:relative;min-height:195px;display:grid;place-items:center;font-size:74px;overflow:hidden;background-image:linear-gradient(155deg,rgba(255,255,255,.22),rgba(0,0,0,.08))}.recipe-visual:before{content:"";position:absolute;width:160px;height:160px;border-radius:50%;background:rgba(255,255,255,.28)}.recipe-visual span{position:relative;filter:drop-shadow(0 8px 8px rgba(0,0,0,.13))}.recipe-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.recipe-visual small{position:absolute;top:14px;left:14px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.84);font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.recipe-card-body{padding:22px}.recipe-meta{display:flex;gap:12px;color:var(--ink-soft);font-size:11px;font-weight:700}.recipe-card h3{margin:10px 0 7px;font-family:Georgia,serif;font-size:23px;line-height:1.18}.recipe-card p{min-height:66px;margin:0 0 16px;color:var(--ink-soft);font-size:14px}.favorite-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:white;color:var(--ink);font-size:12px;font-weight:800;cursor:pointer}.favorite-button span[aria-hidden=true]{color:#a94e43;font-size:19px;line-height:1}.favorite-button.active{border-color:#dba7a0;background:#fff3f0}.favorite-button:disabled{opacity:.5;cursor:wait}.favorite-compact{position:absolute;z-index:2;top:12px;right:12px;width:37px;min-height:37px;padding:0;box-shadow:0 5px 14px rgba(0,0,0,.1)}.detail-actions{flex-wrap:wrap;gap:9px;margin-top:24px}.detail-actions,.shopping-action{display:flex;align-items:flex-start}.shopping-action{flex-direction:column}.shopping-action .button{min-height:44px;font-size:12px}.shopping-action>span{min-height:18px;margin:5px 0 0 9px;color:var(--green);font-size:10px;font-weight:800}.cta-section{margin-bottom:80px;padding:54px 58px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--orange);color:#1d352e;border-radius:30px 5px 30px 5px}.cta-section .eyebrow{color:#563122}.cta-section h2{max-width:650px;margin:0;font-family:Georgia,serif;font-size:40px;font-weight:500;line-height:1.1}.page-shell{max-width:1180px;margin:0 auto;padding:75px 28px 110px}.page-intro{max-width:800px}.decision-intro h1,.page-intro h1{font-size:clamp(43px,5vw,66px)}.decision-intro>p:last-child,.page-intro>p:last-child{max-width:690px;color:var(--ink-soft);font-size:18px}.catalog-filters{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px 16px;gap:12px 16px;margin-top:48px;padding:22px;background:var(--cream);border:1px solid #e4ddce;border-radius:18px 4px 18px 4px}.catalog-filters .search-field{grid-column:1/-1}.catalog-filters label>span{display:block;margin:0 0 7px 3px;color:var(--ink-soft);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.catalog-filters input,.catalog-filters select{width:100%;height:48px;padding:0 14px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);outline:none}.catalog-filters input:focus,.catalog-filters select:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(31,91,70,.12)}.catalog-toolbar{margin-top:22px;padding:15px 0;min-height:55px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--ink-soft);font-size:13px}.catalog-toolbar p{margin:0}.catalog-toolbar button{padding:4px;border:0;background:transparent;color:var(--green);font-weight:800;text-decoration:underline;cursor:pointer}.catalog-grid{grid-template-columns:repeat(3,1fr)}.empty-catalog{margin-top:45px;padding:65px 20px;background:var(--cream);border-radius:20px;text-align:center}.empty-catalog>span{font-size:55px}.empty-catalog h2{margin:14px 0 6px;font-family:Georgia,serif;font-size:29px}.empty-catalog p{margin:0 0 24px;color:var(--ink-soft)}.decision-page{max-width:900px;margin:0 auto;padding:70px 28px 110px}.decision-intro{margin-bottom:52px;text-align:center}.decision-intro h1{margin-left:auto;margin-right:auto}.decision-intro>p:last-child{margin:20px auto 0}.wizard{padding:18px 52px 52px;background:var(--cream);border:1px solid #e4ddce;border-radius:28px 7px 28px 7px}.wizard fieldset{margin:0;padding:34px 0;border:0;border-bottom:1px solid var(--line)}.wizard legend{width:100%;display:flex;align-items:center;gap:13px;padding:0}.wizard legend>span{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:50%;background:var(--green);color:white;font-size:13px;font-weight:800}.wizard legend small,.wizard legend strong{display:block}.wizard legend strong{font-family:Georgia,serif;font-size:21px}.wizard legend small{margin-top:2px;color:var(--ink-soft);font-size:12px}.chip-row,.choice-row{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:9px;gap:9px;margin-top:22px}.choice-row.compact{grid-template-columns:repeat(4,minmax(90px,140px))}.chip-row button,.choice-row button{min-height:46px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:white;font-weight:700;font-size:13px;cursor:pointer}.chip-row button:hover,.choice-row button:hover{border-color:var(--green)}.chip-row button.selected,.choice-row button.selected{border-color:var(--green);background:var(--green);color:white;box-shadow:inset 0 0 0 1px var(--green)}.chip-row{grid-template-columns:repeat(5,1fr)}.chip-row button{min-height:38px;border-radius:999px;font-size:12px}.pantry-toggle{margin-top:22px;width:100%;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 18px;border:1px dashed color-mix(in srgb,var(--green) 40%,var(--line));border-radius:12px;background:#fff8ef;color:var(--ink);font-weight:700;font-size:14px;cursor:pointer;transition:border-color .2s,background .2s}.pantry-toggle:hover{border-color:var(--green);background:#fff3ea}.pantry-toggle span{color:var(--green);font-size:18px;line-height:1}.pantry-collapse{margin-top:16px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:white;color:var(--ink-soft);font-weight:700;font-size:12px;cursor:pointer}.pantry-collapse:hover{border-color:var(--green);color:var(--ink)}.pantry-groups{margin-top:22px;display:flex;flex-direction:column;gap:16px}.pantry-group-label{display:block;font-size:12px;font-weight:800;color:var(--ink-soft)}.pantry-group .chip-row{margin-top:8px}.submit-button{width:100%;margin-top:32px;border:0}.submit-button:disabled{opacity:.65;cursor:wait}.form-error,.relaxed-note{padding:12px;border-radius:8px;background:#fff0eb;color:#82351f;font-size:13px}.result-shell{padding:22px;background:var(--cream);border:1px solid #e4ddce;border-radius:28px 7px 28px 7px;box-shadow:var(--shadow)}.result-label{display:flex;justify-content:space-between;align-items:center;padding:5px 8px 20px;color:var(--ink-soft);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.09em}.result-label button{border:0;background:transparent;color:var(--green);text-transform:none;letter-spacing:normal;text-decoration:underline;cursor:pointer}.primary-result{display:grid;grid-template-columns:.82fr 1.18fr;grid-gap:35px;gap:35px;padding:24px;background:white;border-radius:18px 4px 18px 4px}.result-emoji{position:relative;overflow:hidden;display:grid;place-items:center;min-height:410px;border-radius:14px 3px 14px 3px;font-size:100px}.result-emoji img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.result-copy{padding:26px 20px 20px 0}.result-copy h2{margin:0;font-family:Georgia,serif;font-size:42px;line-height:1.05}.result-copy>p:not(.eyebrow){color:var(--ink-soft)}.result-stats{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.result-stats span{padding:6px 10px;border:1px solid var(--line);border-radius:999px;font-size:11px;font-weight:800}.reason-box{margin:20px 0 25px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:#fdeee7;font-size:13px}.reason-box ul{margin:7px 0 0;padding-left:18px;color:var(--ink-soft)}.alternatives{padding:25px 8px 5px}.alternatives h3{font-family:Georgia,serif}.alternatives>div{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.alternatives a{display:flex;align-items:center;gap:12px;padding:12px;background:white;border:1px solid var(--line);border-radius:10px}.alternatives a>span{font-size:29px}.alternatives a img.alt-thumb{width:52px;height:52px;flex-shrink:0;border-radius:9px;object-fit:cover}.alternatives a div{flex:1 1}.alternatives a small,.alternatives a strong{display:block}.alternatives a small,.back-link{color:var(--ink-soft)}.back-link{display:inline-block;margin-bottom:35px;font-size:13px;font-weight:700}.recipe-hero{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:50px;gap:50px;align-items:center;padding-bottom:65px;border-bottom:1px solid var(--line)}.recipe-hero-copy>p:not(.eyebrow){max-width:650px;color:var(--ink-soft);font-size:18px}.detail-visual{display:grid;place-items:center;min-height:350px;border-radius:35px 6px 35px 6px;font-size:112px}.detail-visual img{width:100%;height:350px;object-fit:cover;border-radius:inherit}.image-credit{display:block;margin-top:7px;color:var(--ink-soft);font-size:10px;text-align:right}.catalog-waiting{margin-top:40px;padding:30px;background:var(--cream);color:var(--ink-soft);border-radius:12px}.detail-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px;margin-top:30px}.detail-stats span{padding-right:10px;border-right:1px solid var(--line)}.detail-stats span:last-child{border:0}.detail-stats small,.detail-stats strong{display:block}.detail-stats small{color:var(--ink-soft);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.detail-stats strong{margin-top:3px;font-size:14px}.recipe-content{display:grid;grid-template-columns:.82fr 1.18fr;grid-gap:70px;gap:70px;padding-top:60px}.recipe-content h2{margin:0 0 25px;font-family:Georgia,serif;font-size:32px;font-weight:500}.ingredients-panel{align-self:start;padding:30px;background:var(--cream);border-radius:22px 5px 22px 5px}.panel-heading{display:flex;align-items:baseline;justify-content:space-between}.panel-heading span{color:var(--ink-soft);font-size:12px}.ingredients-panel ul{margin:0;padding:0;list-style:none}.ingredients-panel li{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.ingredients-panel li strong{text-align:right}.allergen-note{margin-top:22px;padding:14px;background:#fff2e9;border:1px solid #efd4c2;border-radius:9px;font-size:12px}.allergen-note p{margin:3px 0 0;color:var(--ink-soft)}.steps-panel ol{margin:0;padding:0;list-style:none}.steps-panel li{display:flex;gap:18px;padding:0 0 27px}.steps-panel li>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:50%;background:var(--green);color:white;font-family:Georgia,serif}.steps-panel li p{margin:5px 0 0}.tip-box{display:flex;gap:15px;padding:20px;border:1px solid #cbd7a2;background:#f1f6de;border-radius:12px}.tip-box>span{font-size:22px;color:var(--green)}.tip-box p{margin:4px 0 0;color:var(--ink-soft);font-size:13px}.tag-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:25px}.tag-list span{padding:6px 10px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);font-size:11px}.site-footer{max-width:1180px;margin:0 auto;padding:42px 28px;display:flex;justify-content:space-between;gap:50px;border-top:1px solid var(--line);color:var(--ink-soft);font-size:12px}.site-footer strong{color:var(--ink);font-family:Georgia,serif;font-size:17px}.site-footer p{max-width:470px;margin:6px 0}.site-links{margin-top:14px;font-size:12px}.site-links a{color:var(--ink);font-weight:700;text-decoration:none}.site-links a:hover{color:var(--green)}.site-rights{margin-top:8px;font-size:11px;color:var(--ink-soft)}.site-rights a{color:var(--green);font-weight:700;text-decoration:none}.site-rights a:hover{text-decoration:underline}.site-social{margin-top:12px;font-size:12px}.site-social a{color:var(--green);font-weight:800;text-decoration:none}.site-social a:hover{text-decoration:underline}.site-credit{margin-top:8px;font-size:11px}.site-credit a{color:var(--green);font-weight:700;text-decoration:none}.site-credit a:hover{text-decoration:underline}.library-page .page-intro{margin-bottom:45px}.library-empty,.library-loading{padding:65px 25px;border:1px solid var(--line);border-radius:20px 5px 20px 5px;background:var(--cream);text-align:center}.library-empty>span{color:var(--orange);font-size:58px}.library-empty h2{margin:10px 0 6px;font-family:Georgia,serif;font-size:31px;font-weight:500}.library-empty p{max-width:540px;margin:0 auto 24px;color:var(--ink-soft)}.shopping-list-app{max-width:820px}.shopping-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.shopping-summary p{margin:0;color:var(--ink-soft);font-size:13px}.shopping-summary>div{display:flex;flex-wrap:wrap;gap:8px}.shopping-summary button{padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--green);font-size:10px;font-weight:800;cursor:pointer}.shopping-summary button.danger{color:#8d3b2d}.shopping-summary button:disabled{opacity:.4;cursor:not-allowed}.shopping-items{margin:25px 0 0;padding:0;list-style:none}.shopping-items li{display:grid;grid-template-columns:minmax(180px,.8fr) 1.2fr 34px;align-items:center;grid-gap:18px;gap:18px;min-height:76px;padding:12px 8px;border-bottom:1px solid var(--line)}.shopping-items li>label{display:flex;align-items:center;gap:10px;font-family:Georgia,serif;font-size:18px;cursor:pointer}.shopping-items input{position:absolute;opacity:0;pointer-events:none}.check-mark{display:grid;place-items:center;width:25px;height:25px;flex:0 0 auto;border:1px solid #b9c2bb;border-radius:6px;background:white;color:transparent;font-family:Arial,sans-serif;font-size:13px}.shopping-items input:focus-visible+.check-mark{outline:3px solid rgba(31,91,70,.2);outline-offset:2px}.shopping-items input:checked+.check-mark{border-color:var(--green);background:var(--green);color:white}.shopping-items li.checked .shopping-name{color:var(--ink-soft);text-decoration:line-through}.shopping-amounts{display:flex;flex-wrap:wrap;gap:6px}.shopping-amounts span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:var(--cream);font-size:10px}.shopping-amounts a{color:var(--ink-soft)}.shopping-remove{width:30px;height:30px;border:0;background:transparent;color:#995143;font-size:20px;cursor:pointer}.local-data-note{margin-top:20px;color:var(--ink-soft);font-size:10px}.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}.admin-page{max-width:1180px;margin:0 auto;padding:65px 28px 110px}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:30px}.admin-header h1{margin:0;font-family:Georgia,serif;font-size:52px;font-weight:500;letter-spacing:-.035em}.admin-header p:last-child{margin:10px 0 0;color:var(--ink-soft)}.admin-header-actions{display:flex;flex-wrap:wrap;gap:9px}.admin-setup{margin-top:35px;padding:20px 22px;border:1px solid #e4bd73;border-radius:12px;background:#fff7dc}.admin-setup p{margin:5px 0 12px;color:var(--ink-soft);font-size:13px}.admin-setup code{display:inline-block;padding:7px 9px;border-radius:6px;background:rgba(255,255,255,.75);font-size:12px}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:13px;gap:13px;margin:35px 0}.admin-stats article{padding:21px;border:1px solid var(--line);border-radius:14px 3px 14px 3px;background:white}.admin-stats span,.admin-stats strong{display:block}.admin-stats span{color:var(--ink-soft);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.admin-stats strong{margin-top:7px;font-family:Georgia,serif;font-size:35px}.admin-table-shell{overflow:hidden;border:1px solid var(--line);border-radius:18px 4px 18px 4px;background:white}.admin-table-heading{display:flex;justify-content:space-between;align-items:baseline;padding:22px;border-bottom:1px solid var(--line)}.admin-table-heading h2{margin:0;font-family:Georgia,serif;font-size:27px}.admin-table-heading span{color:var(--ink-soft);font-size:11px}.admin-table{width:100%}.admin-row{display:grid;grid-template-columns:minmax(250px,2fr) 1fr 1fr minmax(240px,1.3fr);align-items:center;min-height:70px;padding:10px 22px;border-bottom:1px solid #ece9e0;font-size:13px}.admin-row:last-child{border:0}.admin-row-head{min-height:40px;background:var(--cream);color:var(--ink-soft);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.admin-row div>small,.admin-row div>strong{display:block}.admin-row div>small{margin-top:2px;color:var(--ink-soft)}.status-pill{display:inline-block;padding:5px 8px;border-radius:999px;background:#ece9e0;font-size:10px;font-style:normal;font-weight:800}.status-review{background:#fff1bd}.status-published{background:#dcefcf;color:#2e5c2f}.status-archived{background:#e1e1e1;color:#626262}.admin-row form{display:flex;gap:7px}.admin-row>div:last-child{display:flex;align-items:center;gap:10px}.admin-edit-link{color:var(--green);font-size:11px;font-weight:800;text-decoration:underline}.admin-row select{min-width:125px;height:36px;padding:0 8px;border:1px solid var(--line);border-radius:7px;background:white}.admin-row form button{height:36px;padding:0 12px;border:0;border-radius:7px;background:var(--green);color:white;font-size:11px;font-weight:800;cursor:pointer}.admin-row form button:disabled,.admin-row select:disabled{opacity:.45;cursor:not-allowed}.admin-security-note{margin:18px 0 0;color:var(--ink-soft);font-size:11px}.admin-edit-page{max-width:980px;margin:0 auto;padding:60px 28px 110px}.admin-edit-header{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:35px}.admin-edit-header h1{margin:0;font-family:Georgia,serif;font-size:46px;font-weight:500;letter-spacing:-.03em}.admin-edit-header p:last-child{margin:8px 0 0;color:var(--ink-soft);font-size:12px}.admin-success{padding:13px 16px;border:1px solid #b6d6a3;border-radius:9px;background:#e9f6df;color:#2e5c2f;font-size:13px;font-weight:800}.admin-edit-form{display:grid;grid-gap:22px;gap:22px}.admin-edit-form>section{padding:30px;border:1px solid var(--line);border-radius:18px 4px 18px 4px;background:white}.admin-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid var(--line)}.admin-form-heading>div{display:flex;align-items:center;gap:10px}.admin-form-heading span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--green);color:white;font-size:11px;font-weight:800}.admin-form-heading h2{margin:0;font-family:Georgia,serif;font-size:25px}.admin-form-heading p{max-width:370px;margin:4px 0 0;color:var(--ink-soft);font-size:12px;text-align:right}.admin-form-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:17px;gap:17px}.admin-form-grid label.wide{grid-column:1/-1}.admin-form-grid label>span{display:block;margin:0 0 6px 2px;color:var(--ink-soft);font-size:11px;font-weight:800}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--ink);outline:none}.admin-form-grid input,.admin-form-grid select{height:44px}.admin-form-grid textarea{resize:vertical;line-height:1.5}.admin-form-grid input:focus,.admin-form-grid select:focus,.admin-form-grid textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(31,91,70,.1)}.admin-form-grid input:disabled,.admin-form-grid select:disabled,.admin-form-grid textarea:disabled{background:#f3f1eb;color:#6e746f}.admin-image-preview{margin-top:22px;overflow:hidden;border-radius:12px}.admin-image-preview img{display:block;width:100%;max-height:400px;object-fit:cover}.admin-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:20px}.admin-form-actions>a{color:var(--ink-soft);font-size:13px;font-weight:800}.builder-block+.builder-block{margin-top:35px;padding-top:30px;border-top:1px solid var(--line)}.builder-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.builder-heading h3{margin:0;font-family:Georgia,serif;font-size:20px}.builder-heading small{color:var(--ink-soft)}.builder-heading>button{padding:8px 12px;border:1px solid var(--green);border-radius:999px;background:white;color:var(--green);font-size:11px;font-weight:800;cursor:pointer}.builder-heading>button:disabled{opacity:.45;cursor:not-allowed}.builder-list,.ingredient-editor,.step-editor{display:grid;grid-gap:9px;gap:9px}.ingredient-editor,.step-editor{align-items:center;padding:10px;border:1px solid #e8e4da;border-radius:9px;background:var(--cream)}.ingredient-editor{grid-template-columns:30px minmax(150px,1.3fr) minmax(130px,1fr) 100px auto}.step-editor{grid-template-columns:30px 1fr auto;align-items:start}.builder-number{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:white;color:var(--ink-soft);font-size:11px;font-weight:800}.ingredient-editor label>span:not(.sr-only){display:block;margin:0 0 4px;color:var(--ink-soft);font-size:9px;font-weight:800;text-transform:uppercase}.ingredient-editor input[type=text],.ingredient-editor label>input:not([type=checkbox]),.step-editor textarea{width:100%;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink)}.ingredient-editor label>input:not([type=checkbox]){height:38px;padding:0 9px}.step-editor textarea{padding:9px;resize:vertical;line-height:1.45}.pantry-check{display:flex;align-items:center;gap:6px;padding-top:14px}.pantry-check span{margin:0!important;text-transform:none!important}.builder-controls{display:flex;gap:3px;padding-top:14px}.step-editor .builder-controls{padding-top:0}.builder-controls button{display:grid;place-items:center;width:29px;height:29px;padding:0;border:1px solid var(--line);border-radius:6px;background:white;cursor:pointer}.builder-controls button.remove{color:#9b3d2a}.builder-controls button:disabled{opacity:.3;cursor:not-allowed}.bulk-import-page{max-width:1080px}.bulk-guide{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:13px;gap:13px;margin-bottom:22px}.bulk-guide>div{position:relative;min-height:185px;padding:24px;border:1px solid var(--line);border-radius:16px 4px 16px 4px;background:white}.bulk-guide span{display:grid;place-items:center;width:30px;height:30px;margin-bottom:22px;border-radius:50%;background:var(--green);color:white;font-size:11px;font-weight:800}.bulk-guide strong{display:block;font-family:Georgia,serif;font-size:20px}.bulk-guide p{min-height:42px;margin:7px 0 12px;color:var(--ink-soft);font-size:12px;line-height:1.5}.bulk-guide a{color:var(--green);font-size:12px;font-weight:800;text-decoration:underline}.bulk-format-note{margin-bottom:22px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:var(--cream)}.bulk-format-note code,.bulk-format-note strong{display:block}.bulk-format-note code{max-width:100%;margin:8px 0;padding:8px 10px;overflow-x:auto;border-radius:6px;background:white;font-size:11px;white-space:nowrap}.bulk-format-note p{margin:0;color:var(--ink-soft);font-size:11px}.bulk-import-form{display:grid;grid-gap:20px;gap:20px}.bulk-dropzone{min-height:210px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:28px;border:2px dashed #b9c7bf;border-radius:20px 5px 20px 5px;background:white;text-align:center;cursor:pointer;transition:border-color .2s,background .2s}.bulk-dropzone:focus-within,.bulk-dropzone:hover{border-color:var(--green);background:#fbfcf7}.bulk-dropzone input{position:absolute;width:1px;height:1px;opacity:0}.bulk-dropzone>span{display:grid;place-items:center;width:48px;height:48px;margin-bottom:12px;border-radius:50%;background:var(--lime);color:var(--green-dark);font-size:26px}.bulk-dropzone strong{font-family:Georgia,serif;font-size:22px}.bulk-dropzone small{margin-top:5px;color:var(--ink-soft)}.bulk-preview{overflow:hidden;border:1px solid var(--line);border-radius:16px 4px 16px 4px;background:white}.bulk-preview-summary{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);background:var(--cream)}.bulk-preview-summary div{padding:20px 24px}.bulk-preview-summary div+div{border-left:1px solid var(--line)}.bulk-preview-summary span,.bulk-preview-summary strong{display:block}.bulk-preview-summary strong{font-family:Georgia,serif;font-size:32px}.bulk-preview-summary span{color:var(--ink-soft);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.bulk-issues{padding:24px}.bulk-issues h2{margin:0 0 15px;font-family:Georgia,serif;font-size:24px}.bulk-issues ul{display:grid;grid-gap:7px;gap:7px;margin:0;padding:0;list-style:none}.bulk-issues li{display:grid;grid-template-columns:minmax(170px,.35fr) 1fr;grid-gap:15px;gap:15px;padding:10px 12px;border-radius:7px;background:#fff3ee;font-size:11px}.bulk-issues li b{color:#873d2d}.bulk-table-shell{overflow-x:auto}.bulk-table-shell table{width:100%;min-width:720px;border-collapse:collapse;font-size:12px}.bulk-table-shell td,.bulk-table-shell th{padding:12px 15px;border-bottom:1px solid #ece9e0;text-align:left}.bulk-table-shell th{color:var(--ink-soft);font-size:9px;text-transform:uppercase;letter-spacing:.07em}.bulk-table-shell td small,.bulk-table-shell td strong{display:block}.bulk-table-shell td small{margin-top:2px;color:var(--ink-soft)}.bulk-table-shell>p{padding:0 15px;color:var(--ink-soft);font-size:11px}.bulk-alert{margin:0;padding:14px 16px;border:1px solid #dfc57f;border-radius:9px;background:#fff7dc;font-size:12px}.bulk-alert-error{border-color:#e2aaa0;background:#fff0ed;color:#7d3024}.bulk-alert-success{border-color:#aed09c;background:#eaf6e2;color:#2e5c2f}.bulk-alert ul{margin:8px 0 0;padding-left:18px}.bulk-import-form .admin-form-actions{padding-top:18px;border-top:1px solid var(--line)}.bulk-import-form .admin-form-actions>span{color:var(--ink-soft);font-size:11px}.bulk-import-form .admin-form-actions button:disabled{opacity:.45;cursor:not-allowed;transform:none}.nutrition-box{margin-top:18px;padding:16px 18px;background:#fff8ef;border:1px solid var(--line);border-radius:14px}.nutrition-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:12px}.nutrition-heading strong{font-size:13px;font-weight:800;letter-spacing:.02em;color:var(--ink)}.nutrition-heading span{font-size:11px;color:var(--ink-soft)}.nutrition-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;text-align:center}.nutrition-grid>div{padding:8px 4px;background:white;border:1px solid var(--line);border-radius:10px}.nutrition-grid b{display:block;font-family:Georgia,serif;font-size:19px;font-weight:500;color:var(--green)}.nutrition-grid small{display:block;margin-top:2px;font-size:10px;color:var(--ink-soft)}.nutrition-note{margin:10px 0 0;font-size:11px;line-height:1.5;color:var(--ink-soft)}.recipe-faq{max-width:820px;margin:60px auto 0;padding-top:40px;border-top:1px solid var(--line)}.recipe-faq h2{margin:0 0 24px;font-family:Georgia,serif;font-size:clamp(26px,3vw,34px);font-weight:500;letter-spacing:-.02em}.faq-item{padding:20px 0;border-bottom:1px solid var(--line)}.faq-item h3{margin:0 0 8px;font-family:Georgia,serif;font-size:20px;font-weight:500;letter-spacing:-.01em}.faq-item p{margin:0;max-width:68ch;color:var(--ink-soft);font-size:15.5px;line-height:1.7}.legal-page{max-width:760px}.legal-page h1{margin:0 0 18px;font-family:Georgia,serif;font-size:clamp(34px,4vw,50px);font-weight:500;letter-spacing:-.03em;text-wrap:balance}.legal-lead{max-width:62ch;color:var(--ink-soft);font-size:17px;line-height:1.65}.legal-section{margin-top:34px}.legal-section h2{margin:0 0 12px;font-family:Georgia,serif;font-size:23px;font-weight:500;letter-spacing:-.02em}.legal-section p{margin:0 0 10px}.legal-section p,.legal-section ul{max-width:64ch;color:var(--ink);font-size:15.5px;line-height:1.7}.legal-section ul{margin:0;padding-left:22px}.legal-section li{margin-bottom:8px}.legal-back{margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}.legal-back a{color:var(--green);font-weight:700;text-decoration:none}.legal-back a:hover{text-decoration:underline}.share-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.share-label{color:var(--ink-soft);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.share-buttons{display:flex;flex-wrap:wrap;gap:9px}.share-btn{display:inline-grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;color:white;cursor:pointer;text-decoration:none;transition:transform .18s cubic-bezier(.22,1,.36,1),filter .18s;-webkit-tap-highlight-color:transparent}.share-btn:hover{transform:translateY(-3px);filter:brightness(1.06)}.share-btn:active{transform:translateY(-1px)}.share-whatsapp{background:#25d366}.share-x{background:#000}.share-facebook{background:#1877f2}.share-telegram{background:#229ed9}.share-instagram{background:#e1306c}.share-copy{background:white;color:var(--ink);border:1px solid var(--line)}.share-copy:hover{border-color:var(--green)}.share-copied{min-width:40px;color:var(--green);font-size:12px;font-weight:800}.collections-index-hero{max-width:720px;margin-bottom:8px}.collections-index-hero h1{margin:0 0 16px;font-family:Georgia,serif;font-size:clamp(38px,5vw,62px);font-weight:500;letter-spacing:-.03em;text-wrap:balance}.collections-index-lead{max-width:60ch;color:var(--ink-soft);font-size:17px;line-height:1.6}.collections-group{margin-top:54px}.collections-group h2{margin:0 0 20px;font-family:Georgia,serif;font-size:27px;font-weight:500;letter-spacing:-.02em}.collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:16px;gap:16px}.collection-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:22px;background:white;border:1px solid var(--line);border-radius:20px 5px 20px 5px;text-decoration:none;color:var(--ink);transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s,border-color .2s}.collection-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:var(--shadow)}.collection-card-emoji{display:grid;place-items:center;width:52px;height:52px;margin-bottom:4px;border-radius:50% 50% 48% 52%;background:color-mix(in srgb,var(--accent) 14%,white);font-size:26px}.collection-card strong{font-family:Georgia,serif;font-size:21px;font-weight:500;letter-spacing:-.01em}.collection-card-blurb{color:var(--ink-soft);font-size:13.5px;line-height:1.5}.collection-card-go{margin-top:auto;padding-top:8px;color:var(--accent);font-size:12px;font-weight:800}.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:26px;font-size:12px;font-weight:700}.crumb,.crumb a{color:var(--ink-soft)}.crumb a{text-decoration:none}.crumb a:hover{color:var(--green)}.crumb span[aria-hidden]{opacity:.5}.collection-hero{max-width:760px;margin-bottom:40px;padding-bottom:34px;border-bottom:1px solid var(--line)}.collection-hero .eyebrow{color:var(--accent)}.collection-hero h1{display:flex;align-items:center;gap:14px;margin:0 0 18px;font-family:Georgia,serif;font-size:clamp(36px,4.6vw,56px);font-weight:500;letter-spacing:-.03em;text-wrap:balance}.collection-hero-emoji{display:inline-grid;place-items:center;width:60px;height:60px;flex-shrink:0;border-radius:50% 50% 48% 52%;background:color-mix(in srgb,var(--accent) 15%,white);font-size:30px}.collection-intro{max-width:64ch;color:var(--ink-soft);font-size:16.5px;line-height:1.65}.collection-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px}.collection-count{color:var(--ink-soft);font-size:13px;font-weight:800}.collection-related{margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}.collection-related h2{margin:0 0 18px;font-family:Georgia,serif;font-size:24px;font-weight:500}.collection-related-row{display:flex;flex-wrap:wrap;gap:12px}.collection-related-row a{display:inline-flex;align-items:center;gap:9px;padding:11px 16px;background:white;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink);font-weight:700;font-size:14px;transition:border-color .2s,transform .2s}.collection-related-row a:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}@media (max-width:900px){.hero-section,.recipe-content,.recipe-hero{grid-template-columns:1fr}.hero-section{gap:40px}.hero-board{max-width:560px}.catalog-grid,.recipe-grid{grid-template-columns:repeat(2,1fr)}.step-grid{grid-template-columns:1fr;gap:0}.chip-row{grid-template-columns:repeat(3,1fr)}.result-emoji{min-height:330px}.recipe-content{gap:40px}.admin-row{grid-template-columns:minmax(220px,1.7fr) 1fr 1fr}.admin-row-head>:nth-child(2),.admin-row>:nth-child(2){display:none}.bulk-guide{grid-template-columns:1fr}.bulk-guide>div{min-height:auto}.bulk-guide p{min-height:0}}@media (max-width:620px){.site-header{min-height:60px;padding:0 18px;position:-webkit-sticky;position:sticky;top:0;z-index:40;background:rgba(251,245,236,.94);-webkit-backdrop-filter:saturate(1.1) blur(8px);backdrop-filter:saturate(1.1) blur(8px);border-bottom:1px solid var(--line)}.site-header nav{gap:15px}.site-header nav a{display:none}.site-header nav .nav-favorites{display:inline-flex}body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.mobile-tabbar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(251,245,236,.96);-webkit-backdrop-filter:saturate(1.1) blur(12px);backdrop-filter:saturate(1.1) blur(12px);border-top:1px solid var(--line);padding:7px 6px calc(7px + env(safe-area-inset-bottom));box-shadow:0 -6px 22px rgba(60,40,30,.07)}.mobile-tabbar a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:13px;font-size:11px;font-weight:700;letter-spacing:-.01em;color:var(--ink-soft);text-decoration:none;-webkit-tap-highlight-color:transparent;transition:color .18s cubic-bezier(.22,1,.36,1),background .18s cubic-bezier(.22,1,.36,1)}.mobile-tabbar a span{font-size:21px;line-height:1}.mobile-tabbar a:active{background:rgba(196,64,42,.09);color:var(--ink)}.mobile-tabbar .tab-accent{color:var(--green)}.decision-page,.hero-section,.page-shell{padding-left:20px;padding-right:20px}.hero-section{min-height:auto;padding-top:40px}.hero-copy h1{font-size:46px}.hero-lead{font-size:16px}.hero-board{padding:22px}.section-shell{padding:52px 20px}.catalog-filters,.catalog-grid,.recipe-grid{grid-template-columns:1fr}.cta-section,.heading-row,.site-footer{align-items:flex-start;flex-direction:column}.cta-section{margin:0 20px 60px;padding:38px 27px}.cta-section h2{font-size:34px}.wizard{padding:8px 19px 30px}.chip-row,.choice-row,.choice-row.compact{grid-template-columns:1fr 1fr}.chip-row button{min-height:44px}.primary-result{grid-template-columns:1fr;padding:13px}.result-emoji{min-height:230px}.result-copy{padding:18px 8px}.result-copy h2{font-size:34px}.alternatives>div{grid-template-columns:1fr}.detail-visual{min-height:260px}.detail-stats{grid-template-columns:1fr 1fr}.detail-stats span:nth-child(2){border:0}.recipe-content{padding-top:40px}.admin-edit-page,.admin-page{padding:48px 18px 80px}.admin-edit-header,.admin-header{align-items:flex-start;flex-direction:column}.admin-header h1{font-size:42px}.admin-edit-header h1{font-size:38px}.admin-stats{grid-template-columns:1fr 1fr}.admin-table-shell{overflow-x:auto}.admin-table{min-width:720px}.admin-edit-form>section{padding:22px 17px}.admin-form-heading{flex-direction:column;gap:8px}.admin-form-heading p{text-align:left}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid label.wide{grid-column:auto}.ingredient-editor{grid-template-columns:27px 1fr}.ingredient-editor>.builder-controls,.ingredient-editor>label{grid-column:2}.builder-controls,.pantry-check{padding-top:0}.step-editor{grid-template-columns:27px 1fr}.step-editor .builder-controls{grid-column:2}.bulk-preview-summary{grid-template-columns:1fr 1fr}.bulk-issues li{grid-template-columns:1fr;gap:3px}.bulk-import-form .admin-form-actions{align-items:stretch;flex-direction:column}.bulk-import-form .admin-form-actions button{width:100%}.shopping-summary{align-items:flex-start;flex-direction:column}.shopping-items li{grid-template-columns:1fr 32px;gap:7px;padding:15px 4px}.shopping-amounts,.shopping-items li>label{grid-column:1}.shopping-remove{grid-column:2;grid-row:1}}@media print{.local-data-note,.shopping-remove,.shopping-summary button,.site-footer,.site-header{display:none!important}.page-shell{max-width:none;padding:0}.shopping-items li{page-break-inside:avoid;break-inside:avoid}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important}}