:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#3b3733;--paper:#efe7da;--paper-2:#f7f2e7;--ink:#241a12;--ink-soft:#6b5c48;--rule:#d8cdb8;--rust:#c1502a;--pine:#2d5c56;--amber:#d99a2b;--danger:#c1502a;--warn-bg:#f7ecd3;--warn-text:#6b4a1a}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--paper);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 15% 0,#ffffff08 0,#0000 45%),radial-gradient(circle at 85% 100%,#ffffff08 0,#0000 50%);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:inherit}button{font-family:inherit}.headline{text-transform:uppercase;letter-spacing:.02em;font-family:Arial Narrow,Helvetica Neue Condensed,Segoe UI,sans-serif;font-weight:900}.container{background:var(--paper);max-width:640px;color:var(--ink);clip-path:polygon(0% 1%,4% 0%,8% 1.2%,12% 0%,16% 1%,20% .2%,24% 1%,28% 0%,32% 1%,36% .3%,40% 1%,44% 0%,48% 1%,52% .2%,56% 1%,60% 0%,64% 1%,68% .3%,72% 1%,76% 0%,80% 1%,84% .2%,88% 1%,92% 0%,96% 1%,100% 0%,100% 100%,0% 100%);margin:1.75rem auto 6rem;padding:2.25rem 1.5rem;position:relative;box-shadow:0 1px #0000000d,0 18px 34px -20px #000000a6}.app-header{background:var(--bg);z-index:10;border-bottom:1px solid #efe7da24;position:sticky;top:0}.app-header-title{max-width:640px;color:var(--paper);text-transform:uppercase;letter-spacing:.05em;margin:0 auto;padding:1rem;font-family:Arial Narrow,Helvetica Neue Condensed,Segoe UI,sans-serif;font-size:1.05rem;font-weight:900;text-decoration:none;display:block}.bottom-nav{background:var(--bg);padding-bottom:env(safe-area-inset-bottom,0);z-index:10;border-top:1px solid #efe7da24;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{text-align:center;letter-spacing:.08em;text-transform:uppercase;color:#a89a86;border-top:2px solid #0000;flex:1;padding:.85rem 0;font-size:.68rem;font-weight:700;text-decoration:none}.bottom-nav-item:hover{color:var(--paper)}.bottom-nav-item.is-active{color:var(--paper);border-top-color:var(--rust)}h1{text-transform:uppercase;letter-spacing:.02em;text-align:center;margin:0 0 1.25rem;font-family:Arial Narrow,Helvetica Neue Condensed,Segoe UI,sans-serif;font-size:1.65rem;font-weight:900}h2{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);border-top:2px dashed var(--rule);margin:1.75rem 0 .85rem;padding-top:1.25rem;font-size:.7rem;font-weight:700}p{line-height:1.5}hr{border:none;border-top:2px dashed var(--rule);margin:1.5rem 0}input[type=text],input[type=url],textarea{border:1.5px solid var(--rule);background:var(--paper-2);width:100%;color:var(--ink);border-radius:3px;margin:.375rem 0;padding:.6rem .7rem;font-size:.9375rem;display:block}input[type=text]::placeholder,input[type=url]::placeholder,textarea::placeholder{color:#a89a80}input[type=text]:focus-visible,input[type=url]:focus-visible,textarea:focus-visible{outline:2px solid var(--rust);outline-offset:1px}input[type=file]{color:var(--ink-soft);margin:.5rem 0 .75rem;font-size:.875rem;display:block}button{border:1.5px solid var(--ink);color:var(--ink);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:2px;padding:.45rem .8rem;font-size:.72rem;font-weight:700;transition:background .15s,color .15s}button:hover:not(:disabled){background:var(--ink);color:var(--paper)}button:disabled{opacity:.4;cursor:default}button[type=submit]{background:var(--rust);color:#fff;letter-spacing:.05em;border:none;border-radius:2px;width:100%;margin-top:.85rem;padding:.9rem;font-size:.92rem;font-weight:900;transition:transform .12s,box-shadow .12s;display:block;box-shadow:0 8px 0 -5px #00000080}button[type=submit]:hover:not(:disabled){background:var(--ink);color:var(--paper)}button[type=submit]:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.cart-cta{background:var(--rust);color:#fff;letter-spacing:.05em;border:none;border-radius:2px;width:100%;margin-top:.85rem;padding:.9rem;font-size:.92rem;font-weight:900;transition:transform .12s,box-shadow .12s;display:block;box-shadow:0 8px 0 -5px #00000080}.cart-cta:hover:not(:disabled){background:var(--ink);color:var(--paper)}.cart-cta:active:not(:disabled){box-shadow:none;transform:translateY(2px)}.muted{color:var(--ink-soft);font-size:.8125rem}[role=status]{color:var(--pine);font-size:.85rem;font-weight:700}.recipe-list,.unmatched-list,.staple-list,.recipe-picker{margin:0;padding:0;list-style:none}.recipe-picker{border:1.5px solid var(--rule);background:var(--paper-2);border-radius:3px;max-height:12rem;margin:.5rem 0;padding:.5rem .75rem;overflow-y:auto}.recipe-picker li{padding:.3rem 0}.recipe-list-item,.unmatched-list li{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.9rem 0;display:flex}.recipe-list-item:first-child,.unmatched-list li:first-child{padding-top:0}.unmatched-list li{flex-direction:column;align-items:stretch}.unmatched-list strong,.item-row .item-name{font-size:1rem;font-weight:700}.staple-list{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.staple-list li{padding:0}.staple-list label{border:1.5px dashed var(--ink-soft);color:var(--ink-soft);border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .7rem;font-size:.78rem;display:inline-flex}.item-row{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.9rem 0;transition:opacity .2s;display:flex}.item-row:first-child{padding-top:0}.item-row.is-excluded{opacity:.45}.item-meta{color:var(--ink-soft);font-variant-numeric:tabular-nums;margin-top:.15rem;font-size:.8rem}.item-actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.pill-btn{border:1.5px solid var(--ink);color:var(--ink);letter-spacing:.05em;text-transform:uppercase;background:0 0;border-radius:2px;padding:.32rem .6rem;font-size:.7rem;font-weight:800}.pill-btn:hover:not(:disabled){background:var(--ink);color:var(--paper)}.stepper{align-items:center;gap:.5rem;display:inline-flex}.stepper button{border-radius:50%;justify-content:center;align-items:center;width:1.6rem;height:1.6rem;padding:0;font-size:.95rem;line-height:1;display:inline-flex}.stepper button:hover:not(:disabled){background:var(--rust);border-color:var(--rust);color:#fff}.stepper span{text-align:center;font-variant-numeric:tabular-nums;min-width:1.25rem;font-weight:700}.inline-form{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.inline-form input{flex:1;min-width:10rem;margin:0}.inline-form button{background:var(--rust);color:#fff;text-transform:uppercase;letter-spacing:.03em;border:none;border-radius:2px;padding:.5rem .9rem;font-size:.7rem;font-weight:800}.inline-form button:hover:not(:disabled){background:var(--ink);color:var(--paper)}.cart-links{background:var(--warn-bg);color:var(--warn-text);border:1.5px dashed var(--amber);word-break:break-all;border-radius:3px;margin-top:1.25rem;padding:.9rem 1rem}.cart-links a{color:var(--warn-text);font-weight:700}details>summary{cursor:pointer;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:.4rem;font-size:.7rem;font-weight:700;list-style:none;display:flex}details>summary::-webkit-details-marker{display:none}details>summary:before{content:"▸";transition:transform .15s}details[open]>summary:before{transform:rotate(90deg)}
