/* DMI Agenda & Integrations — time-sensitive work with calm, explicit states. */
#page-agenda { --agenda-line: var(--dmi-border); }
#page-agenda .crm-task-head { margin-bottom: var(--dmi-space-5) !important; }
#page-agenda .page-title { color: var(--dmi-primary) !important; letter-spacing: -.035em; }
#page-agenda .crm-task-sub { color: var(--dmi-text-secondary) !important; }
#page-agenda .count { background: var(--dmi-primary-soft) !important; color: var(--dmi-primary) !important; border-radius: var(--dmi-radius-pill) !important; }
#page-agenda .crm-task-cockpit { gap: var(--dmi-space-3) !important; margin-bottom: var(--dmi-space-4) !important; }
#page-agenda .crm-task-kpi { border-color: var(--agenda-line) !important; border-radius: var(--dmi-radius-md) !important; box-shadow: var(--dmi-shadow-xs) !important; }
#page-agenda .crm-task-kpi-icon { background: var(--dmi-primary-soft) !important; }
#page-agenda .crm-task-kpi strong { color: var(--dmi-primary) !important; font-variant-numeric: tabular-nums; }
#page-agenda .crm-task-kpi > span:last-child, #page-agenda .crm-task-sub { color: var(--dmi-text-secondary) !important; }
#page-agenda .crm-task-kpi.danger { border-top-color: var(--dmi-error) !important; }
#page-agenda .crm-task-kpi.today { border-top-color: var(--dmi-info) !important; }
#page-agenda .crm-task-kpi.success { border-top-color: var(--dmi-success) !important; }
#page-agenda .crm-task-filters { gap: 8px !important; margin-bottom: var(--dmi-space-4) !important; }
#page-agenda .crm-task-chip { border-color: var(--agenda-line) !important; color: var(--dmi-text-secondary) !important; }
#page-agenda .crm-task-chip.active { background: var(--dmi-primary) !important; border-color: var(--dmi-primary) !important; box-shadow: none !important; }
#page-agenda #agenda30List { gap: var(--dmi-space-3) !important; }
#page-agenda .urgente-card { border-color: var(--agenda-line) !important; border-radius: var(--dmi-radius-md) !important; box-shadow: var(--dmi-shadow-xs) !important; }
#page-agenda .urgente-card:hover { box-shadow: var(--dmi-shadow-sm) !important; }
#page-agenda .urgente-header { padding: var(--dmi-space-4) !important; }
#page-agenda .urgente-name { color: var(--dmi-text) !important; font-weight: 750; }
#page-agenda .urgente-meta { color: var(--dmi-text-secondary) !important; }
#page-agenda .urgente-footer { padding: 10px var(--dmi-space-4) !important; border-color: var(--agenda-line) !important; background: #fbfcfe; }
#page-agenda .lead-foot-btn { min-height: 36px; border-color: var(--dmi-border); border-radius: var(--dmi-radius-sm); color: var(--dmi-text-secondary); font-weight: 650; }
#page-agenda .lead-foot-btn:hover { border-color: var(--dmi-primary); color: var(--dmi-primary); background: var(--dmi-primary-soft); }
#page-agenda .lead-foot-btn.agenda-outcome-done { border-color: #b8dfc8; color: #157a43; background: #f4fbf7; }
#page-agenda .lead-foot-btn.agenda-outcome-done:hover,
#page-agenda .lead-foot-btn.agenda-outcome-done.is-selected { border-color: #75c496; color: #0f6737; background: #e5f6ec; }
#page-agenda .lead-foot-btn.agenda-outcome-missed { border-color: #efc8c8; color: #a83b3b; background: #fff8f8; }
#page-agenda .lead-foot-btn.agenda-outcome-missed:hover,
#page-agenda .lead-foot-btn.agenda-outcome-missed.is-selected { border-color: #dda1a1; color: #922e2e; background: #fceaea; }
#page-agenda .lead-foot-btn.agenda-cancel-action { border-color: #e6caca; color: #b04444; background: #fff; }
#page-agenda .lead-foot-btn.agenda-cancel-action:hover { border-color: #d79696; color: #922e2e; background: #fff5f5; }
#page-agenda .empty-state { min-height: 240px; border: 1px dashed var(--dmi-border-strong); border-radius: var(--dmi-radius-lg); background: var(--dmi-surface); }

/* Ação principal sempre visível no topo da Agenda desktop. */
@media (min-width: 1024px) {
  #page-agenda .crm-task-head { display:flex; align-items:center; justify-content:space-between; gap:20px; }
  #page-agenda .crm-agenda-desktop-action { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:0 18px; border-radius:12px; white-space:nowrap; box-shadow:0 7px 16px rgba(9,39,83,.16); }
  #page-agenda .crm-agenda-main-action { display:none !important; }
}
@media (max-width: 1023px) {
  #page-agenda .crm-agenda-desktop-action { display:none !important; }
}

