/* Print styling — mirrors the landscape-letter PDF format */

@page {
    size: letter landscape;
    margin: 0.35in;
}

@media print {
    body, html { background: white; color: black; }
    .top-bar {
        text-align: center;
        border: none;
        padding: 0 0 8px;
    }
    .top-bar h1 {
        font-size: 22pt;
        font-weight: 700;
        margin: 0 0 4px;
    }
    .instructions {
        font-size: 10pt;
        color: black;
        font-style: italic;
        margin: 0 0 6px;
    }
    .month-nav {
        background: none;
        border: none;
        padding: 0 0 4px;
        position: static;
    }
    .month-nav h2 {
        font-size: 16pt;
        font-weight: 700;
    }
    .nav-btn, .print-btn { display: none !important; }
    .modal { display: none !important; }
    .admin-contact { display: none; }
    main { padding: 0; max-width: none; }

    .calendar-grid { gap: 0; }
    .dow-header {
        border: 1px solid black;
        font-size: 9pt;
        padding: 3px 0;
        background: white;
    }
    .cell {
        border: 1px solid black !important;
        border-radius: 0;
        min-height: 1.05in;
        padding: 3px 5px;
        page-break-inside: avoid;
        background: white !important;
        color: black !important;
    }
    .cell.empty-cell {
        border: 1px solid black !important;
        background: white !important;
    }
    .cell.past {
        background: white !important;
        color: #888 !important;
    }
    .cell.past .date-num { color: #888 !important; }
    .cell.open .sign-up-hint { display: none; }
    .cell.taken {
        background: white !important;
        border-color: black !important;
    }
    .cell.taken .meal-name {
        font-size: 12pt;
        text-align: center;
        margin-top: 8px;
    }
    .cell.taken .meal-phone {
        font-size: 10pt;
        color: black;
        text-align: center;
        margin-top: 2px;
    }
.cell.blocked {
       background-color: white !important;
       color: black !important;
       background-image:
         linear-gradient(to top right,
           transparent calc(50% - 0.75px), black calc(50% - 0.75px),
           black calc(50% + 0.75px), transparent calc(50% + 0.75px)),
         linear-gradient(to top left,
           transparent calc(50% - 0.75px), black calc(50% - 0.75px),
           black calc(50% + 0.75px), transparent calc(50% + 0.75px)) !important;
       -webkit-print-color-adjust: exact !important;
       print-color-adjust: exact !important;
   }
   .cell.blocked .block-reason { display: none; }
}
