/* visitas-corretora.css — agendamento de visitas da Corretora */

/* Botão "+ visita" dentro da célula do dia (desktop) */
.cd-add-vis{
  margin-top:4px; width:100%; border:1px dashed var(--border-strong);
  background:transparent; color:var(--accent); font-size:10.5px; font-weight:700;
  border-radius:var(--radius-sm); padding:2px 4px; cursor:pointer; line-height:1.4;
  opacity:0; transition:opacity .12s;
}
.cal-day:hover .cd-add-vis{ opacity:1; }
.cd-add-vis:hover{ background:var(--accent-soft); color:var(--accent-on-soft); border-style:solid; }

/* Chip de visita agendada na célula do dia */
.cd-evt-vis{
  background:var(--accent-soft); color:var(--accent-on-soft);
  border-radius:var(--radius-sm); padding:1px 5px; cursor:pointer;
  font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.cd-evt-vis:hover{ filter:brightness(.97); }
.cd-evt-vis.done{ background:var(--success-soft); color:var(--success); text-decoration:line-through; opacity:.85; }

/* Overlay + modal */
.vc-modal-ov{
  position:fixed; inset:0; background:var(--overlay);
  display:flex; align-items:center; justify-content:center;
  z-index:1200; padding:16px;
}
.vc-modal{
  background:var(--bg-surface); color:var(--text);
  border:1px solid var(--border); border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg); width:100%; max-width:440px;
  padding:18px; display:flex; flex-direction:column; gap:12px;
}
.vc-modal-sm{ max-width:360px; }
.vc-modal-h{ font-size:16px; font-weight:800; color:var(--text); }
.vc-lead-nom{ font-size:14px; font-weight:700; color:var(--accent); }
.vc-lbl{ font-size:12px; font-weight:600; color:var(--text-muted); }
.vc-modal-search,.vc-date{
  width:100%; padding:9px 12px; border:1px solid var(--border-strong);
  border-radius:var(--radius-sm); background:var(--bg-muted); color:var(--text);
  font-size:14px; box-sizing:border-box;
}
.vc-modal-search:focus,.vc-date:focus{ outline:none; border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-focus); }
.vc-modal-lista{ max-height:320px; overflow-y:auto; display:flex; flex-direction:column; gap:4px; }
.vc-modal-item{
  padding:8px 10px; border-radius:var(--radius-sm); cursor:pointer;
  border:1px solid transparent; transition:background .1s;
}
.vc-modal-item:hover{ background:var(--accent-soft); border-color:var(--border-strong); }
.vc-mi-nome{ font-size:13.5px; font-weight:600; color:var(--text); }
.vc-mi-sub{ font-size:11.5px; color:var(--text-muted); }
.vc-modal-empty{ font-size:13px; color:var(--text-muted); padding:14px; text-align:center; }
.vc-modal-foot{ display:flex; justify-content:flex-end; gap:8px; }

/* Lista de visitas no calendário mobile */
.cal-card-vis{ display:flex; flex-direction:column; gap:6px; margin-top:8px; }
.vc-row{
  display:flex; align-items:center; gap:8px;
  background:var(--accent-soft); border-radius:var(--radius-sm); padding:6px 10px;
}
.vc-row.done{ background:var(--success-soft); }
.vc-row-nom{ flex:1; font-size:13px; font-weight:600; color:var(--accent-on-soft); cursor:pointer; }
.vc-row.done .vc-row-nom{ color:var(--success); text-decoration:line-through; }
.vc-row-done,.vc-row-rm{
  border:none; background:transparent; cursor:pointer; font-size:15px;
  color:var(--text-muted); padding:0 4px; line-height:1;
}
.vc-row-done{ color:var(--success); }
.vc-row-rm{ color:var(--danger); font-size:18px; }
