/* Agenda: calendário Mês, Semana e Dia, janelas e agendamento público. */
.a-cal,.a-tipo,.a-ev{--a-fer:var(--bad);--a-aniv:#c2338f;--a-tar:#6b3fd4;--a-rec:var(--good);--a-pag:var(--warn)}
.a-cal{padding:0;overflow:hidden;display:flex;flex-direction:column}
.a-barra{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px}
.a-setas{display:flex;gap:6px}
.a-titulo{font-size:18px;font-weight:600;margin-right:auto;min-width:0}
.a-dir{display:flex;align-items:center;gap:8px}
.a-exibir{display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--line);background:var(--surface-2);font-size:12.5px}
.a-exibir>b{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-right:4px}
.a-ex{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;border-radius:99px;border:1px solid var(--line);background:var(--surface);font-weight:700;color:var(--muted);cursor:pointer;white-space:nowrap}
.a-ex.fixo{cursor:default}
.a-ex input{accent-color:var(--accent);margin:0;width:14px;height:14px}
.a-ex svg.i{width:14px;height:14px;color:var(--c,var(--muted))}
.a-ex:has(input:checked){color:var(--fg);border-color:color-mix(in srgb,var(--c,var(--accent)) 40%,var(--line))}
.a-sep{width:1px;height:18px;background:var(--line);margin:0 4px}
.t-comp{--c:var(--accent)} .t-fer{--c:var(--a-fer)} .t-aniv{--c:var(--a-aniv)} .t-tar{--c:var(--a-tar)} .t-rec{--c:var(--a-rec)} .t-pag{--c:var(--a-pag)}

/* etiqueta de um item no calendário */
.a-ev{display:flex;align-items:center;gap:5px;width:100%;min-width:0;padding:3px 7px;border-radius:7px;font-size:12px;font-weight:600;line-height:1.3;text-align:left;
  background:color-mix(in srgb,var(--c) 13%,var(--surface));color:color-mix(in srgb,var(--c) 62%,var(--fg));border-left:3px solid var(--c)}
button.a-ev:hover{background:color-mix(in srgb,var(--c) 22%,var(--surface))}
.a-ev svg.i{width:12px;height:12px;stroke-width:2}
.a-ev .a-t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
.a-ev .a-h{font-weight:700;opacity:.85}
.a-ev .a-rep{opacity:.6;display:flex}
.a-ev.feito{opacity:.55} .a-ev.feito .a-t{text-decoration:line-through}
.a-ev.cont{border-left-style:dashed}
.a-ev.atrasado{--c:var(--bad)}
.a-ev[draggable=true]{cursor:grab}

/* mês */
.a-sem-cab{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line)}
.a-sem-cab span{padding:8px 10px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.a-mes-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line)}
.a-cel{min-height:118px;padding:6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:3px;min-width:0;cursor:pointer;transition:background .12s}
.a-cel:nth-child(7n){border-right:0}
.a-cel:nth-last-child(-n+7){border-bottom:0}
.a-cel:hover{background:var(--surface-2)}
.a-cel.fora{background:color-mix(in srgb,var(--surface-2) 70%,var(--surface))} .a-cel.fora .a-num{color:var(--faint)}
.a-cel.feriado .a-num{color:var(--a-fer)}
.a-num{align-self:flex-start;min-width:26px;height:26px;border-radius:99px;display:grid;place-items:center;font-weight:700;font-size:12.5px;padding:0 6px}
.a-cel.hoje .a-num{background:var(--accent);color:var(--on-accent)}
.a-mais{font-size:11.5px;font-weight:700;color:var(--muted);text-align:left;padding:1px 7px;border-radius:6px}
.a-mais:hover{color:var(--accent-ink);background:var(--accent-soft)}

/* semana e dia */
.a-rol{max-height:min(680px,calc(100vh - 330px));min-height:340px;overflow:auto;border-top:1px solid var(--line);position:relative}
.a-grade{display:grid;grid-template-columns:56px repeat(var(--n),minmax(0,1fr));min-width:680px;position:relative}
.a-rol.um .a-grade{min-width:0}
.a-topo{grid-column:1/-1;display:grid;grid-template-columns:subgrid;position:sticky;top:0;z-index:3;background:var(--surface);border-bottom:1px solid var(--line)}
.a-canto{border-right:1px solid var(--line)}
.a-rot{font-size:10px;color:var(--faint);font-weight:700;text-align:right;padding:6px 6px 0 0}
.a-dcab{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 6px;border-right:1px solid var(--line)}
.a-dcab small{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-weight:700}
.a-dcab b{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-size:16px;font-weight:600}
.a-dcab:hover b{background:var(--surface-2)}
.a-dcab.hoje b{background:var(--accent);color:var(--on-accent)} .a-dcab.hoje small{color:var(--accent-ink)}
.a-inteiro{min-height:30px;padding:3px;display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--line);border-top:1px solid var(--line);min-width:0;cursor:pointer}
.a-topo .a-rot{border-top:1px solid var(--line)}
.a-horas{display:flex;flex-direction:column;border-right:1px solid var(--line)}
.a-horas span{height:48px;font-size:11px;color:var(--faint);font-weight:600;text-align:right;padding-right:6px;transform:translateY(-7px)}
.a-col{position:relative;height:1152px;border-right:1px solid var(--line);cursor:pointer;min-width:0}
.a-col{background-image:repeating-linear-gradient(to bottom,transparent 0 23px,color-mix(in srgb,var(--line) 45%,transparent) 23px 24px,transparent 24px 47px,var(--line) 47px 48px);background-size:auto;background-position:0 0;background-repeat:repeat}
.a-col.hoje{background-color:color-mix(in srgb,var(--accent) 4%,transparent)}
.a-col:last-child,.a-topo>:last-child{border-right:0}
.a-col .a-ev{position:absolute;flex-wrap:wrap;align-content:flex-start;align-items:flex-start;overflow:hidden;padding:3px 6px;box-shadow:0 0 0 1px var(--surface);z-index:1}
.a-col .a-ev .a-t{white-space:normal;flex:1 1 60%}
.a-col .a-ev .a-loc{flex-basis:100%;font-weight:500;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.a-col .a-ev svg.i{margin-top:2px}
.a-col .a-ev.baixo{flex-wrap:nowrap}
.a-col .a-ev.baixo .a-t{white-space:nowrap}
.a-agora{position:absolute;left:0;right:0;height:2px;background:var(--bad);z-index:2;pointer-events:none}
.a-agora::before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--bad)}

