/* v4.9 consolidation components use the existing theme tokens. */
.produce-guide,
.dough-target{
  width:100%;
}
.produce-principles{
  margin:0 0 8px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface2);
}
.produce-principles summary,
.dough-formula summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:48px;
  padding:12px 14px;
  color:var(--ink);
  font-weight:750;
  cursor:pointer;
  list-style:none;
}
.produce-principles summary::-webkit-details-marker,
.dough-formula summary::-webkit-details-marker{display:none}
.produce-principles summary span,
.dough-formula summary span{
  color:var(--brass2);
  font-family:var(--fm);
  font-size:18px;
  line-height:1;
}
.produce-principles[open] summary span,
.dough-formula[open] summary span{transform:rotate(45deg)}
.produce-principles>div{
  padding:0 14px 14px;
  color:var(--ink2);
}
.produce-principles p+p{margin-top:10px}
.produce-picker{
  display:grid;
  grid-template-columns:minmax(210px,.7fr) minmax(260px,1.3fr);
  gap:12px;
  align-items:end;
  margin:18px 0 14px;
  padding:14px;
  border:1px solid var(--line2);
  border-radius:var(--radius);
  background:var(--surface);
}
.produce-kind,
.dough-mode{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px;
  padding:4px;
  border:1px solid var(--line);
  border-radius:7px;
  background:var(--surface2);
}
.produce-kind button,
.dough-mode button{
  min-height:42px;
  padding:8px 12px;
  border:1px solid transparent;
  border-radius:5px;
  background:transparent;
  color:var(--ink2);
  font:700 12px/1.2 var(--fb);
  cursor:pointer;
}
.produce-kind button.on,
.dough-mode button.on{
  border-color:var(--brass-dim);
  background:var(--surface3);
  color:var(--brass2);
}
.produce-picker label,
.dough-target__panel label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:var(--ink2);
  font-size:11px;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.produce-picker select,
