/* MorselHug theme: warm cream + cinnamon + sage, Fraunces (soft) + Nunito.
   Loaded after styles.css on every page; only changes the look. */
@font-face{font-family:"Fraunces";font-weight:100 900;font-style:normal;font-display:swap;src:url("../fonts/fraunces-latin-full-normal.woff2") format("woff2")}
@font-face{font-family:"Fraunces";font-weight:100 900;font-style:italic;font-display:swap;src:url("../fonts/fraunces-latin-full-italic.woff2") format("woff2")}
@font-face{font-family:"Nunito";font-weight:400;font-display:swap;src:url("../fonts/nunito-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Nunito";font-weight:600;font-display:swap;src:url("../fonts/nunito-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Nunito";font-weight:700;font-display:swap;src:url("../fonts/nunito-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Nunito";font-weight:800;font-display:swap;src:url("../fonts/nunito-latin-800-normal.woff2") format("woff2")}

:root{
  --bg:#FDFBF8; --surface:#FFFFFF; --ink:#2E2A26; --muted:#6E665E;
  --accent:#C2602F; --accent-dark:#A24D22; --accent-ink:#FFFFFF;
  --green:#6E8B6A; --green-dark:#4F6B4C; --green-soft:#EEF2EC;
  --line:#EFE6DD; --cream:#F3E9E1; --peach:#F3E9E1; --berry:#A24D22;
  --warn-bg:#FFF4E5; --radius:24px; --max:76rem;
  --shadow:0 8px 24px rgba(46,42,38,.06);
}
html{font-size:106.25%}
body{font-family:Nunito,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}
h1,h2,h3,h4,.brand{font-family:Fraunces,Georgia,serif;font-variation-settings:"SOFT" 100,"WONK" 1;color:var(--ink);letter-spacing:-.01em}
h1{font-weight:650}
h2,h3{font-weight:600}
a{color:var(--accent-dark)}
a:hover{color:var(--accent)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--green-dark);outline-offset:2px}
.lede{color:var(--muted)}
.hand{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500;font-variation-settings:"SOFT" 100,"WONK" 1}

/* Header */
header.site{background:rgba(253,251,248,.94);border-bottom:1px solid transparent}
.bar{padding-top:1rem;padding-bottom:1rem}
.brand{font-size:1.55rem;font-weight:650;display:inline-flex;align-items:center;text-decoration:none;color:var(--ink)}
.brand::before{content:"";width:2.1rem;height:2.1rem;margin-right:.55rem;border-radius:50%;flex:none;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cg fill='%23fff'%3E%3Cellipse cx='20' cy='25' rx='6.5' ry='5.6'/%3E%3Ccircle cx='12.5' cy='17.5' r='3'/%3E%3Ccircle cx='17' cy='12' r='3'/%3E%3Ccircle cx='23' cy='12' r='3'/%3E%3Ccircle cx='27.5' cy='17.5' r='3'/%3E%3C/g%3E%3C/svg%3E") center/100% no-repeat}
.brand span{color:var(--accent)}
nav.main a{font-weight:700;color:var(--ink);border-bottom-width:2px}
nav.main a[aria-current="page"],nav.main a:hover{border-bottom-color:var(--accent);color:var(--ink)}

/* Cards, tiles, buttons */
.card{border:0;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}
.cta,button.primary{background:var(--accent);color:#fff;border-radius:999px;font-family:Fraunces,Georgia,serif;font-variation-settings:"SOFT" 100,"WONK" 1;font-weight:600;letter-spacing:0}
.cta:hover,button.primary:hover{background:var(--accent-dark);color:#fff}
.cta-secondary{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.cta-secondary:hover{background:var(--cream);color:var(--ink)}
button.secondary{border-radius:999px}
.verdict{background:var(--green-soft);color:var(--green-dark);border-radius:999px;font-weight:700}
.callout{border-radius:20px;border-left:0;background:var(--warn-bg)}
.tile{padding:12px;border-radius:26px;overflow:visible}
.tile .food-art{border-radius:18px}
.tile .tile-body{padding:.8rem .5rem .4rem}
.tile h3{font-size:1.2rem;margin:.1rem 0 .2rem}
.tile p{color:#8A8178;font-weight:600}

/* Photo placeholders: replace emoji art with calm photo frames */
.food-art{background-color:var(--cream);}
.food-art:not(.has-photo){background:var(--cream) !important}
.food-art{color:#8A7060;position:relative;display:flex;align-items:center;justify-content:center}
.food-art::before{display:none !important}
.food-art .emoji,.food-art .hero-emoji{display:none}
.food-art::after{content:"Photo coming soon";font:600 .8rem Nunito,sans-serif;color:#8A7060;padding-top:2.2rem;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238A7060' stroke-width='1.5'%3E%3Cpath d='M4 8h3l2-3h6l2 3h3v11H4z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E") top center/1.6rem no-repeat}
.food-art.has-photo::after{display:none}
.food-art.has-photo{background-size:cover !important;background-position:center !important}
.art-pumpkin,.art-xmas{background-color:#F6E6DA !important}
.art-sweet,.art-thanks{background-color:#F4E2D6 !important}
.art-pb,.art-tools{background-color:#F3E9E1 !important}
.art-banana,.art-hall{background-color:#F5EDDC !important}
.art-egg{background-color:#F2EDE4 !important}
.art-tuna,.art-check{background-color:#E9EEEA !important}
.art-cake,.art-bday{background-color:#F6E4E0 !important}

/* Homepage hero (photo + speech bubble) */
.mh-hero{display:grid;grid-template-columns:1fr;border-radius:36px;overflow:hidden;background:var(--cream);margin:.5rem 0 2rem}
@media(min-width:860px){.mh-hero{grid-template-columns:1fr 1fr;min-height:34rem}}
.mh-hero-copy{padding:2.5rem 1.75rem;display:flex;flex-direction:column;justify-content:center}
@media(min-width:860px){.mh-hero-copy{padding:3.5rem 3rem}}
.mh-tag{align-self:flex-start;display:inline-flex;gap:.45rem;align-items:center;background:#fff;color:var(--accent-dark);font-weight:800;font-size:.8rem;padding:.45rem .85rem;border-radius:999px}
.mh-hero h1{font-size:clamp(2.4rem,5.5vw,3.9rem);line-height:1.02;margin:1rem 0 .35rem}
.mh-hero .hand{color:var(--green-dark);font-size:clamp(1.25rem,2.4vw,1.6rem);margin:0 0 .9rem}
.mh-hero .lede{margin:0;max-width:30rem}
.mh-hero .btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.mh-hero .btn-row .cta{margin:0}
.mh-hero-photo{position:relative;min-height:22rem;background:#d9cbb8 center/cover no-repeat}
.mh-bubble{position:absolute;right:1.25rem;top:1.25rem;background:#fff;border-radius:22px 22px 4px 22px;padding:.55rem 1.1rem;font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:600;font-variation-settings:"SOFT" 100,"WONK" 1;font-size:1.3rem;color:var(--ink);box-shadow:0 10px 30px rgba(46,42,38,.15)}
.mh-sticker{position:absolute;left:1.25rem;bottom:1.25rem;background:var(--green-dark);color:#fff;border-radius:16px;padding:.45rem .9rem;font-family:Fraunces,Georgia,serif;font-weight:600;font-size:.95rem}

/* Feature strip and sections */
.feature-num{background:var(--accent-dark)}
.feature-card{border-radius:22px}
.home-section > h2:first-child{font-size:clamp(1.6rem,3vw,2.1rem)}
.section-sub{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:500;font-variation-settings:"SOFT" 100,"WONK" 1;color:var(--accent-dark);margin:-.4rem 0 1.2rem;font-size:1.15rem}
.chip{background:#fff;border:1.5px solid var(--line);border-radius:999px;font-weight:700}
.chip:has(input:checked){background:var(--green-dark);border-color:var(--green-dark);color:#fff}
.fridge-match{border-radius:20px}
.result{border-radius:var(--radius)}
.result-grid div{background:var(--cream);border-radius:14px}
input[type=number],input[type=text],select,textarea{border-radius:14px;border:1.5px solid var(--line)}

/* Footer */
footer.site{background:#2E2A26;color:#E9E2D9}
footer.site h2{color:#fff}
footer.site a{color:#F2C9A8}

/* Fridge finder: grouped chips + free-text add */
.fridge-group-label{font-weight:800;font-size:.85rem;color:var(--muted);margin:.4rem 0 .5rem}
.fridge-group-label:not(:first-child){margin-top:1.1rem}
.fridge-add{margin-top:1.2rem}
.fridge-add label{display:block;font-weight:800;font-size:.85rem;color:var(--muted);margin-bottom:.4rem}
.fridge-add-row{display:flex;gap:.5rem;flex-wrap:wrap}
.fridge-add-row input{flex:1 1 16rem;min-height:44px;padding:.55rem .9rem}
.fridge-add-row button{min-height:44px;padding:.5rem 1.3rem}
.fridge-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}
.fridge-tag{display:inline-flex;align-items:center;gap:.35rem;background:var(--green-soft);color:var(--green-dark);font-weight:700;border-radius:999px;padding:.3rem .45rem .3rem .85rem}
.fridge-tag.is-skip{background:#FDE7E2;color:#8A1F14}
.fridge-tag button{border:0;background:transparent;color:inherit;font-size:1.1rem;line-height:1;cursor:pointer;min-width:28px;min-height:28px;border-radius:50%}
.callout.danger{background:#FDE7E2}
.fridge-add-row button.secondary{width:auto;margin-top:0;flex:none;border-radius:999px;background:var(--green-dark);color:#fff;border-color:var(--green-dark)}
.fridge-add-row button.secondary:hover{background:#3E553C}

/* Fridge search (v2) */
.fridge-search label{display:block;font-family:Fraunces,Georgia,serif;font-weight:600;font-size:1.15rem;margin-bottom:.5rem}
.fridge-search-row{display:flex;gap:.5rem;flex-wrap:wrap}
.fridge-search-row input{flex:1 1 16rem;min-height:50px;padding:.6rem 1.1rem;border-radius:999px;font-size:1.02rem}
.fridge-search-row .cta{margin:0;border:0;cursor:pointer;min-height:50px;padding:.6rem 1.6rem;font-size:1rem}
.fridge-suggest{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;margin-top:.9rem}
.fridge-suggest span{font-weight:800;font-size:.85rem;color:var(--muted);margin-right:.2rem}
.fridge-suggest button{font:inherit;font-weight:700;font-size:.92rem;padding:.4rem .95rem;min-height:40px;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}
.fridge-suggest button[aria-pressed="true"]{background:var(--green-dark);border-color:var(--green-dark);color:#fff}
.fridge-tags:empty{display:none}
.fridge-tag.is-unknown{background:#F2EFEA;color:var(--muted)}
.fridge-type{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--green-dark);background:var(--green-soft);border-radius:999px;padding:.15rem .6rem}
.fridge-match h3{margin-top:.5rem}

/* Homepage treat categories */
.cat-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(12.5rem,1fr))}
.cat-card{border-radius:24px;padding:1.2rem 1.3rem 1rem}
.cat-card h3{margin:0 0 .5rem;font-size:1.25rem}
.cat-card ul{list-style:none;margin:0;padding:0}
.cat-card li{margin:.35rem 0}
.cat-card a{font-weight:700;color:var(--ink);text-decoration:none;border-bottom:1.5px solid rgba(46,42,38,.18)}
.cat-card a:hover{color:var(--accent-dark);border-bottom-color:var(--accent)}
.cta-icon{display:inline-flex;align-items:center;gap:.5rem}
.jump-to-recipe{margin:0 0 .5rem}
.recipe-status{display:inline-block;background:#fff;border:1.5px dashed var(--line);border-radius:14px;padding:.55rem .9rem;font-size:.92rem;color:var(--muted,#6b625b);margin:.25rem 0 .9rem}
.recipe-status strong{color:var(--ink)}
.mh-consent{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:50;max-width:40rem;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(60,40,20,.15);padding:1rem 1.1rem;display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}
.mh-consent p{margin:0;font-size:.92rem;flex:1 1 18rem}
.mh-consent button{width:auto;padding:.55rem 1.1rem}
#analytics-optout,#analytics-optin{width:auto;display:inline-block;padding:.55rem 1.1rem;margin:0 .4rem .4rem 0}
.mh-consent button,#analytics-optin,#analytics-optout{border:0;border-radius:999px;font:700 .95rem Nunito,sans-serif;cursor:pointer;background:var(--accent);color:#fff;padding:.6rem 1.2rem}
.mh-consent button.secondary,#analytics-optout{background:var(--cream);color:var(--ink)}

/* My own recipes (from my videos) — added 2026-11-09 */
.recipe-status.mine{border-style:solid;border-color:#b7d7c4;background:var(--green-soft)}
.recipe-photo{margin:1rem 0 1.25rem;border-radius:var(--radius);overflow:hidden;max-width:46rem;background:var(--cream)}
.recipe-photo img{display:block;width:100%;height:auto}
.mine-badge{display:inline-block;background:var(--green-soft);color:var(--green-dark);font-weight:800;font-size:.75rem;border-radius:999px;padding:.2rem .6rem;margin-bottom:.35rem}
.tile .food-art.has-photo{height:auto;aspect-ratio:6/5;padding:0}
.tile .food-art.has-photo.fit-contain{background-size:contain !important;background-repeat:no-repeat;background-color:#C9C5BA !important}
