/* ERP-AGENDAMENTOS-PASSO2-20260904 */
:root{
  --agenda-slot-h:30px;
  --agenda-time-col:72px;
}
body.dark{background:#000!important;color:#e5e5e5!important}
body.dark .bg-white{background:#111!important;border-color:#262626!important}
body.dark .bg-slate-50{background:#0a0a0a!important;border-color:#262626!important}
body.dark .text-slate-900,body.dark .text-slate-800,body.dark .text-slate-700{color:#fff!important}
body.dark .text-slate-600,body.dark .text-slate-500{color:#a3a3a3!important}
body.dark .border-slate-200,body.dark .border-slate-300{border-color:#262626!important}
body.dark input,body.dark select,body.dark textarea{background:#000!important;color:#fff!important;border-color:#333!important}
body.dark header{background:#111!important;border-color:#262626!important}
body.dark .bg-blue-50{background:#0c1a2a!important;border-color:#1e3a5f!important;color:#bfdbfe!important}
body.dark .bg-red-50{background:#2a1111!important}
body.dark .text-red-600{color:#f87171!important}
body.dark .border-red-200{border-color:#7f1d1d!important}
body.dark .bg-amber-50{background:#2b1d08!important;border-color:#78350f!important;color:#fcd34d!important}

.agenda-toolbar{background:#fff}
body.dark .agenda-toolbar{background:#111}
.agenda-container{min-height:560px;background:#fff}
body.dark .agenda-container{background:#0b0b0b}
.agenda-secondary-btn,.agenda-icon-btn{
  display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:.6rem;font-size:.82rem;font-weight:700;transition:.15s;
}
.agenda-secondary-btn{padding:.62rem .9rem}
.agenda-icon-btn{width:38px;height:38px;font-size:1.4rem;line-height:1}
.agenda-secondary-btn:hover,.agenda-icon-btn:hover{background:#f8fafc;border-color:#94a3b8}
body.dark .agenda-secondary-btn,body.dark .agenda-icon-btn{background:#171717;color:#e5e5e5;border-color:#333}
body.dark .agenda-secondary-btn:hover,body.dark .agenda-icon-btn:hover{background:#262626}
.agenda-view-switch{display:inline-flex;border:1px solid #cbd5e1;border-radius:.65rem;padding:2px;background:#f8fafc}
.agenda-view-switch button{padding:.5rem .8rem;border-radius:.5rem;font-size:.78rem;font-weight:700;color:#64748b}
.agenda-view-switch button.active{background:#fff;color:var(--erp-primary-600);box-shadow:0 1px 3px rgba(15,23,42,.12)}
body.dark .agenda-view-switch{background:#0a0a0a;border-color:#333}
body.dark .agenda-view-switch button{color:#a3a3a3}
body.dark .agenda-view-switch button.active{background:#262626;color:var(--erp-primary-300)}

/* mês */
.agenda-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #e2e8f0;border-left:1px solid #e2e8f0}
.agenda-month-head{padding:.65rem;text-align:center;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#64748b;background:#f8fafc;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}
.agenda-month-day{min-height:128px;padding:.5rem;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;cursor:pointer;overflow:hidden}
.agenda-month-day:hover{background:#fffaf5}
.agenda-month-day.outside{background:#f8fafc;color:#94a3b8}
.agenda-month-day.today .agenda-day-number{background:var(--erp-primary-600);color:#fff}
.agenda-day-number{width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800}
.agenda-month-events{margin-top:.35rem;display:flex;flex-direction:column;gap:3px}
.agenda-month-event{display:block;width:100%;text-align:left;padding:3px 6px;border-radius:5px;font-size:.68rem;line-height:1.25;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:hsl(var(--event-h) 76% 94%);color:hsl(var(--event-h) 62% 28%);border-left:3px solid hsl(var(--event-h) 68% 48%)}
.agenda-month-more{font-size:.66rem;color:#64748b;font-weight:700;padding-left:3px}
body.dark .agenda-month,body.dark .agenda-month-head,body.dark .agenda-month-day{border-color:#262626}
body.dark .agenda-month-head{background:#171717;color:#a3a3a3}
body.dark .agenda-month-day{background:#0b0b0b}
body.dark .agenda-month-day:hover{background:#17130f}
body.dark .agenda-month-day.outside{background:#080808;color:#525252}
body.dark .agenda-month-event{background:hsl(var(--event-h) 36% 18%);color:hsl(var(--event-h) 72% 78%);border-left-color:hsl(var(--event-h) 65% 58%)}

/* semana/dia */
.agenda-time-layout{display:flex;flex-direction:column;min-width:760px}
.agenda-time-scroll{overflow:auto;max-height:72vh;position:relative}
.agenda-time-header{display:grid;grid-template-columns:var(--agenda-time-col) repeat(var(--agenda-days),minmax(150px,1fr));position:sticky;top:0;z-index:16;background:#fff;border-bottom:1px solid #e2e8f0}
.agenda-time-header-spacer{border-right:1px solid #e2e8f0}
.agenda-time-day-head{padding:.55rem .4rem;text-align:center;border-right:1px solid #e2e8f0}
.agenda-time-day-head.today .agenda-time-day-number{background:var(--erp-primary-600);color:#fff}
.agenda-time-day-name{font-size:.65rem;font-weight:800;text-transform:uppercase;color:#64748b}
.agenda-time-day-number{margin:.15rem auto 0;width:30px;height:30px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:800}
.agenda-allday-row{display:grid;grid-template-columns:var(--agenda-time-col) repeat(var(--agenda-days),minmax(150px,1fr));border-bottom:1px solid #e2e8f0;background:#fff}
.agenda-allday-label{padding:.45rem .35rem;font-size:.62rem;color:#94a3b8;text-align:right;border-right:1px solid #e2e8f0}
.agenda-allday-cell{min-height:42px;padding:4px;border-right:1px solid #e2e8f0;cursor:pointer}
.agenda-allday-event{display:block;width:100%;text-align:left;padding:4px 7px;margin-bottom:3px;border-radius:6px;font-size:.68rem;font-weight:800;background:hsl(var(--event-h) 76% 94%);color:hsl(var(--event-h) 62% 28%);border-left:3px solid hsl(var(--event-h) 68% 48%)}
.agenda-grid-wrap{display:grid;grid-template-columns:var(--agenda-time-col) 1fr;position:relative}
.agenda-times{position:relative;background:#fff;border-right:1px solid #e2e8f0}
.agenda-time-label{height:var(--agenda-slot-h);font-size:.62rem;color:#94a3b8;text-align:right;padding-right:8px;transform:translateY(-.45em)}
.agenda-days-grid{display:grid;grid-template-columns:repeat(var(--agenda-days),minmax(150px,1fr));position:relative}
.agenda-day-column{position:relative;border-right:1px solid #e2e8f0}
.agenda-slot{height:var(--agenda-slot-h);border-bottom:1px solid #f1f5f9;cursor:pointer}
.agenda-slot.hour{border-bottom-color:#cbd5e1}
.agenda-slot.nonworking{background:#f8fafc}
.agenda-slot:hover{background:#fff7ed}
.agenda-event{position:absolute;left:4px;right:4px;z-index:8;border-radius:7px;padding:4px 6px;overflow:hidden;cursor:pointer;background:hsl(var(--event-h) 76% 93%);color:hsl(var(--event-h) 62% 25%);border-left:3px solid hsl(var(--event-h) 68% 48%);box-shadow:0 1px 2px rgba(15,23,42,.12);font-size:.68rem;line-height:1.2}
.agenda-event:hover{filter:brightness(.98);z-index:12}
.agenda-event-time{font-weight:800;display:block}
.agenda-event-title{font-weight:700;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agenda-now-line{position:absolute;left:0;right:0;height:2px;background:#ef4444;z-index:10;pointer-events:none}
.agenda-now-dot{position:absolute;left:-5px;top:-4px;width:10px;height:10px;border-radius:999px;background:#ef4444}
body.dark .agenda-time-header,body.dark .agenda-allday-row,body.dark .agenda-times{background:#111}
body.dark .agenda-time-header,body.dark .agenda-time-header-spacer,body.dark .agenda-time-day-head,body.dark .agenda-allday-row,body.dark .agenda-allday-label,body.dark .agenda-allday-cell,body.dark .agenda-times,body.dark .agenda-day-column{border-color:#262626}
body.dark .agenda-slot{border-bottom-color:#1f1f1f}
body.dark .agenda-slot.hour{border-bottom-color:#333}
body.dark .agenda-slot.nonworking{background:#080808}
body.dark .agenda-slot:hover{background:#21150c}
body.dark .agenda-event,body.dark .agenda-allday-event{background:hsl(var(--event-h) 36% 18%);color:hsl(var(--event-h) 72% 78%);border-left-color:hsl(var(--event-h) 65% 58%)}

/* modais */
.agenda-modal{position:fixed;inset:0;z-index:9000;align-items:center;justify-content:center;padding:1rem;background:rgba(15,23,42,.62);backdrop-filter:blur(3px)}
.agenda-modal:not(.hidden){display:flex}
.agenda-modal-card{width:100%;max-height:92vh;overflow:auto;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 24px 70px rgba(15,23,42,.25)}
.agenda-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}
.agenda-close-btn{width:34px;height:34px;border-radius:.55rem;border:1px solid #cbd5e1;background:#fff;color:#64748b;font-size:1.35rem;line-height:1}
.agenda-input{display:block;width:100%;padding:.65rem .75rem;border:1px solid #cbd5e1;border-radius:.6rem;background:#fff;color:#0f172a;font-size:.86rem;outline:none}
.agenda-input:focus{border-color:var(--erp-primary-500);box-shadow:0 0 0 1px var(--erp-primary-500)}
.agenda-input:disabled{opacity:.55;cursor:not-allowed;background:#f8fafc}
.agenda-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid #e2e8f0;border-radius:.75rem;padding:.85rem 1rem;cursor:pointer}
.agenda-toggle-row b{display:block;font-size:.82rem;color:#0f172a}
.agenda-toggle-row small{display:block;font-size:.68rem;color:#64748b;margin-top:2px}
.agenda-toggle{position:relative;display:inline-flex;align-items:center;flex:0 0 auto}
.agenda-toggle-track{width:44px;height:24px;border-radius:999px;background:#cbd5e1;transition:.15s}
.agenda-toggle-dot{position:absolute;left:4px;width:16px;height:16px;border-radius:999px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:.15s}
.agenda-toggle input:checked ~ .agenda-toggle-track{background:var(--erp-primary-600)}
.agenda-toggle input:checked ~ .agenda-toggle-dot{transform:translateX(20px)}
.agenda-scope-option{display:block;width:100%;text-align:left;border:1px solid #e2e8f0;border-radius:.75rem;padding:.85rem 1rem;background:#fff;transition:.15s}
.agenda-scope-option:hover{border-color:var(--erp-primary-300);background:var(--erp-primary-50)}
.agenda-scope-option b{display:block;font-size:.84rem;color:#0f172a}
.agenda-scope-option span{display:block;font-size:.7rem;color:#64748b;margin-top:3px}
body.dark .agenda-modal-card{background:#111;border-color:#262626}
body.dark .agenda-modal-header{background:#171717;border-color:#262626}
body.dark .agenda-close-btn{background:#111;border-color:#333;color:#d4d4d4}
body.dark .agenda-input{background:#000;color:#fff;border-color:#333}
body.dark .agenda-input:disabled{background:#171717}
body.dark .agenda-toggle-row,body.dark .agenda-scope-option{background:#111;border-color:#333}
body.dark .agenda-toggle-row b,body.dark .agenda-scope-option b{color:#fff}
body.dark .agenda-toggle-row small,body.dark .agenda-scope-option span{color:#a3a3a3}
body.dark .agenda-scope-option:hover{background:#21150c;border-color:var(--erp-primary-700)}

.agenda-empty{padding:4rem 1.5rem;text-align:center;color:#94a3b8;font-size:.85rem}
.agenda-loading{padding:4rem 1.5rem;text-align:center;color:#64748b;font-size:.85rem}

@media(max-width:767px){
  main{padding:12px!important}
  .agenda-container{min-height:480px}
  .agenda-time-scroll{max-height:68vh}
  .agenda-time-layout{min-width:0}
  .agenda-time-header,.agenda-allday-row{grid-template-columns:58px repeat(var(--agenda-days),minmax(0,1fr))}
  .agenda-grid-wrap{grid-template-columns:58px 1fr}
  :root{--agenda-time-col:58px;--agenda-slot-h:34px}
  .agenda-month-day{min-height:92px;padding:.3rem}
  .agenda-month-head{padding:.45rem .15rem;font-size:.58rem}
  .agenda-month-event{font-size:.58rem;padding:2px 4px}
  .agenda-day-number{width:24px;height:24px;font-size:.68rem}
}

/* ERP-AGENDAMENTOS-PASSO2-LAYOUT-DOCS-HOTFIX-20260904
   Garante o padrão visual sem depender de utilitários Tailwind ausentes no CSS compilado. */
.agenda-page-main{
  display:flex!important;
  flex-direction:column!important;
  gap:20px!important;
}
.agenda-title-card{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  width:100%!important;
}
.agenda-title-copy{flex:1 1 auto!important;min-width:0!important}
.agenda-title-actions{
  margin-left:auto!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  width:auto!important;
  flex:0 0 auto!important;
}
.agenda-title-actions #usuario-filtro-wrap{min-width:220px!important;width:220px!important}
.agenda-title-actions #filtro-usuario{width:100%!important}
.agenda-title-actions #btn-novo-agendamento{min-height:42px!important}
.agenda-calendar-card{margin:0!important}

/* Menu do usuário: mesmas dimensões do padrão do ERP. */
#erp-user-menu-wrap{position:relative!important}
#erp-user-menu-btn{
  width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:0!important;border-radius:8px!important
}
#erp-user-menu{
  right:0!important;left:auto!important;width:256px!important;min-width:256px!important;
  max-width:256px!important;margin-top:8px!important;border-radius:12px!important
}

@media(max-width:767px){
  .agenda-page-main{gap:12px!important}
  .agenda-title-card{flex-direction:column!important;align-items:stretch!important;gap:16px!important}
  .agenda-title-actions{
    width:100%!important;margin-left:0!important;display:grid!important;grid-template-columns:1fr!important
  }
  .agenda-title-actions #usuario-filtro-wrap{min-width:0!important;width:100%!important}
  .agenda-title-actions #btn-novo-agendamento{width:100%!important}
  #erp-user-menu{width:min(256px,calc(100vw - 24px))!important;min-width:0!important;max-width:calc(100vw - 24px)!important}
}

/* ERP-DATE-TIME-PICKERS-HOTFIX-20260904
   Espelho do date-control de Contas a Pagar, estendido para datetime-local. */
.erp-picker-control{position:relative;margin-top:.25rem}
.erp-picker-control .agenda-input,
.erp-picker-control .task-input{margin-top:0!important;padding-right:2.75rem!important}
.erp-picker-datetime .agenda-input,
.erp-picker-datetime .task-input{padding-right:5.05rem!important}
.erp-picker-control input::-webkit-calendar-picker-indicator{opacity:0;width:0}
.erp-picker-btn{
  position:absolute;top:50%;transform:translateY(-50%);
  width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;
  border:0;border-radius:.5rem;background:transparent;color:#64748b;
  font-size:.95rem;line-height:1;cursor:pointer
}
.erp-picker-calendar{right:.32rem}
.erp-picker-datetime .erp-picker-calendar{right:2.58rem}
.erp-picker-clock{right:.32rem}
.erp-picker-btn:hover{background:#f1f5f9;color:var(--erp-primary-600,#ea580c)}
body.dark .erp-picker-btn{color:#a3a3a3}
body.dark .erp-picker-btn:hover{background:#262626;color:var(--erp-primary-400,#fb923c)}


/* ERP-AGENDAMENTOS-REAGENDAR-HISTORICO-20260907 */
.agenda-history{border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#f8fafc}
body.dark .agenda-history{background:#0a0a0a;border-color:#262626}
.agenda-history-title{font-size:12px;font-weight:800;color:#334155;margin-bottom:8px}
body.dark .agenda-history-title{color:#e5e5e5}
.agenda-history-list{display:flex;flex-direction:column;gap:8px}
.agenda-history-item{padding:9px 10px;border-radius:10px;background:#fff;border:1px solid #e2e8f0;font-size:12px}
body.dark .agenda-history-item{background:#111;border-color:#262626}
.agenda-history-item b{display:block;color:#0f172a}
body.dark .agenda-history-item b{color:#fff}
.agenda-history-item span{display:block;color:#64748b;margin-top:2px}
.agenda-dashboard-list{display:flex;flex-direction:column;gap:8px;padding:14px}
.agenda-dashboard-item{width:100%;text-align:left;border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:12px 14px;transition:.15s}
.agenda-dashboard-item:hover{border-color:var(--erp-primary-300);background:var(--erp-primary-50)}
body.dark .agenda-dashboard-item{background:#111;border-color:#262626}
.agenda-dashboard-item-time{font-size:11px;font-weight:800;color:var(--erp-primary-700)}
.agenda-dashboard-item-title{font-size:14px;font-weight:800;margin-top:2px}
.agenda-dashboard-item-meta{font-size:11px;color:#64748b;margin-top:3px}