.dough-target__panel input{
  width:100%;
  min-height:44px;
  padding:10px 12px;
  border:1px solid var(--line2);
  border-radius:6px;
  background:var(--surface2);
  color:var(--ink);
  font:650 14px/1.2 var(--fb);
}
.produce-picker select:focus,
.dough-target__panel input:focus{
  outline:2px solid color-mix(in srgb,var(--brass) 55%,transparent);
  outline-offset:1px;
}
.produce-empty{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-height:112px;
  justify-content:center;
  padding:20px;
  border:1px dashed var(--line2);
  border-radius:var(--radius);
  color:var(--ink2);
  background:var(--surface);
}
.produce-empty strong{color:var(--ink);font-size:15px}
.produce-card{
  overflow:hidden;
  border:1px solid var(--line2);
  border-radius:var(--radius);
  background:var(--surface);
}
.produce-card__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:16px 18px;
  border-bottom:1px solid var(--line);
  background:var(--surface2);
}
.produce-card__header div>span{
  display:block;
  margin-bottom:3px;
  color:var(--ink3);
  font:700 9px/1 var(--fm);
  letter-spacing:.13em;
  text-transform:uppercase;
}
.produce-card__header h3{
  margin:0;
  color:var(--ink);
  font-family:var(--fh);
  font-size:22px;
  line-height:1.1;
}
.produce-ethylene{
  max-width:180px;
  padding:6px 9px;
  border:1px solid var(--line2);
  border-radius:999px;
  color:var(--ink2);
  font:700 9px/1.25 var(--fm);
  text-align:center;
  text-transform:uppercase;
}
.produce-ethylene--emitter{border-color:var(--copper);color:var(--copper)}
.produce-ethylene--sensitive{border-color:var(--sea);color:var(--sea)}
.produce-facts{
  display:grid;
  grid-template-columns:1fr 1fr;
}
.produce-facts section{
  min-width:0;
  padding:16px 18px;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.produce-facts section:nth-child(even){border-right:0}
.produce-facts__wide{grid-column:1/-1;border-right:0!important}
.produce-facts small{
  display:block;
  margin-bottom:6px;
  color:var(--brass2);
  font:750 9px/1 var(--fm);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.produce-facts p{margin:0;color:var(--ink2);font-size:13px;line-height:1.55}
.produce-index-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:100%;
  min-height:48px;
  padding:12px 18px;
  border:0;
  background:var(--surface2);
  color:var(--brass2);
  font:750 12px/1.3 var(--fb);
  text-align:left;
  cursor:pointer;
}
.produce-index-link:hover{background:var(--surface3)}

.bakers-calc[data-yield-first]{display:flex;flex-direction:column;gap:12px}
.bakers-calc[data-yield-first]>.calc-row,
.bakers-calc[data-yield-first]>.preset-profile,
.bakers-calc[data-yield-first]>.yield-recommendation,
.bakers-calc[data-yield-first]>.dough-target,
.bakers-calc[data-yield-first]>.dough-formula,
.bakers-calc[data-yield-first]>.calc-out,
.bakers-calc[data-yield-first]>.calc-save,
.bakers-calc[data-yield-first]>.dough-method{order:initial!important;margin:0}
.bakers-calc[data-yield-first]>.calc-row-preset{grid-template-columns:minmax(0,1fr)}
.yield-recommendation{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:12px 14px;
  border:1px solid var(--brass-dim);
  border-left:4px solid var(--brass);
  border-radius:var(--radius);
  background:color-mix(in srgb,var(--surface2) 90%,var(--brass) 10%);
}
.yield-recommendation[hidden]{display:none!important}
.yield-recommendation>div{display:flex;min-width:0;flex-direction:column;gap:4px}
.yield-recommendation small{
  color:var(--brass2);
  font:750 9px/1.2 var(--fm);
  letter-spacing:.09em;
  text-transform:uppercase;
}
.yield-recommendation strong{color:var(--ink);font:800 13px/1.35 var(--fb)}
.yield-recommendation strong span{color:var(--brass2);font-family:var(--fm);font-size:11px;white-space:nowrap}
.yield-recommendation p{margin:0;color:var(--ink2);font-size:11px;line-height:1.45}
.yield-recommendation>em{
  flex:0 0 auto;
  max-width:135px;
  color:var(--ink3);
  font:650 9px/1.4 var(--fm);
  text-align:right;
  text-transform:uppercase;
}
.dough-target{
  padding:14px;
  border:1px solid var(--line2);
  border-radius:var(--radius);
  background:var(--surface);
}
.dough-target__heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  margin-bottom:11px;
}
.dough-target__heading span{color:var(--ink);font-weight:800}
.dough-target__heading small{color:var(--brass2);font:700 9px/1.2 var(--fm);letter-spacing:.06em;text-transform:uppercase}
.dough-mode{max-width:500px;margin-bottom:12px}
.yield-mode{
  display:grid;
  grid-template-columns:1fr 1fr;
  max-width:none;
  gap:8px;
  padding:0;
  border:0;
  background:transparent;
}
.yield-mode button{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  gap:9px;
  align-items:start;
  min-height:66px;
  padding:11px 12px;
  border:1px solid var(--line2);
  border-radius:8px;
  background:var(--surface2);
  color:var(--ink2);
  text-align:left;
  cursor:pointer;
}
.yield-mode button>span:last-child{display:flex;min-width:0;flex-direction:column;gap:4px}
.yield-mode button strong{color:var(--ink);font:800 12px/1.25 var(--fb)}
.yield-mode button small{color:var(--ink3);font:600 10px/1.35 var(--fb)}
.yield-choice__check{
  display:grid;
  width:18px;
  height:18px;
  place-items:center;
  margin-top:1px;
  border:1px solid var(--line2);
  border-radius:50%;
  color:transparent;
  font:800 11px/1 var(--fb);
}
.yield-mode button.on{
  border-color:var(--brass);
  background:color-mix(in srgb,var(--surface2) 88%,var(--brass) 12%);
  box-shadow:inset 3px 0 0 var(--brass);
}
.yield-mode button.on .yield-choice__check{
  border-color:var(--brass);
  background:var(--brass);
  color:var(--bg);
}
.yield-mode button.on strong{color:var(--brass2)}
.dough-target__panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:10px;
}
.dough-target__panel[data-dough-panel="total"]{grid-template-columns:minmax(0,1fr)}
.dough-target__panel[hidden],
.laminated-target__panel[hidden]{display:none!important}
.dough-target__panel label>small{
  color:var(--ink3);
  font-size:9px;
  font-weight:600;
  letter-spacing:0;
  text-transform:none;
}
.dough-target .core-number{display:grid;grid-template-columns:1fr auto;align-items:center}
.dough-target .core-number input{border-radius:6px 0 0 6px}
.dough-target .core-number b{
  display:grid;
  min-height:44px;
  place-items:center;
  min-width:44px;
  padding:0 10px;
  border:1px solid var(--line2);
  border-left:0;
  border-radius:0 6px 6px 0;
  background:var(--surface3);
  color:var(--ink2);
  font:700 11px/1 var(--fm);
}
.dough-target__summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:42px;
  margin-top:10px;
  padding:9px 11px;
  border-left:3px solid var(--brass);
  background:var(--surface2);
  color:var(--ink2);
  font-size:12px;
}
.dough-target__summary b{color:var(--brass2);font:800 12px/1.3 var(--fm);text-align:right}
.dough-formula{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface2);
}
.dough-formula .calc-grid{margin:0;padding:0 14px 14px}
.dough-method details{margin-top:0}

