.task-editor { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; }
.task-editor > .card { margin: 0; min-width: 0; }
.task-editor .row-main, .task-delivery-form .row-main { overflow-wrap: anywhere; min-width: 0; }
.task-editor > .form-error { grid-column: 1 / -1; margin: 0; }
.task-editor > button { justify-self: start; }
.person-picker > label.hint { display: block; margin-top: .35rem; }
@media (min-width: 1000px) { .task-editor { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; } }
.task-workspace:not(.has-detail) { display: block; }
.task-workspace:not(.has-detail) > .split-detail { display: none; }
.task-workspace > .split-list { min-width: 0; }
.approval-workspace:not(.has-detail) { display:block;max-width:1080px;margin-inline:auto; }
.approval-workspace:not(.has-detail) > .split-detail { display:none; }
.task-workspace.has-detail,.approval-workspace.has-detail { grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:28px; }
.task-workspace > .split-detail,.approval-workspace > .split-detail { position:static;min-width:0; }
.task-detail,.approval-detail { min-width:0; }
.task-context-head { display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:20px; }
.task-context-head h2 { font-size:20px;margin:0; }
.task-workspace.has-detail .task-grouped .list { display:block; }
.task-detail .prose,.approval-detail .prose { font-size:calc(15px * var(--type-scale,1));line-height:1.8; }
.task-detail .detail-title,.approval-detail .detail-title { font-size:calc(clamp(23px,2.3vw,30px) * var(--type-scale,1));line-height:1.4;font-weight:650; }
.task-summary { margin:14px 0 0;padding:16px 0;border-block:1px solid var(--outline-var); }
.task-summary dd { font-weight:550; }
.task-next-actions { display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 24px; }
.task-next-actions > .primary { margin-left:auto; }
.task-deliveries,.approval-detail :is(#approval-content,#approval-chain,#approval-decision) { scroll-margin-block:calc(var(--bar-h) + 24px) 100px; }
.task-deliveries > .list > .row { align-items:stretch; }
.task-deliveries .row-main { min-width:0;width:100%; }
.task-deliveries :is(.row-sub,.prose,.opinion) { overflow-wrap:anywhere; }
.review-context { border-block:1px solid var(--outline-var);padding:16px 0;margin-bottom:24px; }
.review-context > p { margin:0 0 10px; }
.review-metadata { display:flex;flex-wrap:wrap;gap:8px 20px;font-size:calc(13px * var(--type-scale,1));color:var(--on-var); }
.review-outline { display:flex;flex-wrap:wrap;gap:4px;margin:8px 0 -6px; }
.approval-detail .decision-bar { position:static;box-shadow:none;background:var(--sc-low);border:1px solid var(--outline-var); }
.approval-detail .content .block + .block { margin-top:24px; }
.approval-detail .content .sub { font-size:calc(16px * var(--type-scale,1));line-height:1.5; }
.approval-detail .content .prose { line-height:1.85; }
.approval-detail .inline { flex-wrap:wrap; }
.approval-detail .inline select { width:auto;max-width:100%; }
@media(max-width:1099px) {
  .task-workspace.has-detail,.approval-workspace.has-detail { grid-template-columns:minmax(0,1fr); }
  :is(.task-workspace,.approval-workspace).has-detail > .split-list { display:none; }
}
@media(max-width:599px) {
  .task-next-actions { gap:8px; }
  .task-next-actions > .btn { min-height:44px; }
  .task-detail .facts { grid-template-columns:80px minmax(0,1fr);gap:10px; }
  .review-outline .btn { padding-inline:10px; }
}
.task-filter-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-block: 12px 20px; }
.task-view-picker { display: flex; align-items: center; gap: 8px; margin-left: auto; font-size: 13px; color: var(--on-var); }
.task-view-picker select { width: auto; min-width: 96px; }
.task-view-meta[hidden], .task-batch[hidden] { display: none; }
.task-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); gap: 8px 16px; margin-top: 12px; }
.task-filters .field { margin-bottom: 8px; }
.task-filters .actions { grid-column: 1 / -1; }
.task-view-meta, .task-batch { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 12px; }
.task-batch { padding: 12px; border-radius: var(--r-card); background: var(--accent-container); color: var(--on-accent-container); }
.task-view-meta .check { display: inline-flex; align-items: center; gap: 8px; }
.task-view-meta input, .task-grid input, .task-card-head input { width: 20px; height: 20px; min-height: 20px; flex: none; accent-color: var(--brand); }
.task-grid { min-width: 640px; }
.task-grid .row-title { font-size: 14px; overflow-wrap: anywhere; }
.task-grid td { vertical-align: middle; }
.task-board { display: flex; align-items: flex-start; gap: 16px; overflow-x: auto; padding: 4px 2px 16px; scroll-snap-type: x proximity; }
.task-lane { flex: 0 0 min(280px, 86vw); min-width: 0; padding: 12px; border-radius: var(--r-card-large); background: var(--sc-low); scroll-snap-align: start; }
.task-lane h2, .task-group h2 { display: flex; align-items: center; gap: 10px; font-size: 16px; line-height: 24px; margin-bottom: 12px; }
.task-group { margin-bottom: 24px; }
.task-view-card { list-style: none; border-radius: var(--r-card); background: var(--surface); border: 1px solid var(--outline-var); padding: 14px 16px; margin-bottom: 10px; overflow-wrap: anywhere; }
.task-view-card.selected, .task-grid tr.selected { outline: 2px solid var(--accent); outline-offset: -2px; }
.task-view-card .row-title { font-size: 16px; line-height: 24px; font-weight: 500; }
.task-card-head { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; }
.task-timeline { border-left: 2px solid var(--outline-var); padding-left: 20px; margin-left: 8px; }
.task-timeline .task-group > h2 { position: relative; }
.task-timeline .task-group > h2::before { content: ''; position: absolute; left: -27px; width: 12px; height: 12px; border: 2px solid var(--surface); border-radius: 50%; background: var(--accent); }
@media (min-width: 1100px) { .task-grouped .list { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 12px; } }
