/* Planning uses the same priority and status meanings as the native app.
   Technician colors remain small identity markers, never card backgrounds. */
.planning-presentation{--planning-urgent-ink:#b01f33;--planning-urgent-fill:#ffedf0;--planning-blue:#007aff;--planning-green:#34c759;--planning-orange:#ff9500}
.planning-presentation [data-tech-tone=blue]{--tech-accent:#007aff}
.planning-presentation [data-tech-tone=green]{--tech-accent:#34c759}
.planning-presentation [data-tech-tone=purple]{--tech-accent:#af52de}
.planning-presentation [data-tech-tone=amber]{--tech-accent:#ff9500}
.planning-presentation [data-tech-tone=teal]{--tech-accent:#30b0c7}
.planning-presentation [data-tech-tone=unassigned]{--tech-accent:#8e8e93}
.planning-presentation .cal-head[data-tech-tone]{background:#f8fafd;color:var(--text)}
.planning-presentation .calendar-legend{font-size:11px}
.planning-presentation .cal-job[data-tech-tone]{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;background:var(--panel,#fff);border-color:var(--line);border-left:3px solid var(--planning-blue);box-shadow:0 1px 3px #2030470a;padding:4px 6px}
.planning-presentation .cal-job>*{flex-shrink:0}
.planning-presentation .cal-job[data-plan-priority=urgent],.planning-presentation .intervention-cards>.job-card.urgent{background:var(--planning-urgent-fill);border-color:#b01f334d;border-left:4px solid var(--planning-urgent-ink)}
.planning-presentation .cal-job strong{font-weight:650;line-height:1.35;margin-top:3px}
.planning-presentation .cal-job .planning-flags,.planning-presentation .planning-flags{display:flex;align-items:center;gap:4px;flex-wrap:wrap;opacity:1;line-height:1.3}
.planning-presentation .planning-flags .planning-status,.planning-presentation .planning-flags .planning-urgent{display:inline-flex;align-items:center;gap:3px;opacity:1;border-radius:5px;padding:3px 5px;font-size:10px;font-weight:600;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.planning-presentation .planning-flags .planning-urgent{background:#b01f331a;color:var(--planning-urgent-ink);font-weight:750}
.planning-presentation .planning-flags .planning-urgent>span{display:inline;opacity:1}
.planning-presentation .planning-status{color:var(--text);background:#dbecff}
.planning-presentation .planning-status[data-tone=green]{background:#e3f7e8}
.planning-presentation .planning-status[data-tone=orange]{background:#fff0db}
.planning-presentation .planning-team{display:flex;align-items:center;gap:5px;opacity:1;margin-top:3px}
.planning-presentation .planning-team>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:1}
.planning-presentation .planning-team .tech-dot{flex:0 0 7px;width:7px;height:7px}
.planning-presentation .cal-job[data-plan-density=compact]{padding:1px 4px}
.planning-presentation .cal-job[data-plan-density=compact] .planning-flags{flex-wrap:nowrap;max-width:100%;overflow:hidden}
.planning-presentation .cal-job[data-plan-density=compact] .planning-flags>span{padding:0 3px;font-size:9px;line-height:12px;flex-shrink:1}
.planning-presentation .cal-job[data-plan-density=compact] strong{margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:12px}
.planning-presentation .field-presence-en_route:not(.field-presence-stale)>i{background:var(--planning-orange)}
.planning-presentation .field-presence-on_site:not(.field-presence-stale)>i{background:var(--planning-green)}
.planning-presentation .field-presence-paused:not(.field-presence-stale)>i{background:var(--planning-blue)}
.planning-presentation .intervention-strip{background:transparent;color:var(--text);border-bottom:1px solid #1e304812}
.planning-presentation .intervention-strip .planning-flags{flex:1}
.planning-presentation .intervention-strip .planning-flags>span{font-size:12px;padding:4px 7px}
.planning-presentation .intervention-avatar{background:transparent;border:2px solid var(--tech-accent);color:var(--text)}
