/* Extracted module styles: Purchase Bills */

.project-purchase-bills-filter-row {
  grid-template-columns: minmax(240px, 1.4fr) repeat(2, minmax(150px, 0.8fr)) repeat(2, minmax(132px, 0.75fr)) auto auto;
  align-items: end;
}

.project-purchase-bills-advanced-panel {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid #e5eaf2;
}

.project-purchase-bills-advanced-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}

.project-purchase-bills-advanced-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
}

.purchase-bill-detail-hero {
  grid-template-columns: 72px minmax(0, 1fr);
}

.purchase-bill-detail-hero-icon {
  width: 72px;
  height: 72px;
  border-radius: 22px;
  font-size: 28px;
  font-weight: 800;
}

.purchase-bill-detail-hero-copy {
  display: grid;
  gap: 14px;
}

.purchase-bill-detail-hero-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.purchase-bill-detail-hero-head small {
  display: block;
  margin-bottom: 6px;
  color: #6b7f99;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.purchase-bill-detail-hero-head h3 {
  margin: 0;
  color: #10284f;
  font-size: 28px;
  line-height: 1;
}

.purchase-bill-detail-fact-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.purchase-bill-detail-amount-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.purchase-bill-detail-amount-card {
  border: 1px solid #e8eef6;
  border-radius: 16px;
  padding: 16px 18px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);
  display: grid;
  gap: 6px;
}

.purchase-bill-detail-amount-card span {
  color: #6b7f99;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.purchase-bill-detail-amount-card strong {
  color: #10284f;
  font-size: 24px;
  line-height: 1.1;
}

