/**
 * Print stylesheet for RinkMinder Schedule.
 * Ensures the schedule grid fits on a single printed page.
 */

@media print {

    @page {
        margin: 0; /* this affects the margin in the printer settings */
    }

    html, body {
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        /*background: #fff !important;*/
        /*color: #000 !important;*/
        overflow: hidden;
        print-color-adjust: exact !important;
    }
    body {
        box-sizing: border-box;
        /* Remove flex for print layout */
        display: block !important;
        align-items: initial !important;
        justify-content: initial !important;
    }

    .time {
        font-weight: normal !important;
        font-size: 14px !important;
        /*margin-left: 10px;*/
    }

    .schedule {
        width: 100vw !important;
        height: 95vh !important;
        /*padding-top: 20px !important;*/
        max-width: 100%;
        max-height: 100%;
        margin-left: 15px !important;
        margin-right: 15px !important;
        overflow: hidden !important;
        page-break-inside: avoid;
        box-sizing: border-box;
        /* Shrink to fit page */
        transform: scale(1);
        transform-origin: top left;
        grid-template-columns:
            [time] max-content
            [fac10] 1fr
            [fac11] 1fr
            [fac12] 1fr
            [shift1] max-content
            [shift2] max-content
            [shift3] max-content
            [shift4] max-content
            [shift5] max-content;
    }

    .header,
    .rink1header,
    .rink2header,
    .rink3header {
        font-size: 18px !important;
        padding: 0 !important;
        margin-top: 20px !important;
        border-width: 1px !important;
        box-sizing: border-box;
        max-width: 100%;
        max-height: 100%;
        overflow: hidden;
        /*background: #fff !important;*/
        /*color: #000 !important;*/
    }

    .header {
        /*background: #eee !important;*/
        /*color: #000 !important;*/
        position: static !important;
    }

    /* Hide elements not needed for print */
    #date-buttons,
    #loader,
    #current-time-line,
    #metadata {
        display: none !important;
    }

    /* Remove sticky positioning for print */
    .rink1header,
    .rink2header,
    .rink3header {
        position: static !important;
        top: auto !important;
        z-index: auto !important;
    }

    /* Prevent page breaks inside events and shifts */
    .event-maintenance {
        page-break-inside: avoid;
        font-size: 10px !important;
    }

    .shift {
        page-break-inside: avoid;
    }

    .event {
        page-break-inside: avoid;
    }

    .event-title, .shiftbody{
        font-weight: bold !important;
        font-size: 14px !important;
    }

    .event-time, 
    .event-lockerrooms, 
    .event-flex-right, 
    .shift-time, 
    .lockerroomslabel {
        font-weight: normal !important;
        font-size: 10px !important;
    }

    .event-notes {
        font-size: 8px !important;
        font-weight: normal !important;
        padding-left: 3px !important;
    }

    .footer {
        position: fixed;
        display: block; /* Show footer in print */
        text-align: center;
        width: 100%;
        bottom: 0;
        padding-bottom: 20px;
        font-size: x-large !important;
    }

    /* Remove box shadows, backgrounds, and unnecessary colors */
    * {
        box-shadow: none !important;
    }


}