/* vacations/vacations.css — the school-year calendar on the Hebrew
 * /vacations/ and /hebrew-vacations/ pages. It lives inside
 * `.container > .axcal-content` with the vacation list, not as a sibling
 * of `.container` (see CLAUDE.md on `.container` being a two-child flex).
 */

.vac-calendar-intro {
    margin-top: calc(2.5rem + 20px);
}
.vac-calendar-intro .vac-year-heading-row {
    margin: 0 0 8px;
    align-items: center;
}
.vac-calendar-intro .vac-year-heading {
    font-size: 1.3rem;
    margin: 0;
}
.vac-calendar-intro .print-button,
.vac-year-heading-row .print-button,
.vac-year-heading-row .download-pdf-button {
    border: 1px solid #d0d5da;
    border-radius: 6px;
}
.vac-calendar-intro .print-button:hover,
.vac-year-heading-row .print-button:hover,
.vac-year-heading-row .download-pdf-button:hover {
    border-color: #b8c0c8;
    background: #f4f6f8;
    color: inherit;
}

.page-vacations .Explain-div .vac-print-mount {
    align-items: flex-start;
}
.page-vacations .Explain-div .vac-print-mount .print-button,
.page-vacations .Explain-div .vac-print-mount .download-pdf-button {
    width: auto;
    gap: 0;
    box-sizing: border-box;
    line-height: 1.2;
}
.vac-year-heading-row .vac-type-toggle {
    flex: 0 0 auto;
    margin-top: 0;
}
.vac-year-section > .vac-year-heading-print {
    display: none;
}

.vac-year-stale-note {
    font-size: 0.85rem;
    color: #666;
    max-width: 60em;
    line-height: 1.5;
    margin: 0 0 4px;
}

/* vacations/vacations.css — the school-year calendar sits inside
 * `.container > .axcal-content` (the same column as the vacation list).
 */

.vac-year-section {
    width: 100%;
    box-sizing: border-box;
    padding: 4px 0 32px;
    margin: 0;
}

.vac-year-table-wrap {
    width: 100%;
    box-sizing: border-box;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.vac-year-table td.vac-day,
.vac-year-table td.vac-day-empty {
    width: 26px;
    background-clip: padding-box;
}
@media screen {
    .vac-year-table-wrap {
        zoom: 0.6;
    }
    .vac-year-table td.vac-day,
    .vac-year-table td.vac-day-empty {
        height: clamp(38.4px, calc((100vh - 260px) / 12 * 0.8), 76.8px);
    }
}

.vac-year-table {
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed;
    width: 100%;
}

/* One 1px edge per side. The Saturday→Sunday divider is ONLY the next
 * cell's inline-start (see .vac-dow-6 + td), so it cannot stack to 2px. */
.vac-year-table th,
.vac-year-table td {
    border: 1px solid #d0d5da;
    vertical-align: top;
    padding: 2px 1px;
    font-size: 10px;
    box-sizing: border-box;
}
.vac-year-table td.vac-day,
.vac-year-table td.vac-day-empty {
    text-align: left;
    direction: ltr;
    padding-left: 5px;
    padding-right: 1px;
}
.vac-year-table td.vac-day .vac-day-num,
.vac-year-table td.vac-day .vac-day-heb,
.vac-year-table td.vac-day .vac-day-holiday {
    text-align: left;
}
.vac-year-table[data-date-primary="hebrew"] td.vac-day,
.vac-year-table[data-date-primary="hebrew"] td.vac-day-empty {
    text-align: right;
    direction: rtl;
    padding-right: 5px;
    padding-left: 1px;
}
.vac-year-table[data-date-primary="hebrew"] td.vac-day .vac-day-num,
.vac-year-table[data-date-primary="hebrew"] td.vac-day .vac-day-heb,
.vac-year-table[data-date-primary="hebrew"] td.vac-day .vac-day-holiday {
    text-align: right;
}

.vac-year-table .vac-dow-6 {
    border-inline-end-color: #6e757c;
}
.vac-year-table .vac-dow-6 + td {
    border-inline-start-color: #6e757c;
}

.vac-year-table thead {
    height: auto;
}
.vac-year-table thead tr {
    height: 18px;
}
.vac-year-table thead th {
    background: #f6f8fa;
    font-weight: 600;
    text-align: center;
    vertical-align: middle;
    padding: 1px 2px;
    height: 18px;
    max-height: 18px;
    line-height: 1.2;
    font-size: 10px;
}

.vac-year-table .vac-year-corner,
.vac-year-table .vac-month-label {
    text-align: right;
    vertical-align: middle;
    white-space: nowrap;
    font-weight: 700;
    padding-right: 8px;
    padding-left: 4px;
    background: #f6f8fa;
    width: 96px;
}
.vac-year-table thead th.vac-year-corner {
    height: 18px;
}

.vac-month-greg {
    display: block;
    font-size: 12px;
}

.vac-month-heb {
    display: block;
    font-size: 9px;
    font-weight: 400;
    color: #666;
}

.vac-year-heading-row {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap;
    margin: 0 0 8px;
}
.vac-year-heading-row .vac-year-heading {
    margin: 0;
    flex: 0 1 auto;
}
.page-vacations .vac-year-heading-row > .print-button,
.page-vacations .vac-year-heading-row > .download-pdf-button,
.page-vacations .vac-year-heading-row .vac-type-toggle a {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    padding: 5px 11px;
    font-size: 13px;
    line-height: 1.25;
    white-space: nowrap;
    margin-top: 0;
    width: auto;
    border-radius: 6px;
    gap: 0;
}
.vac-year-heading-row .vac-type-toggle {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    padding: 0;
    margin-top: 0;
    margin-inline-start: 2px;
    padding-inline-start: 14px;
    border-inline-start: 1px solid #d8d8d8;
    font-size: 13px;
    gap: 6px;
}
.vac-year-heading-row .vac-type-toggle a {
    background: #eeeeee;
    border: 1px solid #d0d5da;
    color: #555;
    text-decoration: none;
}
.vac-year-heading-row .vac-type-toggle a:hover,
.vac-year-heading-row .vac-type-toggle a:focus-visible {
    background: #e6e6e6;
    color: #333;
}
.vac-year-heading-row .vac-type-toggle a[aria-current="date"] {
    color: #1f3a5f;
    font-weight: 600;
    background: #d4e2f0;
    border-color: #b8cce0;
}
.vac-year-heading-row .vac-type-toggle a[aria-current="date"]:hover,
.vac-year-heading-row .vac-type-toggle a[aria-current="date"]:focus-visible {
    background: #d4e2f0;
    color: #1f3a5f;
}

.vac-year-table[data-date-primary="hebrew"] .vac-day-primary,
.vac-year-table[data-date-primary="hebrew"] .vac-day-heb {
    display: block;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    padding-top: 4px;
    color: #000 !important;
}
.vac-year-table[data-date-primary="hebrew"] .vac-day-secondary,
.vac-year-table[data-date-primary="hebrew"] .vac-day-num {
    display: block;
    font-size: 8px;
    font-weight: 400;
    color: #000 !important;
    padding-top: 0;
}

.vac-hebrew-dates-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.95rem;
    line-height: 1.6;
}
.vac-hebrew-dates-table th,
.vac-hebrew-dates-table td {
    text-align: start;
    padding: 6px 8px 6px 0;
    vertical-align: top;
    border-bottom: 1px solid #e8eaed;
}
.vac-hebrew-dates-table th {
    font-weight: 700;
    white-space: nowrap;
    padding-inline-end: 16px;
}

