@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--bg:#f5f4ef;--ink:#242d27;--muted:#797d73;--line:#dcded4;--green:#354f3c;--orange:#a6633a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select,summary{outline-offset:4px}header{height:86px;background:#1e2922;color:#e8e9df;display:flex;align-items:center;gap:26px;padding:0 5vw}.brand{font-weight:700;letter-spacing:2px;text-decoration:none;color:inherit;display:flex;align-items:center;gap:12px;font-size:15px}.brand-icon{font-size:27px;color:#ddba7d}.header-note{font-size:10px;letter-spacing:1.5px;color:#b2b9ac}.header-note span{padding:0 10px;color:#727f70}.saved{margin-left:auto;font-size:11px;color:#b6c4ac}main{max-width:1320px;margin:auto;padding:0 54px}.intro{display:flex;justify-content:space-between;align-items:center;padding:56px 0 42px;border-bottom:1px solid var(--line);margin-bottom:34px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--orange);font-weight:700}h1{font-family:'Libre Caslon Display',Georgia,serif;font-size:64px;line-height:1.02;letter-spacing:-1.7px;font-weight:400;margin:17px 0}h1 em{font-style:normal;color:#6b7b60}.intro p{line-height:1.8;color:#74796e;margin:18px 0 0}.stamp{height:170px;width:230px;border:1px solid #d7d9cb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transform:rotate(-5deg);color:#858b75;margin-right:36px;outline:1px solid #d7d9cb;outline-offset:6px}.stamp span{font-size:36px}.stamp small{font-size:8px;letter-spacing:2px}.stamp strong{font-family:Georgia,serif;letter-spacing:2px;font-size:16px}.workspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,1fr);gap:38px}.section-heading,.section-heading>div{display:flex;align-items:center;gap:10px}.section-heading{justify-content:space-between;margin-bottom:18px}.step{font-size:10px;color:#919688;letter-spacing:1px}h2{font-size:18px;letter-spacing:-.4px;margin:0;font-weight:600}.tag{font-size:8px;letter-spacing:1px;border:1px solid #d9dccf;padding:6px 8px;color:#7d8473}.tag.green{background:#e8ece2;color:#65765b;border:0}.panel{border:1px solid var(--line);background:#fdfcf8;border-radius:5px;overflow:hidden}.queue-form{padding:21px;display:flex;gap:10px;align-items:end}label{display:flex;flex-direction:column;gap:9px;font-size:11px;color:#757b6f;flex:1}input,select{border:1px solid #d7dacf;border-radius:3px;background:#fffefa;color:var(--ink);height:42px;padding:0 10px;min-width:0;width:100%}.qty-field{max-width:75px}.primary{border:0;border-radius:3px;background:var(--green);color:white;padding:13px 19px;font-weight:500;font-size:12px}.primary:hover{background:#243e2c}.queue-row{display:flex;align-items:center;gap:13px;padding:18px 21px;border-top:1px solid #e7e8df}.item-icon{width:40px;height:40px;border:1px solid #d9d0b8;background:#eee5cf;display:grid;place-items:center;color:#8b6d3d;font-size:22px;border-radius:4px}.item-icon.copper{color:#a56b48;background:#f2e4d8;border-color:#dfc7b2}.queue-row strong{font-size:13px}.item-sub{display:block;font-size:10px;color:var(--muted);margin-top:5px}.queue-row input{margin-left:auto;width:65px;height:34px}.icon-button{border:0;background:transparent;color:#8b9085;font-size:20px;padding:4px 8px}.panel-foot{padding:14px 21px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#8b9083;background:#f5f5ee;gap:10px}.text-button{border:0;background:transparent;color:#5c7051;font-size:11px;font-weight:600;padding:3px 0}.text-button:hover{color:#1f3924;text-decoration:underline}.library-heading{margin:33px 0 9px}.section-description{color:var(--muted);font-size:11px;line-height:1.7;margin:0 0 18px}.recipe-card{border:1px solid var(--line);border-radius:4px;background:#fcfbf7;margin-bottom:10px;padding:18px}.recipe-top{display:flex;align-items:center;gap:12px}.recipe-top .item-icon{width:34px;height:34px;font-size:19px}.recipe-top strong{font-size:13px}.recipe-actions{margin-left:auto;display:flex;gap:12px}.ingredients-preview{padding-top:14px;margin-top:14px;border-top:1px solid #e6e7de;display:flex;gap:8px;flex-wrap:wrap}.chip{font-size:10px;color:#737a6a;padding:6px 9px;background:#f0f0e8;border-radius:2px}.chip b{color:#4a5745;margin-right:4px}.tip{display:flex;gap:13px;color:#8f957f;padding:6px 4px}.tip>span{font-size:24px}.tip p{font-size:11px;line-height:1.8;color:#868c7b}.tip strong{font-weight:500;color:#69765e}.shopping-head{padding:20px 22px 14px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:#858c7b}.material-row{margin:0 22px;border-bottom:1px solid #e5e7dc;padding:17px 0;display:flex;align-items:center;gap:12px}.material-info{flex:1}.material-info strong{font-size:14px}.material-have{display:flex;align-items:center;gap:7px;margin-top:9px;font-size:10px;color:#8a907f}.material-have input{width:55px;height:27px;font-size:11px}.buy-number{font-size:28px;letter-spacing:-1px;color:#334c35;text-align:right}.buy-number small{display:block;font-size:8px;letter-spacing:1px;color:#939a87;margin-top:5px}.shopping-summary{margin:24px 22px;display:flex;justify-content:space-between;align-items:center}.shopping-summary small{font-size:9px;letter-spacing:1px;color:#7e8872}.shopping-summary strong{display:block;font-size:32px;font-weight:500;margin-top:8px}.shopping-summary strong span{font-size:12px;color:#8b937e}.bag{font-size:42px;color:#b5bea6}.copy{display:flex;justify-content:space-between;width:calc(100% - 44px);margin:0 22px}.shopping-note{text-align:center;font-size:10px;color:#8d947f;margin:13px 16px 21px}details{margin-top:22px;border-top:1px solid var(--line);padding-top:17px}summary{cursor:pointer;font-size:12px;font-weight:600}summary>span{float:right;font-size:8px;letter-spacing:1px;color:#8d9580;font-weight:400;padding-top:3px}.craft-step{display:flex;align-items:center;gap:11px;margin-top:14px;font-size:11px;color:#727d68}.craft-step>span{font-size:9px;border:1px solid #d8ddcf;border-radius:50%;width:21px;height:21px;display:grid;place-items:center}.craft-step b{font-weight:500;color:#4c6046}.local-note{color:#949a89;font-size:10px;line-height:1.8;margin-top:23px}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:48px;padding:25px 0;color:#969c8d;font-size:8px;letter-spacing:1.2px}footer i{padding:0 8px}footer>div{display:flex;gap:18px}dialog{border:1px solid var(--line);border-radius:8px;width:500px;max-width:calc(100vw - 32px);background:var(--bg);color:var(--ink);padding:28px}dialog::backdrop{background:#14201699;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.dialog-heading h2{margin-top:9px}dialog label{margin-bottom:18px}.ingredient-heading{display:flex;justify-content:space-between;font-size:12px;margin:20px 0 12px}.ingredient-row{display:flex;gap:8px;margin-bottom:10px}.ingredient-row input[type=number]{width:75px}.ingredient-row input:first-child{flex:1}dialog .primary{width:100%}#recipe-error,#error{color:#a04932;font-size:12px;line-height:1.6}#error:not(:empty){padding:15px 22px}.empty{padding:28px 22px;color:#818c75;font-size:12px;line-height:1.7}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:12px 20px;background:#243b2c;color:#fff;border-radius:4px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s}#toast.show{opacity:1}@media(max-width:1000px){main{padding:0 28px}.workspace{gap:22px}.header-note{display:none}.queue-form{flex-wrap:wrap}.queue-form>label:first-child{flex-basis:60%}.stamp{margin-right:12px;width:190px}}@media(max-width:740px){header{height:68px;padding:0 20px}.brand{font-size:12px}.saved{font-size:9px}main{padding:0 20px}.intro{padding:35px 0 29px;margin-bottom:27px}h1{font-size:49px}.intro p{font-size:12px}.stamp{display:none}.workspace{grid-template-columns:1fr;gap:30px}.queue-form{flex-wrap:nowrap;padding:16px}.queue-form>label:first-child{flex-basis:auto}.queue-row{padding:16px}.tag{font-size:7px}.panel-foot{padding:13px 16px}.recipe-actions{gap:9px}footer{align-items:start;gap:20px;line-height:1.8}footer>span{max-width:180px}footer>div{gap:14px}.intro br{display:initial}}
