/* Keep the monthly grid usable at phone width without widening the page. */
.calendar-scroll { width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
@media (max-width: 600px) {
  .setup { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding: 14px; }
  .setup > * { min-width: 0; }
  .setup button { max-width: 100%; overflow-wrap: anywhere; }
  .summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .charts { grid-template-columns: minmax(0,1fr); }
  .calendar-scroll #cal-table { min-width: 700px; }
}
@media print {
  .calendar-scroll { overflow: visible; }
  .calendar-scroll #cal-table { min-width: 0; }
}