.laminated-builder[data-yield-first]{display:grid;gap:14px}
.laminated-setup{display:grid;gap:10px}
.workflow-control{
  display:grid;
  min-width:0;
  gap:10px;
  margin:0;
  padding:13px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--surface2);
  color:var(--ink);
}
fieldset.workflow-control{box-sizing:border-box}
.workflow-control legend{width:100%;padding:0}
.workflow-control__label{
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--ink);
  font:800 12px/1.3 var(--fb);
}
.workflow-control__label>b{
  display:grid;
  width:25px;
  height:25px;
  flex:0 0 25px;
  place-items:center;
  border:1px solid var(--brass-dim);
  border-radius:50%;
  background:var(--surface);
  color:var(--brass2);
  font:800 11px/1 var(--fm);
}
.workflow-control>select,
.laminated-target__panel input{
  width:100%;
  min-height:44px;
  box-sizing:border-box;
  padding:10px 12px;
  border:1px solid var(--line2);
  border-radius:7px;
  background:var(--surface);
  color:var(--ink);
  font:650 13px/1.2 var(--fb);
}
.laminated-mode{margin:0}
.laminated-target__panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:10px;
}
.laminated-target__panel[data-laminated-panel="total"]{grid-template-columns:minmax(0,1fr)}
.laminated-target__panel label{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:6px;
  color:var(--ink2);
  font-size:10px;
  font-weight:750;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.laminated-target__panel label>small{
  color:var(--ink3);
  font-size:9px;
  font-weight:600;
  letter-spacing:0;
  line-height:1.4;
  text-transform:none;
}
.laminated-target__panel .core-number{display:grid;grid-template-columns:1fr auto;gap:0;align-items:center}
.laminated-target__panel .core-number input{border-radius:7px 0 0 7px}
.laminated-target__panel .core-number b{
  display:grid;
  min-width:44px;
  min-height:44px;
  box-sizing:border-box;
  place-items:center;
  padding:0 10px;
  border:1px solid var(--line2);
  border-left:0;
  border-radius:0 7px 7px 0;
  background:var(--surface3);
  color:var(--ink2);
  font:700 11px/1 var(--fm);
}
.numbered-steps{
  display:grid;
  gap:0;
  margin:0!important;
  padding:0!important;
  list-style:none;
}
.numbered-steps li{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:11px;
  margin:0;
  padding:10px 0;
  border-top:1px solid var(--line);
}
.numbered-steps li:first-child{border-top:0;padding-top:4px}
.numbered-step__number{
  color:var(--brass2);
  font:800 13px/1.6 var(--fm);
  text-align:right;
  white-space:nowrap;
}
.numbered-step__text{min-width:0;color:var(--ink2);font-size:13px;line-height:1.6}

@media(max-width:700px){
  .produce-picker{grid-template-columns:1fr}
  .produce-facts{grid-template-columns:1fr}
  .produce-facts section,
  .produce-facts section:nth-child(even){grid-column:1;border-right:0}
  .produce-card__header{align-items:flex-start;flex-direction:column}
  .produce-ethylene{max-width:none}
  .dough-target__heading{align-items:flex-start;flex-direction:column;gap:4px}
  .yield-recommendation{flex-direction:column;gap:8px}
  .yield-recommendation>em{max-width:none;text-align:left}
  .yield-mode{grid-template-columns:1fr}
  .dough-target__summary{align-items:flex-start;flex-direction:column;gap:4px}
  .dough-target__summary b{text-align:left}
}

@media(max-width:480px){
  .produce-picker,
  .dough-target{padding:10px}
  .produce-card__header,
  .produce-facts section{padding:14px}
  .produce-kind button,
  .dough-mode button{padding:8px 7px;font-size:11px}
  .dough-target__panel{grid-template-columns:1fr}
  .laminated-target__panel{grid-template-columns:1fr}
  .dough-formula .calc-grid{grid-template-columns:1fr}
  .workflow-control{padding:11px}
  .numbered-steps li{grid-template-columns:28px minmax(0,1fr);gap:9px}
}
