/* Task-specific layout. Shared theme tokens retain light/dark contrast. */
.task-detail { display:block; }
.task-detail .detail-main { min-width:0; }
.task-detail .task-title-row { align-items:center; gap:16px; }
.task-detail .task-title-row h1 { min-width:0; flex:1; overflow-wrap:anywhere; }
.task-delete { flex:none; color:var(--t2); white-space:nowrap; }
.task-delete:hover { color:var(--late); }
.task-properties { display:grid; grid-template-columns:minmax(110px,.8fr) minmax(85px,.65fr) minmax(130px,1fr) minmax(105px,.8fr) minmax(145px,1.2fr); gap:12px 12px; padding:14px 0 18px; margin-bottom:22px; border-bottom:1px solid var(--h1); }
.task-properties .prop { display:grid; grid-template-columns:minmax(0,1fr); gap:5px; align-content:start; padding:0; border:0; min-width:0; }
.task-properties .prop > .glyph { display:none; }
.task-properties .prop > .k { font-size:11px; color:var(--t2); }
.task-properties .prop > .v { min-width:0; }
.task-properties select { min-height:34px; padding:5px 26px 5px 0; }
.task-properties .propdatewrap { min-height:34px; }
.task-properties .assignment-help { grid-column:1/-1; margin:0; }
.task-detail .subtask-row { display:grid; grid-template-columns:minmax(170px,1fr) minmax(120px,160px) minmax(115px,145px) 128px; gap:12px; align-items:center; padding-top:10px; padding-bottom:10px; }
.task-detail .subtask-open { min-width:0; }
.task-detail .subtask-open .ttl { white-space:normal; overflow-wrap:anywhere; }
.task-detail .subtask-meta { display:contents; }
.task-detail .subtask-assignment { width:auto; min-width:0; }
.task-detail .subtask-assignment .selwrap { width:100%; }
.task-detail .subtask-assignment select { min-height:36px; width:100%; padding-right:22px; text-overflow:ellipsis; }
.task-detail .subtask-status { min-width:0; }
.task-detail .subtask-status select { min-height:36px; width:100%; padding:5px 22px 5px 0; text-overflow:ellipsis; }
.task-detail .subtask-due { position:relative; display:flex; align-items:center; min-width:0; min-height:36px; gap:5px; }
.task-detail .subtask-due input { width:100%; min-width:0; min-height:36px; padding:3px 0; border:0; background:transparent; color:var(--t1); font:inherit; font-size:12px; }
.task-detail .subtask-due input:focus-visible { outline:2px solid var(--accent); outline-offset:2px; border-radius:3px; }
.task-detail .subtask-row.saving { opacity:.68; }
.task-checklist-history { margin:24px 0; }
.task-checklist-history > summary { cursor:pointer; font-size:13px; color:var(--t2); padding:10px 0; }
.task-checklist-history > summary:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.task-checklist-history .sec { margin-top:8px; }
@media(max-width:980px) {
  .task-properties { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 18px; }
  .task-detail .subtask-row { grid-template-columns:minmax(130px,1fr) minmax(108px,135px) minmax(104px,128px) 116px; gap:8px; }
}
@media(max-width:760px) {
  .task-detail .task-title-row { gap:8px; }
  .task-delete { padding:8px; min-width:44px; min-height:44px; }
  .task-delete .delete-label { display:none; }
  .task-properties { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 18px; padding-top:10px; }
  .task-properties .prop:last-child { grid-column:1/-1; }
  .task-properties select,.task-properties .propdatewrap { min-height:44px; }
  .task-detail .subtask-row { grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(100px,1fr); gap:4px 8px; }
  .task-detail .subtask-open { grid-column:1/-1; padding-bottom:3px; }
  .task-detail .subtask-assignment select,.task-detail .subtask-status select,.task-detail .subtask-due,.task-detail .subtask-due input { min-height:44px; font-size:12px; }
}

/* Personal check-in leads; agency context remains secondary. */
.workspace-sections { margin-bottom:18px; }
.daily-layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr); gap:28px; align-items:start; }
.daily-layout > section { min-width:0; }
.daily-layout .sec:first-child { margin-top:0; min-height:34px; }
.daily-layout .sec { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.daily-task.row { grid-template-columns:minmax(0,1fr) auto; text-decoration:none; color:var(--t1); gap:12px; }
.daily-task .rt { display:flex; gap:8px; align-items:center; font-size:12px; }
.daily-task .ttl,.daily-task .sub { overflow-wrap:anywhere; }
.daily-carried { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:16px; color:var(--t2); }
.daily-note-fields { display:grid; gap:24px; padding:24px; }
.daily-note-fields .fld { display:grid; gap:8px; margin:0; }
.daily-note-fields label { color:var(--t1); font-size:14px; font-weight:500; line-height:1.5; }
.daily-note-fields input { min-height:44px; }
.daily-note-fields textarea { min-height:168px; line-height:1.6; resize:vertical; }
.daily-save-row { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.daily-save-row .btn { flex-shrink:0; min-height:40px; }
.daily-scope { margin:-4px 0 20px; color:var(--t2); font-size:12px; }
.daily-work-heading { display:flex; justify-content:space-between; align-items:baseline; flex-wrap:wrap; gap:6px 12px; margin:20px 0 10px; }
.daily-work-heading h3 { margin:0; font-size:13px; font-weight:600; }
.daily-work-heading > span { color:var(--t2); font-size:12px; }
.daily-view-all { margin-top:12px; width:fit-content; }
#daySaveStatus { font-size:12px; color:var(--t2); }
@media(max-width:1050px) { .daily-layout { grid-template-columns:minmax(0,1fr); gap:32px; } }
@media(max-width:520px) {
 .daily-note-fields { padding:18px; gap:24px; }
 .daily-save-row .btn { min-height:44px; }
 .daily-task.row { gap:8px; }
 .daily-task .rt { font-size:11px; }
}

.demo-label { margin-left:auto; margin-right:4px; border:1px solid var(--h2); border-radius:4px; padding:2px 5px; font-size:10px; color:var(--t2); font-weight:500; }

/* Recurring groups share the same section and panel hierarchy as Tasks. */
.schedule-group { margin:24px 0; }
.schedule-group > .sec { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 10px; }
.schedule-group > .sec h2 { font-size:15px; color:var(--t1); }
.schedule-group > .sec .n { font-size:12px; color:var(--t2); }
.schedule-group[data-period="due"] > .panel { border-left:3px solid var(--late); }
.schedule-group .ibx:first-child { border-top:0; }
.recurring-history { border-top:1px solid var(--h2); padding-top:24px; margin-top:32px; }
.recurring-history > .sec { margin-top:0; }
.recurring-history .chips { margin:12px 0; }
