.customer-column-filters input,
.customer-column-filters select {min-width: 145px;}
.customer-column-note {font-size: 11px; font-weight: 400; color: var(--muted); text-transform: none; letter-spacing: 0;}
.customer-contact-cell {min-width: 190px; line-height: 1.5;}
.customer-category.potential {background: var(--blue-soft); color: var(--blue);}
.customer-category.confirmed {background: var(--success-soft); color: var(--success);}
.customer-approval.pending {background: var(--warning-soft); color: var(--warning);}
.customer-approval.approved {background: var(--success-soft); color: var(--success);}
.customer-approval.rejected {background: var(--danger-soft); color: var(--danger);}
.customer-approval.not_requested {background: var(--canvas); color: var(--muted);}
.customer-profile-summary {display: flex; gap: 10px; flex-wrap: wrap; align-items: center; margin-bottom: 26px;}
.customer-provenance {margin-left: auto; color: var(--muted); font-size: 12px; line-height: 1.5;}
.customer-shared-note {font-size: 13px; font-weight: 400; color: var(--muted); margin: -4px 0 20px; line-height: 1.65;}
.customer-action-section {padding-top: 28px; border-top: 1px solid var(--line);}
.customer-action-section > .field-help {font-size: 13px; color: var(--muted); margin: -4px 0 20px; line-height: 1.65;}
.customer-order-declaration {display: flex; align-items: flex-start; gap: 10px; margin: 20px 0; color: var(--ink); font-size: 13px; line-height: 1.65; cursor: pointer;}
.customer-order-declaration input {width: 18px; height: 18px; margin-top: 2px; flex-shrink: 0; accent-color: var(--accent);}
.customer-order-confirmed {display: flex; align-items: center; gap: 9px; border: 1px solid #d4e4d9; border-radius: 10px; padding: 14px 16px; color: var(--success); background: var(--success-soft); font-size: 13px; line-height: 1.65; flex-wrap: wrap;}
.customer-order-confirmed svg {width: 18px; height: 18px; flex-shrink: 0;}
.customer-approval-line {display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 0 0 18px;}
.customer-booking-status {border: 1px solid var(--line); background: var(--canvas); padding: 15px 17px; border-radius: 10px; margin-bottom: 20px; color: var(--muted); font-size: 13px; line-height: 1.65;}
.customer-booking-status strong {display: block; color: var(--ink); font-size: 14px; font-weight: 600;}
.customer-booking-status ul {margin: 8px 0 0; padding-left: 19px;}
.customer-booking-status li + li {margin-top: 3px;}
.customer-booking-status.ready {border-color: #d4e4d9; background: var(--success-soft);}
.customer-booking-status.ready strong {color: var(--success);}
.customer-director-review {margin-top: 24px; border: 1px solid var(--line); border-radius: 12px; padding: 20px; background: var(--canvas);}
.customer-director-review > .field-help {color: var(--muted); margin: 8px 0 18px; line-height: 1.6;}
.customer-decision-buttons {display: flex; justify-content: flex-end; gap: 10px; flex-wrap: wrap;}
#reject-customer-approval {color: var(--danger); border-color: #e6d3cc;}
#reject-customer-approval:hover {background: var(--danger-soft);}
.customer-history-list {margin-bottom: 20px;}
.customer-history-item {padding: 14px 0; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 13px; line-height: 1.65;}
.customer-history-item strong {display: block; font-size: 14px; color: var(--ink); font-weight: 600;}
.customer-history-item span {display: block; margin-top: 4px; font-size: 12px; color: var(--muted);}
.customer-history-item p {white-space: pre-wrap; margin: 8px 0 0;}
.customer-approval-history {margin-top: 22px; color: var(--muted); font-size: 13px;}
.customer-approval-history summary {cursor: pointer; color: var(--accent); font-weight: 600; margin-bottom: 10px;}
.customer-profile-body #customer-profile-form {margin: 0;}
.customer-profile-footer > span {max-width: 145px;}
.customer-profile-footer .button {font-size: 13px; padding-left: 13px; padding-right: 13px;}

@media (max-width: 650px) {
  .customer-provenance {margin-left: 0; width: 100%;}
  .customer-profile-footer {flex-wrap: wrap;}
  .customer-profile-footer > span {max-width: none; width: 100%;}
  .customer-profile-footer > div {width: 100%; gap: 7px;}
  .customer-profile-footer .button {flex: 1; min-width: 0; font-size: 12px; padding: 10px 8px;}
  .customer-profile-footer .button svg {display: none;}
  .customer-decision-buttons .button {flex: 1;}
  .customer-director-review {padding: 16px;}
}
