.fish-cart-controls{width:100%;min-width:0}
.fish-cart-stepper{display:flex;gap:.35rem;align-items:stretch}
.fish-cart-stepper .fish-product-add{flex:1;min-width:0}
.fish-cart-stepper button[data-fish-plus],.fish-cart-stepper button[data-fish-minus]{display:grid;place-items:center;flex:none;min-width:2.5rem;padding:0;border:1px solid #b9d1c6;border-radius:.5rem;background:#edf5ef;color:#174e40;font:inherit;font-weight:700}
.fish-page .fish-cart-stepper .fish-cart-add-label{font:inherit}
.fish-cart-add-compact{display:none}
.fish-cart-stepper button:disabled{opacity:.55}
.fish-stock-error{display:block;margin-top:.3rem;color:#a12823;font-weight:600}
.fish-stock-error:empty{display:none}
.rd-stock-cell input[type=number]{width:6rem;max-width:100%}
.fish-page .fish-cart-stepper .fish-product-add{margin-top:0;gap:.3rem}
.fish-feedback-success{color:#185444}
@media screen and (max-width: 620px) {
  .fish-page { padding-block: 24px 32px; }
  .fish-page .fish-form { grid-template-columns: minmax(0, 1fr); gap: 14px; margin-top: 14px; }
  .fish-page .fish-form > .fish-panel, .fish-page .fish-cart { min-width: 0; padding: 12px; }
  .fish-page .fish-catalog-heading { flex-flow: row wrap; align-items: center; gap: 10px; margin-bottom: 14px; }
  .fish-page .fish-catalog-heading > div { flex: 1 1 240px; min-width: 0; }
  .fish-page .fish-catalog-heading h2 { font-size: clamp(1.35rem, 5.2vw, 1.8rem); line-height: 1.17; margin-bottom: 5px; }
  .fish-page .fish-catalog-heading p:not(.fish-eyebrow),
  .fish-page .fish-campaign-heading p { font-size: .88rem; line-height: 1.45; }
  .fish-page .fish-campaign-heading { margin-block: 0 12px; }
  .fish-page .fish-campaign-heading p { margin: 0 0 .45rem; }
  .fish-page .fish-cart-shortcut { display: inline-flex; align-items: center; min-height: 44px; padding: 7px 12px; font-size: .9rem; }
  .fish-page .fish-catalog-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 9.5rem), 1fr)); gap: 8px; }
  .fish-page .fish-product-card-body { min-width: 0; padding: 8px; gap: 5px; }
  .fish-page .fish-product-card h3 { font-size: 1rem; overflow-wrap: anywhere; }
  .fish-page .fish-product-photo { height: clamp(85px, 24vw, 115px); }
  .fish-page .fish-product-bottom { grid-template-columns: minmax(0, 1fr); gap: 5px; }
  .fish-page .fish-product-price { flex-wrap: wrap; }
  .fish-page .fish-panel button.fish-product-more { min-height: 32px; max-width: 100%; white-space: normal; text-align: left; }
  .fish-page .fish-cart-stepper-quantity { display: grid; grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 4px; }
  .fish-page .fish-cart-stepper .fish-product-add { min-height: 44px; }
  .fish-page .fish-cart-stepper-quantity > button { min-width: 0; min-height: 44px; width: 100%; margin: 0; }
  .fish-page .fish-cart-stepper-quantity button.fish-product-add { display: grid; justify-items: center; align-content: center; gap: 0; padding: 3px 1px; }
  .fish-page .fish-cart-stepper-quantity .fish-cart-add-label { position: absolute; clip-path: inset(50%); width: 1px; height: 1px; overflow: hidden; white-space: nowrap; }
  .fish-page .fish-cart-stepper-quantity .fish-cart-add-compact { display: block; font: 700 .68rem/1.15 system-ui, sans-serif; }
  .fish-page .fish-cart-stepper-quantity [data-fish-picked-count] { font: 750 .82rem/1.2 system-ui, sans-serif; }
  .fish-page .fish-product-dialog { padding: 12px; }
  .fish-page .fish-detail-close { min-width: 44px; min-height: 44px; }
  .fish-page .fish-cart .fish-line { grid-template-columns: minmax(0, 1fr); }
  .fish-page .fish-line-actions { flex-wrap: wrap; }
  body:has(.fish-catalog-panel) .back-to-top { display: none; }
}