.vac-day-num {
    display: block;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    padding-top: 4px;
    color: #000 !important;
}

.vac-day-heb {
    display: block;
    font-size: 8px;
    color: #000 !important;
    line-height: 1.1;
}

.vac-day-holiday {
    display: block;
    font-size: 6.5px;
    line-height: 1.15;
    overflow-wrap: break-word;
    background: none;
    margin-top: 5px;
    color: #000;
}

/* Rosh Chodesh: "ר״ח <month>" in tiny black text, never a fill. */
.vac-day-rc {
    font-size: 6px;
    font-weight: 400;
    line-height: 1.1;
    color: #000 !important;
    background: none !important;
    margin-top: 5px;
}

/* Friday / Saturday — monthly greys lightened 30% toward white, including
 * empty leading/trailing slots (vac-dow-5 / vac-dow-6). */
.vac-year-table td.vac-dow-5,
.vac-year-table td.vac-day-friday {
    background: #f1f1f1;
}
.vac-year-table td.vac-dow-6,
.vac-year-table td.vac-day-saturday {
    background: #e0e0e0;
}

.vac-year-table thead th.vac-dow-5,
.vac-year-table thead th.vac-dow-6 {
    background: #f6f8fa;
}

.vac-year-table td.vac-day-vacation {
    background: #dbeeff;
    box-shadow: inset 0 -3px 0 #0a3d91;
}

.vac-year-legend {
    margin: 14px 0 4px;
    font-size: 0.85rem;
    color: #444;
}

.vac-legend-swatch {
    display: inline-block;
    width: 14px;
    height: 14px;
    border-radius: 2px;
    vertical-align: middle;
    margin-inline-end: 6px;
    box-sizing: border-box;
}
.vac-legend-vacation {
    background: #dbeeff;
    border: 1px solid #b7d7f2;
    box-shadow: inset 0 -3px 0 #0a3d91;
}

.vac-year-footnote {
    font-size: 0.8rem;
    color: #666;
    line-height: 1.6;
    max-width: 70em;
    margin: 8px 0 0;
}
.vac-year-unique {
    font-size: 0.95rem;
    color: #333;
    line-height: 1.65;
    max-width: 70em;
    margin: 10px 0 0;
}

