/* Recipe cost calculator (single recipe page only). Loaded only when the feature is enabled. */
.recipe-cost-panel{margin:28px 0;border:1px solid var(--srr-border,#ececec);border-radius:16px;background:#fff;box-shadow:0 10px 30px rgba(20,20,20,.06);overflow:hidden}
.recipe-cost-panel[hidden]{display:none}
.rcp-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:20px 22px;background:var(--srr-bg-alt,#fbf7f2);border-bottom:1px solid var(--srr-border,#ececec)}
.rcp-head h2{margin:0 0 4px;font-size:22px}
.rcp-head p{margin:0;font-size:14px;color:var(--srr-muted,#6c6c6c)}
.rcp-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.rcp-meta span{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;background:#fff;border:1px solid var(--srr-border,#ececec);color:var(--srr-dark,#1d1c21)}
.srr-cost-close{flex:none;width:40px;height:40px;border:0;border-radius:10px;background:transparent;font-size:26px;line-height:1;cursor:pointer;color:var(--srr-muted,#6c6c6c)}
.srr-cost-close:hover{background:#fff;color:var(--srr-dark,#1d1c21)}
.srr-cost-host{padding:20px 22px 24px}
.rcp-disclaimer{margin:0;padding:0 22px 20px;font-size:13px;color:var(--srr-muted,#6c6c6c)}

.srr-cost-inline{display:inline-flex;align-items:center;gap:8px;margin:14px 0 4px;padding:10px 16px;border:1px dashed var(--srr-primary,#fd7500);border-radius:10px;background:transparent;color:var(--srr-primary-dark,#d95f00);font-weight:700;font-size:14px;cursor:pointer}
.srr-cost-inline:hover{background:var(--srr-primary,#fd7500);color:#fff;border-style:solid}

.srrc{color:var(--srr-text,#2b2b2b);font-size:15px;line-height:1.5}
.srrc *{box-sizing:border-box}
.srrc input,.srrc select{width:100%;min-height:44px;padding:9px 12px;border:1px solid #d9d4cc;border-radius:10px;background:#fff;font:inherit;color:inherit}
.srrc input[type=checkbox]{width:auto;min-height:0;margin:0 4px 0 0}
.srrc input:focus,.srrc select:focus,.srrc button:focus-visible{outline:3px solid rgba(253,117,0,.35);outline-offset:1px;border-color:var(--srr-primary,#fd7500)}
.srrc-lab{display:block;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--srr-muted,#6c6c6c);margin-bottom:4px}
.srrc-field{display:block}
.srrc-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:12px}
.srrc-hint{margin:0 0 16px;font-size:14px;color:var(--srr-muted,#6c6c6c)}
.srrc-rows{display:flex;flex-direction:column;gap:12px}
.srrc-row{display:grid;grid-template-columns:2.4fr 2fr 2.2fr 1.2fr 1.1fr 44px;gap:12px;align-items:start;padding:14px;border:1px solid var(--srr-border,#ececec);border-radius:12px;background:var(--srr-bg-alt,#fbf7f2)}
.srrc-row.srrc-todo{border-color:var(--srr-primary,#fd7500);background:#fff8f1}
.srrc-row.srrc-off{opacity:.6}
.srrc-src{display:block;margin-top:4px;font-size:12px;color:var(--srr-muted,#6c6c6c)}
.srrc-skip{display:block;margin-top:6px;font-size:12px;color:var(--srr-muted,#6c6c6c);cursor:pointer}
.srrc-pair{display:grid;grid-template-columns:1.3fr 1fr;gap:6px}
.srrc-cost{display:flex;align-items:center;min-height:44px;font-weight:700;font-size:16px;color:var(--srr-dark,#1d1c21)}
.srrc-x{width:44px;height:44px;margin-top:20px;border:0;border-radius:10px;background:transparent;color:var(--srr-muted,#6c6c6c);font-size:26px;line-height:1;cursor:pointer}
.srrc-x:hover{background:#fdeeee;color:#b32d2e}
.srrc-conv{grid-column:1 / -1}
.srrc-conv[hidden]{display:none}
.srrc-conv .srrc-field{max-width:380px}
.srrc-actions,.srrc-toolrow{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.srrc-btn{min-height:44px;padding:10px 18px;border:1px solid #d9d4cc;border-radius:10px;background:#fff;color:var(--srr-dark,#1d1c21);font:inherit;font-weight:700;cursor:pointer}
.srrc-btn:hover{border-color:var(--srr-primary,#fd7500);color:var(--srr-primary,#fd7500)}
.srrc-ghost{background:transparent;color:var(--srr-muted,#6c6c6c)}
.srrc-extra{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:6px 0 18px}
.srrc-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:8px 0}
.srrc-stat{padding:16px;border-radius:12px;background:var(--srr-bg-alt,#fbf7f2);border:1px solid var(--srr-border,#ececec)}
.srrc-strong{background:var(--srr-dark,#1d1c21);border-color:var(--srr-dark,#1d1c21);color:#fff}
.srrc-slab{display:block;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:.75}
.srrc-sval{display:block;font-size:26px;font-weight:800;margin-top:4px}
.srrc-notes{margin:10px 0 0;font-size:14px;color:#9a4a00}
.srrc-notes:empty{display:none}
.srrc-h{font-size:17px;margin:22px 0 10px}
.srrc-bar{margin-bottom:10px}
.srrc-barhead{display:flex;justify-content:space-between;gap:10px;font-size:14px;margin-bottom:4px}
.srrc-track{height:10px;border-radius:999px;background:#efe9e1;overflow:hidden}
.srrc-fill{height:100%;background:var(--srr-primary,#fd7500);border-radius:999px}
.srrc-toast{min-height:22px;margin:4px 0 0;font-size:14px;color:#1a7f37}
@media (max-width:860px){
	.rcp-head,.srr-cost-host{padding-left:16px;padding-right:16px}
	.srrc-top,.srrc-extra{grid-template-columns:1fr}
	.srrc-row{grid-template-columns:1fr 1fr}
	.srrc-c-name,.srrc-c-use,.srrc-c-pkg{grid-column:1 / -1}
	.srrc-x{justify-self:end;margin-top:0;align-self:end}
}
@media print{
	.recipe-cost-panel{border:1px solid #000;box-shadow:none}
	.srr-cost-close,.srrc-actions,.srrc-toolrow,.srrc-x,.srrc-toast,.srrc-skip,.srrc-hint,.srr-cost-inline{display:none !important}
}
