/* Un solo calendario: etiquetas fijas y tres pistas compactas por potrero. */
#manager .application-timeline-viewport { max-width:100%; overflow:auto; max-height:76vh; border:1px solid #d5e3dc; border-radius:8px; }
#manager .application-timeline { min-width:var(--timeline-min); width:100%; gap:0; }
#manager .application-timeline .gantt-period-detail { display:grid; grid-template-columns:126px minmax(0,1fr) !important; min-width:0; padding:0; gap:0; }
#manager .application-timeline .gantt-period-calendar { min-width:0; }
#manager .application-timeline :is(.gantt-day-grid,.gantt-period-months) { display:grid; grid-template-columns:repeat(var(--days), minmax(0,1fr)); min-width:0; gap:0; }
#manager .application-timeline .gantt-month-header { position:sticky; top:0; z-index:8; background:#eef5f0; }
#manager .application-timeline .gantt-month-header > span { align-content:center; font-size:11px; }
#manager .application-timeline .gantt-month-header b { min-height:22px; font-size:10px; padding:0; }
#manager .application-timeline .gantt-period-months strong { text-align:center; font-size:11px; padding:3px; border-left:2px solid #719c89; }
#manager .application-timeline .gantt-row > span:first-child { position:sticky; left:0; z-index:4; background:#f7faf8; margin:0; padding:4px 6px; min-width:0; font-size:10px; white-space:normal; }
#manager .application-timeline .gantt-month-header > span:first-child { z-index:9; background:#eef5f0; }
#manager .application-timeline-row { border-bottom:1px solid #e3ebe6; }
#manager .application-timeline .gantt-day-track { display:grid; grid-template-rows:repeat(var(--rows),24px); grid-auto-rows:24px; min-height:26px; padding:1px 0; align-items:center; gap:2px 0; }
#manager .application-timeline .gantt-day-track i.active { min-width:0; min-height:22px; height:22px; margin:0 1px; padding:1px 3px; border-width:1px; border-radius:4px; }
#manager .application-timeline .gantt-day-track i.active > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; line-height:17px; }
#manager .application-timeline .gantt-day-track i.active > span { display:flex; align-items:baseline; gap:5px; }
#manager .application-timeline .gantt-fito-number { font-size:13px; font-weight:850; color:inherit; flex:0 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; }
#manager .application-timeline .gantt-order-number { font-size:9px; font-weight:500; color:inherit; flex:0 2 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; }
#manager .application-timeline .gantt-order-only { font-size:10px; overflow:hidden; text-overflow:ellipsis; }
/* Número de orden legible en blanco sobre barras de cualquier estado. */
#manager .application-timeline .gantt-day-track i.active .gantt-order-number,
#manager .application-timeline .gantt-day-track i.active .gantt-order-only {
  color:#fff !important;
  font-weight:750;
  text-shadow:0 1px 2px rgba(0,0,0,.85), 0 0 3px rgba(0,0,0,.65);
}
#manager .application-timeline .gantt-day-track i.active { container-type:inline-size; container-name:gantt-order; }
#manager .application-timeline .gantt-fito-number { display:flex; gap:3px; }
#manager .application-timeline .gantt-fito-code { white-space:nowrap; }
@container gantt-order (max-width: 95px) {
  #manager .application-timeline .gantt-order-number,
  #manager .application-timeline .gantt-fito-prefix { display:none; }
  #manager .application-timeline .gantt-fito-number { flex:1; justify-content:center; overflow:visible; }
}
@container gantt-order (max-width: 22px) {
  #manager .application-timeline .gantt-fito-number { font-size:11px; }
}
#manager .application-timeline .gantt-calendar-band { height:100%; z-index:0; pointer-events:none; }
#manager .application-timeline-group { padding:3px 7px; background:#e8f0ea; display:flex; align-items:center; gap:8px; border-top:3px solid #111; font-size:12px; }
#manager .application-timeline-group strong { position:sticky; left:7px; background:#e8f0ea; }
#manager .application-timeline-group small { position:sticky; left:112px; font-size:10px; color:#42614e; }
#manager .application-context-bar { background:var(--context-color); border:1px solid #647a65; color:var(--context-ink,#182d21); border-radius:3px; height:21px; min-width:0; margin:0 1px; padding:0 3px; z-index:2; text-align:left; cursor:pointer; overflow:hidden; }
#manager .application-context-bar span { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:10px; line-height:18px; text-shadow:none; }
#manager .application-context-bar:focus-visible { outline:3px solid #2669b5; z-index:5; }
#manager .application-timeline-empty { color:#849489; font-size:10px; padding-left:5px; z-index:1; pointer-events:none; }
#manager .is-phenology .application-timeline-label { box-shadow:inset 3px 0 #68a550; }
#manager .is-pests .application-timeline-label { box-shadow:inset 3px 0 #d69c3d; }
#manager .application-timeline-status { display:flex; justify-content:space-between; align-items:center; gap:8px; font-size:11px; color:#66501a; margin:3px 0; }
#manager .application-timeline-status button { min-height:28px; padding:3px 8px; font-size:11px; }
#manager .application-timeline-status:empty { display:none; }
.application-context-dialog { max-width:min(420px,90vw); border:1px solid #9ebba8; border-radius:12px; box-shadow:0 12px 40px #16392444; }
.application-context-dialog p { white-space:pre-line; line-height:1.6; font-size:14px; }
.application-context-dialog::backdrop { background:#12271b55; }
@media(max-width:600px) { #manager .application-timeline .gantt-period-detail { grid-template-columns:105px minmax(0,1fr) !important; } #manager .application-timeline-viewport { max-height:72vh; } }

/* Seguimiento sugerido: nunca se confunde con monitoreo efectivo de plagas. */
#manager .is-monitoring .application-timeline-label{box-shadow:inset 3px 0 #d28a12;}
#manager .application-monitoring-help{font-size:10px;color:#79551c;margin:2px 0 4px;padding:3px 7px;line-height:1.2;}
#manager .application-monitoring-due{z-index:4;position:relative;display:flex;align-items:center;
  justify-content:center;box-sizing:border-box;height:21px;width:max-content;min-width:19px;
  max-width:90px;margin:0;border:2px solid #d48a12;border-radius:5px;
  background:#fff8df;color:#704812;font-size:9.5px;font-weight:750;white-space:nowrap;
  padding:1px 4px;box-shadow:0 0 0 1px #fff6dd;cursor:pointer;}
#manager .application-monitoring-due span{display:block;line-height:16px;overflow:hidden;text-overflow:ellipsis;}
#manager .application-monitoring-frame{z-index:1;grid-row:1;align-self:center;height:21px;min-width:0;width:100%;box-sizing:border-box;border:2px dashed #d48a12;border-radius:3px;background:transparent;padding:0;cursor:pointer;}
#manager .application-monitoring-due{width:max-content;min-width:24px;max-width:none;overflow:visible;padding:0 2px;font-size:10px;}
#manager .application-monitoring-frame:focus-visible{outline:2px solid #4c789d;outline-offset:1px;}
#manager .application-monitoring-due:hover,#manager .application-monitoring-due:focus-visible{
  background:#ffedd0;border-color:#9c5d07;z-index:7;outline:2px solid #4c789d;outline-offset:1px;}
#manager .is-monitoring .application-timeline-empty{font-style:italic;}
@media(max-width:600px){
  #manager .application-monitoring-due{max-width:64px;font-size:8px;padding:1px 2px;}
  #manager .application-monitoring-help{font-size:9px;}
}
