/* Client workspace and direct messaging extend the existing SilverForge theme. */
.client-workspace { width: min(1180px, calc(100% - 28px)); max-width: 1180px; height: min(900px, calc(100dvh - 28px)); max-height: calc(100dvh - 28px); }
.client-workspace .crm-dialog-shell { padding: clamp(18px, 3vw, 34px); }
.client-workspace .crm-dialog-header { gap: 20px; }
.client-workspace h2, .client-workspace p, .client-workspace dd { overflow-wrap: anywhere; }
.client-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 20px 0; }
.client-tabs { display: flex; gap: 8px; overflow-x: auto; padding: 8px 0 14px; margin: 16px 0; border-bottom: 1px solid #385675; }
.client-tabs button { color: #becddd; background: #162536; border: 1px solid #385675; border-radius: 8px; padding: 12px 16px; cursor: pointer; white-space: nowrap; font: inherit; }
.client-tabs button[aria-selected="true"] { color: #effaff; background: #245269; border-color: #8bd8f1; }
.client-workspace [role="tabpanel"] { min-height: 360px; }
.client-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 24px 0; }
.client-summary article { padding: 20px; border: 1px solid #385675; border-radius: 12px; background: #14293b; }
.client-summary strong { display: block; font-size: 2rem; }
.client-recent { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.client-record { padding: 20px; border: 1px solid #385675; border-radius: 12px; margin: 16px 0; min-width: 0; }
.client-record h3 { margin: 0 0 12px; }
.client-project { cursor: pointer; }
.client-project:hover, .client-project:focus-visible { border-color: #8bd8f1; background: #162b40; }
.client-body, .client-message p { white-space: pre-wrap; overflow-wrap: anywhere; }
.client-conversation { display: grid; gap: 14px; max-height: 460px; overflow-y: auto; padding: 8px; margin: 20px 0; }
.client-message { width: min(86%, 660px); min-width: 0; padding: 16px; border: 1px solid #385675; border-radius: 14px; }
.client-message p { margin: 8px 0; }
.client-message small { color: #becddd; }
.client-message-own { justify-self: end; background: #153e50; }
.client-message-other { justify-self: start; background: #162b40; }
.client-timeline { padding-left: 24px; }
.client-timeline li { padding: 12px 0; border-bottom: 1px solid #385675; }
.client-timeline small { color: #becddd; }
.client-link-panel { padding: 20px 0; border-top: 1px solid #385675; border-bottom: 1px solid #385675; }
.client-unread { color: #8ee4ff; font-weight: 700; }
.crm-account-table { min-width: 1080px; }
@media (max-width: 680px) {
  .client-workspace { width: calc(100% - 12px); height: calc(100dvh - 12px); max-height: calc(100dvh - 12px); }
  .client-workspace .crm-dialog-header { flex-direction: column; align-items: stretch; }
  .client-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .client-recent { grid-template-columns: 1fr; }
  .client-actions > * { flex: 1 1 100%; }
  .client-message { width: 95%; }
}
