/* Calendario mensual */
.month-grid { --bd: rgba(0,0,0,.08); }
.month-grid .grid-header { display:grid; grid-template-columns: repeat(7,1fr); gap: .25rem; margin-bottom:.25rem; font-weight:600; color: var(--bs-secondary-color); }
.month-grid .grid-days { display:grid; grid-template-columns: repeat(7,1fr); gap: .25rem; }
.month-grid .day { border:1px solid var(--bd); border-radius:.5rem; padding:.25rem .35rem .5rem; min-height:88px; position:relative; background: var(--bs-body-bg); }
.month-grid .day .date { font-size:.85rem; color: var(--bs-secondary-color); }
.month-grid .day.today { outline:2px solid var(--bs-primary); outline-offset:-2px; }
.month-grid .day.selected { background: rgba(13,110,253,.08); }
.month-grid .day.drop-hover { outline: 2px dashed var(--bs-primary); outline-offset:-2px; }
.month-grid .dots { position:absolute; right:.35rem; bottom:.35rem; display:flex; gap:2px; }
.month-grid .dot { width:8px; height:8px; border-radius:50%; background:#0d6efd; display:inline-block; }
.month-grid .dot.task { background:#fd7e14; }

/* Agenda semanal */
.week-agenda .day-col { border: 1px solid rgba(0,0,0,.08); border-radius:.5rem; padding:.5rem; background: var(--bs-body-bg); }
.week-agenda .day-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:.25rem; }
.week-agenda .day-head .date { font-weight:600; }
.week-agenda .event { border-left: 3px solid #0d6efd; background: rgba(13,110,253,.06); padding:.25rem .5rem; border-radius:.25rem; margin-bottom:.25rem; }
.week-agenda .hours { font-size:.75rem; color: var(--bs-secondary-color); }

@media (prefers-color-scheme: dark) {
  :root[data-bs-theme="auto"] .month-grid,
  :root[data-bs-theme="dark"] .month-grid { --bd: rgba(255,255,255,.12); }
  :root[data-bs-theme="auto"] .week-agenda .day-col,
  :root[data-bs-theme="dark"] .week-agenda .day-col { border-color: rgba(255,255,255,.12); }
  :root[data-bs-theme="auto"] .week-agenda .event,
  :root[data-bs-theme="dark"] .week-agenda .event { background: rgba(13,110,253,.12); }
}
