/* One order directory serves the sales workspace and each company. */
.order-directory-panel { min-width: 0; overflow: hidden; }
.order-directory-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 16px 20px; border-bottom: 1px solid #ebebeb; }
.order-directory-toolbar > .search-field { flex: 1 1 250px; min-width: 180px; }
.order-directory-filters { display: flex; align-items: center; gap: 8px; min-width: 0; }
.order-directory-filters select { width: auto; min-width: 142px; font-size: 13px; }
.order-company-filter { max-width: 250px; min-width: 0; font-size: 13px; }
.order-company-filter > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.order-company-filter > .icon { flex-shrink: 0; }
.order-directory-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 13px; }
.order-directory-table th { padding: 11px 20px; font-size: 12px; font-weight: 500; color: var(--muted); background: #fafafa; }
.order-directory-table td { padding: 16px 20px; border-top: 1px solid #ebebeb; }
.order-directory-row:hover { background: #fafafa; }
.order-directory-number { width: 17%; }
.order-directory-company { max-width: 300px; overflow-wrap: anywhere; }
.order-directory-company a { color: inherit; text-decoration: none; }
.order-directory-company a:hover { text-decoration: underline; text-underline-offset: 3px; }
.order-directory-link { display: inline-flex; align-items: center; gap: 8px; color: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.order-directory-link .icon { display: none; flex: none; width: 16px; height: 16px; color: var(--muted); }
.order-directory-date { color: var(--muted); white-space: nowrap; }
.order-directory-status { max-width: 180px; }
.order-directory-status .status { white-space: normal; line-height: 1.4; }
.order-directory-total, .order-directory-table th:last-child { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.order-directory-total { font-weight: 600; }
.order-directory-panel > #order-directory-results > .alert { margin: 16px 20px; }
.order-company-filter-dialog { width: min(100% - 32px, 560px); max-height: min(720px, calc(100dvh - 48px)); padding: 0; border: 1px solid #dedede; border-radius: 12px; color: inherit; overscroll-behavior: contain; overflow-y: auto; }
.order-company-filter-dialog::backdrop { background: rgb(0 0 0 / 32%); }
.order-company-filter-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px 0; }
.order-company-filter-heading h2 { font-size: 17px; }
.order-company-filter-all { display: block; width: 100%; padding: 14px 20px; border: 0; border-top: 1px solid #ebebeb; background: transparent; text-align: left; font: inherit; font-weight: 600; cursor: pointer; }
.order-company-filter-dialog .order-company-list button { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding: 16px 20px; border: 0; border-top: 1px solid #ebebeb; background: transparent; text-align: left; color: inherit; font: inherit; cursor: pointer; }
.order-company-filter-dialog .order-company-list button > span { min-width: 0; overflow-wrap: anywhere; }
.order-company-filter-dialog .order-company-list button:hover, .order-company-filter-all:hover { background: #fafafa; }
.order-detail-note { padding: 16px 24px; color: var(--muted); font-size: 13px; border-top: 1px solid #ebebeb; }
@media (max-width: 1100px) and (min-width: 761px) {
  .order-directory-table th, .order-directory-table td { padding: 13px 12px; }
  .order-directory-date { white-space: normal; }
  .order-directory-filters { flex-wrap: wrap; }
}
@media (max-width: 760px) {
  .order-directory-toolbar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 12px 16px; gap: 8px; }
  .order-directory-toolbar > .search-field { grid-column: 1 / -1; grid-row: 1; margin-right: 52px; min-width: 0; }
  .order-directory-filters { display: contents; }
  .order-directory-filters select { grid-column: 1; grid-row: 2; width: 100%; min-width: 0; padding-inline: 10px 24px; min-height: 44px; font-size: 16px; }
  .order-directory-filters:not(:has(.order-company-filter)) select { grid-column: 1 / -1; }
  .order-directory-filters > .list-refresh { grid-column: 2; grid-row: 1; justify-self: end; width: 44px; height: 44px; }
  .order-company-filter { grid-column: 2; grid-row: 2; max-width: none; min-height: 44px; padding: 8px; gap: 5px; }
  .order-company-filter > .icon { display: none; }
  .order-directory-table, .order-directory-table tbody { display: block; }
  .order-directory-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .order-directory-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 16px; padding: 8px 16px; border-bottom: 1px solid #ebebeb; }
  .order-directory-row:last-child { border-bottom: 0; }
  .order-directory-table td { min-width: 0; padding: 0; border: 0; }
  .order-directory-number { width: auto; grid-column: 1; grid-row: 1; }
  .order-directory-link { min-height: 44px; font-size: 14px; }
  .order-directory-link .icon { display: inline; }
  .order-directory-company { grid-column: 1 / -1; grid-row: 2; max-width: none; line-height: 1.5; }
  .order-directory-company a { display: inline-flex; align-items: center; min-height: 44px; padding-block: 3px; }
  .order-directory-date { grid-column: 1; grid-row: 3; align-self: center; font-size: 12px; white-space: normal; }
  .order-directory-status { grid-column: 2; grid-row: 3; justify-self: end; text-align: right; max-width: 145px; }
  .order-directory-status .status { font-size: 11px; }
  .order-directory-total { grid-column: 2; grid-row: 1; align-self: center; font-size: 14px; }
  #company-orders .order-directory-date, .order-directory-row:not(:has(.order-directory-company)) .order-directory-date { grid-row: 2; }
  #company-orders .order-directory-status, .order-directory-row:not(:has(.order-directory-company)) .order-directory-status { grid-row: 2; }
  .order-company-filter-dialog { max-height: calc(100dvh - 32px); border-radius: 12px; }
  .order-company-filter-heading { padding: 12px 16px 0; }
  .order-company-filter-dialog .order-panel-body { padding: 12px 16px; }
  .order-company-filter-dialog .order-company-list button, .order-company-filter-all { padding: 14px 16px; }
  .order-detail-note { padding: 16px; }
}
.order-items-heading { padding: 16px 24px 12px; border-top: 1px solid #ebebeb; }
.order-items-heading h3 { font-size: 13px; font-weight: 600; }
.order-items-heading p { margin-top: 5px; font-size: 12px; color: var(--muted); }
@media (max-width: 760px) { .order-items-heading { padding-inline: 16px; } }

.order-repeat-note { margin: 0 0 18px; font-size: 13px; line-height: 1.5; color: var(--muted); }
.order-composer.is-repeat { grid-template-areas: "items summary" "products company"; }
.order-composer.is-repeat > .order-items-panel { grid-area: items; min-width: 0; }
.order-composer.is-repeat > .order-summary-panel { grid-area: summary; min-width: 0; }
.order-composer.is-repeat > .order-products-panel { grid-area: products; min-width: 0; }
.order-composer.is-repeat > .order-company-panel { grid-area: company; min-width: 0; }
.order-line-product .order-line-issue { color: #9b3e0b; line-height: 1.45; }
.order-line-needs-review input[aria-invalid="true"] { border-color: #b7774c; }
.order-repeat-dialog-open { overflow: hidden; }
.order-repeat-dialog { width: min(100% - 32px, 520px); max-height: calc(100dvh - 48px); padding: 0; border: 1px solid #dedede; border-radius: 12px; color: inherit; overscroll-behavior: contain; }
.order-repeat-dialog::backdrop { background: rgb(0 0 0 / 32%); }
.order-repeat-dialog-body { padding: 24px; }
.order-repeat-dialog h2 { font-size: 18px; line-height: 1.35; }
.order-repeat-dialog p { margin-top: 12px; color: var(--muted); font-size: 14px; line-height: 1.5; }
.order-repeat-dialog-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 24px; }
.order-repeat-dialog-actions > .button { min-height: 44px; }
@media (max-width: 950px) {
  .order-composer.is-repeat { grid-template-areas: "items" "summary" "products" "company"; }
}
@media (max-width: 760px) {
  .order-repeat-note { margin-bottom: 14px; }
  .order-result-actions:has(.order-repeat-button) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .order-result-actions > .order-repeat-button { grid-column: 1 / -1; }
  .order-result-actions:has(.order-repeat-button) > .button { min-width: 0; width: 100%; padding-inline: 8px; }
  .order-repeat-dialog-body { padding: 20px; }
  .order-repeat-dialog-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .order-repeat-dialog-actions > .primary { grid-column: 1 / -1; grid-row: 1; }
  .order-repeat-dialog-actions > .button { min-width: 0; padding-inline: 10px; }
}
