.schedule-print-heading { display: none; }

@page staff-schedule {
  size: A4 landscape;
  margin: 10mm;
}

@media print {
  body.tool-personal:has(#scheduleWorkspace:not([hidden])) { page: staff-schedule; }
  .tool-personal:has(#scheduleWorkspace:not([hidden])) .app-shell {
    display: block;
    min-height: 0;
  }
  .tool-personal:has(#scheduleWorkspace:not([hidden])) .main {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
  }
  .tool-personal:has(#scheduleWorkspace:not([hidden])) .main > :not(#scheduleWorkspace),
  .tool-personal:has(#scheduleWorkspace:not([hidden])) .skip-link,
  .tool-personal #scheduleWorkspace .schedule-toolbar,
  .tool-personal #scheduleWorkspace .schedule-status,
  .tool-personal #scheduleWorkspace .staffing-overview,
  .tool-personal #scheduleWorkspace .schedule-select,
  .tool-personal #scheduleWorkspace .timeline-resize { display: none !important; }

  .tool-personal #scheduleWorkspace,
  .tool-personal #scheduleWorkspace .schedule-content,
  .tool-personal #scheduleWorkspace .schedule-grid { display: block; }
  .tool-personal #scheduleWorkspace .schedule-print-heading {
    display: block;
    margin-bottom: var(--zg-space-4);
  }
  .schedule-print-heading h2 { margin: 0; }
  .schedule-print-heading p { margin: var(--zg-space-1) 0 0; }
  .tool-personal #scheduleWorkspace .schedule-board {
    overflow: visible;
    min-height: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  .tool-personal #scheduleWorkspace :is(.schedule-grid,.schedule-month,.schedule-timeline) {
    width: 100%;
    min-width: 0;
    print-color-adjust: exact;
  }
  .tool-personal #scheduleWorkspace :is(.schedule-grid-head,.schedule-person-row) {
    grid-template-columns: minmax(0,1.2fr) repeat(var(--schedule-days),minmax(0,1fr));
  }
  .tool-personal #scheduleWorkspace :is(.schedule-grid-head,.schedule-person,.timeline-hours) { position: static; }
  .tool-personal #scheduleWorkspace :is(.schedule-grid-head,.schedule-person-row) > * {
    min-width: 0;
    min-height: 0;
    padding: var(--zg-space-1);
    overflow-wrap: anywhere;
  }
  .tool-personal #scheduleWorkspace :is(.schedule-person-row,.schedule-shift,.timeline-row,.schedule-month-day) {
    break-inside: avoid;
  }
  .tool-personal #scheduleWorkspace :is(.schedule-grid-head,.schedule-sector,.schedule-print-heading) {
    break-after: avoid;
  }
  .tool-personal #scheduleWorkspace .schedule-month { grid-template-columns: repeat(7,minmax(0,1fr)); }
  .tool-personal #scheduleWorkspace :is(.timeline-hours,.timeline-row) {
    grid-template-columns: minmax(0,4fr) repeat(20,minmax(0,1fr));
  }
  .tool-personal #scheduleWorkspace .timeline-shift { min-width: 0; }
}
