/* DEV118: one visual language; shape and accessible explanations accompany colour. */
.task-status-row{display:flex;align-items:flex-start;gap:8px;min-width:0}
.task-status-row>.task.task-link{flex:1;min-width:0;grid-template-columns:minmax(0,1fr) auto;padding-left:0}
.task-state-icons{display:flex;flex-direction:column;gap:4px;flex:none;padding-top:13px}
.task-state-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;min-height:28px;padding:4px;border:1px solid currentColor;border-radius:8px;background:transparent}
.task-state-icon svg{width:19px;height:19px}
.task-state-icon:focus-visible{outline:3px solid #174f92;outline-offset:3px}
.state-ready,.state-completed{color:#245d43}
.state-prepare{color:#865709}
.state-waiting{color:#a85412}
.state-forecast,.state-cancelled{color:#616c6b}
.state-plan{color:#245c92}
.state-missing,.state-overdue{color:#b02727}
.state-explanation{display:flex;align-items:flex-start;gap:10px;line-height:1.5}
.state-explanation>svg{width:24px;height:24px;flex:none;margin-top:3px}
.state-explanation span span{color:var(--ink,#193a35)}
.calendar-summary .task-copy>.metadata{font-size:14px;color:#536c68}
.calendar-state-marks{position:absolute;bottom:3px;display:flex;gap:2px;justify-content:center;left:0;right:0;pointer-events:none}
.calendar-state-marks svg{width:12px;height:12px;display:block;stroke-width:2.5}
.day:has(.calendar-state-marks) .dot{display:none}
.day.selected .calendar-state-marks span{background:#fff;border-radius:3px;padding:1px}
.status-legend-item{display:inline-flex;align-items:center;gap:4px;margin-right:10px;margin-bottom:5px}
.status-legend-item>svg{width:16px;height:16px;flex:none}
.planning-legend{display:flex;flex-wrap:wrap;gap:3px;font-size:13px}
.forecast-notice{color:#616c6b;background:#eef1ef;border-color:#d4dbd7}
