#matterTabBody.client-tasks { padding:20px; color:var(--heirlo-navy, #172033); }
.client-tasks .task-progress-card { display:block; margin:0 0 20px; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
.client-tasks .task-progress-info { display:grid; grid-template-columns:1fr auto; gap:6px 16px; align-items:center; }
.client-tasks .task-progress-label { margin:0; font-size:21px !important; color:var(--heirlo-navy, #172033); letter-spacing:-.3px; font-weight:600; }
.client-tasks .task-progress-caption { grid-column:1; margin:0; font-size:14px; color:var(--heirlo-muted, #5d6b82); }
.client-tasks .task-progress-value { grid-column:2; grid-row:1 / 3; font-size:13px; color:var(--heirlo-muted, #5d6b82); font-weight:400; }
.client-tasks .task-progress-track { height:3px; margin-top:16px; background:#edf0f5; border-radius:3px; overflow:hidden; }
.client-tasks .task-progress-fill { height:100%; background:var(--heirlo-primary, #a41f35); border-radius:3px; }
.client-tasks .task-filters-bar { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; margin:0 0 22px; padding:0; background:none; border:0; }
.client-tasks .task-search-wrapper { position:relative; flex:1 1 200px; max-width:320px; }
.client-tasks .task-search-wrapper .search-icon { position:absolute; top:12px; left:12px; width:16px; height:16px; color:#94a3b8; pointer-events:none; }
.client-tasks .task-select-filters { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.client-tasks .task-select-wrapper { min-width:0; }
.client-tasks input, .client-tasks select, .client-tasks #matterRefreshTasksBtn, .client-tasks #matterAddTaskBtn, .client-tasks .ct-load-error button { width:auto; min-height:40px; margin:0; padding:8px 12px; font:inherit; font-size:13px; border:1px solid #dce3ec; border-radius:8px; background:#fff; color:var(--heirlo-text-secondary, #475569); box-shadow:none; }
.client-tasks .task-search-input { width:100%; padding-left:36px; }
.client-tasks select { padding-right:30px; }
.client-tasks #matterAddTaskBtn { background:var(--heirlo-primary, #a41f35); border-color:var(--heirlo-primary, #a41f35); color:#fff; font-weight:600; }
.client-tasks button { cursor:pointer; }
.client-tasks .task-group-section { margin-bottom:24px; }
.client-tasks .task-group-header { padding:0; margin:0 0 10px; color:var(--heirlo-muted, #5d6b82); font-size:13px; font-weight:500; letter-spacing:0; text-transform:none; border:0; background:none; }
.client-tasks .tab-list { display:grid; gap:8px; }
.client-tasks .tab-list-item { display:flex; align-items:center; gap:14px; padding:16px; margin:0; border:1px solid var(--heirlo-border, #e2e7f0); border-radius:10px; background:#fff; box-shadow:none; }
.client-tasks .tab-list-item:hover { background:#fcfcfe; transform:none; }
.client-tasks .tab-list-item__body { min-width:0; flex:1; }
.client-tasks .tab-list-item__check { flex:0 0 22px; width:22px; height:22px; padding:0; margin:0; display:grid; place-items:center; border:1.5px solid #aeb9c9; border-radius:6px; background:#fff; color:#fff; box-shadow:none; font-size:14px; }
.client-tasks .tab-list-item__check.is-done { background:var(--heirlo-primary, #a41f35); border-color:var(--heirlo-primary, #a41f35); }
.client-tasks .tab-list-item__check:disabled { opacity:.5; cursor:wait; }
.client-tasks .tab-list-item__title { display:block; width:auto; padding:0; margin:0 0 6px; border:0; border-radius:3px; background:none; box-shadow:none; color:var(--heirlo-navy, #172033); font-size:14px; line-height:1.5; font-weight:600; text-align:left; overflow-wrap:anywhere; }
.client-tasks .tab-list-item__title:hover { color:var(--heirlo-primary, #a41f35); }
.client-tasks .tab-list-item__meta { font-size:12px; line-height:1.6; color:var(--heirlo-muted, #5d6b82); overflow-wrap:anywhere; }
.client-tasks .tab-list-item__meta.text-danger { color:var(--heirlo-primary, #a41f35); }
.client-tasks .priority-tag, .client-tasks .date-status { display:inline-block; padding:4px 8px; border-radius:5px; font-size:11px; line-height:1.5; font-weight:500; text-transform:capitalize; white-space:nowrap; }
.client-tasks .priority-tag { background:#f1f4f8; color:#526078; }
.client-tasks .priority-tag--high { background:#fff4e6; color:#945513; }
.client-tasks .date-status { background:#f3f5f9; color:#526078; }
.client-tasks .status--danger { background:#fff0f3; color:var(--heirlo-primary, #a41f35); }
.client-tasks .status--success { background:#edf7f2; color:#337457; }
.client-tasks .is-completed .tab-list-item__title { color:var(--heirlo-muted, #5d6b82); text-decoration:line-through; }
.client-tasks .tab-empty-state { border:1px dashed #dce3ec; border-radius:10px; }
.client-tasks .ct-load-error { padding:20px; color:var(--heirlo-primary, #a41f35); }
.client-tasks :is(button,input,select):focus-visible { outline:2px solid var(--heirlo-primary, #a41f35); outline-offset:3px; }
@media(max-width:650px) {
 #matterTabBody.client-tasks { padding:14px; }
 .client-tasks .task-progress-info { grid-template-columns:1fr; }
 .client-tasks .task-progress-value { grid-column:1; grid-row:auto; }
 .client-tasks .task-search-wrapper { max-width:none; flex-basis:100%; }
 .client-tasks .tab-list-item { display:grid; grid-template-columns:22px minmax(0,1fr); padding:14px; gap:10px; }
 .client-tasks .tab-list-item > div:last-child { grid-column:2; flex-wrap:wrap; }
 .client-tasks .tab-list-item__check { align-self:start; margin-top:2px; }
}
.client-tasks .tab-list-item.is-completed, .client-tasks .tab-list-item__title.line-through { opacity:1; }
