.wbs-billing-review{min-width:0;overflow-wrap:anywhere}
.wbs-review-state{display:grid;gap:4px;color:#24553e}
.wbs-review-state span,.wbs-review-messages small{font-size:12px;color:#637167}
.wbs-review-messages{max-height:260px;overflow:auto;display:grid;gap:8px;margin:12px 0}
.wbs-review-messages article{border-left:3px solid #adc6ae;background:#f4f6ed;padding:10px;border-radius:4px}
.wbs-review-messages p{white-space:pre-wrap;margin:5px 0 0;overflow-wrap:anywhere}
.wbs-review-compose{display:grid;gap:6px;margin:12px 0;min-width:0}
.wbs-review-compose textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%;font:inherit;font-size:16px;line-height:1.4;padding:10px;border:1px solid #bbc3ad;border-radius:6px;resize:vertical}
.wbs-billing-review .action-row{display:flex;flex-wrap:wrap;gap:8px}
.wbs-billing-review button{min-height:44px;white-space:normal}
.wbs-review-feedback{font-size:14px;overflow-wrap:anywhere}
@media(max-width:430px){.wbs-billing-review .action-row>button{flex:1 1 140px;min-width:0}.wbs-review-messages{max-height:220px}}

/* Item billing remains readable in the desktop and phone ticket picker. */
.wbs-billing-summary { padding: 8px 12px; color: #284f36; background: #f1f7ec; font-size: 13px; overflow-wrap: anywhere; }
.wbs-line-purpose { display: block; white-space: normal; font-size: 11px; }
#wbsBillingModeLabel, #wbsFeeLabel { min-width: 0; }
#wbsBillingModeLabel[hidden], #wbsFeeLabel[hidden] { display: none !important; }
#wbsBillingMode, #wbsFeeDescription { width: 100%; min-height: 44px; }
@media(max-width:700px) {
  #wbsBillingModeLabel, #wbsFeeLabel { grid-column: 1 / -1; width: 100%; }
  #wbsBillingMode, #wbsFeeDescription { font-size: 16px; max-width: 100%; }
}
@media(min-width:701px) {
  .wbs-picker-controls:has(#wbsBillingModeLabel:not([hidden])) { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media(max-width:700px) {
  .wbs-picker-overlay .wbs-picker-body { display: block; overflow-y: auto; overflow-x: hidden; }
  .wbs-picker-overlay .wbs-picker-status-row { margin: 8px 0; }
  .wbs-picker-overlay .wbs-ticket-list { display: block; overflow: visible; max-height: none; }
  .wbs-picker-overlay .wbs-ticket-card { margin-bottom: 10px; }
}

#wbsShowExportedLabel[hidden] { display: none !important; }
#wbsShowExportedLabel { white-space: normal; height: auto; min-height: 44px; }
@media(max-width:700px) { #wbsShowExportedLabel { grid-column: 1 / -1; } }

/* Keep invoice numbering separate from WBS traceability. */
#customerInvoiceLineBody .po-line-serial { vertical-align: top; }
#customerInvoiceLineBody .po-line-serial .line-drag-handle { top: 19px; }
#customerInvoiceLineBody .invoice-line-details { min-width: 260px; }
#customerInvoiceLineBody .wbs-line-purpose {
  display: block; margin: 0 0 4px; color: #526453;
  font-size: 11px; line-height: 1.35; font-weight: 500;
  text-align: left; overflow-wrap: anywhere;
}
