/* =====================================================================
   pages/events/calendar.css — month grid calendar.
   Reuses base from common.css (page-hero, btn, section).
   ===================================================================== */

/* Calendar toolbar */
.view-events-calendar .page-hero .lede{
  color:rgba(255,255,255,.92) !important;
  text-shadow:0 1px 8px rgba(0,34,66,.16);
}

.cal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.cal-nav{display:flex;align-items:center;gap:8px}
.cal-nav button{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;font-weight:600;cursor:pointer;font-family:inherit;color:var(--sp-secondary-d)}
.cal-nav button:hover{background:#f1f5f9}
.cal-nav button.today-btn{margin-left:6px}
.cal-nav .month{font-size:18px;font-weight:800;color:var(--sp-secondary-d);padding:0 8px;min-width:160px;text-align:center}

.cal-pills{display:flex;gap:0;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden}
.cal-pills a,.cal-pills span{padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none;color:var(--sp-text)}
.cal-pills .on{background:var(--sp-primary);color:#fff}

/* Calendar grid */
.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:#e2e8f0;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;max-width:100%}
.cal-head{background:#f8fafc;padding:10px 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;text-align:center}

.cal-head,
.cal-cell{min-width:0}

.cal-cell{background:#fff;min-height:108px;padding:8px;display:flex;flex-direction:column;gap:6px;position:relative}
.cal-cell .d{font-size:13px;font-weight:700;color:var(--sp-secondary-d)}
.cal-cell.past{background:#f8fafc}
.cal-cell.past .d{color:#94a3b8;font-weight:500}
.cal-cell.other{background:#f8fafc}
.cal-cell.other .d{color:#cbd5e1}
.cal-cell.today{background:linear-gradient(135deg,#fff7ed,#ffedd5)}
.cal-cell.today .d{background:var(--sp-peach,#FA8B6E);color:#fff;width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px}

.cal-event-chip{font-size:11px;font-weight:600;padding:3px 6px;border-radius:4px;background:#e0f2f1;color:#018081;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}
.cal-event-chip.blue{background:#dbeafe;color:#0054A4}
.cal-event-chip.peach{background:#FA8B6E;color:#fff}
.cal-event-chip.gray{background:#f1f5f9;color:#475569}

/* Legend */
.cal-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-size:12px;color:#64748b}
.cal-legend .lg{display:inline-flex;align-items:center;gap:6px}
.cal-legend .sw{width:14px;height:14px;border-radius:3px}
.cal-legend .sw-mtg{background:#e0f2f1}
.cal-legend .sw-deadline{background:#dbeafe}
.cal-legend .sw-conf{background:#FA8B6E}
.cal-legend .sw-past{background:#f1f5f9;border:1px solid #cbd5e1}

.cal-actions{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap}

@media (max-width: 540px){
  .cal-toolbar{align-items:flex-start;gap:12px;margin-bottom:16px}
  .cal-nav{width:100%;justify-content:center;gap:6px}
  .cal-nav .month{min-width:112px;font-size:16px;padding:0 2px}
  .cal-pills{margin-inline:auto}
  .cal-head{padding:8px 2px;font-size:10px;letter-spacing:0}
  .cal-cell{min-height:90px;padding:6px 3px;gap:4px}
  .cal-cell .d{font-size:12px}
  .cal-event-chip{
    max-width:100%;
    min-width:0;
    padding:2px 4px;
    font-size:9px;
    line-height:1.25;
  }
}
