.client-pool-dialog { position: fixed; inset: 0; z-index: 2400; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(22, 36, 52, .46); box-sizing: border-box; }
.client-pool-dialog *, .client-pool-dialog *::before, .client-pool-dialog *::after { box-sizing: border-box; }
.client-pool-dialog .cp-shell { display: flex; flex-direction: column; width: 780px; max-width: 100%; max-height: calc(100dvh - 48px); overflow: hidden; border: 1px solid #dce4eb; border-radius: 9px; background: #fff; color: #34495e; box-shadow: 0 18px 64px rgba(16, 34, 51, .2); }
.client-pool-dialog .cp-header { display: flex; flex: 0 0 auto; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 20px; border-bottom: 1px solid #e5ebf1; }
.client-pool-dialog .cp-header h2 { min-width: 0; margin: 0; color: #21384d; font-size: 18px; line-height: 1.5; }
.client-pool-dialog .cp-content { min-height: 0; padding: 18px 20px 22px; overflow-y: auto; overscroll-behavior: contain; }
.client-pool-dialog .cp-body { min-width: 0; overflow-wrap: anywhere; }
.client-pool-dialog h3 { margin: 0 0 10px; color: #263e52; font-size: 15px; line-height: 1.6; }
.client-pool-dialog h4 { margin: 0 0 8px; color: #496175; font-size: 13px; line-height: 1.6; }
.client-pool-dialog .cp-button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: auto; min-height: 36px; max-width: 100%; margin: 0; padding: 7px 12px; border: 1px solid #cfdbe5; border-radius: 5px; background: #fff; box-shadow: none; color: #3e586d; font-size: 13px; font-weight: 500; line-height: 20px; white-space: normal; }
.client-pool-dialog .cp-button:hover { border-color: #9cafa9; background: #f2f7f6; }
.client-pool-dialog .cp-button.cp-primary { border-color: #0f766e; background: #0f766e; color: #fff; }
.client-pool-dialog .cp-button.cp-primary:hover { background: #115e59; }
.client-pool-dialog .cp-button:disabled { cursor: default; opacity: .5; }
.client-pool-dialog button:focus-visible, .client-pool-dialog summary:focus-visible, .client-pool-dialog input:focus-visible, .client-pool-dialog select:focus-visible, .client-pool-dialog textarea:focus-visible { outline: 2px solid #0f766e; outline-offset: 2px; }
.client-pool-dialog .cp-toolbar { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.client-pool-dialog .cp-muted, .client-pool-dialog .cp-empty { margin: 0 0 16px; color: #728395; font-size: 12px; line-height: 1.8; }
.client-pool-dialog .cp-client-heading { margin-bottom: 18px; }
.client-pool-dialog .cp-notice, .client-pool-dialog .cp-message { margin: 0 0 16px; padding: 10px 12px; border-left: 2px solid #94b6af; border-radius: 2px; background: #f1f7f5; color: #476858; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
.client-pool-dialog .cp-message.is-error { border-left-color: #ca8672; background: #fff6f1; color: #a14c31; }
.client-pool-dialog .cp-section { margin: 0 0 16px; }
.client-pool-dialog .cp-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; margin: 0 0 14px; color: #4a6175; font-size: 13px; line-height: 1.6; }
.client-pool-dialog .cp-field i { color: #ae4748; font-style: normal; }
.client-pool-dialog .cp-field > input, .client-pool-dialog .cp-field > select, .client-pool-dialog .cp-field > textarea { width: 100%; min-width: 0; max-width: 100%; min-height: 38px; margin: 0; padding: 8px 10px; border: 1px solid #ccd8e3; border-radius: 5px; background: #fff; color: #304a5e; font: inherit; }
.client-pool-dialog .cp-field > textarea { min-height: 86px; resize: vertical; }
.client-pool-dialog .cp-field small { color: #9a6136; font-size: 12px; }
.client-pool-dialog .cp-form-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.client-pool-dialog .cp-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; }
.client-pool-dialog .cp-full { grid-column: 1 / -1; }
.client-pool-dialog .cp-review-form { margin-top: 20px; padding-top: 18px; border-top: 1px solid #e1e8ee; }
.client-pool-dialog .cp-review-form > h4 { margin-bottom: 14px; }
.client-pool-dialog .cp-detail-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; margin-bottom: 14px; }
.client-pool-dialog .cp-detail-heading h3 { flex: 1 1 220px; min-width: 0; margin: 0; }
.client-pool-dialog .cp-status { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 6px; color: #6c7e8e; font-size: 12px; line-height: 1.7; }
.client-pool-dialog .cp-status::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #8b99a6; }
.client-pool-dialog .cp-status[data-status="pending"]::before { background: #b47b2c; }
.client-pool-dialog .cp-status[data-status="approved"]::before { background: #28714e; }
.client-pool-dialog .cp-status[data-status="transferred"]::before { background: #0c7a82; }
.client-pool-dialog .cp-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 20px; margin: 0 0 18px; padding: 14px; background: #f6f8fa; border-radius: 5px; }
.client-pool-dialog .cp-facts > div { min-width: 0; }
.client-pool-dialog .cp-facts dt { margin: 0 0 4px; color: #758697; font-size: 12px; }
.client-pool-dialog .cp-facts dd { margin: 0; color: #405a6e; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.client-pool-dialog .cp-reason { margin: 0 0 16px; }
.client-pool-dialog .cp-reason p { margin: 0; color: #334d63; font-size: 13px; line-height: 1.8; white-space: pre-wrap; overflow-wrap: anywhere; }
.client-pool-dialog .cp-record-link { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; margin: 16px 0; }
.client-pool-dialog .cp-record-link > span { flex: 1 1 260px; min-width: 0; color: #7a8998; font-size: 12px; line-height: 1.7; }
.client-pool-dialog .cp-list-item { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 0; border-top: 1px solid #e5ebf0; }
.client-pool-dialog .cp-list-item > div { flex: 1 1 auto; min-width: 0; }
.client-pool-dialog .cp-list-item strong { color: #334d62; font-size: 13px; line-height: 1.7; }
.client-pool-dialog .cp-meta { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; margin-top: 5px; color: #7a8998; font-size: 12px; line-height: 1.7; }
.client-pool-dialog .cp-reason-preview { margin: 6px 0 0; color: #637b8e; font-size: 12px; line-height: 1.7; white-space: pre-wrap; }
.client-pool-dialog .cp-history { margin-top: 18px; border-top: 1px solid #e1e8ee; }
.client-pool-dialog .cp-history > summary { padding: 14px 0; cursor: pointer; color: #677f91; font-size: 13px; }
.client-pool-dialog .cp-history > summary > span { margin-left: 6px; color: #8492a0; }
.client-pool-dialog [hidden] { display: none !important; }

@media (max-width: 600px) {
  .client-pool-dialog { padding: 8px; align-items: center; }
  .client-pool-dialog .cp-shell { max-height: calc(100dvh - 16px); border-radius: 7px; }
  .client-pool-dialog .cp-header { gap: 10px; padding: 12px; }
  .client-pool-dialog .cp-header h2 { font-size: 16px; }
  .client-pool-dialog .cp-content { padding: 14px 12px 18px; }
  .client-pool-dialog .cp-button, .client-pool-dialog .cp-field > input, .client-pool-dialog .cp-field > select { min-height: 40px; }
  .client-pool-dialog .cp-form-grid, .client-pool-dialog .cp-facts { grid-template-columns: minmax(0, 1fr); }
  .client-pool-dialog .cp-facts { gap: 10px; padding: 12px; }
  .client-pool-dialog .cp-list-item { align-items: flex-start; flex-direction: column; gap: 10px; }
  .client-pool-dialog .cp-list-item > .cp-button { align-self: flex-end; }
  .client-pool-dialog .cp-detail-heading { gap: 6px; }
  .client-pool-dialog .cp-record-link > span { flex-basis: 100%; }
  .client-pool-dialog .cp-form-actions > .cp-button { flex: 1 1 auto; }
}
