#sale-candidates .candidate{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
#sale-candidates .sale-stock-candidate{border:1px solid #a8c9dc;border-radius:6px;padding:6px;margin-bottom:6px}
#sale-candidates:has(.sale-stock-candidate){max-height:min(65vh,620px)}
#sale-candidates .sale-stock-candidate>.candidate{width:100%;text-align:left;flex-wrap:wrap}
#sale-candidates .sale-stock-candidate .product-candidate-name{white-space:normal;overflow-wrap:anywhere}
.sale-stock-locations{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:6px}
.sale-stock-locations>button{text-align:left;white-space:normal;overflow-wrap:anywhere;min-width:0;margin:0}
.product-candidate-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.product-candidate-stock,.product-input-stock{flex-shrink:0;white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums}
.product-stock-entry{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;min-width:0;flex:1}
.product-stock-entry>input,.product-stock-entry>select{min-width:0;flex:1 1 140px}
.catalog-row-operation{padding:4px 1px;font-size:11px;min-height:28px}
.table-fluid td:has(>.catalog-row-operation){padding:3px 1px!important}
.product-input-stock{margin-left:auto}
.product-input-stock{font-size:13px}
.product-input-stock[hidden]{display:none}
.product-match-anchor{position:relative;overflow:visible}
.product-input-matches{position:absolute;z-index:50;top:100%;bottom:auto;left:0;width:min(620px,calc(100vw - 32px));max-height:240px;overflow:auto;background:#fff;border:1px solid #a8c9dc;box-shadow:0 8px 24px #0002;font-size:13px}
.product-input-matches[hidden]{display:none}
.product-input-matches.product-matches-floating{position:fixed;z-index:100;box-sizing:border-box}
.product-input-matches .candidate{display:flex;flex-direction:column;align-items:stretch;gap:4px;width:100%;min-width:0;font-size:13px;text-align:left}
.product-input-matches .product-candidate-name{display:block;white-space:nowrap!important;overflow:hidden;text-overflow:clip}
.product-input-matches .product-candidate-stock{white-space:normal!important;overflow-wrap:anywhere}
.product-input-matches .toolbar{flex-wrap:wrap;white-space:normal}
@media print{.product-input-matches{display:none!important}}
@media(max-width:600px){#sale-candidates .candidate{flex-wrap:wrap}.product-candidate-stock{margin-left:auto}.product-stock-entry{flex-wrap:wrap}.product-input-stock{margin-left:auto}}
