/* Price entry uses rows, with no nested cards or horizontal scrolling. */
.price-lines{min-width:0;max-width:100%;padding-block:1rem}
.price-lines label{display:block;margin-bottom:.35rem;min-width:0;font-size:.875rem}
.price-line-field{min-width:0}
.price-line{display:grid;grid-template-columns:minmax(12rem,2fr) minmax(5rem,.7fr) minmax(6rem,.7fr) minmax(7rem,.8fr) minmax(7rem,.8fr);gap:.75rem;align-items:start;border-bottom:1px solid var(--rule);padding-block:1rem}
.price-line input,.price-line select,.price-line-tools select{box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:44px}
.price-line-amount{display:flex;flex-direction:column;gap:.6rem;text-align:right;font-variant-numeric:tabular-nums}
.price-line-amount span{font-size:.875rem}
.price-line-actions{grid-column:1/-1;display:flex;gap:.5rem;flex-wrap:wrap}
.price-lines button,.price-lines summary,.price-lines select{min-height:44px}
.price-line-tools{display:flex;gap:1rem;align-items:end;flex-wrap:wrap}
.price-line-tools>div{min-width:0;flex:1 1 15rem}
.price-total{display:flex;gap:1rem;justify-content:flex-end;font-size:1.15rem;margin-block:1rem;font-variant-numeric:tabular-nums}
#f183-lines>label{margin-block:1rem .35rem}
#f183-lines>select{width:100%;max-width:36rem}
#f183-lines .money-line-menu .actions{display:flex;flex-wrap:wrap}
#projectMoneyNote{display:none}
@media(max-width:700px){
 .price-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .price-line>.price-line-field:first-child{grid-column:1/-1}
 .price-line-amount{justify-content:end;align-self:end;padding-bottom:.5rem}
 .price-lines .money-lines{overflow:visible;min-width:0;max-width:100%}
 .price-lines .money-lines table,.price-lines .money-lines tbody,.price-lines .money-lines tr,.price-lines .money-lines td,.price-lines .money-lines tfoot{display:block;width:100%;min-width:0;box-sizing:border-box}
 .price-lines .money-lines thead,.price-lines .money-total-spacer{display:none}
 .price-lines .money-lines td{padding:.5rem 0;overflow-wrap:anywhere}
 .price-lines .money-lines input,.price-lines .money-lines select,.price-lines .money-lines textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
 .price-lines .money-lines .money-line{border-top:1px solid var(--rule);padding-top:1rem}
 .price-line-tools{align-items:stretch}
}

/* Type stays beside its line as a compact radio row in both themes. */
.price-line-type{grid-column:1/-1;min-width:0;max-width:100%;border:0;padding:0;margin:0}
.price-line-type legend{float:left;display:flex;align-items:center;width:auto;min-height:44px;font-size:var(--fs-small);font-weight:600;border:0;padding:0;margin:0 var(--space-2) 0 0}
.price-line-type-options{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.price-line-type-options label{display:inline-flex;align-items:center;flex:0 0 auto;gap:var(--space-1);min-height:44px;min-width:44px;width:auto;max-width:none;white-space:nowrap;overflow-wrap:normal;word-break:normal;box-sizing:border-box;padding:12px 0;margin:0;cursor:pointer}
/* Beat each editor's full-width and 44px input rules only inside Type choices. */
.price-line-type-options input[type="radio"],
#quoteBuilder .price-line-type-options input[type="radio"],
#v-new .price-line-type-options input[type="radio"],
#f183-lines .price-line-type-options input[type="radio"]{flex:0 0 18px;width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;max-height:18px;padding:0;margin:0;accent-color:var(--accent-strong)}
.invoice-price-lines{max-width:100%;min-width:0}
.invoice-price-lines .price-group-heading th{grid-column:1/-1;text-align:left;overflow-wrap:anywhere}
