:root{--cream:#fbf8f2;--ink:#423d38;--muted:#746e66;--pink:#ecd5d5;--sage:#dde5d7;--lavender:#e8e0ee;--line:#e7dfd5;--green:#4c644c;--white:#fffefb}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit}a,button,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}button{border:1px solid var(--green);border-radius:8px;background:var(--green);color:white;padding:11px 20px;cursor:pointer;font-weight:600;transition:background .15s}button:hover{filter:brightness(.95)}button:disabled{opacity:.55;cursor:wait}button.secondary{background:transparent;color:var(--green);border-color:#b8c3b1}.text-button{border:0;background:none;color:var(--green);padding:8px 0}.icon-button{padding:3px 10px;font-size:25px;border:0;background:transparent;color:var(--muted)}:focus-visible{outline:3px solid #886a98;outline-offset:3px}.brand,h1,h2,h3{font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.2}h1{font-size:46px;letter-spacing:-1.2px;margin:12px 0 18px}h2{font-size:26px;margin:0 0 18px}h3{font-size:23px}p{margin:12px 0}small{font-size:12px}.fine,.muted,small{color:var(--muted)}.fine{font-size:12px}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#776454;font-weight:700}.header{min-height:106px;padding:18px max(28px,calc((100vw - 1240px) / 2));justify-content:space-between;border-bottom:1px solid var(--line);gap:25px;background:var(--white)}.brand,.header{display:flex;align-items:center}.brand{gap:13px;color:var(--ink);text-decoration:none;font-size:25px;white-space:nowrap}.brand small{display:block;font:9px Arial;letter-spacing:2.7px;margin-top:8px}.brand-mark{font-family:Georgia;font-size:44px;color:#728466;display:inline-block}.header nav{display:flex;gap:12px}.nav{border:0;background:transparent;color:var(--muted);padding:9px 17px;font-weight:400;font-size:14px}.nav.active{background:#edece3;color:var(--green)}.main{max-width:1240px;margin:auto;padding:16px 28px 60px;min-height:75vh}.status:empty{display:none}.status:not(:empty){background:var(--lavender);padding:12px 18px;border-radius:8px;margin:8px 0 20px}.hero{margin-top:24px;background:#f2eae0;border:1px solid #eae0d4;border-radius:15px;padding:48px 55px;display:flex;justify-content:space-between;gap:25px;min-height:350px}.hero h1{font-size:51px}.hero p:not(.eyebrow){color:#776d62;font-size:15px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.hero .actions{margin-top:27px}.hero-art{width:270px;align-self:center;text-align:center;flex-shrink:0}.hero-art svg{width:235px}.hero-art span{display:block;transform:rotate(-5deg);font:italic 18px Georgia;color:#8a796d}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin:25px 0 36px;gap:18px}.stats>div{border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;gap:17px;background:var(--white);padding:18px 22px}.stats strong{font:26px Georgia;display:block}.stats span:not(.stat-icon){display:block;font-size:12px;color:var(--muted);margin-top:4px}.stat-icon{font:28px Georgia;padding:12px 16px;border-radius:50%}.sage{background:var(--sage)}.pink{background:var(--pink)}.lavender{background:var(--lavender)}.home-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:35px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.section-heading h2{margin-bottom:10px}.recipe-card{display:flex;width:100%;align-items:center;justify-content:space-between;gap:18px;text-align:left;border:1px solid var(--line);background:var(--white);color:var(--ink);padding:19px;margin:12px 0;border-radius:10px}.recipe-card strong{font-weight:500}.recipe-card small{display:block;margin-top:3px}.recipe-icon{font:28px Georgia;background:#f2e8de;padding:12px;border-radius:8px}.recipe-card .recipe-icon+span{flex:1 1}.home-grid h2:not(:first-child){margin-top:30px}.pantry-note{background:#f0f0e7;border-radius:12px;padding:28px}.pantry-note>p:not(.eyebrow){font-size:13px;color:var(--muted)}.pantry-shortcut{display:flex;justify-content:space-between;width:100%;background:none;border:0;border-bottom:1px solid #dcded1;color:var(--ink);padding:15px 0;text-align:left;font-weight:400}.pantry-shortcut small{display:block}.pantry-shortcut strong{font-size:14px;font-weight:500}.note-tip{margin-top:25px;padding:22px;background:#e8e5ed;border-radius:8px;font:18px Georgia}.note-tip p{font:13px/1.7 Arial;margin-bottom:0}.empty{padding:35px;border:1px dashed #d8cdbd;border-radius:12px;text-align:center;background:#fffcf7}.empty p{color:var(--muted)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0 30px}.page-heading h1{font-size:39px}.page-heading p{color:var(--muted)}.search{max-width:480px;margin-bottom:25px}.pantry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:25px;margin-bottom:22px;min-width:0}.card>button.secondary{margin-top:18px;display:block}.card-price{font-size:26px}.card small{display:block}.badge{display:inline-block;background:var(--lavender);border-radius:20px;padding:3px 10px;font-size:11px}.archived{background:#eeede8}.builder-grid{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:25px;align-items:start}.card h2{color:#a58e7a;font-size:22px}.card h2 span{color:var(--ink);margin-left:9px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}.field{display:flex;flex-direction:column;gap:5px;min-width:0;margin:9px 0}.field>span{font-size:12px;font-weight:600;color:#655e56}input,select,textarea{width:100%;min-width:0;border:1px solid #d8d2c8;border-radius:6px;padding:10px 11px;background:var(--white);color:var(--ink)}textarea{min-height:85px;resize:vertical}.ingredient-row{border-top:1px solid var(--line);padding:13px 0;margin-bottom:10px}.row-main{display:grid;grid-template-columns:1.2fr 1.3fr .6fr .7fr auto auto;gap:9px;align-items:center}.ingredient-row .field{margin:4px 0}.line-price{font-size:12px;white-space:nowrap}.ingredient-row>.field{max-width:100%}.original{font-style:italic;overflow-wrap:anywhere}.ingredient-row>.text-button{font-size:12px;margin-right:16px}.issue,.issues{color:#943d36;font-size:13px}.issues{padding-left:18px}.paste-panel{background:#f1edf5;padding:18px;border-radius:8px;margin:15px 0}.mini-row{display:flex;gap:10px;align-items:center}.mini-row>.field{flex:1 1}.mini-row>.field:first-child{flex:1.5 1}details{border-top:1px solid var(--line);padding:15px 0}summary{cursor:pointer;font-weight:500}summary span{float:right;font-size:12px;color:var(--muted)}details[open]>summary{margin-bottom:14px}.sticky-summary{position:sticky;top:20px}.summary{border:1px solid #d7dece;background:#eff2e9;border-radius:12px;padding:26px;min-width:0}.summary h2{font-size:25px}.summary .eyebrow{font-size:9px;letter-spacing:1.3px}.total{font:43px Georgia;letter-spacing:-1px;margin-bottom:0}.summary>.muted{font-size:12px;margin-top:3px}.summary dl{font-size:13px;margin:20px 0}.summary dl>div{display:flex;justify-content:space-between;gap:12px;margin:11px 0}.summary dd{margin:0;text-align:right}.subline{color:var(--muted);font-size:11px}.price-box{background:#dce5d3;border-radius:8px;padding:18px;text-align:center}.price-box small,.price-box span{display:block;font-size:12px}.price-box strong{font:32px Georgia;display:block;margin:6px 0}.summary .fine{overflow-wrap:anywhere}.mobile-summary{padding:0;border:0}.mobile-summary>summary{display:none}.snapshot-line{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.snapshot-line p{margin:5px 0}.snapshot-line small{display:block}.login{max-width:440px;margin:9vh auto;padding:35px;text-align:center}.login h1{font-size:43px}.login .field{text-align:left;margin:25px 0 15px}.login form>button{width:100%}.login>small{display:block;margin-top:30px}.login p{color:var(--muted)}dialog{width:min(680px,calc(100vw - 30px));max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:15px;background:var(--cream);padding:28px;color:var(--ink)}dialog::backdrop{background:#342d2766;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.conversion{display:grid;grid-template-columns:1fr 1fr auto 1fr 1fr auto;align-items:center;gap:8px}.checkbox{display:flex;gap:10px;align-items:center}.checkbox input{width:auto}footer{border-top:1px solid var(--line);max-width:1184px;margin:auto;padding:25px 0;font-size:12px;color:var(--muted)}footer span{float:right}@media (max-width:1050px){.header{padding:18px 25px}.brand{font-size:22px}.header nav{gap:0}.nav{padding:8px 12px}.builder-grid{grid-template-columns:minmax(0,1fr) 290px}.row-main{grid-template-columns:1fr 1fr}.line-price{font-size:15px}.hero{padding:35px}.hero h1{font-size:44px}.hero-art{width:210px}.hero-art svg{width:200px}.pantry-grid{grid-template-columns:repeat(2,1fr)}footer{margin:0 28px}}@media (max-width:700px){.header{flex-wrap:wrap;gap:10px;padding:16px 20px}.header nav{order:3;width:100%;justify-content:space-between}.brand{font-size:23px}.brand-mark{font-size:36px}.main{padding:10px 16px 35px}.hero{margin-top:15px;padding:25px;min-height:0}.hero h1{font-size:37px}.hero p br,.hero-art{display:none}.hero .eyebrow{font-size:9px}.stats{gap:8px;margin:18px 0 25px}.stats>div{padding:13px 8px;display:block;text-align:center}.stats .stat-icon{display:none}.stats span:not(.stat-icon){font-size:10px}.home-grid{grid-template-columns:1fr;gap:22px}.section-heading h2{font-size:23px}.section-heading .text-button{font-size:12px}.page-heading{align-items:flex-start;flex-direction:column;margin:15px 0 25px;gap:10px}.page-heading h1{font-size:33px}.pantry-grid{grid-template-columns:1fr}.builder-grid{display:flex;flex-direction:column;gap:16px}.builder-grid>.summary,.builder-grid>aside,.builder-grid>div,.builder-grid>section{width:100%}.sticky-summary{position:static;order:-1}.mobile-summary>summary{display:list-item;background:#e3e9dc;padding:13px 16px;border-radius:8px;font-size:14px}.mobile-summary[open]>summary{margin-bottom:8px}.card{padding:19px}.form-grid{gap:8px 13px}.mini-row{flex-wrap:wrap}.mini-row>.field,.mini-row>.field:first-child{flex-basis:40%}.mini-row>.icon-button{align-self:end}.conversion{grid-template-columns:1fr 1fr auto}.conversion>span{display:none}.summary{padding:22px}.summary .total{font-size:34px}.row-main{grid-template-columns:1fr 1fr}.actions button{padding:10px 14px}dialog{padding:20px}.login{margin-top:5vh;padding:28px}footer{margin:0 18px;font-size:11px}footer span{float:none;display:block;margin-top:4px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.busy-fieldset{padding:0;margin:0;border:0;min-width:0;width:100%}.match-suggestions{font-size:12px;border:1px solid var(--line);padding:5px 10px;border-radius:6px}.match-suggestions button{display:block;text-align:left}.paste-panel>.text-button{margin-left:15px}.combobox{position:relative}.combobox-list{position:absolute;z-index:20;left:0;right:0;top:100%;margin:4px 0 0;padding:4px;list-style:none;max-height:16rem;overflow:auto;background:#fffdf8;border:1px solid #cfd6c4;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12)}.combobox-list li{padding:8px 10px;border-radius:6px;cursor:pointer}.combobox-list li.active,.combobox-list li:hover{background:#e9eee2}.combobox-add,.combobox-list li[aria-selected=true]{font-weight:600}.combobox-add{color:#3f5a34}