.foodcost-page{--fc-good:var(--color-sage);--fc-warning:var(--color-persimmon);--fc-high:var(--color-chili);background:var(--color-bone);color:var(--color-ink);flex-direction:column;min-height:100%;display:flex}.foodcost-page main{flex:1}.foodcost-hero{background:var(--color-navy-deep);text-align:center;padding:72px 24px 56px}.foodcost-hero-inner{max-width:720px;margin:0 auto}.foodcost-hero-badge{background:color-mix(in srgb, var(--color-sage) 24%, transparent);color:var(--color-sage);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin-bottom:16px;padding:4px 12px;font-size:.8rem;font-weight:600;display:inline-block}.foodcost-hero h1{color:var(--color-bone);margin:0 0 16px;font-size:clamp(1.9rem,4.5vw,2.8rem);font-weight:700;line-height:1.15}.foodcost-hero p{color:color-mix(in srgb, var(--color-bone) 75%, transparent);margin:0;font-size:1.05rem;line-height:1.6}.foodcost-calc-section{margin-top:-24px;padding:0 16px 48px}.foodcost-calc{background:var(--color-bone);border:1px solid var(--color-fog);max-width:860px;box-shadow:0 16px 40px color-mix(in srgb, var(--color-navy-deep) 12%, transparent);border-radius:16px;margin:0 auto;padding:24px}.foodcost-calc-topline{grid-template-columns:2fr 1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.foodcost-field span{color:var(--color-muted-ink);margin-bottom:6px;font-size:.8rem;font-weight:600;display:block}.foodcost-calc input,.foodcost-calc select{box-sizing:border-box;border:1px solid var(--color-fog);background:var(--color-bone);width:100%;color:var(--color-ink);appearance:none;border-radius:8px;padding:10px 12px;font-size:1rem}.foodcost-calc input:focus,.foodcost-calc select:focus{outline:2px solid color-mix(in srgb, var(--color-sky) 60%, transparent);outline-offset:1px}.foodcost-input-prefix,.foodcost-input-suffix{border:1px solid var(--color-fog);border-radius:8px;align-items:center;padding:0 12px;display:flex}.foodcost-input-prefix>span,.foodcost-input-suffix>span{color:var(--color-muted-ink);font-size:1rem}.foodcost-input-prefix input,.foodcost-input-suffix input{border:none;padding:10px 6px}.foodcost-input-prefix input:focus,.foodcost-input-suffix input:focus{outline:none}.foodcost-input-prefix:focus-within,.foodcost-input-suffix:focus-within{outline:2px solid color-mix(in srgb, var(--color-sky) 60%, transparent);outline-offset:1px}.foodcost-ingredient-head,.foodcost-ingredient-row{grid-template-columns:2fr .9fr .9fr 1.2fr 72px 32px;align-items:center;gap:8px;display:grid}.foodcost-ingredient-head{color:var(--color-muted-ink);margin-bottom:6px;font-size:.75rem;font-weight:600}.foodcost-line-cost-head,.foodcost-line-cost{text-align:right}.foodcost-ingredient{margin-bottom:12px}.foodcost-derived-cost{border:1px dashed var(--color-fog);background:var(--color-bone-soft);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:8px;justify-content:flex-end;align-items:center;padding:10px 12px;font-weight:600;display:flex}.foodcost-case-toggle{color:var(--color-sky);text-align:left;cursor:pointer;background:0 0;border:none;margin-top:2px;padding:2px 0;font-size:.8rem;font-weight:600;display:inline-block}.foodcost-case-toggle:hover{text-decoration:underline}.foodcost-case-panel{background:var(--color-bone-soft);border-radius:10px;grid-template-columns:repeat(3,1fr);align-items:end;gap:10px;margin-top:6px;padding:12px;display:grid}.foodcost-case-panel .foodcost-input-prefix,.foodcost-case-panel input{background:var(--color-bone)}.foodcost-input-combo{gap:6px;display:flex}.foodcost-input-combo input{flex:1;min-width:0}.foodcost-input-combo select{flex:none;width:auto}.foodcost-case-readout{font-variant-numeric:tabular-nums;color:var(--color-muted-ink);grid-column:1/3;align-self:center;font-size:.85rem;font-weight:600}.foodcost-case-readout--error{color:var(--color-chili)}.foodcost-case-panel .foodcost-case-toggle{text-align:right;grid-column:3;margin-top:0}.foodcost-line-cost{font-variant-numeric:tabular-nums;color:var(--color-muted-ink);white-space:nowrap;font-weight:600}.foodcost-remove-btn{width:32px;height:32px;color:var(--color-muted-ink);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.foodcost-remove-btn:hover{background:var(--color-bone-soft);color:var(--color-chili)}.foodcost-add-btn{border:1px dashed var(--color-fog);color:var(--color-ink);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;margin-top:4px;padding:8px 14px;font-size:.9rem;font-weight:600;display:inline-flex}.foodcost-add-btn:hover{border-color:var(--color-muted-ink);background:var(--color-bone-soft)}.foodcost-max-rows-note{color:var(--color-muted-ink);margin:4px 0 0;font-size:.85rem}.foodcost-results{border:1px solid;border-radius:12px;margin-top:24px;padding:24px}.foodcost-results--good{background:color-mix(in srgb, var(--fc-good) 10%, var(--color-bone));border-color:color-mix(in srgb, var(--fc-good) 40%, transparent)}.foodcost-results--warning{background:color-mix(in srgb, var(--fc-warning) 10%, var(--color-bone));border-color:color-mix(in srgb, var(--fc-warning) 40%, transparent)}.foodcost-results--high{background:color-mix(in srgb, var(--fc-high) 10%, var(--color-bone));border-color:color-mix(in srgb, var(--fc-high) 40%, transparent)}.foodcost-results-main{align-items:center;gap:20px;margin-bottom:20px;display:flex}.foodcost-percent{flex-direction:column;align-items:center;min-width:130px;display:flex}.foodcost-percent-value{font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:800;line-height:1}.foodcost-results--good .foodcost-percent-value,.foodcost-results--good .foodcost-percent-label{color:color-mix(in srgb, var(--fc-good) 80%, var(--color-ink))}.foodcost-results--warning .foodcost-percent-value,.foodcost-results--warning .foodcost-percent-label{color:color-mix(in srgb, var(--fc-warning) 75%, var(--color-ink))}.foodcost-results--high .foodcost-percent-value,.foodcost-results--high .foodcost-percent-label{color:color-mix(in srgb, var(--fc-high) 80%, var(--color-ink))}.foodcost-percent-label{text-transform:uppercase;letter-spacing:.05em;margin-top:4px;font-size:.85rem;font-weight:700}.foodcost-guidance{color:var(--color-ink);margin:0;line-height:1.55}.foodcost-results-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 20px;display:grid}.foodcost-results-grid dt{color:var(--color-muted-ink);margin-bottom:2px;font-size:.8rem}.foodcost-results-grid dd{font-variant-numeric:tabular-nums;margin:0;font-size:1.25rem;font-weight:700}.foodcost-results-cta{border-top:1px solid color-mix(in srgb, var(--color-ink) 12%, transparent);flex-wrap:wrap;align-items:center;gap:16px;padding-top:20px;display:flex}.foodcost-results-cta p{color:var(--color-muted-ink);flex:1;min-width:220px;margin:0;font-size:.9rem}.foodcost-results-placeholder{border:1px dashed var(--color-fog);text-align:center;color:var(--color-muted-ink);border-radius:12px;margin-top:24px;padding:24px;font-size:.95rem}.foodcost-cta-btn{background:var(--color-persimmon);color:var(--color-ink);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:8px;padding:12px 22px;font-size:1rem;font-weight:700;transition:transform .15s;display:inline-flex}.foodcost-cta-btn:hover{transform:translateY(-1px)}.foodcost-copy-section{max-width:720px;margin:0 auto;padding:40px 24px}.foodcost-copy-section h2{margin:0 0 16px;font-size:1.5rem;font-weight:700}.foodcost-copy-section p{color:var(--color-ink);margin:0 0 14px;line-height:1.65}.foodcost-copy-section a{color:var(--color-sky);font-weight:600}.foodcost-faq dt{margin:18px 0 6px;font-weight:700}.foodcost-faq dd{color:var(--color-muted-ink);margin:0;line-height:1.6}.foodcost-ladder-section{background:var(--color-bone-soft);padding:48px 24px}.foodcost-ladder-inner{text-align:center;max-width:960px;margin:0 auto}.foodcost-ladder-inner h2{margin:0 0 12px;font-size:1.6rem;font-weight:700}.foodcost-ladder-sub{max-width:640px;color:var(--color-muted-ink);margin:0 auto 32px;line-height:1.6}.foodcost-ladder-grid{text-align:left;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px;display:grid}.foodcost-ladder-card{background:var(--color-bone);border:1px solid var(--color-fog);border-radius:12px;padding:20px}.foodcost-ladder-card--highlight{border-color:var(--color-persimmon)}.foodcost-ladder-card h3{margin:0 0 4px;font-size:1.05rem;font-weight:700}.foodcost-ladder-price{color:var(--color-muted-ink);margin:0 0 12px;font-size:.85rem;font-weight:600}.foodcost-ladder-card ul{margin:0;padding-left:18px}.foodcost-ladder-card li{color:var(--color-ink);margin-bottom:6px;font-size:.9rem;line-height:1.55}.foodcost-ladder-cta{justify-content:center;align-items:center;gap:20px;display:flex}.foodcost-pricing-link{color:var(--color-sky);font-weight:600}@media (width<=720px){.foodcost-calc-topline{grid-template-columns:1fr 1fr}.foodcost-field--dish{grid-column:1/-1}.foodcost-ingredient-head{display:none}.foodcost-ingredient{border:1px solid var(--color-fog);border-radius:10px;padding:12px;position:relative}.foodcost-ingredient-row{grid-template-columns:1fr 1fr;grid-template-areas:"name name""qty unit""cost line";row-gap:8px}.foodcost-ingredient-row>input[aria-label=Ingredient\ name]{grid-area:name;margin-right:32px}.foodcost-ingredient-row>input[aria-label=Quantity]{grid-area:qty}.foodcost-ingredient-row>select{grid-area:unit}.foodcost-ingredient-row>.foodcost-input-prefix,.foodcost-ingredient-row>.foodcost-derived-cost{grid-area:cost}.foodcost-ingredient-row>.foodcost-line-cost{grid-area:line;align-self:center}.foodcost-ingredient>.foodcost-ingredient-row>.foodcost-remove-btn{position:absolute;top:6px;right:6px}.foodcost-case-panel{grid-template-columns:1fr 1fr}.foodcost-case-panel .foodcost-field:first-child,.foodcost-case-readout{grid-column:1/-1}.foodcost-case-panel .foodcost-case-toggle{text-align:left;grid-column:1/-1}.foodcost-results-main{text-align:center;flex-direction:column}.foodcost-results-grid,.foodcost-ladder-grid{grid-template-columns:1fr}.foodcost-ladder-cta{flex-direction:column;gap:12px}}
