/* AgriFlow — Campo (ADR 0083, proposed). Mobile primeiro; reusa dc-chip,
   dc-estado, dc-escopo e dc-sel do Dashboard. Cards com três ações de 44 px,
   mapa com altura controlada e legenda fora do mapa (nunca por cima). */

[hidden]{display:none!important}

.cp-vistas-wrap{margin:0 0 10px}
.cp-vistas .dc-chip{flex:1 1 0;justify-content:center;display:inline-flex;align-items:center}
@media (min-width:768px){.cp-vistas .dc-chip{flex:0 0 auto;min-width:120px}}

.cp-aviso{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#FFFBEB;color:#92400E;font:600 12.5px/1.4 'Inter',sans-serif}
.cp-aviso a{color:#163832;font-weight:700;text-decoration:none}

.cp-lista{display:flex;flex-direction:column;gap:10px}
.cp-lista>.dc-vazio{grid-column:1/-1;margin:0}
.cp-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid rgba(22,56,50,.10);box-shadow:0 1px 4px rgba(22,56,50,.05);min-width:0}
.cp-card-topo{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 10px;align-items:baseline}
.cp-card-nome{font:800 15px/1.25 'Inter',sans-serif;color:#1C2B27;overflow-wrap:anywhere}
.cp-tipo{font:600 11px/1 'Inter',sans-serif;color:#6B7280;text-transform:uppercase;letter-spacing:.06em;margin-left:4px}
.cp-dist{font:700 12px/1.2 'Inter',sans-serif;color:#163832;background:rgba(22,56,50,.07);border-radius:999px;padding:4px 10px;white-space:nowrap}
.cp-card-lugar{font:500 12px/1.3 'Inter',sans-serif;color:#6B7280}
.cp-card-ctx{display:flex;flex-wrap:wrap;gap:4px 12px;font:500 12px/1.4 'Inter',sans-serif;color:#4B5563}
.cp-acoes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px}
.cp-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border-radius:10px;border:1px solid rgba(22,56,50,.18);background:#fff;color:#163832;font:700 13px/1 'Inter',sans-serif;text-decoration:none;cursor:pointer;touch-action:manipulation;white-space:nowrap}
.cp-btn:hover{border-color:#163832}
.cp-btn-primario{background:#163832;border-color:#163832;color:#fff}
.cp-btn:focus-visible{outline:2px solid #C8A227;outline-offset:2px}

/* Mapa: ≤ 45 vh no celular; legenda e resumo ficam FORA do mapa, acima dele. */
.cp-mapa-legenda{margin:0 0 10px;font:500 12.5px/1.4 'Inter',sans-serif;color:#4B5563;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.cp-legenda{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 12px}
.cp-legenda li{display:inline-flex;align-items:center;gap:5px;font:600 11.5px/1 'Inter',sans-serif;color:#1C2B27}
.cp-legenda-dot{width:10px;height:10px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.cp-mapa-area{width:100%;height:45vh;min-height:220px;max-height:420px;border-radius:12px;overflow:hidden;border:1px solid rgba(22,56,50,.12);margin-bottom:12px;background:#E5E7EB}
.leaflet-container a{color:#163832;font-weight:700}
.leaflet-popup-content{font:500 12.5px/1.4 'Inter',sans-serif}
.leaflet-popup-content div{margin:4px 0}

.cp-ajuda{margin:6px 0}
.cp-ajuda summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}
.dc-estado-gps{flex-direction:column;align-items:flex-start}

@media (min-width:1024px){
  .cp-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .cp-mapa-area{height:420px}
  #cpMapaLista.cp-lista{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ── Minha rota (ADR 0085) ─────────────────────────────────────── */
.rt-cab{margin:4px 0 10px}
.rt-cab-linha{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.rt-titulo{margin:0;font:800 18px/1.2 'Inter',sans-serif;color:#163832}
.rt-dias{display:inline-flex;align-items:center;gap:6px}
.rt-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid rgba(22,56,50,.18);background:#fff;color:#163832;font:700 16px/1 'Inter',sans-serif;cursor:pointer}
.rt-data{font:700 14px/1 'Inter',sans-serif;color:#163832;min-width:60px;text-align:center}
.rt-resumo{margin:6px 0 0;font:500 13px/1.4 'Inter',sans-serif;color:#4B5563}
.rt-ordem{flex:0 0 auto;width:28px;height:28px;border-radius:999px;background:#163832;color:#fff;font:800 13px/28px 'Inter',sans-serif;text-align:center}
.rt-estado{font:700 11px/1 'Inter',sans-serif;text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:5px 9px;background:#F3F4F6;color:#374151;white-space:nowrap}
.rt-estado-em_execucao{background:#FEF3C7;color:#92400E}
.rt-estado-realizada{background:#DCFCE7;color:#166534}
.rt-estado-nao_realizada{background:#FEE2E2;color:#991B1B}
.rt-ordem-acoes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:8px}
.rt-aviso{background:#FFFBEB;border:1px solid #FDE68A;border-radius:12px;padding:10px 12px;margin:0 0 10px;font:500 13px/1.4 'Inter',sans-serif;color:#78350F;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.rt-aviso-conflito{background:#FEF2F2;border-color:#FECACA;color:#991B1B}
.cp-na-rota{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font:700 12px/1 'Inter',sans-serif;color:#166534;background:#DCFCE7;border-radius:10px;padding:0 10px}
.dc-estado[data-estado="sem_rota"] .cp-btn{margin-top:10px}