/* O formulário usa o mesmo contrato de campos do Google Calendar. */
#modalAgenda { display: flex; flex-direction: column; height: min(860px, calc(100dvh - 28px)); max-height: min(860px, calc(100dvh - 28px)); overflow: hidden; }
#modalAgenda .modal-handle, #modalAgenda .modal-header { flex: 0 0 auto; }
#modalAgenda .modal-body { flex: 1 1 auto; min-height: 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y; -webkit-overflow-scrolling: touch; }
#modalAgenda input[type="date"], #modalAgenda input[type="time"] { position:relative; z-index:1; pointer-events:auto; touch-action:manipulation; }
body.modal-agenda-open { overflow: hidden; }
#modalAgenda .agenda-field-help { display: block; margin-top: 5px; color: var(--dmi-text-muted); font-size: 10px; line-height: 1.4; }
#modalAgenda .agenda-all-day { display: flex; align-items: center; gap: 9px; min-height: 42px; margin: 0 0 12px; padding: 9px 11px; border: 1px solid var(--dmi-border); border-radius: var(--dmi-radius-sm); background: #f7f9fb; color: var(--dmi-text-secondary); font-size: 11px; font-weight: 700; text-transform: none; letter-spacing: 0; cursor: pointer; }
#modalAgenda .agenda-all-day input { width: 18px; height: 18px; margin: 0; accent-color: var(--dmi-primary); }
#modalAgenda.agenda-is-all-day #agHora, #modalAgenda.agenda-is-all-day #agHoraFim { opacity: .48; background: #eef2f6; }

/* Integrations communicate status first, then the available action. */
#page-whatsapp .wpp-integration, #page-googlecalendar .gcal-integration { max-width: 920px; }
#page-whatsapp .wpp-hero, #page-googlecalendar .gcal-hero { border-radius: var(--dmi-radius-lg) !important; background: linear-gradient(135deg, var(--dmi-primary-active), var(--dmi-primary-hover)) !important; box-shadow: var(--dmi-shadow-md) !important; }
#page-whatsapp .wpp-card, #page-googlecalendar .gcal-card { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-md) !important; box-shadow: var(--dmi-shadow-xs) !important; }
#page-googlecalendar .gcal-icon { border-radius: var(--dmi-radius-sm); background: var(--dmi-primary-soft); }
#page-googlecalendar .gcal-icon img { display:block; width:30px; height:30px; object-fit:contain; }
#page-googlecalendar .gcal-heading b { color: var(--dmi-primary); }
#page-googlecalendar .gcal-heading small, #page-googlecalendar .gcal-detail span { color: var(--dmi-text-secondary); }
#page-googlecalendar .gcal-detail { border-color: var(--dmi-border); }
#page-googlecalendar .gcal-detail b { color: var(--dmi-text); }
#page-googlecalendar .gcal-status { background: var(--dmi-success-soft); color: var(--dmi-success); }
#page-googlecalendar .gcal-status.warn { background: var(--dmi-warning-soft); color: var(--dmi-warning); }
#page-googlecalendar .gcal-status.error { background: var(--dmi-error-soft); color: var(--dmi-error); }
#page-googlecalendar .gcal-status.pending { background: var(--dmi-info-soft); color: var(--dmi-info); }
#page-googlecalendar .gcal-btn { min-height: 40px; border-color: var(--dmi-border-strong); border-radius: var(--dmi-radius-sm); color: var(--dmi-primary); }
#page-googlecalendar .gcal-btn.primary { background: var(--dmi-primary) !important; color: #fff !important; }
#page-googlecalendar .gcal-confirm { border-color: #edc5c7; border-radius: var(--dmi-radius-md); background: var(--dmi-error-soft); }
#page-googlecalendar .gcal-message { border-radius: var(--dmi-radius-sm); background: var(--dmi-info-soft); color: var(--dmi-text-secondary); }

@media (max-width: 767px) {
  #modalAgendaBg { overflow: hidden; overscroll-behavior: none; }
  #modalAgenda { width: calc(100% - 18px); height: calc(100dvh - 18px); max-height: calc(100dvh - 18px); }
  #modalAgenda .modal-body { padding-bottom: calc(34px + env(safe-area-inset-bottom)); }
  #page-agenda .crm-task-cockpit { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; }
  #page-agenda .crm-task-kpi { height: auto !important; min-height: 86px; padding: 12px !important; }
  #page-agenda #agenda30List { grid-template-columns: 1fr !important; }
  #page-whatsapp .wpp-integration, #page-googlecalendar .gcal-integration { padding-left: 0; padding-right: 0; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  #page-agenda .crm-task-cockpit { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  #page-agenda #agenda30List { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
