/* Beef Cuts (Oct 22, 2026): Shares/Cuts choice, cuts dashboard, Add Beef Cut workflow. Light grey section fills. */
.bc-mode { margin: 6px 0 14px; padding: 16px 18px; background: #f5f6f4; border: 1px solid #e3e7e2; border-radius: 14px; }
.bc-mode .wiz-title { margin: 0 0 10px; }
.list-wizard:not(.list-beef) .bc-mode, .bc-mode[hidden], .hz-page .bc-mode { display: none !important; }
.bc-mode-toggle { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.bc-mode-toggle button { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; text-align: left; min-height: 64px; padding: 12px 14px; border: 1.5px solid #d8e0d6; border-radius: 12px; background: #fff; color: var(--ink); font: inherit; cursor: pointer; }
.bc-mode-toggle button b { font-size: 1rem; font-weight: 650; }
.bc-mode-toggle button span { font-size: .84rem; color: var(--muted); }
.bc-mode-toggle button.on { border-color: var(--green); background: var(--green-l); box-shadow: inset 0 0 0 1px var(--green); }
.bc-mode-toggle button:hover { border-color: var(--green); }

.bc-page { max-width: 1080px; padding-bottom: 96px; }
.bc-page .page-title { margin: 0 0 4px; }
.bc-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; }
.bc-head-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.bc-note { margin: 12px 0 0; padding: 10px 14px; border-radius: 12px; background: #f5f6f4; border: 1px solid #e3e7e2; color: var(--ink-soft); font-size: .9rem; }
.bc-back { display: inline-block; margin: 0 0 10px; color: var(--green); font-weight: 560; text-decoration: none; }
.bc-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 16px 0; }
.bc-stat { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 12px 14px; border-radius: 12px; background: #f5f6f4; border: 1px solid #e3e7e2; font: inherit; color: var(--ink); cursor: pointer; text-align: left; }
.bc-stat b { font-size: 1.35rem; font-weight: 650; }
.bc-stat span { font-size: .82rem; color: var(--muted); }
.bc-stat.on { border-color: var(--green); background: var(--green-l); }
.bc-stat-plain { cursor: default; }
.bc-tools { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 10px; }
.bc-tools input, .bc-tools select, .bc-pick-q, .bc-custom-add input, .bc-custom-add select, .bc-lib-row input { min-height: 44px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: #fff; font: inherit; color: var(--ink); }
.bc-tools input { flex: 1 1 220px; }
.bc-tools select { flex: 0 1 200px; }
.bc-bulk { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 10px 12px; margin-bottom: 10px; border-radius: 12px; background: var(--green-l); border: 1px solid #c9dfd0; }
.bc-bulk[hidden] { display: none; }
.bc-bulk label { display: inline-flex; align-items: center; gap: 6px; font-size: .88rem; font-weight: 560; }
.bc-bulk input { width: 90px; min-height: 38px; padding: 6px 8px; border: 1px solid var(--line); border-radius: 8px; font: inherit; }
.bc-bulk .btn { min-height: 38px; padding: 6px 12px; font-size: .86rem; }
.bc-bulk-n { font-weight: 650; margin-right: 4px; }
.bc-bulk-sp { flex: 1 1 0; }
.bc-list { display: flex; flex-direction: column; gap: 8px; }
.bc-row { display: grid; grid-template-columns: 28px 56px minmax(0, 1fr) 128px 132px 86px 236px; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 12px; background: #f5f6f4; border: 1px solid #e3e7e2; }
.bc-row.sel { border-color: var(--green); background: #eef5f0; }
.bc-row-h { background: transparent; border: 0; padding-top: 0; padding-bottom: 0; font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); }
.bc-check input { width: 18px; height: 18px; accent-color: var(--green); }
.bc-thumb { width: 56px; height: 56px; border-radius: 10px; overflow: hidden; background: #e8ebe6; display: flex; align-items: center; justify-content: center; }
.bc-thumb img { width: 100%; height: 100%; object-fit: cover; }
.bc-noimg { font-size: 24px; opacity: .6; }
.bc-name { font-weight: 620; color: var(--ink); text-decoration: none; }
.bc-name:hover { color: var(--green); }
.bc-meta { font-size: .84rem; color: var(--muted); margin-top: 2px; }
.bc-price { font-weight: 620; color: var(--green-d); }
.bc-qty { display: inline-flex; align-items: center; border: 1px solid var(--line); border-radius: 10px; background: #fff; overflow: hidden; }
.bc-qty button { width: 38px; height: 40px; border: 0; background: transparent; font-size: 1.1rem; cursor: pointer; color: var(--green-d); }
.bc-qty button:hover { background: var(--green-l); }
.bc-qty input { width: 52px; height: 40px; border: 0; text-align: center; font: inherit; -moz-appearance: textfield; }
.bc-qty input::-webkit-outer-spin-button, .bc-qty input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.bc-pill { display: inline-block; padding: 4px 10px; border-radius: 999px; font-size: .78rem; font-weight: 620; white-space: nowrap; justify-self: start; }
.bc-active { background: #dcefe3; color: #14543a; }
.bc-draft { background: #eceee9; color: #4c5a50; }
.bc-sold_out { background: #fbe9d7; color: #8a4a12; }
.bc-inactive { background: #e7e7e7; color: #6b6b6b; }
.bc-acts { display: flex; gap: 2px; flex-wrap: wrap; justify-content: flex-end; }
.bc-acts a, .bc-acts button { padding: 6px 8px; border: 0; background: transparent; color: var(--green); font: inherit; font-size: .86rem; font-weight: 560; cursor: pointer; text-decoration: none; border-radius: 8px; }
.bc-acts a:hover, .bc-acts button:hover { background: var(--green-l); }
.bc-del { color: #a33 !important; }
.bc-empty { text-align: center; padding: 40px 20px; border-radius: 16px; background: #f5f6f4; border: 1px dashed #cfd6cd; }
.bc-empty-ico { font-size: 40px; }
.bc-empty h3 { margin: 8px 0 4px; }
.bc-none { padding: 12px 4px; }

.bc-steps { display: flex; gap: 8px; list-style: none; padding: 0; margin: 10px 0 12px; }
.bc-steps li { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px 6px 6px; border-radius: 999px; background: #f0f2ef; color: var(--muted); font-weight: 560; font-size: .9rem; }
.bc-steps li span { width: 24px; height: 24px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #dfe4de; color: var(--ink-soft); font-size: .8rem; }
.bc-steps li.on { background: var(--green-l); color: var(--green-d); }
.bc-steps li.on span, .bc-steps li.done span { background: var(--green); color: #fff; }
.bc-pick-q { width: 100%; margin: 6px 0 10px; }
.bc-tabs { display: flex; gap: 6px; overflow-x: auto; padding: 2px 0 10px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.bc-tabs::-webkit-scrollbar { display: none; }
.bc-tabs button { flex: 0 0 auto; min-height: 40px; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--line); background: #fff; font: inherit; font-size: .88rem; font-weight: 560; color: var(--ink-soft); cursor: pointer; white-space: nowrap; }
.bc-tabs button.on { background: #16503c; border-color: #16503c; color: #fff; }
.bc-cat { margin: 0 0 12px; padding: 14px 16px; background: #f5f6f4; border: 1px solid #e3e7e2; border-radius: 14px; }
.bc-cat-h { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 10px; }
.bc-cat-h h3 { margin: 0; font-size: 1rem; }
.bc-cat-h small { color: var(--muted); font-weight: 500; margin-left: 4px; }
.bc-all { display: inline-flex; align-items: center; gap: 6px; font-size: .88rem; font-weight: 560; color: var(--green-d); cursor: pointer; min-height: 36px; }
.bc-all input { width: 18px; height: 18px; accent-color: var(--green); }
.bc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
.bc-opt { display: flex; align-items: center; gap: 10px; min-height: 46px; padding: 10px 12px; border: 1.5px solid #dde3db; border-radius: 10px; background: #fff; cursor: pointer; font-size: .93rem; }
.bc-opt input { width: 18px; height: 18px; flex: 0 0 auto; accent-color: var(--green); margin: 0; }
.bc-opt.on { border-color: var(--green); background: var(--green-l); }
.bc-checks { display: flex; flex-wrap: wrap; gap: 8px; }
.bc-checks .bc-opt { min-height: 42px; padding: 8px 12px; }
.bc-custom-add { display: flex; gap: 8px; flex-wrap: wrap; }
.bc-custom-add input { flex: 1 1 220px; }
.bc-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.bc-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 6px 6px 12px; border-radius: 999px; background: var(--green-l); border: 1px solid var(--green); color: var(--green-d); font-weight: 560; font-size: .9rem; }
.bc-chip button { width: 26px; height: 26px; border-radius: 50%; border: 0; background: #fff; color: var(--green-d); cursor: pointer; font-size: 1rem; line-height: 1; }
.bc-foot { position: sticky; bottom: 0; z-index: 5; display: flex; align-items: center; gap: 8px; justify-content: flex-end; margin-top: 16px; padding: 12px 14px; background: rgba(255, 252, 247, .97); border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 -6px 20px rgba(20, 32, 24, .06); }
.bc-foot > span:first-child { margin-right: auto; font-weight: 600; color: var(--ink-soft); }
.bc-foot .btn[disabled] { opacity: .5; cursor: not-allowed; }

.bc-shared, .bc-card { margin: 0 0 14px; padding: 16px 18px; background: #f5f6f4; border: 1px solid #e3e7e2; border-radius: 14px; }
.bc-shared h3 { margin: 0 0 10px; font-size: 1rem; }
.bc-shared h3 small { color: var(--muted); font-weight: 500; }
.bc-card-h { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; }
.bc-card-cat { font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); font-weight: 600; }
.bc-x { border: 0; background: transparent; color: #a33; font: inherit; font-size: .86rem; font-weight: 560; cursor: pointer; padding: 6px 8px; border-radius: 8px; }
.bc-x:hover { background: #fbeaea; }
.bc-err { margin: 0 0 10px; padding: 10px 12px; border-radius: 10px; background: #fdecec; color: #8f1d1d; font-weight: 560; }
.bc-err[hidden] { display: none; }
.bc-fgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 16px; }
.bc-fgrid .field.full { grid-column: 1 / -1; }
.bc-fgrid .field input:not([type=checkbox]):not([type=radio]), .bc-fgrid .field select, .bc-fgrid .field textarea { width: 100%; background: #fff; min-height: 44px; }
.bc-fgrid .field label small { color: var(--muted); font-weight: 400; }
.bc-other { margin-top: 8px; }
.bc-other[hidden] { display: none !important; }
.bc-range { display: flex; align-items: center; gap: 8px; }
.bc-range span { color: var(--muted); font-size: .88rem; }
.bc-seg { display: inline-flex; flex-wrap: wrap; gap: 0; padding: 4px; border-radius: 12px; background: #e6eee8; }
.bc-seg label { margin: 0 !important; padding: 9px 16px; white-space: nowrap; border-radius: 9px; font-weight: 600; font-size: .9rem; color: #3a4a3e; cursor: pointer; min-height: 40px; display: inline-flex; align-items: center; }
.bc-seg label.on { background: #16503c; color: #fff; box-shadow: 0 1px 4px rgba(20, 32, 24, .12); }
.bc-seg input { position: absolute; opacity: 0; pointer-events: none; }
.bc-inline { display: inline-flex !important; align-items: center; gap: 8px; cursor: pointer; }
.bc-inline input { width: 18px; height: 18px; accent-color: var(--green); }
.bc-photos { display: flex; flex-wrap: wrap; gap: 8px; }
.bc-ph, .bc-ph-add { position: relative; width: 88px; height: 88px; border-radius: 12px; overflow: hidden; }
.bc-ph img { width: 100%; height: 100%; object-fit: cover; }
.bc-ph button { position: absolute; top: 4px; right: 4px; width: 26px; height: 26px; border-radius: 50%; border: 0; background: rgba(0, 0, 0, .6); color: #fff; cursor: pointer; }
.bc-ph-add { display: flex !important; align-items: center; justify-content: center; border: 1.5px dashed #b9c4b8; background: #fff; color: var(--green-d); font-weight: 600; font-size: .82rem; text-align: center; cursor: pointer; margin: 0 !important; }
.bc-ph-add[hidden] { display: none !important; }
.bc-lib-row { display: flex; gap: 8px; align-items: center; margin-bottom: 6px; }
.bc-lib-row input { flex: 1 1 auto; }
.bc-lib-row.off input { color: var(--muted); text-decoration: line-through; }

/* Option chips, segments and the photo tile sit inside .field, whose label/input defaults are for text fields. */
.field label.bc-opt, .field .bc-seg label, .field label.bc-ph-add, .field label.bc-inline { display: flex; font-size: .92rem; text-transform: none; letter-spacing: 0; color: var(--ink); margin: 0; }
.field .bc-seg label { display: inline-flex; color: #3a4a3e; }
.field .bc-seg label.on { color: #fff; }
.field label.bc-ph-add { color: var(--green-d); font-size: .82rem; }
.field .bc-opt input, .field .bc-inline input { width: 18px !important; min-height: 0 !important; height: 18px; padding: 0; border: 0; flex: 0 0 auto; background: none; }
.field .bc-seg input { width: 1px !important; height: 1px; }

@media (max-width: 860px) {
  .bc-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .bc-row-h { display: none; }
  .bc-row { grid-template-columns: 24px 56px minmax(0, 1fr) auto; grid-template-areas: "c t m s" "c t p p" "q q q q" "a a a a"; row-gap: 8px; }
  .bc-row .bc-check { grid-area: c; align-self: start; padding-top: 4px; }
  .bc-row .bc-thumb { grid-area: t; align-self: start; }
  .bc-row .bc-main { grid-area: m; }
  .bc-row .bc-pill { grid-area: s; justify-self: end; align-self: start; }
  .bc-row .bc-price { grid-area: p; }
  .bc-row .bc-qty { grid-area: q; justify-self: start; }
  .bc-row .bc-acts { grid-area: a; justify-content: flex-start; border-top: 1px solid #e3e7e2; padding-top: 6px; }
}
@media (max-width: 640px) {
  .bc-mode-toggle button { padding: 10px 12px; }
  .bc-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bc-stat-plain { grid-column: 1 / -1; }
  .bc-fgrid { grid-template-columns: 1fr; }
  .bc-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .bc-opt { padding: 8px 10px; font-size: .88rem; }
  .bc-tools select { flex: 1 1 45%; }
  .bc-head-actions { width: 100%; }
  .bc-head-actions .btn { flex: 1 1 auto; text-align: center; }
  .bc-foot { flex-wrap: wrap; margin-left: -4px; margin-right: -4px; }
  .bc-foot > span:first-child { width: 100%; }
  .bc-foot .btn { flex: 1 1 0; }
  .bc-seg { display: flex; }
  .bc-seg label { flex: 1 1 0; justify-content: center; padding: 9px 8px; }
  .bc-cat, .bc-card, .bc-shared { padding: 14px 12px; }
}

/* Oct 22 (David 8:53 AM): a Beef listing's products (Share and Cut cards) on the listing page. */
.bcs-sec .bcs-lead { margin: -2px 0 10px; }
.bcs-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px; }
.bcs-chip { border: 1px solid #d9dcd9; background: #eef0ee; color: #1d2a21; border-radius: 999px; padding: 6px 12px; font: inherit; font-size: 0.9rem; cursor: pointer; }
.bcs-chip.on { background: var(--beef, #c53030); border-color: var(--beef, #c53030); color: #fff; }
.bcs-group + .bcs-group { margin-top: 16px; }
.bcs-group[hidden] { display: none; }
.bcs-gh { font-size: 0.8rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--beef-d, #9b1c1c); margin: 0 0 8px; }
.bcs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px; }
.bcs-tile { border: 1px solid #e3e6e3; border-radius: 14px; background: #fff; overflow: hidden; display: flex; flex-direction: column; }
.bcs-tile.is-focus { box-shadow: 0 0 0 3px rgba(197, 48, 48, 0.35); }
.bcs-tile.is-out { opacity: 0.75; }
.bcs-media { position: relative; background: #eef0ee; }
.bcs-img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.bcs-noimg { aspect-ratio: 4 / 3; }
.bcs-thumbs { display: flex; gap: 4px; padding: 6px; overflow-x: auto; background: #fff; }
.bcs-thumb { flex: 0 0 auto; width: 40px; height: 32px; padding: 0; border: 2px solid transparent; border-radius: 6px; overflow: hidden; background: none; cursor: pointer; }
.bcs-thumb.on { border-color: var(--beef, #c53030); }
.bcs-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bcs-badge { position: absolute; top: 8px; left: 8px; background: #1d2a21; color: #fff; font-size: 0.75rem; font-weight: 700; padding: 3px 8px; border-radius: 999px; }
.bcs-badge-off { background: var(--beef, #c53030); }
.bcs-body { padding: 10px 12px 12px; display: flex; flex-direction: column; gap: 4px; flex: 1; }
.bcs-title { margin: 0; font-size: 1.02rem; font-weight: 700; color: #142018; }
.bcs-sub { margin: 0; color: #6b7a6e; font-size: 0.86rem; }
.bcs-price { font-weight: 700; color: var(--beef-d, #9b1c1c); font-size: 1.1rem; }
.bcs-price .hy-unit { font-weight: 500; color: #6b7a6e; font-size: 0.86rem; }
.bcs-was { color: #8a948c; font-weight: 500; font-size: 0.88rem; }
.bcs-off { background: #fde8e8; color: var(--beef-d, #9b1c1c); font-size: 0.75rem; padding: 2px 6px; border-radius: 999px; }
.bcs-each, .bcs-desc { margin: 0; font-size: 0.88rem; color: #3a4a3e; }
.bcs-left { margin: 2px 0 6px; font-size: 0.86rem; color: #3a4a3e; font-weight: 600; }
.bcs-cuts { margin: 4px 0; padding: 8px 10px; background: #eef0ee; border-radius: 10px; font-size: 0.86rem; }
.bcs-cuts ul { margin: 4px 0; padding-left: 1.1em; columns: 2 10em; column-gap: 14px; }
.bcs-cuts li { break-inside: avoid; overflow-wrap: anywhere; }
.bcs-cuts .sub { margin: 4px 0 0; font-style: italic; }
.bcs-actions { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-top: auto; }
.bcs-actions .btn { flex: 1 1 auto; }
.bcs-actions .btn-primary { background: var(--beef, #c53030); border-color: var(--beef, #c53030); }
.bcs-qty { display: inline-flex; align-items: center; border: 1px solid #d9dcd9; border-radius: 10px; overflow: hidden; }
.bcs-qty input { width: 44px; text-align: center; border: 0; padding: 6px 0; font: inherit; }
.bcs-qty .cart-qty-btn { border: 0; background: #eef0ee; width: 30px; height: 34px; cursor: pointer; font-size: 1rem; }
.bcs-from { font-size: 0.9rem; font-weight: 600; color: #6b7a6e; }
.bcs-side-n { margin: 2px 0 10px; }
.bd-purchase [data-bcs-jump].btn-primary { background: var(--beef, #c53030); border-color: var(--beef, #c53030); }
@media (max-width: 760px) {
  .bcs-grid { grid-template-columns: 1fr; }
  .bcs-cuts ul { columns: 1; }
}

/* ---------- Oct 22 (David 8:53 AM): Beef listing form "What's for Sale" cards (beef-card-form.js) ---------- */
.bcf-gone { display: none !important; }
.bcf-field .wiz-title { margin-top: 8px; }
.bcf-host { display: flex; flex-direction: column; gap: 12px; margin-top: 8px; }
.bcf-add { display: flex; flex-wrap: wrap; gap: 8px; }
.bcf-add .btn { border-color: var(--beef, #c53030); color: var(--beef-d, #9b1c1c); background: #fff; font-weight: 650; }
.bcf-add .btn:hover { background: #fdf2f2; }
.bcf-list { display: flex; flex-direction: column; gap: 12px; }
.bcf-empty { padding: 14px; border: 1px dashed #d9dcd9; border-radius: 12px; text-align: center; }
.bcf-card { border: 1px solid #e3e7e2; border-left: 4px solid var(--beef, #c53030); border-radius: 14px; background: #fff; box-shadow: 0 1px 3px rgba(20, 32, 24, .06); }
.bcf-h { display: flex; align-items: center; gap: 8px; padding: 10px 12px; }
.bcf-toggle { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; gap: 10px; background: none; border: 0; padding: 4px 0; font: inherit; text-align: left; cursor: pointer; color: #142018; }
.bcf-chev { flex: 0 0 auto; width: 22px; height: 22px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: #f2f4f1; transition: transform .15s; }
.bcf-card.is-closed .bcf-chev { transform: rotate(-90deg); }
.bcf-tt { min-width: 0; display: flex; flex-direction: column; }
.bcf-tt b { font-size: 1rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bcf-tt small { color: #6b7a6e; font-size: .84rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bcf-acts { display: flex; gap: 2px; flex: 0 0 auto; }
.bcf-acts button { border: 0; background: transparent; padding: 6px 8px; border-radius: 8px; font: inherit; font-size: .86rem; font-weight: 600; color: var(--green, #1f6b4a); cursor: pointer; }
.bcf-acts button:hover { background: var(--green-l, #eaf3ee); }
.bcf-acts .bc-del { color: var(--beef-d, #9b1c1c); }
.bcf-body { padding: 4px 14px 14px; border-top: 1px solid #eef0ee; }
.bcf-card.is-closed .bcf-body { display: none; }
.bcf-type { margin: 10px 0 6px; }
.bcf-type .bc-seg label.on, .bcf-card .bc-seg label.on { background: var(--beef-d, #9b1c1c); }
.bcf-price-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.bcf-price-row input { flex: 1 1 120px; }
.bcf-hint { margin: 4px 0 0; font-size: .84rem; }
.bcf-count { float: right; font-weight: 500; color: #6b7a6e; font-size: .8rem; }
.bcf-disc-row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.bcf-disc-row input { flex: 0 1 140px; min-height: 44px; }
.bcf-disc-out { margin: 4px 0 0; font-size: .88rem; font-weight: 600; color: var(--green-d, #16503c); min-height: 1.2em; }
.bcf-disc-out.is-bad, .bcf-bad .bcf-disc-out { color: var(--beef-d, #9b1c1c); }
.bcf-bad input, .bcf-bad select, .bcf-bad textarea { border-color: var(--beef, #c53030) !important; box-shadow: 0 0 0 2px rgba(197, 48, 48, .18); }
.bcf-cuts > label { display: flex; align-items: center; gap: 8px; font-weight: 600; }
.bcf-cutlist { margin-top: 8px; padding: 10px 12px; border-radius: 12px; background: #f5f6f4; }
.bcf-cutlist-h { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-weight: 650; }
.bcf-cutlist ul { margin: 6px 0; padding-left: 1.1em; columns: 2 10em; column-gap: 14px; font-size: .9rem; }
.bcf-cutlist li { break-inside: avoid; overflow-wrap: anywhere; }
.bcf-cutlist textarea { width: 100%; min-height: 160px; margin-top: 6px; }
.bcf-icon { border: 1px solid #d9dcd9; background: #fff; border-radius: 8px; width: 36px; height: 36px; cursor: pointer; font-size: 1rem; }
.bcf-cutlist-acts { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 6px; }
.bcf-butcher { margin: 6px 0 0; font-style: italic; font-size: .86rem; }
.bcf-on #field-beef-cards ~ .field .bc-mode, .bcf-on #bc-mode { display: none !important; }

/* ---------- Oct 22: Edit My Beef Products (beef-products-ui.js) ---------- */
.bcp-page .bc-stats { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bcp-group { margin: 18px 0 4px; display: flex; flex-direction: column; gap: 8px; }
.bcp-n { display: inline-block; min-width: 1.6em; padding: 1px 6px; border-radius: 999px; background: #fde8e8; color: var(--beef-d, #9b1c1c); font-size: .74rem; text-align: center; letter-spacing: 0; }
.bcp-item { border-radius: 12px; }
.bcp-item.is-open { box-shadow: 0 0 0 2px rgba(197, 48, 48, .35); background: #fff; }
.bcp-item.is-off .bc-row { opacity: .7; }
.bc-row.bcp-row { grid-template-columns: 22px 56px minmax(0, 1fr) 150px 132px 96px 250px; }
.bcp-name { background: none; border: 0; padding: 0; font: inherit; font-weight: 650; color: #142018; cursor: pointer; text-align: left; }
.bcp-name:hover { text-decoration: underline; }
.bcp-sale { color: var(--beef-d, #9b1c1c); font-weight: 650; }
.bc-price s { color: #8a948c; font-weight: 500; font-size: .86rem; }
.bcp-noprice { color: #8a948c; }
.bcp-edit { padding: 12px 14px 14px; border-top: 1px solid #eef0ee; }
.bcp-edit .bc-seg label.on { background: var(--beef-d, #9b1c1c); }
.bcp-edit-foot { display: flex; gap: 8px; align-items: center; justify-content: flex-end; margin-top: 10px; flex-wrap: wrap; }
.bcp-edit-foot .btn-primary, .bcp-page .bc-head-actions .btn-primary { background: var(--beef, #c53030); border-color: var(--beef, #c53030); }
.bcp-saved { margin-right: auto; color: var(--green-d, #16503c); font-weight: 650; }
.bcp-addpanel { margin: 12px 0; padding: 14px; border: 1px solid #e3e7e2; border-radius: 14px; background: #fbfbfa; }
.bcp-add-h { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.bcp-add-h h3 { margin: 0; }
.bcp-pick select { margin-left: 6px; min-height: 40px; }
.bcp-earlier { margin-top: 26px; display: flex; flex-direction: column; gap: 8px; }
.bc-row.bcp-old { grid-template-columns: 56px minmax(0, 1fr) 150px 110px 86px; }
.bcp-link { background: none; border: 0; padding: 0; color: var(--green, #1f6b4a); font: inherit; text-decoration: underline; cursor: pointer; }
@media (max-width: 860px) {
  .bc-row.bcp-old { grid-template-columns: 56px minmax(0, 1fr) auto; grid-template-areas: "t m s" "t p p" "q q q" "a a a"; }
  .bc-row.bcp-row { grid-template-columns: 22px 56px minmax(0, 1fr) auto; grid-template-areas: "c t m s" "c t p p" "q q q q" "a a a a"; }
  .bcp-row .bcp-sel { grid-area: c; align-self: start; padding-top: 4px; }
  .bcp-row .bcp-st { grid-area: s; justify-self: end; align-self: start; align-items: flex-end; }
  .bc-row.bcp-old { grid-template-areas: "t m s" "t p p"; }
  .bcp-row .bc-thumb { grid-area: t; align-self: start; }
  .bcp-row .bc-main { grid-area: m; }
  .bcp-row .bc-pill { grid-area: s; justify-self: end; align-self: start; }
  .bcp-row .bc-price { grid-area: p; }
  .bcp-row .bc-qty { grid-area: q; justify-self: start; }
  .bcp-row .bc-acts { grid-area: a; justify-content: flex-start; border-top: 1px solid #e3e7e2; padding-top: 6px; }
  .bcp-old > .bc-meta { display: none; }
}
@media (max-width: 640px) {
  .bcp-page .bc-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bcf-h { flex-wrap: wrap; }
  .bcf-acts { width: 100%; justify-content: flex-end; border-top: 1px solid #f0f1ef; padding-top: 4px; }
  .bcf-body { padding: 4px 10px 12px; }
  .bcf-cutlist ul { columns: 1; }
  .bcp-edit-foot .btn { flex: 1 1 0; }
  .bcp-saved { width: 100%; }
}

/* Oct 23 (David t602u): My Beef Profile (/account/beef-profile), the admin Beef claims list and the listing-page
 * "About our beef" block. beef-profile-ui.js / beef-detail.js. */
.bpf-page { max-width: 920px; }
.bpf-head { margin-bottom: 14px; }
.bpf-head .sub { max-width: 640px; }
.bpf-banner { background: #f3f8f4; border: 1px solid #cfe3d4; color: #234d32; border-radius: 12px; padding: 10px 14px; margin: 0 0 14px; font-size: .92rem; }
.bpf-sec { margin: 0 0 14px; padding: 18px 20px; }
.bpf-h { margin: 0 0 6px; font-size: 1.05rem; }
.bpf-sec > .sub { margin: 0 0 10px; }
.bpf-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
.bpf-under { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.bpf-grid .field { margin: 0; }
.bpf-grid .field.full, .bpf-grid .full { grid-column: 1 / -1; }
.bpf-grid .field input, .bpf-grid .field select, .bpf-grid .field textarea { width: 100%; box-sizing: border-box; }
.bpf-grid .field input + input { margin-top: 6px; }
.bpf-hint { margin: 4px 0 0; font-size: .8rem; }
.bpf-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.bpf-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 6px 12px; border: 1px solid var(--line); border-radius: 999px; background: #fff; font-size: .88rem; cursor: pointer; }
.bpf-chip input { margin: 0; }
.bpf-chip:has(input:checked) { border-color: #2f6b45; background: #eef6f0; color: #1d4a2e; font-weight: 560; }
.bpf-certs { display: flex; flex-direction: column; gap: 8px; }
.bpf-cert { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: #fbfcfb; }
.bpf-cert-name { flex: 1 1 240px; min-width: 0; }
.bpf-cert-st { display: inline-block; font-size: .76rem; font-weight: 600; padding: 3px 9px; border-radius: 999px; background: #f1f1ee; color: #5b5f57; white-space: nowrap; }
.bpf-cert-st.is-verified { background: #e3f2e7; color: #1d5a33; }
.bpf-cert-st.is-pending { background: #fff5dc; color: #7a5a06; }
.bpf-cert-st.is-rejected { background: #fdecea; color: #8a2a1f; }
.bpf-proof { cursor: pointer; }
.bpf-proof-link { font-size: .85rem; max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bpf-noproof { font-size: .82rem; margin: 0; }
.bpf-cert-note { flex-basis: 100%; margin: 0; font-size: .82rem; }
.bpf-ls { list-style: none; margin: 0; padding: 0; }
.bpf-l { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 0; border-top: 1px solid var(--line); }
.bpf-l:first-child { border-top: 0; }
.bpf-l .sub { margin: 2px 0 0; font-size: .84rem; }
.bpf-l-t { font-weight: 600; }
.bpf-acts { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.bpf-note { width: 180px; }
.bpf-bar { position: sticky; bottom: 0; z-index: 5; display: flex; justify-content: flex-end; align-items: center; gap: 12px; padding: 12px 0; background: linear-gradient(rgba(255,255,255,0), #fff 30%); }
.bpf-tabs { margin-bottom: 10px; }
.bpf-fill-note { grid-column: 1 / -1; margin: 0 0 4px; font-size: .84rem; background: #f3f8f4; border-radius: 10px; padding: 8px 12px; }
.bd-certs { list-style: none; margin: 6px 0 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.bd-cert { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.bd-cert-name { font-weight: 600; }
.bd-cert-tag { font-size: .76rem; font-weight: 600; padding: 2px 9px; border-radius: 999px; background: #f1f1ee; color: #5b5f57; }
.bd-cert.is-verified .bd-cert-tag { background: #e3f2e7; color: #1d5a33; }
.bd-about-beef .bd-story { margin: 0 0 4px; }
.bd-about-beef .bd-note { margin: 8px 0 0; font-size: .8rem; }
@media (max-width: 720px) {
  .bpf-grid { grid-template-columns: 1fr; }
  .bpf-sec { padding: 14px; }
  .bpf-l { flex-direction: column; align-items: stretch; }
  .bpf-acts { justify-content: flex-start; }
  .bpf-note { flex: 1 1 100%; width: auto; }
  .bpf-bar .btn { flex: 1 1 auto; }
}
.bpf-acts .btn[disabled]{opacity:.45;cursor:not-allowed}
.bpf-cert-name, .bpf-note { box-sizing: border-box; border: 1px solid var(--line); background: var(--paper); border-radius: 10px; padding: 8px 11px; color: var(--ink); font: inherit; }
.bpf-cert, .bpf-certs { box-sizing: border-box; max-width: 100%; min-width: 0; }
@media (max-width: 640px) { .bpf-cert-name { flex-basis: 100%; width: 100%; } }

/* Oct 23 (David t602u PR B): My Beef Products tabs, the Add Product chooser and tailored forms, the /list offer. */
.bcp-tabs { display: flex; gap: 6px; flex-wrap: wrap; margin: 14px 0 12px; border-bottom: 1px solid var(--line); }
.bcp-tab { appearance: none; border: 0; background: none; font: inherit; color: var(--muted); padding: 10px 12px; min-height: 44px; border-bottom: 3px solid transparent; margin-bottom: -1px; cursor: pointer; font-weight: 560; }
.bcp-tab.on { color: var(--ink); border-bottom-color: var(--green); }
.bcp-tab .bcp-n { display: inline-block; min-width: 20px; padding: 1px 7px; border-radius: 999px; background: #eef0ec; font-size: .78rem; color: var(--ink); }
.bcp-tab.on .bcp-n { background: var(--green-l); }
.bpx-panel { margin: 0 0 16px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.bpx-form-h h3 { margin: 6px 0 4px; font-size: 1.2rem; }
.bpx-chooser { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 12px 0; }
.bpx-choice { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 16px; min-height: 140px; border: 1px solid var(--line); border-radius: 14px; background: #f8f9f7; font: inherit; color: var(--ink); text-align: left; cursor: pointer; }
.bpx-choice:hover, .bpx-choice:focus-visible { border-color: var(--green); background: var(--green-l); }
.bpx-choice b { font-size: 1.05rem; }
.bpx-ico { font-size: 1.6rem; line-height: 1; }
.bpx-prof { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin: 10px 0 14px; padding: 10px 12px; border-radius: 10px; background: #f5f6f4; border: 1px solid #e3e7e2; font-size: .9rem; }
.bpx-prof a { color: var(--green); font-weight: 560; white-space: nowrap; }
.bpx-err { margin: 4px 0 0; color: #b42318; font-size: .85rem; }
.bpx-err-top { padding: 8px 10px; border-radius: 8px; background: #fdecea; }
.bpx-form .field.bcf-bad input, .bpx-form .field.bcf-bad select, .bpx-form .field.bcf-bad textarea { border-color: #d92d20; }
.bpx-form textarea { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; font: inherit; resize: vertical; }
.bpx-inc { display: flex; flex-direction: column; gap: 6px; width: 100%; }
.bpx-inc-row { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) 40px; gap: 6px; }
.bpx-inc-row input { min-height: 44px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 10px; font: inherit; min-width: 0; }
.bpx-x { min-height: 44px; border: 1px solid var(--line); border-radius: 10px; background: #fff; font-size: 1.1rem; cursor: pointer; }
.bpx-math { padding: 12px 14px; border-radius: 12px; background: var(--green-l); border: 1px solid #c9dfd0; }
.bpx-mrow { display: flex; justify-content: space-between; gap: 10px; padding: 3px 0; }
.bpx-mrow b { font-size: 1.05rem; }
.bpx-mcalc { margin: 0 0 4px; }
.bpx-mnote { margin: 8px 0 2px; font-weight: 560; font-size: .9rem; }
.bpx-mdep { margin: 2px 0 0; }
.bpx-mdep a { color: var(--green); }
.bpx-foot { flex-wrap: wrap; }
.bc-offer { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin: 0 0 14px; padding: 12px 14px; border-radius: 12px; background: #fff; border: 1px solid #c9dfd0; }
.bc-offer div { display: flex; flex-direction: column; gap: 2px; }
.bc-offer span { color: var(--muted); font-size: .9rem; }
.bcs-dl { margin: 6px 0; font-size: .88rem; }
.bcs-dl dt { margin-top: 6px; color: var(--muted); font-size: .78rem; }
.bcs-dl dd { margin: 0; }
@media (max-width: 640px) {
  .bpx-chooser { grid-template-columns: 1fr; }
  .bpx-choice { min-height: 0; }
  .bpx-panel { padding: 14px; }
  .bcp-tabs { flex-wrap: nowrap; overflow-x: auto; }
  .bcp-tab { white-space: nowrap; }
  .bc-offer .btn { width: 100%; text-align: center; }
}

/* PR C (Oct 23): inventory and bulk tools */
.bcp-sel { display: flex; align-items: center; justify-content: center; }
.bcp-sel input, .bcp-selall input { width: 18px; height: 18px; accent-color: var(--green); }
.bcp-selall { display: inline-flex; align-items: center; gap: 6px; font-size: .88rem; color: var(--muted); white-space: nowrap; }
.bcp-st { display: flex; flex-direction: column; gap: 4px; align-items: flex-start; }
.bcp-badge { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: .72rem; font-weight: 650; white-space: nowrap; }
.bcp-low { background: #fff3d6; color: #8a5a00; border: 1px solid #f0d48a; }
.bcp-out { background: #fde8e6; color: #9b2c1f; border: 1px solid #f3b9b1; }
.bcp-pricebtn { border: 1px dashed transparent; background: transparent; font: inherit; color: inherit; padding: 4px 6px; margin-left: -6px; border-radius: 8px; cursor: pointer; text-align: left; }
.bcp-pricebtn:hover, .bcp-pricebtn:focus-visible { border-color: var(--line); background: #fff; }
.bcp-pen { color: var(--muted); font-size: .8rem; }
.bcp-pricein { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; max-width: 100%; }
.bcp-pricein .bcp-x { width: 22px; height: 30px; padding: 0; border: 0; background: none; font-size: 18px; line-height: 1; cursor: pointer; color: var(--muted, #667); }
.bcp-pricein input { width: 60px; height: 34px; border: 1px solid var(--line); border-radius: 8px; padding: 0 6px; font: inherit; }
.bcp-x { border: 0; background: transparent; font-size: 1.2rem; cursor: pointer; color: var(--muted); padding: 0 4px; }
.bcp-bulk { position: sticky; top: 8px; z-index: 5; margin: 8px 0 12px; padding: 10px 12px; border: 1px solid var(--green); border-radius: 12px; background: #eef5f0; box-shadow: 0 4px 14px rgba(0,0,0,.06); }
.bcp-bulk-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.bcp-bulk-bar .on { background: var(--green); color: #fff; border-color: var(--green); }
.bcp-bulk-form { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 10px; }
.bcp-bulk-form input[type=number] { width: 120px; height: 38px; border: 1px solid var(--line); border-radius: 10px; padding: 0 8px; font: inherit; }
.bcp-bulk-form .sub { flex: 1 1 220px; font-size: .84rem; }
.bcp-bulk-review { margin-top: 10px; }
.bcp-bulk-review h4 { margin: 0 0 6px; font-size: .95rem; }
.bcp-prev { list-style: none; margin: 0 0 8px; padding: 0; max-height: 240px; overflow: auto; background: #fff; border: 1px solid #e3e7e2; border-radius: 10px; }
.bcp-prev li { display: flex; justify-content: space-between; gap: 12px; padding: 6px 10px; border-top: 1px solid #eef0ed; font-size: .9rem; }
.bcp-prev li:first-child { border-top: 0; }
.bcp-prev em { color: var(--muted); font-style: normal; font-size: .82rem; }
.bcp-bulk-foot { display: flex; gap: 8px; justify-content: flex-end; }
@media (max-width: 640px) {
  .bcp-bulk { top: 0; border-radius: 0 0 12px 12px; }
  .bcp-prev li { flex-direction: column; gap: 2px; }
  .bcp-bulk-form input[type=number] { flex: 1 1 100px; }
}
.bcp-page .btn-sm { padding: 6px 12px; min-height: 34px; font-size: .86rem; border-radius: 9px; }

/* Oct 23 (David t606u): My Beef Profile behind a gear on My Beef Products. Right-side drawer on desktop,
 * full-screen sheet on phone (beef-profile-ui.js openSheet). */
.bcp-profprompt { margin: 6px 0 0; }
.bcp-linkbtn { border: 0; background: none; padding: 0; font: inherit; font-size: .92rem; color: var(--green); text-decoration: underline; text-underline-offset: 2px; cursor: pointer; text-align: left; }
html.bpf-sheet-open, html.bpf-sheet-open body { overflow: hidden; }
.bpf-ov { position: fixed; inset: 0; z-index: 1000; background: rgba(20, 28, 24, .42); display: flex; justify-content: flex-end; }
.bpf-drawer { width: min(720px, 100%); height: 100%; background: #fff; display: flex; flex-direction: column; box-shadow: -8px 0 28px rgba(0,0,0,.16); animation: bpf-in .18s ease-out; }
@keyframes bpf-in { from { transform: translateX(24px); opacity: .6; } to { transform: none; opacity: 1; } }
.bpf-dhead { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; border-bottom: 1px solid var(--line); }
.bpf-dt { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 1.25rem; }
.bpf-dx { width: 40px; height: 40px; border: 0; border-radius: 50%; background: transparent; font-size: 1.6rem; line-height: 1; cursor: pointer; color: var(--muted); }
.bpf-dx:hover, .bpf-dx:focus-visible { background: #f1f4f2; color: var(--ink, #1f2a24); }
.bpf-dbody { flex: 1 1 auto; overflow-y: auto; -webkit-overflow-scrolling: touch; padding: 0 18px; overscroll-behavior: contain; }
.bpf-page.is-sheet { max-width: none; }
.bpf-intro { margin: 14px 0 10px; }
.bpf-page.is-sheet .bpf-bar { margin: 0 -18px; padding: 12px 18px calc(12px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--line); background: #fff; }
@media (max-width: 720px) {
  .bpf-drawer { width: 100%; box-shadow: none; animation: none; }
  .bpf-dhead { padding: calc(10px + env(safe-area-inset-top, 0px)) 14px 10px; }
  .bpf-dbody { padding: 0 14px; }
  .bpf-page.is-sheet .bpf-bar { margin: 0 -14px; padding-left: 14px; padding-right: 14px; }
}

/* ---------- Oct 29 (David t611u): product icon row, Details panel, delete dialog ---------- */
.bc-acts.bcp-icons { gap: 4px; flex-wrap: nowrap; align-items: center; }
.bc-acts .bcp-ico { width: 40px; height: 40px; min-width: 40px; padding: 0; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; color: #33463a; }
.bc-acts .bcp-ico:hover { background: #eef2ee; color: #142018; }
.bc-acts .bcp-ico:focus-visible { outline: 2px solid var(--green, #1f6b4a); outline-offset: 1px; }
.bc-acts .bcp-ico[disabled] { opacity: .45; cursor: default; }
.bc-acts .bcp-ico-del { color: #a33; }
.bc-acts .bcp-ico-del:hover { background: #fde8e8; color: #8a1f1f; }
.bcp-chev svg { transition: transform .18s ease; }
.bcp-chev.is-open { background: #eef2ee; }
.bcp-chev.is-open svg { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce) { .bcp-chev svg { transition: none; } }
.bcp-detail { padding: 12px 14px 14px; border-top: 1px solid #eef0ee; background: #fcfcfb; border-radius: 0 0 12px 12px; }
.bcp-dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 22px; margin: 0; }
.bcp-dl-row { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 8px; padding: 5px 0; border-bottom: 1px dashed #e6e9e5; }
.bcp-dl-row dt { color: #5c6b60; font-size: .84rem; }
.bcp-dl-row dd { margin: 0; font-size: .9rem; overflow-wrap: anywhere; }
.bcp-verified { display: inline-block; padding: 0 6px; border-radius: 999px; background: #dcefe3; color: #14543a; font-size: .72rem; font-weight: 650; }
.bcp-det-photos { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.bcp-det-photos img { width: 84px; height: 84px; object-fit: cover; border-radius: 10px; border: 1px solid #e3e7e2; }
.bcp-dlg-wrap { position: fixed; inset: 0; z-index: 2000; background: rgba(20, 32, 24, .45); display: flex; align-items: center; justify-content: center; padding: 16px; }
.bcp-dlg { background: #fff; border-radius: 16px; max-width: 420px; width: 100%; padding: 20px; box-shadow: 0 12px 40px rgba(0, 0, 0, .25); }
.bcp-dlg h3 { margin: 0 0 8px; }
.bcp-dlg p { margin: 0 0 16px; line-height: 1.45; }
.bcp-dlg-foot { display: flex; gap: 8px; justify-content: flex-end; }
.bcp-dlg-foot .btn { min-height: 44px; min-width: 96px; }
.bcp-btn-del { background: #b42323; border-color: #b42323; color: #fff; }
.bcp-btn-del:hover { background: #8f1b1b; }
@media (max-width: 860px) {
  .bcp-row .bc-acts.bcp-icons { justify-content: space-between; }
  .bc-acts .bcp-ico { width: 44px; height: 44px; }
  .bcp-dl { grid-template-columns: 1fr; }
  .bcp-dl-row { grid-template-columns: 130px minmax(0, 1fr); }
}

/* ---------- Oct 31 (David t617u): cleaner product list ----------
   Each section (Cow Shares, Boxes & Bundles, Individual Cuts) is one white panel with a header and a count.
   Products are rows inside it, split by thin lines:
     tick | 64px photo | name + status pill / fact chips / listing (muted) | Price + In stock block | toolbar
   The toolbar has a labeled Edit, then Details / Duplicate / Pause grouped, then the red trash set apart.
   Narrow list (phones): photo + name + chips on top, then the price/stock block, then the toolbar, all 44px
   tap targets. Sizes follow the list's own width (container query), so it also fits beside the account menu. */
.bpl-group { container: bpl / inline-size; margin: 18px 0 0; gap: 0; display: block; background: #fff; border: 1px solid #e6e1d8; border-radius: 14px; overflow: hidden; }
.bpl-gh.bcs-gh { display: flex; align-items: center; gap: 8px; margin: 0; padding: 10px 16px; background: #faf8f3; border-bottom: 1px solid #ebe8df; color: var(--ink, #142018); font-size: .78rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.bpl-gh .bcp-n { background: #fff; border: 1px solid #e3e0d6; color: var(--ink-soft, #3a4a3e); font-weight: 650; }
.bpl-list > .bcp-item { border-radius: 0; border-top: 1px solid #efece6; }
.bpl-list > .bcp-item:first-child { border-top: 0; }
.bpl-list > .bcp-item.is-open { box-shadow: inset 3px 0 0 var(--beef, #c53030); background: #fff; }
.bpl-list > .bcp-item.is-sel { background: #fdf3f2; box-shadow: inset 3px 0 0 var(--beef-d, #9b1c1c); }
.bpl-row {
  display: grid; grid-template-columns: 20px 64px minmax(0, 1fr) auto auto;
  grid-template-areas: "c t m ps a"; align-items: center; column-gap: 14px; row-gap: 10px;
  padding: 12px 12px 12px 16px; transition: background-color .15s ease;
}
.bpl-list > .bcp-item:not(.is-open):not(.is-sel) > .bpl-row:hover { background: #fbf9f5; }
.bpl-sel { grid-area: c; display: flex; align-items: center; justify-content: center; min-height: 44px; cursor: pointer; }
.bpl-sel input { width: 18px; height: 18px; margin: 0; accent-color: var(--beef, #c53030); cursor: pointer; }
.bpl-thumb.bc-thumb { grid-area: t; width: 64px; height: 64px; border-radius: 12px; border: 1px solid #ebe7df; background: #f3f1ea; }
.bpl-thumb .bc-noimg { font-size: 1.5rem; }
.bcp-item.is-off .bpl-thumb, .bcp-item.is-off .bpl-main { opacity: .62; }
.bpl-main { grid-area: m; min-width: 0; display: flex; flex-direction: column; gap: 5px; }
.bpl-l1 { display: flex; align-items: center; gap: 8px; min-width: 0; }
.bpl-l1 .bcp-name { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 1rem; font-weight: 650; line-height: 1.3; color: var(--ink, #142018); }
.bpl-l1 .bcp-st { flex: none; display: inline-flex; align-items: center; gap: 4px; }
.bpl-l1 .bc-pill { padding: 1px 9px; font-size: .72rem; line-height: 1.55; }
.bpl-l1 .bcp-badge { padding: 1px 8px; font-size: .7rem; line-height: 1.55; }
.bpl-chips { display: flex; flex-wrap: wrap; gap: 4px 6px; min-width: 0; }
.bpl-chips:empty { display: none; }
.bpl-chip { display: inline-flex; align-items: baseline; gap: 4px; max-width: 100%; padding: 2px 8px; border-radius: 6px; background: #f6f3ee; border: 1px solid #e7e2d9; color: var(--ink-soft, #3a4a3e); font-size: .76rem; font-weight: 560; line-height: 1.45; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bpl-k { color: var(--muted, #6b7a6e); font-weight: 500; }
.bpl-chip.bpl-flag { background: #fff3d6; border-color: #f4e2b4; color: #7a5200; font-weight: 650; }
.bpl-chip.bpl-sale { background: var(--beef-l, #fde8e8); border-color: #f6d0d0; color: var(--beef-d, #9b1c1c); }
.bpl-chip.bpl-hold { background: #eef3fb; border-color: #dbe5f4; color: #2c4a72; }
.bpl-sub { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: var(--muted, #6b7a6e); font-size: .76rem; line-height: 1.35; }
/* Price + In stock block with small captions */
.bpl-ps { grid-area: ps; display: flex; align-items: stretch; gap: 0; border: 1px solid #e6e1d8; border-radius: 12px; background: #fcfcfa; }
.bpl-cell { display: flex; flex-direction: column; justify-content: center; gap: 2px; padding: 6px 10px; min-width: 0; }
.bpl-cell + .bpl-cell { border-left: 1px solid #ebe7df; }
.bpl-cap { font-size: .66rem; font-weight: 650; letter-spacing: .06em; text-transform: uppercase; color: var(--muted, #6b7a6e); padding-left: 2px; }
.bpl-cell-price { min-width: 118px; }
.bpl-cell .bc-price { display: flex; align-items: center; min-height: 36px; white-space: nowrap; font-size: .95rem; }
.bpl-cell .bcp-pricebtn { margin: 0 0 0 -4px; padding: 5px 6px; min-height: 36px; border: 0; border-radius: 8px; background: transparent; font: inherit; color: var(--beef-d, #9b1c1c); cursor: pointer; text-align: left; }
.bpl-cell .bcp-pricebtn:hover { background: #f6eeec; }
.bpl-cell .bcp-pen { color: #8c857c; font-size: .8rem; }
.bpl-cell .bcp-pricein { display: inline-flex; align-items: center; gap: 4px; flex-wrap: nowrap; }
.bpl-cell .bcp-pricein input { width: 84px; min-height: 36px; padding: 4px 6px; border: 1px solid var(--line); border-radius: 8px; font: inherit; }
.bpl-cell .bc-qty { border: 1px solid #e2ddd4; border-radius: 10px; background: #fff; }
.bpl-cell .bc-qty button { width: 34px; height: 36px; }
.bpl-cell .bc-qty input { width: 44px; height: 36px; background: transparent; font-weight: 650; }
.bpl-cell .bc-qty button:focus-visible, .bpl-cell .bc-qty input:focus-visible, .bpl-cell .bcp-pricebtn:focus-visible { outline: 2px solid var(--beef, #c53030); outline-offset: -2px; }
/* toolbar: labeled Edit, grouped icons, red trash set apart */
.bpl-tools { grid-area: a; display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
.bpl-edit { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 12px; border: 1px solid #e0dad0; border-radius: 999px; background: #fff; color: var(--ink, #142018); font: inherit; font-size: .86rem; font-weight: 600; cursor: pointer; white-space: nowrap; }
.bpl-edit svg { width: 16px; height: 16px; }
.bpl-edit:hover { border-color: var(--beef, #c53030); color: var(--beef-d, #9b1c1c); }
.bpl-tgrp { display: inline-flex; align-items: center; gap: 0; padding: 1px; border: 1px solid #e7e2d9; border-radius: 10px; background: #fff; }
.bpl-tools .bcp-ico { width: 36px; height: 34px; min-width: 36px; padding: 0; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 8px; background: transparent; color: #5b5650; cursor: pointer; }
.bpl-tools .bcp-ico:hover { background: #f6eeec; color: var(--beef-d, #9b1c1c); }
.bpl-tools .bcp-ico[disabled] { opacity: .45; cursor: default; }
.bpl-tools .bcp-ico-del { color: #b42323; border: 1px solid transparent; }
.bpl-tools .bcp-ico-del:hover { background: #fde8e8; color: #8a1f1f; border-color: #f6d0d0; }
.bpl-tools .bcp-ico:focus-visible, .bpl-edit:focus-visible { outline: 2px solid var(--beef, #c53030); outline-offset: 1px; }
.bpl-tools .bcp-ico-sep { width: 1px; height: 22px; margin: 0 2px; background: #e4dfd6; flex: none; }
.bcp-item .bcp-detail { border-radius: 0; background: #fbfaf6; border-top: 1px dashed #e6e3d9; padding: 12px 16px 14px 114px; }
.bcp-item .bcp-edit { padding-left: 16px; }
/* Beef Profile button next to Cut library: same look and size as Cut library */
.bcp-page .bc-head-actions { align-items: center; }
/* Mid width: the toolbar drops under the price block, still on the right */
@container bpl (max-width: 879px) {
  .bpl-row { grid-template-columns: 20px 64px minmax(0, 1fr) auto; grid-template-areas: "c t m ps" "c t m a"; row-gap: 8px; }
  .bpl-tools { justify-self: end; }
}
/* Phones and narrow lists: stacked card */
@container bpl (max-width: 619px) {
  .bpl-row { grid-template-columns: 24px 56px minmax(0, 1fr); grid-template-areas: "c t m" "ps ps ps" "a a a"; align-items: start; column-gap: 10px; row-gap: 10px; padding: 12px; }
  .bpl-sel { min-height: 44px; min-width: 24px; align-self: start; margin-top: 6px; }
  .bpl-thumb.bc-thumb { width: 56px; height: 56px; }
  .bpl-l1 { flex-wrap: wrap; row-gap: 4px; }
  .bpl-l1 .bcp-name { white-space: normal; overflow: visible; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .bpl-ps { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
  .bpl-cell { padding: 6px 10px 8px; }
  .bpl-cell-price { min-width: 0; }
  .bpl-cell .bc-price { min-height: 44px; white-space: normal; }
  .bpl-cell .bcp-pricebtn { min-height: 44px; }
  .bpl-cell .bcp-pricein { flex-wrap: wrap; }
  .bpl-cell .bc-qty button { width: 44px; height: 44px; }
  .bpl-cell .bc-qty input { width: 44px; height: 44px; }
  .bpl-tools { justify-content: flex-start; gap: 6px; }
  .bpl-edit { height: 44px; padding: 0 16px; }
  .bpl-tgrp { margin-left: auto; }
  .bpl-tools .bcp-ico { width: 44px; height: 42px; min-width: 44px; }
  .bpl-tools .bcp-ico-del { height: 44px; }
  .bcp-item .bcp-detail { padding: 12px; }
  .bcp-item .bcp-edit { padding-left: 12px; }
}
@container bpl (max-width: 359px) {
  .bpl-tools { gap: 4px; }
  .bpl-edit { padding: 0 10px; }
  .bpl-tools .bcp-ico { width: 40px; min-width: 40px; }
  .bpl-tools .bcp-ico-sep { display: none; }
}
@media (max-width: 640px) {
  .bcp-page .bc-head-actions .btn { min-height: 44px; }
}
/* Oct 29 (David t613u): no "Log out" button under My Beef Products. Log out stays in the account menu, the phone
   menu and Settings. */
.dash-shell:has(.bcp-page) .dash-signout { display: none; }

/* ---------- Oct 31 (David): My Beef Products keeps the red beef colors, no green ----------
   Everything on the page (list, + Add Product forms, quick edit, bulk bar, Beef Profile drawer, delete dialog) uses
   the same red as "+ Add Product" and Save: links, selected toggles, focus rings, the estimate panel and the
   accents in the product list. Status pills: Active is red-tinted, Draft and Paused stay neutral grey, Sold out
   amber. Text colors keep at least 4.5:1 contrast on their backgrounds. */
.bcp-page, .bpf-ov, .bcp-dlg-wrap { --green: var(--beef, #c53030); --green-d: var(--beef-d, #9b1c1c); --green-l: #fbeeee; }
.bcp-page a:not(.btn), .bcp-page .bcp-link, .bcp-page .bcp-linkbtn, .bpx-prof a { color: var(--beef-d, #9b1c1c); }
.bcp-page a:not(.btn):hover, .bcp-page .bcp-link:hover, .bcp-page .bcp-linkbtn:hover { color: #7a1515; }
.bcp-page .bc-seg { background: #f3ece9; }
.bcp-page .bc-seg label { color: #4a3d38; }
.bcp-page .bc-seg label.on, .bpf-ov .bc-seg label.on { background: var(--beef-d, #9b1c1c); color: #fff; }
.bcp-page .bc-seg label:not(.on):hover { background: #fbeeee; }
.bcp-page .bpx-math { background: #fdf3f2; border-color: #f2d3d0; }
.bcp-page .bc-active, .bpf-ov .bc-active { background: #fde8e8; color: #8f1b1b; }
.bcp-page .bcp-verified, .bpf-ov .bcp-verified { background: #fde8e8; color: #8f1b1b; }
.bcp-page .bcp-saved { color: var(--beef-d, #9b1c1c); }
.bcp-page .bc-qty button { color: var(--beef-d, #9b1c1c); }
.bcp-page .bc-qty button:hover { background: #fbeeee; }
.bcp-page .bc-price { color: var(--beef-d, #9b1c1c); }
.bcp-page .bcp-bulk { border-color: #f2d3d0; background: #fdf3f2; }
.bcp-page .btn-outline:hover { border-color: var(--beef, #c53030); color: var(--beef-d, #9b1c1c); }
.bcp-page :is(input, select, textarea):focus-visible, .bpf-ov :is(input, select, textarea):focus-visible { outline: 2px solid var(--beef, #c53030); outline-offset: 1px; border-color: var(--beef, #c53030); }
.bcp-page :is(button, a, label):focus-visible, .bpf-ov :is(button, a):focus-visible { outline-color: var(--beef, #c53030); }
.bcp-page input[type=checkbox], .bcp-page input[type=radio], .bpf-ov input[type=checkbox], .bpf-ov input[type=radio] { accent-color: var(--beef, #c53030); }
.bcp-page .bcp-chev.is-open, .bcp-page .bpl-tools .bcp-chev.is-open { background: #f6eeec; color: var(--beef-d, #9b1c1c); }
.bpf-ov .bpf-dx:hover, .bpf-ov .bpf-dx:focus-visible { background: #f6eeec; }
.bpf-ov .bpf-chip:has(input:checked) { border-color: var(--beef, #c53030); background: #fdf3f2; color: #8f1b1b; }
.bpf-ov .bpf-cert-st.is-verified { background: #fde8e8; color: #8f1b1b; }

/* Oct 31 (David): each editor (Individual Cut, Box or Bundle, Cow Share) opens with a band that matches its chooser
   card, and a clear back button at top-left (44px tall, red outline) instead of the small "Product types" link. */
.bpx-back { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 8px 16px; margin: 0 0 12px; border: 1.5px solid var(--beef, #c53030); border-radius: 999px; background: #fff; color: var(--beef-d, #9b1c1c); font: inherit; font-size: .95rem; font-weight: 650; cursor: pointer; }
.bpx-back:hover { background: #fdf3f2; }
.bpx-back:focus-visible { outline: 3px solid var(--beef, #c53030); outline-offset: 2px; }
.bpx-band { display: flex; align-items: center; gap: 14px; margin: 0 0 10px; padding: 14px 16px; border: 1px solid #f2d3d0; border-left: 5px solid var(--beef, #c53030); border-radius: 14px; background: #fdf3f2; }
.bpx-band-ico { flex: none; display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: #fff; border: 1px solid #f2d3d0; font-size: 1.9rem; line-height: 1; }
.bpx-band-t { min-width: 0; }
.bpx-band-t h3 { margin: 0 0 2px; font-size: 1.3rem; font-weight: 750; color: var(--ink, #1f2a24); }
.bpx-band-t p { margin: 0; color: #5b4a45; font-size: .95rem; line-height: 1.4; }
.bcp-page .bpx-choice:hover, .bcp-page .bpx-choice:focus-visible { border-color: var(--beef, #c53030); background: #fdf3f2; }
@media (max-width: 640px) {
  .bpx-back { width: 100%; justify-content: center; }
  .bpx-band { padding: 12px; gap: 12px; }
  .bpx-band-ico { width: 46px; height: 46px; font-size: 1.6rem; }
  .bpx-band-t h3 { font-size: 1.15rem; }
  .bpx-band-t p { font-size: .9rem; }
}

/* ---------- Oct 31 (David): List | Card view ----------
   The toggle sits at the right end of the status tabs. Card view keeps the same groups, headers, counts and buttons;
   only the layout changes: a grid of cards (3-4 across on a computer, 2 on a tablet, 1-2 on a phone) with a big
   photo, the status pill and the select box over the photo corners, chips, the Price / In stock block and the
   toolbar along the bottom. Opening Details (or Quick edit) on a card widens it to the full row so the form has room. */
.bpl-toprow { display: flex; align-items: flex-end; gap: 12px; flex-wrap: wrap; }
.bpl-toprow > .bcp-tabs { flex: 1 1 auto; min-width: 0; }
.bpl-view { display: inline-flex; flex: none; padding: 3px; margin: 0 0 6px auto; border: 1px solid #e7e2d9; border-radius: 12px; background: #f6f3ee; }
.bpl-vbtn { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 12px; border: 0; border-radius: 9px; background: transparent; color: #4a3d38; font: inherit; font-size: .88rem; font-weight: 600; cursor: pointer; }
.bpl-vbtn:hover { background: #fbeeee; color: var(--beef-d, #9b1c1c); }
.bpl-vbtn.on { background: var(--beef-d, #9b1c1c); color: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .12); }
.bpl-vbtn:focus-visible { outline: 2px solid var(--beef, #c53030); outline-offset: 2px; }
@media (max-width: 640px) {
  .bpl-toprow { gap: 6px; }
  .bpl-view { margin: 4px 0 6px auto; }
  .bpl-vbtn { min-height: 44px; min-width: 44px; padding: 0 14px; }
}

#bcp-list.bpl-cards .bpl-group { background: #faf8f3; }
#bcp-list.bpl-cards .bpl-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 14px; padding: 14px; }
#bcp-list.bpl-cards .bpl-list > .bcp-item { position: relative; display: flex; flex-direction: column; border: 1px solid #e6e1d8; border-radius: 14px; background: #fff; overflow: hidden; box-shadow: 0 1px 2px rgba(40, 30, 20, .04); }
#bcp-list.bpl-cards .bpl-list > .bcp-item:hover { box-shadow: 0 4px 14px rgba(40, 30, 20, .08); }
#bcp-list.bpl-cards .bpl-list > .bcp-item.is-sel { border-color: var(--beef, #c53030); background: #fdf3f2; box-shadow: 0 0 0 1px var(--beef, #c53030); }
#bcp-list.bpl-cards .bpl-list > .bcp-item.is-off { background: #fbfaf8; }
#bcp-list.bpl-cards .bpl-list > .bcp-item.is-open { grid-column: 1 / -1; box-shadow: inset 3px 0 0 var(--beef, #c53030); }
/* a closed card: photo on top, then name, chips, price/stock, toolbar */
#bcp-list.bpl-cards .bcp-item:not(.is-open) > .bpl-row { flex: 1 1 auto; display: grid; grid-template-columns: minmax(0, 1fr); grid-template-areas: "t" "m" "ps" "a"; grid-template-rows: auto 1fr auto auto; align-items: start; row-gap: 10px; column-gap: 0; padding: 10px 10px 12px; background: transparent; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-thumb.bc-thumb { width: 100%; height: auto; aspect-ratio: 4 / 3; border-radius: 10px; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-thumb img { width: 100%; height: 100%; object-fit: cover; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-thumb .bc-noimg { font-size: 3rem; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-sel { grid-area: auto; margin: 0; position: absolute; top: 16px; left: 16px; z-index: 2; min-width: 36px; min-height: 36px; border-radius: 10px; background: rgba(255, 255, 255, .94); box-shadow: 0 1px 4px rgba(0, 0, 0, .15); }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-sel input { width: 20px; height: 20px; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-l1 .bcp-st { position: absolute; top: 18px; right: 18px; z-index: 2; flex-wrap: wrap; justify-content: flex-end; max-width: calc(100% - 80px); }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-l1 .bc-pill, #bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-l1 .bcp-badge { box-shadow: 0 1px 4px rgba(0, 0, 0, .15); font-size: .74rem; padding: 2px 10px; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-l1 .bc-pill:not(.bc-active) { background: #fff; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-l1 .bcp-name { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 1.02rem; text-align: left; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-ps { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-cell-price { min-width: 0; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-cell .bc-price { white-space: normal; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-tools { justify-content: flex-start; gap: 6px; padding-top: 10px; border-top: 1px solid #efece6; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-tgrp { margin-left: auto; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-tools .bcp-ico { width: 34px; min-width: 34px; }
#bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-edit { padding: 0 11px; }
#bcp-list.bpl-cards .bcp-item.is-off:not(.is-open) .bpl-thumb { filter: grayscale(.5); }
/* tablet: 2 across; phone: 1 across, or 2 on a wide phone; 44px tap targets */
@container bpl (max-width: 879px) {
  #bcp-list.bpl-cards .bpl-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@container bpl (max-width: 619px) {
  #bcp-list.bpl-cards .bpl-list { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 12px; }
  #bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-sel { min-width: 44px; min-height: 44px; }
  #bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-tools .bcp-ico { width: 44px; min-width: 44px; height: 42px; }
  #bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-tools .bcp-ico-del { height: 44px; }
  #bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-edit { height: 44px; padding: 0 16px; }
  #bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-thumb.bc-thumb { aspect-ratio: 16 / 9; }
}
@container bpl (min-width: 480px) and (max-width: 619px) {
  #bcp-list.bpl-cards .bpl-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-tools .bcp-ico { width: 40px; min-width: 40px; }
  #bcp-list.bpl-cards .bcp-item:not(.is-open) .bpl-tools .bcp-ico-sep { display: none; }
}
.bpf-ov .bpf-banner { background: #fdf3f2; border-color: #f2d3d0; color: #6e1a1a; }
