@font-face { font-family: 'NSH'; src: url('fonts/NotoSansHebrew.ttf'); }
* { box-sizing: border-box; }
.bar { position: sticky; top: 0; z-index: 5; display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 10px 12px; background: #222C64; color: #fff; }
.bar a { color: #fff; text-decoration: none; font-weight: 600; }
.bar button { font: inherit; font-weight: 600; border: 0; border-radius: 10px; padding: 9px 14px; margin-left: 6px; background: #fff; color: #222C64; cursor: pointer; }
.bar button.primary { background: #ffd34d; }
.bar button:focus-visible, .bar a:focus-visible { outline: 3px solid #ffd34d; outline-offset: 2px; }
#wrap { padding: 0; overflow: hidden; }
.chart-tools { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; margin-bottom: 16px; }
.chart-tools label { display: inline-flex; gap: 8px; align-items: center; font-weight: 600; color: var(--navy); }
.chart-tools select { font: inherit; padding: 8px 10px; border-radius: 10px; border: 1px solid #c9ccd8; background: #fff; }
tr.zm td { font-size: 11px; color: #333; }
tr.r-_z_alos td, tr.r-_z_alos th { border-top: 2px solid #222C64; }
tr.zm th.label { background: #f4f2ec; }
#pdfhold { position: absolute; left: -10000px; top: 0; }
.page { width: 1056px; height: 816px; padding: 22px 26px; background: #fff; transform-origin: top left; box-shadow: 0 2px 12px rgba(0,0,0,.15);
  font-family: 'NSH', 'Noto Sans Hebrew', 'DejaVu Sans', sans-serif; font-size: 12.4px; color: #111; overflow: hidden; }
#pdfpage { box-shadow: none; }
.page h1 { text-align: center; font-size: 22px; margin: 0; }
.page h2 { text-align: center; font-size: 17px; margin: 0 0 4px; font-weight: 600; }
table.main { width: 100%; border-collapse: collapse; table-layout: fixed; }
table.main th, table.main td { border: 0.8px solid #555; text-align: center; padding: 2.4px 2px; }
table.main th.label { text-align: right; padding-right: 6px; background: #eef1f6; font-weight: 600; white-space: nowrap; overflow: hidden; }
table.main th.parsha { background: #222C64; color: #fff; font-size: 13px; }
th.corner { background: #222C64; }
td.special { font-size: 9.6px; color: #7a1f1f; font-weight: 600; height: 15px; }
td.date { font-weight: 700; background: #f6f6f6; }
tr.shab td { background: #fbfbf7; }
tr.r-shabbos_mincha td, tr.r-erev_shabbos_mincha td, tr.r-candle_lighting td, tr.r-weekday_mincha td { font-weight: 700; }
tr.r-halacha_shiur td, tr.r-halacha_shiur th, tr.r-weekday_mincha td, tr.r-weekday_mincha th { border-top: 2px solid #222C64; }
.szks { white-space: nowrap; font-size: 10.4px; }
.en { font-size: 9.5px; font-weight: 400; color: #333; }
.flag { background: #ffe14d; padding: 0 2px; }
.ovr { text-decoration: underline; }
td.tba { color: #888; }
.footer { width: 100%; margin-top: 8px; font-size: 9.8px; border-collapse: separate; border-spacing: 5px 0; }
.footer td { vertical-align: top; padding: 0; }
table.fixed, table.molad { border-collapse: collapse; }
table.fixed th, table.fixed td, table.molad th, table.molad td { border: 0.6px solid #777; padding: 1px 4px; text-align: right; white-space: nowrap; }
table.fixed td, table.molad td { text-align: left; }
table.molad tr.sep td, table.molad tr.sep th { border-bottom: 1.8px solid #222C64; }
.box { border: 0.6px solid #777; padding: 1px 5px; margin-bottom: 3px; text-align: center; direction: ltr; }
.emergbox { direction: ltr; text-align: left; border: 0.6px solid #777; padding: 2px 6px; white-space: nowrap; }
.review { font-size: 9.5px; margin-top: 4px; } .review ul { margin: 0; padding-left: 14px; }
.gen { direction: ltr; text-align: left; font-size: 8.2px; color: #777; margin-top: 2px; }
.loading { direction: ltr; text-align: center; color: #666; }
@media print {
  @page { size: letter landscape; margin: 0; }
  body { background: #fff; } .no-print, .site-head, .site-foot, .page-head, .chart-tools { display: none !important; } .section { padding: 0 !important; } .wrap { padding: 0 !important; max-width: none !important; } #wrap { padding: 0; height: auto !important; }
  .page { transform: none !important; box-shadow: none; }
}
.box b.he { display: inline-block; direction: rtl; }

#wrap { max-width: 1056px; }
