/* Planner-specific composition; modal shell, buttons and focus come from RRB. */
.planning-conflict-content { overflow-wrap: anywhere; }
.planning-conflict-content > .banner { margin: 0 0 var(--sp-lg); }
.planning-conflict-group + .planning-conflict-group,
.planning-conflict-coverage { margin-top: var(--sp-lg); }
.planning-conflict-group h3,
.planning-conflict-coverage h3 { margin: 0 0 var(--sp-sm); font-size: var(--fs-lg); }
.planning-conflict-list { margin: 0; padding: 0; list-style: none; }
.planning-conflict-item { display: flex; flex-direction: column; gap: var(--sp-xs); padding-block: var(--sp-md); border-top: 1px solid var(--border); }
.planning-conflict-actions { display: flex; flex-wrap: wrap; gap: var(--sp-sm); }
.planning-conflict-adjust { display: flex; flex-wrap: wrap; align-items: end; gap: var(--sp-md); }
.planning-conflict-adjust .form-group { flex: 1 1 200px; min-width: 0; }
.planning-conflict-adjust .form-input { width: 100%; min-width: 0; }
.planning-conflict-modal > .rrb-modal__footer { flex-direction: row; flex-wrap: wrap; padding-bottom: max(var(--sp-md), env(safe-area-inset-bottom)); }
.planning-conflict-modal > .rrb-modal__footer > .btn { flex: 1 1 220px; width: auto; }
.planning-conflict-modal .btn,
.planning-conflict-modal .rrb-modal__close { min-height: 44px; min-width: 44px; }
.planning-conflict-modal .rrb-modal__header { grid-template-columns: minmax(0, 1fr) 44px; }
.planning-conflict-content [data-rrb-error-details],
#planning-view [data-rrb-error-details] { height: auto; min-height: 44px; white-space: normal; text-align: left; }
.planning-conflict-modal .planning-conflict-item { padding: 0; border: 0; margin-bottom: var(--sp-md); }
.planning-conflict-appointment { padding: var(--sp-md); border: 1px solid var(--warning-border); border-radius: var(--r-card); }
.planning-conflict-appointment h4 { margin: var(--sp-sm) 0 var(--sp-xs); font-size: var(--fs-lg); }
.planning-conflict-appointment p { margin: var(--sp-xs) 0; }
.planning-conflict-heading { display: flex; align-items: center; flex-wrap: wrap; gap: var(--sp-sm); }
.planning-conflict-time { font-weight: 600; font-variant-numeric: tabular-nums; }
.planning-conflict-meta { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: var(--sp-sm); margin: var(--sp-md) 0; }
.planning-conflict-meta dt { color: var(--text-muted); }
.planning-conflict-meta dd { margin: 0; min-width: 0; }
.planning-conflict-people { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-xs) var(--sp-sm); }
.planning-conflict-people .badge { white-space: normal; }
.planning-conflict-meta .planning-conflict-people > span + span::before { content: '· '; color: var(--text-muted); }
.planning-conflict-proposed { background: var(--surface-muted); border-color: var(--border); }
.planning-conflict-description { white-space: pre-wrap; overflow-wrap: anywhere; }
