.office-tasks-panel { background:#fff; border:1px solid #dce7e1; border-radius:18px; padding:20px; margin-bottom:20px; scroll-margin-top:90px; }
.office-tasks-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; margin-bottom:14px; }
.office-tasks-head h3 { font-size:17px; color:#153c2c; }
.office-tasks-head p, .office-tasks-note { margin:5px 0 0; font-size:12px; color:#64748b; line-height:1.5; }
#office-reminders-status { flex:none; font-size:12px; font-weight:600; padding:6px 10px; border-radius:20px; background:#e6f5ed; color:#007747; }
#office-tasks-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.office-task { padding:15px; border:1px solid #e2e8f0; border-radius:14px; min-width:0; }
.office-task-due { background:#fffaf0; border-color:#fed7aa; }
.office-task-done { background:#f0fdf4; border-color:#bbf7d0; }
.office-task-top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.office-task-top > strong { font-size:14px; color:#153c2c; }
.office-task-badge { flex:none; padding:3px 7px; border-radius:20px; background:#e2e8f0; font-size:11px; font-weight:700; }
.office-task-due .office-task-badge { color:#9a3412; background:#ffedd5; }
.office-task-done .office-task-badge { color:#166534; background:#dcfce7; }
.office-task p { margin:8px 0; color:#526174; font-size:13px; overflow-wrap:anywhere; }
.office-task small { display:block; margin:5px 0; color:#64748b; font-size:12px; }
.office-task-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.office-reminder-error { color:#b45309 !important; font-size:12px; }
.office-lawyer-dialog { width:min(760px,calc(100vw - 32px)); max-height:85dvh; margin:auto; padding:24px; border:1px solid #dce7e1; border-radius:22px; overflow-y:auto; color:#153c2c; }
.office-lawyer-dialog::backdrop { background:#153c2c66; }
.office-preview-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.office-preview-head h2 { font-size:21px; }
.office-lawyer-dialog p { margin:12px 0; }
#office-lawyer-preview h3 { margin:16px 0 8px; font-size:16px; }
.office-preview-case { display:flex; flex-direction:column; gap:6px; padding:14px; margin:10px 0; background:#f8fafc; border:1px solid #e2e8f0; border-radius:13px; overflow-wrap:anywhere; font-size:13px; }
.office-preview-case > .btn { align-self:flex-start; }
.office-case-choice { display:flex; align-items:center; gap:10px; min-height:44px; cursor:pointer; font-weight:600; }
.office-case-choice input { width:20px; height:20px; flex:none; accent-color:#007747; }
.office-case-excluded { background:#fff; border-style:dashed; color:#64748b; }
.office-selection-actions { display:flex; flex-wrap:wrap; gap:8px; }
#office-lawyer-progress { font-size:13px; line-height:1.6; }
@media(max-width:768px) {
  .office-tasks-panel { padding:16px; }
  .office-tasks-head { flex-direction:column; }
  #office-tasks-list { grid-template-columns:1fr; }
  .office-task-actions .btn { flex:1 1 140px; }
  .office-lawyer-dialog { padding:18px; }
  .office-preview-head { flex-direction:column-reverse; }
  .office-preview-head .btn { align-self:flex-end; }
  #office-lawyer-create { width:100%; }
}