/* janelas */
.a-mcab{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between}
#f-a-comp.simples .a-avancado{display:none}
.a-avancado{border-top:1px solid var(--line);padding-top:12px}
.a-marcas{display:flex;gap:8px 18px;flex-wrap:wrap}
.a-marca{display:flex;align-items:flex-start;gap:8px;font-weight:700;cursor:pointer}
.a-marca input{accent-color:var(--accent);width:16px;height:16px;margin:2px 0 0}
.a-marca small{display:block;font-weight:500;color:var(--muted)}
.a-cor{width:100%;height:42px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);padding:3px}
#a-previa-link{overflow-wrap:anywhere}

/* agendamento */
.a-tipo{border-top:4px solid var(--c)}
.a-meta{display:flex;gap:6px 14px;flex-wrap:wrap;color:var(--muted);font-size:12.5px;font-weight:600}
.a-meta span{display:inline-flex;align-items:center;gap:5px} .a-meta svg.i{width:14px;height:14px}
.a-link{font-size:12px;user-select:all}
.a-tipo .pe{flex-wrap:wrap} .a-tipo .pe .btn{flex:1 1 auto;text-decoration:none}
a.btn{text-decoration:none;color:inherit} a.btn.o{color:var(--accent-ink)}
.a-disp-topo{display:flex;gap:16px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap}
.a-disp-topo .campo{min-width:220px}
.a-disp{display:flex;flex-direction:column}
.a-dsem{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px 0;border-top:1px solid var(--line)}
.a-dsem:first-child{border-top:0}
.a-dsem>b{padding-top:10px}
.a-dints{display:flex;flex-direction:column;gap:8px;min-height:40px}
.a-dints:empty::before{content:"Indisponível";color:var(--faint);padding-top:10px;font-weight:600}
.a-int{display:flex;align-items:center;gap:8px}
.a-int .txt{width:132px}
.a-int span{color:var(--muted)}
.a-ag{flex-wrap:wrap}
.a-ag .t{flex:1 1 220px}
.a-msg{display:block;font-style:italic;margin-top:2px}
.a-quando{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.a-acoes{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.kpi.clic{cursor:pointer}

@media (max-width:760px){
  .a-barra{padding:12px;gap:8px}
  .a-titulo{order:5;flex-basis:100%;font-size:16px}
  .a-dir{margin-left:auto}
  .a-exibir{padding:8px 12px;flex-wrap:nowrap;overflow-x:auto}
  .a-sem-cab span{padding:6px 2px;text-align:center;font-size:10px;letter-spacing:0}
  .a-cel{min-height:78px;padding:3px 2px;gap:2px}
  .a-cel .a-ev{padding:2px 3px;font-size:10px;border-left-width:2px;border-radius:5px;gap:0}
  .a-cel .a-ev svg.i,.a-cel .a-ev .a-h,.a-cel .a-ev .a-rep{display:none}
  .a-cel .a-ev .a-t{text-overflow:clip}
  .a-num{min-width:22px;height:22px;font-size:11.5px;align-self:center}
  .a-mais{font-size:10px;padding:0 3px;white-space:nowrap;overflow:hidden}
  .a-rol{max-height:calc(100vh - 300px)}
  .a-grade{grid-template-columns:44px repeat(var(--n),minmax(0,1fr))}
  .a-dsem{grid-template-columns:minmax(0,1fr) auto}
  .a-dsem>b{padding-top:6px} .a-dints{grid-column:1/-1;order:3;min-height:0}
  .a-dints:empty::before{padding-top:0}
  .a-int .txt{flex:1;width:auto;min-width:0}
  .a-quando{align-items:flex-start;flex-direction:row;align-items:center;flex-basis:100%}
  .a-acoes{flex-basis:100%;justify-content:flex-start}
  .a-disp-pe .btn{flex:1 1 auto;justify-content:center}
}