.purchase-bill-detail-amount-card.emphasis {
  background: linear-gradient(180deg, #f7fbff 0%, #eef6ff 100%);
}

.purchase-bill-detail-amount-card.good {
  background: linear-gradient(180deg, #f8fdf9 0%, #eef9f1 100%);
}

.purchase-bill-detail-amount-card.warn {
  background: linear-gradient(180deg, #fffaf2 0%, #fff3e0 100%);
}

.purchase-bill-detail-items-card {
  gap: 14px;
}

.purchase-bill-detail-items-table {
  min-width: 1100px;
}

.purchase-bill-detail-total-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.purchase-bill-detail-layout .procurement-detail-card {
  align-self: stretch;
}

.purchase-bill-detail-attachments-card {
  gap: 10px;
}

.purchase-bill-detail-attachments-list {
  gap: 8px;
}

.purchase-bill-detail-attachment-row {
  padding: 8px 10px;
  border-radius: 12px;
  align-items: flex-start;
}

.purchase-bill-detail-attachment-row strong {
  display: block;
  font-size: 13px;
  line-height: 1.3;
}

.purchase-bill-detail-attachment-row small {
  margin-top: 2px;
  font-size: 12px;
}

.purchase-bill-detail-attachment-row .record-actions {
  gap: 6px;
  flex-shrink: 0;
}

.purchase-bill-detail-attachment-row .ghost-btn.small-btn {
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
}

.project-purchase-bills-filter-row {
  grid-template-columns: minmax(240px, 1.4fr) repeat(2, minmax(150px, 0.8fr)) repeat(2, minmax(132px, 0.75fr)) auto auto;
}

.project-purchase-bills-table .money {
  text-align: right;
}

.project-purchase-bills-detail-card .project-lead-detail-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.purchase-bill-dialog {
  width: min(1640px, 97vw);
  max-width: min(1640px, 97vw);
  max-height: 94vh;
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.purchase-bill-form-shell {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.purchase-bill-dialog-header {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 14px 22px;
  border-bottom: 1px solid #e2e9f3;
  background: #fff;
  flex: 0 0 auto;
}

.purchase-bill-dialog-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: #edf4ff;
  color: #2468d7;
  font-size: 23px;
  font-weight: 800;
}

.purchase-bill-dialog-heading h3,
.purchase-bill-dialog-heading p,
.purchase-bill-section-heading h4,
.purchase-bill-section-heading p {
  margin: 0;
}

.purchase-bill-dialog-heading h3 { color: #10284f; font-size: 20px; }
.purchase-bill-dialog-heading p { margin-top: 2px; color: #6b7f99; font-size: 13px; }

.purchase-bill-dialog-body {
  padding: 12px 18px 16px;
  overflow-y: auto;
  min-height: 0;
  overscroll-behavior: contain;
}

.purchase-bill-editor-section {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #dfe8f4;
  border-radius: 13px;
  background: #fff;
}

.purchase-bill-section-heading {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
}

.purchase-bill-section-heading > span {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: #edf4ff;
  color: #2468d7;
  font-size: 13px;
  font-weight: 800;
}

.purchase-bill-section-heading h4 { color: #10284f; font-size: 14px; }
.purchase-bill-section-heading p { margin-top: 1px; color: #71839c; font-size: 11px; }
.purchase-bill-section-heading-actions { grid-template-columns: 26px minmax(0, 1fr) auto; }

.purchase-bill-dialog .developers-form-grid-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
}

.purchase-bill-dialog-body > .purchase-bill-manual-toggle,
.purchase-bill-dialog-body > .purchase-bill-editor-section:nth-of-type(3),
.purchase-bill-dialog-body > .purchase-bill-editor-section:nth-of-type(4),
.purchase-bill-dialog-body > #projectPurchaseBillEditorError {
  grid-column: 1 / -1;
}

.purchase-bill-dialog .developers-form label { gap: 4px; }
.purchase-bill-dialog .developers-form label > span { font-size: 11px; }
.purchase-bill-dialog input,
.purchase-bill-dialog select,
.purchase-bill-dialog textarea {
  min-height: 38px;
  padding: 8px 10px;
}

.purchase-bill-items-shell { display: grid; gap: 12px; }

.purchase-bill-line-card {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #e1e8f2;
  border-radius: 14px;
  background: #fbfdff;
}

.purchase-bill-line-card-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}

.purchase-bill-line-card-head strong { display: block; color: #10284f; font-size: 14px; }
.purchase-bill-line-card-head span { display: block; margin-top: 2px; color: #71839c; font-size: 11px; }

.purchase-bill-line-primary-grid {
  display: grid;
  grid-template-columns: minmax(170px, 1.25fr) minmax(150px, 1fr) minmax(170px, 1.25fr) 110px 90px 120px 90px minmax(150px, auto);
  gap: 8px;
  align-items: end;
}

.purchase-bill-line-secondary-grid {
  display: grid;
  grid-template-columns: repeat(8, minmax(110px, 1fr));
  gap: 8px;
  padding-top: 8px;
}

.purchase-bill-line-field {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.purchase-bill-line-field > span {
  color: #476080;
  font-size: 12px;
  font-weight: 700;
}

.purchase-bill-line-field input,
.purchase-bill-line-field select { width: 100%; min-width: 0; }

.purchase-bill-line-more {
  border-top: 1px solid #e6edf6;
}

.purchase-bill-line-more summary {
  width: fit-content;
  padding-top: 7px;
  color: #315b91;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}

.purchase-bill-rate-mode {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 38px;
  padding: 0 9px;
  border: 1px solid #d7e1f0;
  border-radius: 10px;
  background: #fff;
  color: #35507a;
  font-size: 13px;
}

.purchase-bill-rate-mode input,
.purchase-bill-manual-toggle input {
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  margin: 0;
  padding: 0;
  flex: 0 0 18px;
  accent-color: #2468d7;
}

.purchase-bill-manual-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #35507a;
  font-weight: 600;
  width: fit-content;
  padding: 8px 11px;
  border: 1px solid #dfe8f4;
  border-radius: 12px;
  background: #f8fbff;
}

.purchase-bill-totals-grid input[readonly] { background: #f5f8fc; color: #10284f; font-weight: 700; }
.purchase-bill-remarks-field textarea { min-height: 58px; resize: vertical; }

.purchase-bill-dialog-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 10px 18px;
  border-top: 1px solid #dfe7f1;
  background: #fff;
  flex: 0 0 auto;
}

.purchase-bill-dialog-footer > span { color: #71839c; font-size: 12px; }
.purchase-bill-dialog-footer .dialog-actions { margin: 0; }
.purchase-bill-dialog-footer .dialog-actions button { min-width: 132px; }

/* Reference compact purchase-invoice workspace. The surrounding dialog never
   scrolls horizontally; the invoice grid adapts into cards at tablet widths. */
.purchase-bill-dialog { width: min(1240px, calc(100vw - 28px)); max-width: min(1240px, calc(100vw - 28px)); }
.purchase-bill-dialog-body { grid-template-columns: minmax(0, 1.7fr) minmax(320px, 1fr); align-content: start; }
.purchase-bill-invoice-information { grid-column: 1; }
.purchase-bill-tax-settings { grid-column: 2; }
.purchase-bill-sources, .purchase-bill-invoice-items, .purchase-bill-advanced, .purchase-bill-summary, .purchase-bill-dialog-body > #projectPurchaseBillEditorError { grid-column: 1 / -1; }
.purchase-bill-tax-helper, .purchase-bill-sources > small { color: #2468d7; font-size: 12px; }
.purchase-bill-source-results { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 8px; }
.purchase-bill-source-option { display: grid; gap: 3px; padding: 9px 11px; border: 1px solid #dbe7f7; border-radius: 10px; color: #143a73; background: #f8fbff; text-align: left; cursor: pointer; }
.purchase-bill-source-option:hover { border-color: #2878ed; background: #eef6ff; }
.purchase-bill-source-option span { color: #637a99; font-size: 11px; }
.purchase-bill-source-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.purchase-bill-source-chip { display: inline-flex; align-items: center; gap: 7px; border-radius: 9px; padding: 8px 10px; background: #edf5ff; color: #143a73; font-size: 12px; }
.purchase-bill-source-chip b { padding: 2px 5px; border-radius: 5px; background: #e1f7e8; color: #16784a; font-size: 10px; }
.purchase-bill-source-chip button { border: 0; background: transparent; color: #163a72; cursor: pointer; font-size: 18px; line-height: 1; }
.purchase-bill-items-table-wrap { overflow: hidden; }
.purchase-bill-items-table { width: 100%; min-width: 0; table-layout: fixed; font-size: 12px; }
.purchase-bill-items-table th, .purchase-bill-items-table td { padding: 7px 6px; vertical-align: middle; overflow-wrap: anywhere; }
.purchase-bill-items-table th:nth-child(1) { width: 8%; }.purchase-bill-items-table th:nth-child(2) { width: 15%; }.purchase-bill-items-table th:nth-child(3),.purchase-bill-items-table th:nth-child(4),.purchase-bill-items-table th:nth-child(5) { width: 9%; }.purchase-bill-items-table th:nth-child(6) { width: 10%; }.purchase-bill-items-table th:nth-child(7) { width: 6%; }.purchase-bill-items-table th:nth-child(8) { width: 9%; }.purchase-bill-items-table th:nth-child(9) { width: 7%; }.purchase-bill-items-table th:nth-child(10) { width: 10%; }.purchase-bill-items-table th:nth-child(11) { width: 4%; }
.purchase-bill-items-table input { width: 100%; min-width: 0; min-height: 31px; padding: 5px; font-size: 12px; }.purchase-bill-items-table small { display: block; margin-top: 3px; color: #6a7e98; font-size: 10px; }
.purchase-bill-remaining { padding: 8px 10px; border-radius: 9px; background: #f1f7ff; color: #204f91; font-size: 12px; }
.purchase-bill-advanced { padding-top: 10px; }.purchase-bill-advanced summary { color: #10284f; font-size: 14px; font-weight: 800; cursor: pointer; }.purchase-bill-advanced[open] summary { margin-bottom: 10px; }
.purchase-bill-summary dl { display: grid; gap: 4px; margin: 0; }.purchase-bill-summary dl div { display: flex; justify-content: space-between; gap: 16px; color: #315279; font-size: 13px; }.purchase-bill-summary dt,.purchase-bill-summary dd { margin: 0; }.purchase-bill-summary .net { padding-top: 7px; border-top: 1px solid #bcd3f5; color: #10284f; font-size: 16px; font-weight: 800; }

/* Invoice grid: the shared data-table defaults to nowrap, which makes the
   long headings collide. This table is deliberately compact and may wrap its
   headings while keeping every cell within its assigned column. */
.purchase-bill-invoice-items { padding: 14px 16px 12px; }
.purchase-bill-invoice-items .purchase-bill-section-heading { margin-bottom: 9px; }
.purchase-bill-invoice-items .purchase-bill-section-heading h4 { font-size: 16px; }
.purchase-bill-invoice-items .purchase-bill-section-heading p { font-size: 11px; }
.purchase-bill-items-table { border-collapse: separate; border-spacing: 0; font-size: 11px; }
.purchase-bill-items-table th,
.purchase-bill-items-table td {
  box-sizing: border-box;
  white-space: normal !important;
  word-break: normal;
  overflow-wrap: anywhere;
  line-height: 1.2;
}
.purchase-bill-items-table th {
  padding: 8px 4px;
  color: #14294a;
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}
.purchase-bill-items-table td { padding: 7px 4px; }
.purchase-bill-items-table th:nth-child(1) { width: 7%; }
.purchase-bill-items-table th:nth-child(2) { width: 13%; }
.purchase-bill-items-table th:nth-child(3) { width: 10%; }
.purchase-bill-items-table th:nth-child(4) { width: 10%; }
.purchase-bill-items-table th:nth-child(5) { width: 8%; }
.purchase-bill-items-table th:nth-child(6) { width: 11%; }
.purchase-bill-items-table th:nth-child(7) { width: 6%; }
.purchase-bill-items-table th:nth-child(8) { width: 9%; }
.purchase-bill-items-table th:nth-child(9) { width: 7%; }
.purchase-bill-items-table th:nth-child(10) { width: 10%; }
.purchase-bill-items-table th:nth-child(11) { width: 5%; }
.purchase-bill-items-table td:nth-child(1),
.purchase-bill-items-table td:nth-child(3),
.purchase-bill-items-table td:nth-child(4),
.purchase-bill-items-table td:nth-child(5),
.purchase-bill-items-table td:nth-child(7),
.purchase-bill-items-table td:nth-child(9),
.purchase-bill-items-table td:nth-child(10),
.purchase-bill-items-table td:nth-child(11) { text-align: center; }
.purchase-bill-items-table input { min-height: 29px; padding: 4px 5px; font-size: 11px; }
.purchase-bill-items-table small { margin-top: 2px; font-size: 9px; line-height: 1.1; }
.purchase-bill-items-table [data-remove-purchase-bill-row] { min-width: 30px; min-height: 30px; padding: 2px; }
.purchase-bill-remaining { margin-top: 8px; padding: 7px 10px; font-size: 11px; }

/* Keep header and invoice rows on the exact same desktop grid.  A browser may
   otherwise size a table body independently when fields are narrow. */
@media (min-width: 761px) {
  .purchase-bill-items-table,
  .purchase-bill-items-table thead,
  .purchase-bill-items-table tbody,
  .purchase-bill-items-table tr { display: block; width: 100%; }
  .purchase-bill-items-table thead tr,
  .purchase-bill-items-table tbody tr {
    display: grid;
    grid-template-columns: minmax(48px, .7fr) minmax(84px, 1.35fr) minmax(76px, 1.1fr) minmax(76px, 1.1fr) minmax(66px, .9fr) minmax(92px, 1.25fr) minmax(48px, .65fr) minmax(72px, .95fr) minmax(54px, .7fr) minmax(82px, 1.1fr) minmax(38px, .5fr);
    align-items: center;
  }
  .purchase-bill-items-table th,
  .purchase-bill-items-table td {
    display: block;
    width: auto !important;
    min-width: 0;
    border-right: 1px solid #e2eaf5;
  }
  .purchase-bill-items-table th:last-child,
  .purchase-bill-items-table td:last-child { border-right: 0; }
  .purchase-bill-items-table tbody tr { border-bottom: 1px solid #e2eaf5; }
}

.purchase-bill-form-shell input.is-editable {
  background: #fffdfa;
  border-color: #d6b36f;
}

.project-purchase-bills-table td.good {
  color: #10804b;
  font-weight: 700;
}

.project-purchase-bills-table td.danger {
  color: #d93025;
  font-weight: 700;
}

.project-purchase-bills-main .project-vendors-table-card .table-wrap {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: visible;
  box-sizing: border-box;
}

.project-purchase-bills-main .project-purchase-bills-table {
  width: 100%;
  max-width: none;
  min-width: 0;
  table-layout: fixed;
}

.project-purchase-bills-shell,
.project-purchase-bills-main,
.project-purchase-bills-main .project-vendors-table-card {
  width: 100%;
  max-width: none;
  min-width: 0;
  box-sizing: border-box;
}

.project-purchase-bills-main .project-vendors-table-card {
  grid-column: 1 / -1;
  display: block;
  justify-self: stretch;
  overflow: visible;
}

.project-purchase-bills-main .project-purchase-bills-table th,
.project-purchase-bills-main .project-purchase-bills-table td {
  padding: 9px 8px;
}

.project-purchase-bills-main .project-purchase-bills-table th:nth-child(1),
.project-purchase-bills-main .project-purchase-bills-table td:nth-child(1) { width: 17%; }
.project-purchase-bills-main .project-purchase-bills-table th:nth-child(2),
.project-purchase-bills-main .project-purchase-bills-table td:nth-child(2) { width: 18%; }
.project-purchase-bills-main .project-purchase-bills-table th:nth-child(3),
.project-purchase-bills-main .project-purchase-bills-table td:nth-child(3) { width: 14%; }
.project-purchase-bills-main .project-purchase-bills-table th:nth-child(4),
.project-purchase-bills-main .project-purchase-bills-table td:nth-child(4) { width: 18%; }
.project-purchase-bills-main .project-purchase-bills-table th:nth-child(5),
.project-purchase-bills-main .project-purchase-bills-table td:nth-child(5) { width: 17%; }
.project-purchase-bills-main .project-purchase-bills-table th:nth-child(6),
.project-purchase-bills-main .project-purchase-bills-table td:nth-child(6) { width: 12%; }
.project-purchase-bills-main .project-purchase-bills-table th:nth-child(7),
.project-purchase-bills-main .project-purchase-bills-table td:nth-child(7) { width: 4%; text-align: right; }

.purchase-bill-register-primary,
.purchase-bill-register-meta,
.purchase-bill-register-amount,
.purchase-bill-register-status,
.purchase-bill-register-badges {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.purchase-bill-register-primary strong,
.purchase-bill-register-amount strong {
  color: #10284f;
}

.purchase-bill-register-primary small,
.purchase-bill-register-meta,
.purchase-bill-register-amount small,
.purchase-bill-register-status small {
  color: #6b7f99;
  font-size: 12px;
  line-height: 1.35;
}

.purchase-bill-register-meta b {
  color: #35507a;
  font-size: 11px;
  letter-spacing: 0.03em;
}

.purchase-bill-register-status .good { color: #10804b; font-weight: 700; }
.purchase-bill-register-status .danger { color: #d93025; font-weight: 700; }
.purchase-bill-register-badges { justify-items: start; }

@media (max-width: 1100px) {
  .project-purchase-bills-main .project-vendors-table-card .table-wrap {
    overflow-x: auto;
  }

  .project-purchase-bills-main .project-purchase-bills-table {
    min-width: 900px;
  }
}

@media (max-width: 1180px) {
  .project-purchase-bills-filter-row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .purchase-bill-line-primary-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .purchase-bill-line-secondary-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .purchase-bill-dialog .developers-form-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .purchase-bill-dialog-body { grid-template-columns: 1fr; }.purchase-bill-invoice-information,.purchase-bill-tax-settings { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .purchase-bill-dialog { width: 100vw; max-width: 100vw; max-height: 100dvh; border-radius: 0; }
  .purchase-bill-dialog-header { grid-template-columns: 44px minmax(0, 1fr); padding: 14px 16px; gap: 10px; }
  .purchase-bill-dialog-icon { width: 42px; height: 42px; border-radius: 12px; font-size: 22px; }
  .purchase-bill-dialog-close { width: 40px; height: 40px; border-radius: 12px; }
  .purchase-bill-dialog-heading h3 { font-size: 18px; }
  .purchase-bill-dialog-heading p { font-size: 12px; }
  .purchase-bill-dialog-body { grid-template-columns: 1fr; padding: 12px; }
  .purchase-bill-dialog-body > * { grid-column: 1 / -1; }
  .purchase-bill-editor-section { padding: 14px; }
  .purchase-bill-section-heading-actions { grid-template-columns: 30px minmax(0, 1fr); }
  .purchase-bill-section-heading-actions button { grid-column: 1 / -1; width: 100%; }
  .purchase-bill-line-primary-grid,
  .purchase-bill-line-secondary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .purchase-bill-items-table thead { display: none; }.purchase-bill-items-table,.purchase-bill-items-table tbody,.purchase-bill-items-table tr,.purchase-bill-items-table td { display: block; width: 100%; }.purchase-bill-items-table tr { padding: 10px; border: 1px solid #dce7f5; border-radius: 12px; margin-bottom: 8px; }.purchase-bill-items-table td { padding: 5px 0; }.purchase-bill-items-table td::before { content: attr(data-label); display: block; color: #607896; font-size: 10px; font-weight: 700; text-transform: uppercase; }
  .purchase-bill-line-material,
  .purchase-bill-line-description,
  .purchase-bill-rate-mode { grid-column: 1 / -1; }
  .purchase-bill-dialog-footer { padding: 12px; }
  .purchase-bill-dialog-footer > span { display: none; }
  .purchase-bill-dialog-footer .dialog-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .purchase-bill-dialog-footer .dialog-actions button { min-width: 0; }
}

@media (max-width: 460px) {
  .purchase-bill-line-primary-grid,
  .purchase-bill-line-secondary-grid { grid-template-columns: 1fr; }
  .purchase-bill-line-material,
  .purchase-bill-line-description,
  .purchase-bill-rate-mode { grid-column: auto; }
}
