@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700&display=swap";:root{font-family:DM Sans,sans-serif;color:#19352a;background:#f7f8f3;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 12%,#eef2dc 0,transparent 30%),#f8f8f4}button{font:inherit}header{height:76px;display:flex;align-items:center;justify-content:space-between;max-width:1240px;margin:auto;padding:0 28px;border-bottom:1px solid #e6e9df}.brand{display:flex;align-items:center;gap:11px;font-family:Manrope;font-size:20px;font-weight:700}.brand>span>span{color:#b27228}.logo{width:38px;height:38px;border-radius:11px;background:#214f3d;color:#fff;display:grid;place-items:center}.tagline{font-size:12px;color:#718077;text-transform:uppercase;letter-spacing:1.4px;display:flex;align-items:center;gap:9px}.tagline span{width:7px;height:7px;border-radius:50%;background:#78a17f;box-shadow:0 0 0 4px #e5eee5}main{max-width:1184px;margin:auto;padding:64px 28px 90px}.hero{text-align:center;max-width:760px;margin:0 auto 48px}.eyebrow,.sectionHead small,.shopPick>div>small{color:#a26825;font-weight:700;font-size:11px;letter-spacing:2px}.hero h1{font:700 56px/1.08 Manrope;margin:15px 0 18px;letter-spacing:-2.5px}.hero h1 em{font-style:normal;color:#527863}.hero p{max-width:620px;margin:auto;color:#6f7b74;font-size:17px;line-height:1.7}.uploadWrap{display:grid;grid-template-columns:1fr 300px;gap:22px;max-width:940px;margin:auto}.dropzone{min-height:330px;border:1.5px dashed #b7c4b9;border-radius:20px;background:#ffffffbf;display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:pointer;color:#19352a;transition:.2s;box-shadow:0 14px 35px #304c3820}.dropzone:hover,.dropzone.drag{border-color:#4d7f61;background:#fff;transform:translateY(-2px)}.dropzone input{display:none}.uploadIcon{width:66px;height:66px;border-radius:18px;background:#e8efe7;color:#3e7256;display:grid;place-items:center}.uploadIcon svg{width:29px;height:29px}.dropzone h2{font:700 19px Manrope;margin:22px 0 5px}.dropzone p{margin:0;color:#829087}.dropzone small{margin-top:28px;color:#9aa39d;display:flex;gap:6px}aside{border:1px solid #e1e5dc;border-radius:20px;padding:28px;background:#f1f3eb}aside h3{font:700 14px Manrope;margin:0 0 25px}.step{display:flex;gap:14px;align-items:center;margin:18px 0;color:#637168;font-size:13px}.step b{width:28px;height:28px;flex:none;border-radius:50%;background:#fff;color:#597662;display:grid;place-items:center;box-shadow:0 3px 10px #334b3b12}.recipeBar{display:flex;align-items:center;padding:22px 25px;background:#fff;border:1px solid #e1e5dc;border-radius:18px;box-shadow:0 8px 25px #32473a12;margin-bottom:24px}.recipeIcon{width:52px;height:52px;border-radius:14px;background:#e9f0e8;color:#4c765d;display:grid;place-items:center;margin-right:16px}.recipeBar small{color:#a26825;font-weight:700;font-size:10px;letter-spacing:1.5px}.recipeBar h2{font:700 20px Manrope;margin:3px 0}.recipeBar p{margin:0;color:#7c887f;font-size:13px}.ghost{margin-left:auto;border:0;background:#f3f5f0;color:#53665a;border-radius:10px;padding:10px 13px;display:flex;gap:7px;align-items:center;cursor:pointer}.shopPick,.ingredients{background:#fff;border:1px solid #e1e5dc;border-radius:18px;padding:28px;margin-top:24px}.shopPick>div:first-child{display:flex;justify-content:space-between;align-items:end}.shopPick h2,.sectionHead h2{font:700 22px Manrope;margin:5px 0 20px}.shopGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.shopCard{display:flex;align-items:center;text-align:left;gap:12px;border:1px solid #e0e4dc;background:#fafbf8;border-radius:13px;padding:14px;cursor:pointer;position:relative}.shopCard.selected{border-color:var(--shop);box-shadow:inset 0 0 0 1px var(--shop);background:#fff}.shopMark{width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--shop) 13%,white);color:var(--shop);display:grid;place-items:center}.shopMark svg{width:18px}.shopCard span{display:flex;flex-direction:column}.shopCard b{font-size:13px}.shopCard small{color:#8a958e;font-size:11px;margin-top:2px}.shopCard i{margin-left:auto;width:20px;height:20px;border:1px solid #ccd3cd;border-radius:6px;display:grid;place-items:center;color:#fff}.shopCard.selected i{background:var(--shop);border-color:var(--shop)}.primary{margin-top:18px;border:0;border-radius:11px;background:#214f3d;color:#fff;padding:12px 18px;font-weight:700;display:flex;align-items:center;gap:8px;cursor:pointer}.primary:disabled{opacity:.5;cursor:not-allowed}.sectionHead{display:flex;align-items:center;justify-content:space-between}.updated{color:#47715a;background:#eaf2ea;padding:7px 10px;border-radius:20px;font-size:11px}.table{border:1px solid #e6e9e3;border-radius:13px;overflow:hidden}.thead,.trow{display:grid;grid-template-columns:minmax(230px,1.5fr) 100px repeat(3,minmax(145px,1fr));gap:16px;padding:13px 16px;align-items:center}.thead{background:#f4f6f1;color:#748079;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px}.trow{border-top:1px solid #eceee9;min-height:83px}.trow:first-of-type{border-top:0}.trow>div:first-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 9px}.trow b{font-size:13px}.trow small{grid-column:2;color:#89938d;font-size:11px}.type{grid-row:1/3;padding:4px 6px;border-radius:5px;text-transform:uppercase;font-size:8px;font-weight:700;letter-spacing:.5px;background:#edf1eb;color:#5c7263}.type.hop{background:#eef3de;color:#66812d}.type.yeast{background:#f5ebdf;color:#9a6425}.type.misc{background:#f0eafa;color:#755795}.trow>strong{font-size:12px}.result{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}.result a{color:#526b5d;font-size:11px;text-decoration:none;display:flex;gap:4px;align-items:center;max-width:100%;line-height:1.35}.status{display:inline-flex;align-items:center;gap:2px;border-radius:20px;padding:5px 8px;font-size:10px;font-weight:700;background:#f0f1ef;color:#7d8580;white-space:nowrap}.status.match{background:#e6f3e9;color:#37704a}.status.candidate{background:#fff2da;color:#9a641b}.status.out-of-stock,.status.unavailable{background:#f4eeee;color:#936060}.status.error{background:#f8e8e5;color:#a34e42}.error{position:fixed;bottom:25px;left:50%;transform:translate(-50%);display:flex;gap:8px;background:#9b453b;color:#fff;border-radius:10px;padding:12px 18px;box-shadow:0 8px 25px #0002}footer{border-top:1px solid #e2e6de;max-width:1184px;margin:auto;padding:26px 28px 45px;display:flex;justify-content:space-between;color:#859087;font-size:11px}footer span{font:700 14px Manrope;color:#375646}footer p{margin:0}@media (max-width:900px){.hero h1{font-size:42px}.uploadWrap,.shopGrid{grid-template-columns:1fr}.table{overflow-x:auto}.thead,.trow{width:900px}.tagline{display:none}}@media (max-width:560px){main{padding:42px 16px}.hero h1{font-size:36px}.recipeBar{align-items:flex-start}.ghost{font-size:0}.uploadWrap aside{display:none}}.reportTools{display:flex;align-items:center;gap:10px}.reportTools label{display:flex;align-items:center;gap:7px;border:1px solid #dfe4dc;border-radius:9px;padding:7px 9px;color:#647269;font-size:11px}.reportTools select{border:0;background:transparent;color:#294638;font:600 11px DM Sans;outline:0}.table{overflow-x:auto}.thead,.trow{grid-template-columns:minmax(170px,1.35fr) 70px repeat(var(--shops),minmax(0,1fr));gap:12px}.thead span{min-width:0;overflow:hidden;text-overflow:ellipsis}.categoryRow{background:#fbfcf9;border-top:1px solid #e4e8e1;padding:9px 16px;color:#8a692f;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px}.ingredientName{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 9px;min-width:0}.ingredientName b,.ingredientName small{min-width:0;overflow-wrap:anywhere}.ingredientName small{grid-column:2;color:#89938d;font-size:11px}.required span,.mobileShop{display:none}.result small{color:#89938d;font-size:10px}.scanActions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.scanActions .primary{margin-top:0;flex:none}.scanOptions{display:flex;align-items:flex-start;gap:22px}.alternativeToggle{display:flex;align-items:center;gap:11px;cursor:pointer}.alternativeToggle.disabled{opacity:.45;cursor:not-allowed}.alternativeToggle input{position:absolute;opacity:0;pointer-events:none}.alternativeToggle .switch{width:38px;height:22px;border-radius:20px;background:#d9dfd8;position:relative;transition:.2s;flex:none}.alternativeToggle .switch:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;left:3px;top:3px;box-shadow:0 2px 5px #1c38252a;transition:.2s}.alternativeToggle input:checked+.switch{background:#397056}.alternativeToggle input:checked+.switch:after{transform:translate(16px)}.alternativeToggle>span:last-child{display:flex;flex-direction:column}.alternativeToggle b{font-size:12px}.alternativeToggle small{font-size:10px;color:#89958d;margin-top:2px}.alternativeNote{color:#9a641b!important;line-height:1.35}.spinner{animation:spin .75s linear infinite;flex:none}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:1.5s}}.resultHead{width:100%;display:flex;align-items:center;justify-content:space-between;gap:6px}.rescan{width:25px;height:25px;flex:none;display:grid;place-items:center;border:1px solid #dfe5de;border-radius:7px;background:#fff;color:#607269;cursor:pointer;transition:.15s}.rescan:hover{border-color:#8ba394;color:#285841;background:#f4f8f4}.rescan:disabled{cursor:not-allowed;opacity:.55}.aiWarning{color:#a05242!important;line-height:1.35}@media (max-width:900px) and (min-width:681px){.thead,.trow{min-width:880px}.sectionHead{align-items:flex-start;gap:12px}.reportTools{flex-direction:column;align-items:flex-end}}@media (max-width:680px){header{height:66px;padding:0 17px}main{padding:38px 14px 70px}.hero{margin-bottom:32px}.hero h1{font-size:35px;letter-spacing:-1.5px}.hero p{font-size:14px}.uploadWrap aside{display:none}.dropzone{min-height:280px;padding:25px}.recipeBar{padding:16px;align-items:flex-start}.recipeIcon{width:42px;height:42px}.recipeBar h2{font-size:16px}.ghost{font-size:0;padding:10px}.shopPick,.ingredients{padding:18px;margin-top:16px}.scanActions{align-items:flex-start;flex-direction:column}.scanOptions{width:100%;flex-direction:column;gap:14px}.scanActions .primary{width:100%;justify-content:center}.sectionHead h2{font-size:18px;margin-bottom:15px}.updated{display:none}.reportTools label>span{display:none}.table{border:0}.thead{display:none}.categoryRow{border:0;border-bottom:1px solid #dfe5dc;background:transparent;padding:20px 2px 8px}.categoryRow:first-of-type{padding-top:4px}.trow{display:grid;width:auto;grid-template-columns:1fr auto;padding:15px 0;gap:12px;align-items:start}.ingredientName{min-width:0}.required{text-align:right;font-size:12px}.required span{display:block;color:#97a098;font-size:8px;text-transform:uppercase;letter-spacing:.7px;margin-bottom:3px}.result{grid-column:1/3;display:grid;grid-template-columns:minmax(100px,.7fr) auto 1fr;align-items:center;background:#f6f7f3;padding:9px 10px;border-radius:9px;gap:8px}.mobileShop{display:block;color:#66746b;font-size:10px;font-weight:700}.resultHead{width:auto}.result a,.status{justify-self:start}.result small{grid-column:3}.type{font-size:7px;padding:3px 5px}footer{padding:22px 17px 35px;display:block}footer p{margin-top:7px;line-height:1.5}}.selectionTools{display:flex;gap:5px}.selectionTools button{border:1px solid #dfe4dc;background:#fff;color:#52675b;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:700;cursor:pointer}.selectionTools button:hover{background:#f3f6f1}.trow.excluded{opacity:.52;background:#fafbf9}.ingredientName{grid-template-columns:auto auto minmax(0,1fr)!important}.itemCheck{display:grid;place-items:center;cursor:pointer}.itemCheck input{position:absolute;opacity:0;pointer-events:none}.itemCheck span{width:20px;height:20px;border:1px solid #bdc8c0;border-radius:6px;background:#fff;color:#fff;display:grid;place-items:center}.itemCheck input:checked+span{background:#397056;border-color:#397056}.itemCopy{display:flex;min-width:0;flex-direction:column;gap:2px}.itemCopy small{grid-column:auto!important}.type{grid-row:auto!important}@media (max-width:680px){.sectionHead{flex-direction:column;align-items:stretch}.reportTools{flex-wrap:wrap}.selectionTools{order:2}.selectionTools button{flex:1}.reportTools>label{margin-left:auto}}.categoryRow{padding:15px 18px;background:#f1f4ec;border-top:2px solid #d9e0d5;border-bottom:1px solid #dfe5dc}.categoryCheck{display:flex;align-items:center;gap:10px;width:max-content;cursor:pointer;letter-spacing:normal;text-transform:none}.categoryCheck input{position:absolute;opacity:0;pointer-events:none}.categoryCheck>span{width:21px;height:21px;border:1px solid #aebcaf;border-radius:6px;background:#fff;display:grid;place-items:center;color:#fff}.categoryCheck input:checked+span,.categoryCheck input:indeterminate+span{background:#397056;border-color:#397056}.categoryCheck input:checked+span:after{content:"✓";font-size:13px;font-weight:700}.categoryCheck input:indeterminate+span:after{content:"–";font-size:16px;font-weight:700}.categoryCheck b{color:#76551f;font-size:12px;text-transform:uppercase;letter-spacing:1.35px}.categoryCheck small{color:#7e8c82;font-size:10px;font-weight:600;text-transform:none;letter-spacing:0}@media (max-width:680px){.categoryRow{padding:14px 10px!important;background:#f1f4ec!important;border-top:2px solid #d9e0d5!important;border-bottom:1px solid #d7ded4!important;border-radius:8px;margin-top:14px}.categoryRow:first-of-type{padding-top:14px}.categoryCheck{width:100%}.categoryCheck small{margin-left:auto}}