@media (max-width: 768px) {
    .vac-year-section { width: 100%; padding: 16px 16px 32px; }
    .vac-year-heading { font-size: 1.1rem; }
}

@media print {
    .vac-type-toggle { display: none !important; }
    html[data-vac-print="calendar"] #site-nav,
    html[data-vac-print="calendar"] .site-attribution {
        display: none !important;
    }
    html[data-vac-print="calendar"],
    html[data-vac-print="calendar"] body {
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
    }
    html[data-vac-print="calendar"] body {
        display: flex;
        flex-direction: column;
        height: 100%;
    }
    html[data-vac-print="calendar"] .page-vacations .container,
    html[data-vac-print="calendar"] .page-vacations .container > .axcal-content {
        display: flex !important;
        flex-direction: column;
        flex: 1 1 auto;
        min-height: 0;
        height: 100%;
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden;
    }
    .vac-year-section {
        padding: 0;
        margin: 0;
        max-width: none;
        width: 100%;
        zoom: 1;
        flex: 1 1 auto;
        height: 100%;
        min-height: 0;
        display: flex !important;
        flex-direction: column;
        overflow: hidden;
    }
    .vac-year-heading-print {
        display: block !important;
        margin: 0 0 1.5mm;
        font-size: 10pt;
        flex: 0 0 auto;
    }
    .vac-year-heading-row { margin: 0 0 1.5mm; flex: 0 0 auto; }
    .vac-year-heading { font-size: 10pt; }
    .vac-year-table-wrap {
        overflow: visible;
        flex: 1 1 auto;
        display: flex;
        min-height: 0;
        width: 100%;
        zoom: 1;
    }
    .vac-year-table {
        min-width: 0;
        width: 100%;
        height: 100%;
        font-size: 6.5pt;
        border-collapse: collapse;
        border-spacing: 0;
    }
    .vac-year-table thead { height: 3.2%; }
    .vac-year-table tbody { height: 96.8%; }
    .vac-year-table tbody tr { height: calc(96.8% / 12); }
    .vac-year-table th,
    .vac-year-table td,
    .vac-year-table td.vac-day,
    .vac-year-table td.vac-day-empty {
        padding: 0 1px;
        border: 0.25pt solid #d0d5da;
        height: auto;
        width: auto;
    }
    .vac-year-table thead th {
        padding: 0 1px;
        height: auto;
        text-align: center;
        vertical-align: middle;
        line-height: 1.15;
    }
    .vac-year-table .vac-year-corner,
    .vac-year-table .vac-month-label {
        width: 18mm;
        text-align: right;
        padding-right: 1.5mm;
        padding-left: 0.5mm;
        vertical-align: middle;
    }
    .vac-year-table td.vac-day,
    .vac-year-table td.vac-day-empty {
        text-align: left;
        padding-left: 5px;
        padding-right: 1px;
    }
    .vac-year-table[data-date-primary="hebrew"] td.vac-day,
    .vac-year-table[data-date-primary="hebrew"] td.vac-day-empty {
        text-align: right;
        padding-right: 5px;
        padding-left: 1px;
    }
    .vac-year-table .vac-dow-6 {
        border-inline-end-color: #6e757c;
    }
    .vac-year-table .vac-dow-6 + td {
        border-inline-start-color: #6e757c;
    }
    html[data-vac-print="calendar"] .vac-year-section > .more-formats {
        display: none !important;
    }
    .vac-day-num { font-size: 7pt; padding-top: 0.6mm; }
    .vac-day-heb { font-size: 5pt; }
    .vac-year-table[data-date-primary="hebrew"] .vac-day-heb { font-size: 7pt; padding-top: 0.6mm; }
    .vac-year-table[data-date-primary="hebrew"] .vac-day-num { font-size: 5pt; padding-top: 0; }
    .page-hebrew-vacations .vac-year-table tbody tr { height: calc(96.8% / 14); }
    .vac-day-holiday { font-size: 4.5pt; }
    .vac-day-rc { font-size: 4.5pt; }
    .vac-year-table td.vac-day-vacation { box-shadow: inset 0 -2px 0 #0a3d91; }

    .vac-year-table td.vac-dow-5,
    .vac-year-table td.vac-dow-6,
    .vac-year-table td.vac-day-vacation,
    .vac-year-table td.vac-day-friday,
    .vac-year-table td.vac-day-saturday,
    .vac-year-table td.vac-day-holiday-fill,
    .vac-year-table td.vac-day-erev,
    .vac-year-table td.vac-day-chol {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
        color-adjust: exact;
    }
    .vac-year-table td.vac-day-holiday-fill,
    .vac-year-table td.vac-day-erev {
        --holiday-screen-bg: var(--holiday-print-bg) !important;
    }
    .vac-year-stale-note,
    .vac-year-legend,
    .vac-year-footnote,
    .vac-year-unique { display: none !important; }
}
