
{"id":1589,"date":"2024-12-18T14:37:45","date_gmt":"2024-12-18T14:37:45","guid":{"rendered":"https:\/\/daf.tfilot.org\/?page_id=1589"},"modified":"2026-01-06T23:58:00","modified_gmt":"2026-01-06T23:58:00","slug":"%d7%9b%d7%a0%d7%99%d7%a1%d7%aa-%d7%9e%d7%a9%d7%aa%d7%9e%d7%a9%d7%99%d7%9d","status":"publish","type":"page","link":"https:\/\/daf.tfilot.org\/?page_id=1589","title":{"rendered":"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1589\" class=\"elementor elementor-1589\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-7b64692 elementor-section-full_width elementor-section-stretched elementor-section-height-default elementor-section-height-default\" data-id=\"7b64692\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;stretch_section&quot;:&quot;section-stretched&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3477a44\" data-id=\"3477a44\" data-element_type=\"column\" data-e-type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-2219b4d elementor-widget elementor-widget-heading\" data-id=\"2219b4d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<section class=\"elementor-section elementor-inner-section elementor-element elementor-element-c8eaadb elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"c8eaadb\" data-element_type=\"section\" data-e-type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-inner-column elementor-element elementor-element-a4e35a9\" data-id=\"a4e35a9\" data-element_type=\"column\" data-e-type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-348ef86 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"348ef86\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!doctype html>\n<html lang=\"he\" dir=\"rtl\">\n<head>\n  <meta charset=\"utf-8\" \/>\n  <meta name=\"viewport\" content=\"width=device-width,initial-scale=1\" \/>\n  <title>\u05dc\u05d5\u05d7 \u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9<\/title>\n\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n  <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n  <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Heebo:wght@400;700;800;900&display=swap\" rel=\"stylesheet\">\n\n  <style>\n  :root{\n    --primary:#8b4518;\n    --primary-2:#6f3412;\n    --accent:#f7d36b;\n    --bg:#ffeb00;\n    --card:#ffffff;\n    --text:#3a1f12;\n    --muted:#7a5a48;\n    --border:rgba(0,0,0,.12);\n    --radius:16px;\n  }\n  *{box-sizing:border-box}\n  body{\n    margin:0;\n    font-family:\"Heebo\",system-ui,-apple-system,\"Segoe UI\",Arial,sans-serif;\n    background:var(--bg);\n    color:var(--text);\n  }\n  .wrap{max-width:1100px;margin:18px auto;padding:0 14px}\n  .card{\n    background:var(--card);\n    border-radius:var(--radius);\n    overflow:hidden;\n    border:1px solid var(--border);\n    box-shadow:none; \/* \u05d1\u05dc\u05d9 \u05d4\u05e6\u05dc\u05dc\u05d5\u05ea *\/\n  }\n\n  \/* Banner *\/\n  .top-banner{\n    width:100%;\n    background:linear-gradient(180deg,var(--primary),var(--primary-2));\n    color:#fff;\n    padding:18px 14px;\n    text-align:center;\n    font-weight:900;\n    font-size:1.85rem;\n    line-height:1.35;\n  }\n  .top-banner .accent{color:var(--accent)}\n  @media (max-width:740px){\n    .top-banner{font-size:1.35rem;padding:14px 12px}\n  }\n\n  \/* Controls *\/\n  .controls{\n    display:flex;\n    flex-wrap:wrap;\n    gap:10px;\n    padding:14px;\n    align-items:center;\n    justify-content:space-between;\n    border-bottom:1px solid var(--border);\n    background:rgba(247,211,107,.18);\n  }\n  .left,.right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}\n  .btn,.picker{\n    border:1px solid var(--border);\n    background:#fff;\n    padding:10px 12px;\n    border-radius:12px;\n    font-weight:900;\n    color:var(--primary-2);\n    box-shadow:none;\n  }\n  .btn{cursor:pointer}\n  .btn:active{transform:translateY(1px)}\n  .picker{min-width:240px}\n  .toggle{\n    display:flex;\n    gap:8px;\n    align-items:center;\n    padding:8px 10px;\n    border-radius:12px;\n    border:1px solid var(--border);\n    background:#fff;\n    font-weight:900;\n    color:var(--primary-2);\n    box-shadow:none;\n  }\n  .toggle label{cursor:pointer;display:flex;gap:6px;align-items:center}\n  .toggle input{accent-color: var(--primary);}\n\n  \/* Calendar (Desktop) *\/\n  .cal-wrap{padding:14px}\n  table.calendar{\n    width:100%;\n    table-layout:fixed;\n    border-collapse:collapse; \/* \u05d1\u05dc\u05d9 \u201c\u05de\u05e1\u05d2\u05d5\u05e8 \u05e4\u05e0\u05d9\u05de\u05d9\u201d \u05e2\u05dd \u05e4\u05d9\u05e0\u05d5\u05ea *\/\n  }\n  .calendar th,.calendar td{border:1px solid rgba(0,0,0,.10)}\n  .calendar th{\n    background:var(--primary);\n    color:#fff;\n    text-align:center;\n    font-weight:900;\n    padding:10px 0;\n  }\n\n  \/* \u05d4\u05d1\u05d7\u05e0\u05d4 \u05d1\u05d9\u05df \u05e9\u05d1\u05d5\u05e2\u05d5\u05ea *\/\n  .calendar tr:nth-child(even) td{ background: rgba(255,255,255,.55); }\n  .calendar tr:nth-child(odd)  td{ background: rgba(255,255,255,.82); }\n\n  \/* \u05e1\u05d5\u05e4\"\u05e9 *\/\n  .calendar td:nth-child(6),\n  .calendar td:nth-child(7){ background: rgba(247,211,107,.20); }\n\n  \/* Hover *\/\n  .calendar td:hover{ background: rgba(247,211,107,.35); }\n\n  \/* \u05d4\u05d6\u05d7\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea \u05dc\u05ea\u05d0\u05d9\u05dd (\u05e9\u05dc\u05d0 \u05d9\u05d9\u05d3\u05d1\u05e7 \u05dc\u05e7\u05d5) *\/\n  .calendar td{\n    padding:10px 8px;\n    vertical-align:top;\n  }\n\n  \/* \u05db\u05dc \u05d4\u05ea\u05d0 \u05dc\u05d7\u05d9\u05e5 *\/\n  a.cell-link{\n    display:block;\n    width:100%;\n    height:100%;\n    color:inherit;\n    text-decoration:none;\n  }\n  a.cell-link:focus{\n    outline:2px solid var(--accent);\n    outline-offset:3px;\n    border-radius:0;\n  }\n\n  \/* \u05ea\u05d0 \u05d9\u05d5\u05dd *\/\n  .day{\n  min-height:112px;   \/* \u05d2\u05d5\u05d1\u05d4 \u05de\u05d9\u05e0\u05d9\u05de\u05dc\u05d9 \u05d0\u05d7\u05d9\u05d3 *\/\n  height:auto;        \/* \u05de\u05d0\u05e4\u05e9\u05e8 \u05d4\u05ea\u05e8\u05d7\u05d1\u05d5\u05ea *\/\n  display:flex;\n  flex-direction:column;\n  position:relative;\n  background:transparent;\n  border:0;\n  border-radius:0;\n  box-shadow:none;\n  overflow:hidden;\n}\n\n  .tooltip{\n    position:absolute;\n    left:10px;\n    top:10px;\n    background:rgba(0,0,0,.75);\n    color:#fff;\n    padding:6px 8px;\n    border-radius:10px;\n    font-size:.82rem;\n    font-weight:800;\n    opacity:0;\n    transform:translateY(-4px);\n    transition:.15s;\n    pointer-events:none;\n  }\n  .day:hover .tooltip{opacity:1;transform:translateY(0)}\n\n  \/* \u05ea\u05d5\u05db\u05df \u05d4\u05ea\u05d0 *\/\n  .day .inner{\n    height:100%;\n    width:100%;\n    display:flex;\n    flex-direction:column;\n    gap:6px;\n  }\n  .gdate{\n    font-weight:900;\n    color:var(--primary-2);\n    display:flex;\n    justify-content:space-between;\n    align-items:center;\n  }\n  .hdate{\n    font-size:.92rem;\n    color:var(--muted);\n    font-weight:800;\n  }\n\n  .badges{display:flex;flex-wrap:wrap;gap:6px}\n  .badge{\n    font-size:.78rem;\n    font-weight:900;\n    padding:4px 8px;\n    border-radius:999px;\n    border:1px solid var(--border);\n    background:rgba(0,0,0,.03);\n    color:var(--primary-2);\n    white-space:nowrap;\n  }\n  .badge.holiday{background:rgba(247,211,107,.35);border-color:rgba(247,211,107,.8)}\n  .badge.rosh{background:rgba(122,59,24,.08);border-color:rgba(122,59,24,.22)}\n  .badge.parasha{background:rgba(122,59,24,.12);border-color:rgba(122,59,24,.25)}\n\n  \/* \u05d3\u05e3 \u05d9\u05d5\u05de\u05d9: \u05e7\u05d8\u05df \u05d9\u05d5\u05ea\u05e8 \u05d5\u05de\u05d5\u05e6\u05de\u05d3 \u05dc\u05ea\u05d7\u05ea\u05d9\u05ea *\/\n  .daf{\n    margin-top:auto;\n    padding:4px 6px;\n    font-size:13px;\n    line-height:1.2;\n    background: rgba(255,235,160,.85);\n    border:1px solid rgba(180,130,60,.35);\n    border-radius:0;\n    box-shadow:none;\n    text-align:center;\n  }\n\n  \/* Mobile *\/\n  .mobile-list{display:none;padding:14px}\n  .mcard{\n    background:#fff;\n    border:1px solid var(--border);\n    border-radius:16px;\n    padding:14px;\n    box-shadow:none; \/* \u05d1\u05dc\u05d9 \u05d4\u05e6\u05dc\u05dc\u05d5\u05ea *\/\n    margin-bottom:12px;\n  }\n  .mhead{display:flex;justify-content:space-between;align-items:baseline;gap:10px}\n  .mhead .g{font-weight:900;color:var(--primary-2);font-size:1.15rem}\n  .mhead .dow{font-weight:900;color:var(--muted)}\n  .mheb{margin-top:4px;color:var(--muted);font-weight:800}\n  .mdaf{\n    margin-top:10px;\n    border:1px solid rgba(247,211,107,.85);\n    background:rgba(247,211,107,.35);\n    border-radius:12px;\n    padding:10px 12px;\n    text-align:center;\n    font-weight:900;\n    color:var(--primary-2);\n    font-size:1.05rem;\n  }\n  .mbadges{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap}\n  .mbuttons{display:flex;gap:8px;margin-top:12px}\n  .mbtn{\n    flex:1;\n    text-align:center;\n    padding:10px 10px;\n    border-radius:12px;\n    font-weight:900;\n    border:1px solid var(--border);\n    background:#fff;\n    color:var(--primary-2);\n    cursor:pointer;\n    box-shadow:none;\n  }\n  .mbtn.sefaria{background:var(--accent)}\n\n  @media (max-width:740px){\n    .cal-wrap{display:none}\n    .mobile-list{display:block}\n    .picker{min-width:0; width:100%}\n    .left,.right{width:100%}\n    .controls{gap:12px}\n    .toggle{width:100%;justify-content:space-between}\n  }\n\n  .hint{\n    padding:16px 14px;\n    text-align:center;\n    color:var(--muted);\n    font-weight:800;\n    border-top:1px solid var(--border);\n    background:rgba(0,0,0,.02);\n  }\n  .error{\n    padding:14px;\n    text-align:center;\n    font-weight:900;\n    color:#8a0000;\n    background:rgba(255,0,0,.06);\n    border-top:1px solid rgba(255,0,0,.18);\n  }\n<style>\n  :root{\n    --primary:#8b4518;\n    --primary-2:#6f3412;\n    --accent:#f7d36b;\n    --bg:#ffeb00;\n    --card:#ffffff;\n    --text:#3a1f12;\n    --muted:#7a5a48;\n    --border:rgba(0,0,0,.12);\n    --radius:16px;\n  }\n  *{box-sizing:border-box}\n  body{\n    margin:0;\n    font-family:\"Heebo\",system-ui,-apple-system,\"Segoe UI\",Arial,sans-serif;\n    background:var(--bg);\n    color:var(--text);\n  }\n  .wrap{max-width:1100px;margin:18px auto;padding:0 14px}\n  .card{\n    background:var(--card);\n    border-radius:var(--radius);\n    overflow:hidden;\n    border:1px solid var(--border);\n    box-shadow:none; \/* \u05d1\u05dc\u05d9 \u05d4\u05e6\u05dc\u05dc\u05d5\u05ea *\/\n  }\n\n  \/* Banner *\/\n  .top-banner{\n    width:100%;\n    background:linear-gradient(180deg,var(--primary),var(--primary-2));\n    color:#fff;\n    padding:18px 14px;\n    text-align:center;\n    font-weight:900;\n    font-size:1.85rem;\n    line-height:1.35;\n  }\n  .top-banner .accent{color:var(--accent)}\n  @media (max-width:740px){\n    .top-banner{font-size:1.35rem;padding:14px 12px}\n  }\n\n  \/* Controls *\/\n  .controls{\n    display:flex;\n    flex-wrap:wrap;\n    gap:10px;\n    padding:14px;\n    align-items:center;\n    justify-content:space-between;\n    border-bottom:1px solid var(--border);\n    background:rgba(247,211,107,.18);\n  }\n  .left,.right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}\n  .btn,.picker{\n    border:1px solid var(--border);\n    background:#fff;\n    padding:10px 12px;\n    border-radius:12px;\n    font-weight:900;\n    color:var(--primary-2);\n    box-shadow:none;\n  }\n  .btn{cursor:pointer}\n  .btn:active{transform:translateY(1px)}\n  .picker{min-width:240px}\n  .toggle{\n    display:flex;\n    gap:8px;\n    align-items:center;\n    padding:8px 10px;\n    border-radius:12px;\n    border:1px solid var(--border);\n    background:#fff;\n    font-weight:900;\n    color:var(--primary-2);\n    box-shadow:none;\n  }\n  .toggle label{cursor:pointer;display:flex;gap:6px;align-items:center}\n  .toggle input{accent-color: var(--primary);}\n\n  \/* Calendar (Desktop) *\/\n  .cal-wrap{padding:14px}\n  table.calendar{\n    width:100%;\n    table-layout:fixed;\n    border-collapse:collapse; \/* \u05d1\u05dc\u05d9 \u201c\u05de\u05e1\u05d2\u05d5\u05e8 \u05e4\u05e0\u05d9\u05de\u05d9\u201d \u05e2\u05dd \u05e4\u05d9\u05e0\u05d5\u05ea *\/\n  }\n  .calendar th,.calendar td{border:1px solid rgba(0,0,0,.10)}\n  .calendar th{\n    background:var(--primary);\n    color:#fff;\n    text-align:center;\n    font-weight:900;\n    padding:10px 0;\n  }\n\n  \/* \u05d4\u05d1\u05d7\u05e0\u05d4 \u05d1\u05d9\u05df \u05e9\u05d1\u05d5\u05e2\u05d5\u05ea *\/\n  .calendar tr:nth-child(even) td{ background: rgba(255,255,255,.55); }\n  .calendar tr:nth-child(odd)  td{ background: rgba(255,255,255,.82); }\n\n  \/* \u05e1\u05d5\u05e4\"\u05e9 *\/\n  .calendar td:nth-child(6),\n  .calendar td:nth-child(7){ background: rgba(247,211,107,.20); }\n\n  \/* Hover *\/\n  .calendar td:hover{ background: rgba(247,211,107,.35); }\n\n  \/* \u05d4\u05d6\u05d7\u05d4 \u05e4\u05e0\u05d9\u05de\u05d9\u05ea \u05dc\u05ea\u05d0\u05d9\u05dd (\u05e9\u05dc\u05d0 \u05d9\u05d9\u05d3\u05d1\u05e7 \u05dc\u05e7\u05d5) *\/\n  .calendar td{\n    padding:10px 8px;\n    vertical-align:top;\n  }\n\n  \/* \u05db\u05dc \u05d4\u05ea\u05d0 \u05dc\u05d7\u05d9\u05e5 *\/\n  a.cell-link{\n    display:block;\n    width:100%;\n    height:100%;\n    color:inherit;\n    text-decoration:none;\n  }\n  a.cell-link:focus{\n    outline:2px solid var(--accent);\n    outline-offset:3px;\n    border-radius:0;\n  }\n\n  \/* \u05ea\u05d0 \u05d9\u05d5\u05dd *\/\n  .day{\n  min-height:112px;   \/* \u05d2\u05d5\u05d1\u05d4 \u05de\u05d9\u05e0\u05d9\u05de\u05dc\u05d9 \u05d0\u05d7\u05d9\u05d3 *\/\n  height:auto;        \/* \u05de\u05d0\u05e4\u05e9\u05e8 \u05d4\u05ea\u05e8\u05d7\u05d1\u05d5\u05ea *\/\n  display:flex;\n  flex-direction:column;\n  position:relative;\n  background:transparent;\n  border:0;\n  border-radius:0;\n  box-shadow:none;\n  overflow:hidden;\n}\n\n  .day.today{\n  outline: none;\n  background: rgba(247,211,107,.25); \/* \u05e0\u05e9\u05d0\u05e8\u05ea \u05d4\u05d3\u05d2\u05e9\u05d4 \u05d1\u05e8\u05e7\u05e2 *\/\n}\n\n  .tooltip{\n    position:absolute;\n    left:10px;\n    top:10px;\n    background:rgba(0,0,0,.75);\n    color:#fff;\n    padding:6px 8px;\n    border-radius:10px;\n    font-size:.82rem;\n    font-weight:800;\n    opacity:0;\n    transform:translateY(-4px);\n    transition:.15s;\n    pointer-events:none;\n  }\n  .day:hover .tooltip{opacity:1;transform:translateY(0)}\n\n  \/* \u05ea\u05d5\u05db\u05df \u05d4\u05ea\u05d0 *\/\n  .day .inner{\n    height:100%;\n    width:100%;\n    display:flex;\n    flex-direction:column;\n    gap:6px;\n  }\n  .gdate{\n    font-weight:900;\n    color:var(--primary-2);\n    display:flex;\n    justify-content:space-between;\n    align-items:center;\n  }\n  .hdate{\n    font-size:.92rem;\n    color:var(--muted);\n    font-weight:800;\n  }\n\n  .badges{display:flex;flex-wrap:wrap;gap:6px}\n  .badge{\n    font-size:.78rem;\n    font-weight:900;\n    padding:4px 8px;\n    border-radius:999px;\n    border:1px solid var(--border);\n    background:rgba(0,0,0,.03);\n    color:var(--primary-2);\n    white-space:nowrap;\n  }\n  .badge.holiday{background:rgba(247,211,107,.35);border-color:rgba(247,211,107,.8)}\n  .badge.rosh{background:rgba(122,59,24,.08);border-color:rgba(122,59,24,.22)}\n  .badge.parasha{background:rgba(122,59,24,.12);border-color:rgba(122,59,24,.25)}\n\n  \/* \u05d3\u05e3 \u05d9\u05d5\u05de\u05d9: \u05e7\u05d8\u05df \u05d9\u05d5\u05ea\u05e8 \u05d5\u05de\u05d5\u05e6\u05de\u05d3 \u05dc\u05ea\u05d7\u05ea\u05d9\u05ea *\/\n  .daf{\n    margin-top:auto;\n    padding:4px 6px;\n    font-size:13px;\n    line-height:1.2;\n    background: rgba(255,235,160,.85);\n    border:1px solid rgba(180,130,60,.35);\n    border-radius:0;\n    box-shadow:none;\n    text-align:center;\n  }\n\n  \/* Mobile *\/\n  .mobile-list{display:none;padding:14px}\n  .mcard{\n    background:#fff;\n    border:1px solid var(--border);\n    border-radius:16px;\n    padding:14px;\n    box-shadow:none; \/* \u05d1\u05dc\u05d9 \u05d4\u05e6\u05dc\u05dc\u05d5\u05ea *\/\n    margin-bottom:12px;\n  }\n  .mhead{display:flex;justify-content:space-between;align-items:baseline;gap:10px}\n  .mhead .g{font-weight:900;color:var(--primary-2);font-size:1.15rem}\n  .mhead .dow{font-weight:900;color:var(--muted)}\n  .mheb{margin-top:4px;color:var(--muted);font-weight:800}\n  .mdaf{\n    margin-top:10px;\n    border:1px solid rgba(247,211,107,.85);\n    background:rgba(247,211,107,.35);\n    border-radius:12px;\n    padding:10px 12px;\n    text-align:center;\n    font-weight:900;\n    color:var(--primary-2);\n    font-size:1.05rem;\n  }\n  .mbadges{margin-top:10px;display:flex;gap:6px;flex-wrap:wrap}\n  .mbuttons{display:flex;gap:8px;margin-top:12px}\n  .mbtn{\n    flex:1;\n    text-align:center;\n    padding:10px 10px;\n    border-radius:12px;\n    font-weight:900;\n    border:1px solid var(--border);\n    background:#fff;\n    color:var(--primary-2);\n    cursor:pointer;\n    box-shadow:none;\n  }\n  .mbtn.sefaria{background:var(--accent)}\n\n  @media (max-width:740px){\n    .cal-wrap{display:none}\n    .mobile-list{display:block}\n    .picker{min-width:0; width:100%}\n    .left,.right{width:100%}\n    .controls{gap:12px}\n    .toggle{width:100%;justify-content:space-between}\n  }\n\n  .hint{\n    padding:16px 14px;\n    text-align:center;\n    color:var(--muted);\n    font-weight:800;\n    border-top:1px solid var(--border);\n    background:rgba(0,0,0,.02);\n  }\n  .error{\n    padding:14px;\n    text-align:center;\n    font-weight:900;\n    color:#8a0000;\n    background:rgba(255,0,0,.06);\n    border-top:1px solid rgba(255,0,0,.18);\n  }\n\/* \u05de\u05d1\u05d8\u05d9\u05d7 \u05e9\u05d4\u05ea\u05d0 \u05de\u05ea\u05e8\u05d7\u05d1 \u05d5\u05e2\u05d5\u05d1\u05d3 \u05db\u05e2\u05de\u05d5\u05d3\u05d4 *\/\n.day{\n  min-height:112px;\n  height:auto;\n  display:flex;\n  flex-direction:column;\n}\n\n\/* \u05d4\u05ea\u05d5\u05db\u05df \u05d4\u05e4\u05e0\u05d9\u05de\u05d9 \u05d7\u05d9\u05d9\u05d1 \u05dc\u05de\u05dc\u05d0 \u05d2\u05d5\u05d1\u05d4 \u05db\u05d3\u05d9 \u05e9\u05d4\u05d3\u05d7\u05d9\u05e4\u05d4 \u05dc\u05de\u05d8\u05d4 \u05ea\u05e2\u05d1\u05d5\u05d3 *\/\n.day .inner{\n  display:flex;\n  flex-direction:column;\n  flex:1;              \/* \u05d4\u05db\u05d9 \u05d7\u05e9\u05d5\u05d1 *\/\n  min-height:0;\n}\n\n\/* \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 \u05e0\u05d3\u05d7\u05e3 \u05dc\u05ea\u05d7\u05ea\u05d9\u05ea *\/\n.day .daf{\n  margin-top:auto !important;\n  align-self:stretch;\n}\n\/* \u05e9\u05d5\u05e8\u05ea \u05d4\u05d9\u05de\u05d9\u05dd (TH) \u2013 \u05e0\u05e2\u05d9\u05dc\u05d4 \u05e0\u05d2\u05d3 CSS \u05e9\u05dc \u05d4\u05d0\u05ea\u05e8 \u05d4\u05de\u05d0\u05e8\u05d7 *\/\ntable.calendar thead th,\ntable.calendar th{\n  background: #8b4518 !important;\n  color: #ffffff !important;\n  font-weight: 900 !important;\n  opacity: 1 !important;\n}\n\n\/* \u05d0\u05dd \u05d1\u05d0\u05ea\u05e8 \u05e9\u05dc\u05da \u05d9\u05e9 \u05e4\u05d9\u05dc\u05d8\u05e8\u05d9\u05dd \u05e9\u05de\u05d7\u05dc\u05d9\u05e9\u05d9\u05dd \u05db\u05d5\u05ea\u05e8\u05d5\u05ea *\/\ntable.calendar thead,\ntable.calendar thead tr{\n  filter: none !important;\n}\n\n\/* \u05de\u05d5\u05e0\u05e2 \u05e9\u05e7\u05d9\u05e4\u05d5\u05ea \u05e9\u05e0\u05db\u05e0\u05e1\u05ea \u05de\u05d8\u05d1\u05dc\u05d0\u05d5\u05ea \u05db\u05dc\u05dc\u05d9\u05d5\u05ea \u05d1\u05d0\u05ea\u05e8 *\/\ntable.calendar{\n  background: #ffffff !important;\n}\n<\/style>\n<\/head>\n\n<body>\n  <div class=\"wrap\">\n    <div class=\"card\">\n      <div class=\"top-banner\" id=\"topBanner\" role=\"status\" aria-live=\"polite\">\u05d8\u05d5\u05e2\u05df\u2026<\/div>\n\n      <div class=\"controls\">\n        <div class=\"left\">\n          <button class=\"btn\" id=\"prevBtn\">\u05d7\u05d5\u05d3\u05e9 \u05e7\u05d5\u05d3\u05dd<\/button>\n          <button class=\"btn\" id=\"nextBtn\">\u05d7\u05d5\u05d3\u05e9 \u05d4\u05d1\u05d0<\/button>\n          <select class=\"picker\" id=\"hpicker\" aria-label=\"\u05d1\u05d7\u05d9\u05e8\u05ea \u05d7\u05d5\u05d3\u05e9\"><\/select>\n        <\/div>\n        <div class=\"right\">\n          <div class=\"toggle\" aria-label=\"\u05d1\u05d7\u05d9\u05e8\u05ea \u05de\u05e7\u05d5\u05e8 \u05dc\u05e4\u05ea\u05d9\u05d7\u05d4\">\n            <label><input type=\"radio\" name=\"prov\" value=\"hebrewbooks\" checked> HebrewBooks<\/label>\n            <label><input type=\"radio\" name=\"prov\" value=\"sefaria\"> Sefaria<\/label>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"cal-wrap\">\n        <table class=\"calendar\" id=\"calendar\"><\/table>\n      <\/div>\n\n      <div class=\"mobile-list\" id=\"mobileList\"><\/div>\n\n      <div class=\"hint\">\n        \u05d4\u05dc\u05d5\u05d7 \u05e0\u05d1\u05e0\u05d4 \u05dc\u05d8\u05d5\u05d1\u05ea \u05de\u05e9\u05ea\u05de\u05e9\u05d9 \u05d0\u05ea\u05e8 \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3 \u05dc\u05d5\u05de\u05d3\u05d9 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9, \u05e9\u05d9\u05de\u05d5 \u05dc\u05d1: \u05e2\u05e7\u05d1 \u05de\u05d5\u05d2\u05d1\u05dc\u05d5\u05ea \u05d4\u05e4\u05d9\u05ea\u05d5\u05d7 \u05d9\u05d9\u05ea\u05db\u05e0\u05d5 \u05e9\u05d9\u05d1\u05d5\u05e9\u05d9\u05dd \u05d1\u05dc\u05d5\u05d7 \u05e2\u05de\u05db\u05dd \u05d4\u05e1\u05dc\u05d9\u05d7\u05d4.\n      <\/div>\n\n      <div class=\"error\" id=\"errBox\" style=\"display:none;\"><\/div>\n    <\/div>\n  <\/div>\n\n<script>\n(() => {\n  \"use strict\";\n\n  const $ = (id) => document.getElementById(id);\n\n  const elBanner = $(\"topBanner\");\n  const elCalendar = $(\"calendar\");\n  const elMobile = $(\"mobileList\");\n  const elPicker = $(\"hpicker\");\n  const elErr = $(\"errBox\");\n  const elPrev = $(\"prevBtn\");\n  const elNext = $(\"nextBtn\");\n\n  const dows = [\"\u05e8\u05d0\u05e9\u05d5\u05df\",\"\u05e9\u05e0\u05d9\",\"\u05e9\u05dc\u05d9\u05e9\u05d9\",\"\u05e8\u05d1\u05d9\u05e2\u05d9\",\"\u05d7\u05de\u05d9\u05e9\u05d9\",\"\u05e9\u05d9\u05e9\u05d9\",\"\u05e9\u05d1\u05ea\"];\n\n  let view = new Date();\n  view = new Date(view.getFullYear(), view.getMonth(), 1);\n\n  function ymd(d){\n    const y = d.getFullYear();\n    const m = String(d.getMonth()+1).padStart(2,\"0\");\n    const day = String(d.getDate()).padStart(2,\"0\");\n    return `${y}-${m}-${day}`;\n  }\n  function ymKey(y, m1){ return `${y}-${String(m1).padStart(2,\"0\")}`; }\n  function daysInMonth(year, monthIndex0){\n    return new Date(year, monthIndex0+1, 0).getDate();\n  }\n  function dayDiff(fromDate, toDate){\n    const a = new Date(fromDate.getFullYear(), fromDate.getMonth(), fromDate.getDate());\n    const b = new Date(toDate.getFullYear(), toDate.getMonth(), toDate.getDate());\n    return Math.round((b - a) \/ 86400000);\n  }\n\n  function showError(msg){\n    elErr.style.display = \"block\";\n    elErr.textContent = msg;\n  }\n  function clearError(){\n    elErr.style.display = \"none\";\n    elErr.textContent = \"\";\n  }\n\n  function selectedProvider(){\n    const r = document.querySelector('input[name=\"prov\"]:checked');\n    return r ? r.value : \"hebrewbooks\";\n  }\n\n  \/\/ Hebrew date parsing: \"\u05db\u05f4\u05d8 \u05d0\u05d9\u05d9\u05e8 \u05ea\u05e9\u05e4\u05f4\u05d5\"\n  \n  function hebDayMonth(hebStr){\n    const parts = String(hebStr || \"\").trim().split(\/\\s+\/);\n    \/\/ expected: [day, month, year]\n    if(parts.length >= 2) return parts[0] + \" \" + parts[1];\n    return String(hebStr || \"\").trim();\n  }\n\nfunction hebMonthFromHebStr(hebStr){\n    const parts = String(hebStr || \"\").trim().split(\/\\s+\/);\n    return parts.length >= 2 ? parts[1] : \"\";\n  }\n  function hebRestFromHebStr(hebStr){\n    const parts = String(hebStr || \"\").trim().split(\/\\s+\/);\n    if(parts.length >= 3) return parts.slice(1).join(\" \");\n    return parts.slice(1).join(\" \");\n  }\n\n  const masechetMapEn = {\n    \"Berakhot\":1,\n    \"Shabbat\":2,\n    \"Eruvin\":3,\n    \"Pesachim\":4,\n    \"Shekalim\":5,\n    \"Yoma\":6,\n    \"Sukkah\":7,\n    \"Beitzah\":8,\n    \"Rosh Hashana\":9,\n    \"Taanit\":10,\n    \"Megillah\":11,\n    \"Moed Katan\":12,\n    \"Chagigah\":13,\n    \"Yevamot\":14,\n    \"Ketubot\":15,\n    \"Nedarim\":16,\n    \"Nazir\":17,\n    \"Sotah\":18,\n    \"Gittin\":19,\n    \"Kiddushin\":20,\n    \"Bava Kamma\":21,\n    \"Bava Metzia\":22,\n    \"Bava Batra\":23,\n    \"Sanhedrin\":24,\n    \"Makkot\":25,\n    \"Shevuot\":26,\n    \"Avodah Zarah\":27,\n    \"Horayot\":28,\n    \"Zevachim\":29,\n    \"Menachot\":30,\n    \"Chullin\":31,\n    \"Bekhorot\":32,\n    \"Arakhin\":33,\n    \"Temurah\":34,\n    \"Keritot\":35,\n    \"Meilah\":36,\n    \"Tamid\":37,\n    \"Middot\":38,\n    \"Kinnim\":39\n  };\n\nconst masechetHeb = {\n    \"Berakhot\":\"\u05d1\u05e8\u05db\u05d5\u05ea\",\"Shabbat\":\"\u05e9\u05d1\u05ea\",\"Eruvin\":\"\u05e2\u05d9\u05e8\u05d5\u05d1\u05d9\u05df\",\"Pesachim\":\"\u05e4\u05e1\u05d7\u05d9\u05dd\",\"Shekalim\":\"\u05e9\u05e7\u05dc\u05d9\u05dd\",\"Yoma\":\"\u05d9\u05d5\u05de\u05d0\",\n    \"Sukkah\":\"\u05e1\u05d5\u05db\u05d4\",\"Beitzah\":\"\u05d1\u05d9\u05e6\u05d4\",\"Rosh Hashana\":\"\u05e8\u05d0\u05e9 \u05d4\u05e9\u05e0\u05d4\",\"Taanit\":\"\u05ea\u05e2\u05e0\u05d9\u05ea\",\"Megillah\":\"\u05de\u05d2\u05d9\u05dc\u05d4\",\"Moed Katan\":\"\u05de\u05d5\u05e2\u05d3 \u05e7\u05d8\u05df\",\n    \"Chagigah\":\"\u05d7\u05d2\u05d9\u05d2\u05d4\",\"Yevamot\":\"\u05d9\u05d1\u05de\u05d5\u05ea\",\"Ketubot\":\"\u05db\u05ea\u05d5\u05d1\u05d5\u05ea\",\"Nedarim\":\"\u05e0\u05d3\u05e8\u05d9\u05dd\",\"Nazir\":\"\u05e0\u05d6\u05d9\u05e8\",\"Sotah\":\"\u05e1\u05d5\u05d8\u05d4\",\"Gittin\":\"\u05d2\u05d9\u05d8\u05d9\u05df\",\n    \"Kiddushin\":\"\u05e7\u05d9\u05d3\u05d5\u05e9\u05d9\u05df\",\"Bava Kamma\":\"\u05d1\u05d1\u05d0 \u05e7\u05de\u05d0\",\"Bava Metzia\":\"\u05d1\u05d1\u05d0 \u05de\u05e6\u05d9\u05e2\u05d0\",\"Bava Batra\":\"\u05d1\u05d1\u05d0 \u05d1\u05ea\u05e8\u05d0\",\"Sanhedrin\":\"\u05e1\u05e0\u05d4\u05d3\u05e8\u05d9\u05df\",\n    \"Makkot\":\"\u05de\u05db\u05d5\u05ea\",\"Shevuot\":\"\u05e9\u05d1\u05d5\u05e2\u05d5\u05ea\",\"Avodah Zarah\":\"\u05e2\u05d1\u05d5\u05d3\u05d4 \u05d6\u05e8\u05d4\",\"Horayot\":\"\u05d4\u05d5\u05e8\u05d9\u05d5\u05ea\",\"Zevachim\":\"\u05d6\u05d1\u05d7\u05d9\u05dd\",\"Menachot\":\"\u05de\u05e0\u05d7\u05d5\u05ea\",\n    \"Chullin\":\"\u05d7\u05d5\u05dc\u05d9\u05df\",\"Bekhorot\":\"\u05d1\u05db\u05d5\u05e8\u05d5\u05ea\",\"Arakhin\":\"\u05e2\u05e8\u05db\u05d9\u05df\",\"Temurah\":\"\u05ea\u05de\u05d5\u05e8\u05d4\",\"Keritot\":\"\u05db\u05e8\u05d9\u05ea\u05d5\u05ea\",\"Meilah\":\"\u05de\u05e2\u05d9\u05dc\u05d4\",\"Tamid\":\"\u05ea\u05de\u05d9\u05d3\",\n    \"Middot\":\"\u05de\u05d9\u05d3\u05d5\u05ea\",\"Kinnim\":\"\u05e7\u05d9\u05e0\u05d9\u05dd\"\n  };\n\n\n  function buildLinks(dafObj){\n    \/\/ dafObj: { title: \"Zevachim 112\", heb: \"...\", link: \"https:\/\/www.sefaria.org\/...\" }\n    if(!dafObj || !dafObj.title) return null;\n    const title = dafObj.title.trim();\n    const parts = title.split(\/\\s+\/);\n    if(parts.length < 2) return null;\n\n    const dafNum = parts[parts.length-1];           \/\/ e.g. \"112\"\n    const masechetEn = parts.slice(0,-1).join(\" \"); \/\/ e.g. \"Zevachim\"\n    const mid = masechetMapEn[masechetEn];\n    if(!mid) return null;\n\n    \/\/ Default to amud a\n    let dafForSefaria = dafNum;\n    if(!dafForSefaria.endsWith(\"a\") && !dafForSefaria.endsWith(\"b\")) dafForSefaria += \"a\";\n\n    \/\/ HebrewBooks uses: amud a => daf=112 (no 'a'); amud b => daf=112b\n    let dafForHebrewBooks = dafForSefaria;\n    if(dafForHebrewBooks.endsWith(\"a\")){\n      dafForHebrewBooks = dafForHebrewBooks.slice(0,-1); \/\/ remove 'a'\n    }\n\n    return {\n      hebrewbooks: `https:\/\/hebrewbooks.org\/shas.aspx?mesechta=${mid}&daf=${dafForHebrewBooks}&format=text`,\n      sefaria: (dafObj.link || `https:\/\/www.sefaria.org\/${encodeURIComponent(masechetEn)}.${dafForSefaria}?lang=he`)\n    };\n  }\n\n  async function fetchMonth(year, month1to12){\n    \/\/ Use Hebcal Jewish calendar REST API. Enable:\n    \/\/ d=on Hebrew date daily, nx=on Rosh Chodesh, s=on parasha, F=on Daf Yomi\n    const url = new URL(\"https:\/\/www.hebcal.com\/hebcal\");\n    url.searchParams.set(\"v\",\"1\");\n    url.searchParams.set(\"cfg\",\"json\");\n    url.searchParams.set(\"year\", String(year));\n    url.searchParams.set(\"month\", String(month1to12));\n    url.searchParams.set(\"i\",\"on\"); \/\/ Israel scheme\n    url.searchParams.set(\"d\",\"on\");\n    url.searchParams.set(\"nx\",\"on\");\n    url.searchParams.set(\"ss\",\"on\");\n    url.searchParams.set(\"mf\",\"on\");\n    url.searchParams.set(\"maj\",\"on\");\n    url.searchParams.set(\"min\",\"on\");\n    url.searchParams.set(\"mod\",\"off\");\n    url.searchParams.set(\"s\",\"on\");\n    url.searchParams.set(\"leyning\",\"off\");\n    url.searchParams.set(\"F\",\"on\"); \/\/ Daf Yomi\n    url.searchParams.set(\"geo\",\"none\");\n    url.searchParams.set(\"M\",\"on\"); \/\/ Hebrew in response where supported\n\n    const res = await fetch(url.toString(), {cache:\"force-cache\"});\n    if(!res.ok) throw new Error(\"HTTP \" + res.status);\n    return await res.json();\n  }\n\n  function buildIndex(items){\n    const idx = new Map(); \/\/ ymd -> { hebFull, dafObj, parasha, badges[] }\n    for(const it of (items || [])){\n      const dateStr = (it.date || \"\").slice(0,10);\n      if(!dateStr) continue;\n      const entry = idx.get(dateStr) || { hebFull:\"\", daf:null, parasha:\"\", badges:[] };\n\n      \/\/ Hebrew date appears as category \"hebdate\" with .hebrew\n      if(it.category === \"hebdate\" && it.hebrew){\n        entry.hebFull = it.hebrew;\n      }\n\n      \/\/ Daf Yomi appears as \"learning\" category with F=on; in example it's lacking category in snippet,\n      \/\/ but in practice Hebcal includes category \"dafyomi\" or \"learning\". We'll handle both.\n      if((it.category === \"dafyomi\" || it.category === \"learning\") && it.title){\n        entry.daf = { title: it.title, heb: it.hebrew || null, link: it.link || null };\n      }\n\n      \/\/ Parasha on Shabbat: category \"parashat\"\n      if(it.category === \"parashat\" && it.hebrew){\n        entry.parasha = it.hebrew.replace(\/^\u05e4\u05e8\u05e9\u05ea\\s*\/, \"\");\n      }\n\n      \/\/ Holidays \/ Rosh Chodesh etc. We'll add badges for a few categories.\n      if(it.category === \"holiday\" && it.hebrew){\n        entry.badges.push({text: it.hebrew, kind:\"holiday\"});\n      }\n      if(it.category === \"roshchodesh\" && it.hebrew){\n        entry.badges.push({text: it.hebrew, kind:\"rosh\"});\n      }\n      if(it.category === \"parashat\" && it.hebrew){\n        entry.badges.push({text: \"\u05e4\u05e8\u05e9\u05ea \" + entry.parasha, kind:\"parasha\"});\n      }\n\n      idx.set(dateStr, entry);\n    }\n    return idx;\n  }\n\n  function monthHebLabel(idx, year, monthIndex0){\n    const firstKey = ymd(new Date(year, monthIndex0, 1));\n    const lastKey  = ymd(new Date(year, monthIndex0, daysInMonth(year, monthIndex0)));\n    const firstHeb = idx.get(firstKey)?.hebFull || \"\";\n    const lastHeb  = idx.get(lastKey)?.hebFull || \"\";\n    const a = hebRestFromHebStr(firstHeb);\n    const b = hebRestFromHebStr(lastHeb);\n    if(a && b) return `${a} \u2013 ${b}`;\n    return ymKey(year, monthIndex0+1);\n  }\n\n  function renderPicker(options){\n    \/\/ options: [{value:\"YYYY-MM\", label:\"...\"}]\n    const current = ymKey(view.getFullYear(), view.getMonth()+1);\n    elPicker.innerHTML = \"\";\n    for(const opt of options){\n      const o = document.createElement(\"option\");\n      o.value = opt.value;\n      o.textContent = opt.label;\n      if(opt.value === current) o.selected = true;\n      elPicker.appendChild(o);\n    }\n  }\n\n  function renderCalendar(idx, year, monthIndex0){\n    const firstDow = new Date(year, monthIndex0, 1).getDay();\n    const dim = daysInMonth(year, monthIndex0);\n    const todayKey = ymd(new Date());\n\n    let html = \"\";\n    html += \"<tr>\" + dows.map(d => `<th>${d}<\/th>`).join(\"\") + \"<\/tr>\";\n\n    let day = 1;\n    for(let row=0; row<6; row++){\n      let rowHtml = \"<tr>\";\n      for(let col=0; col<7; col++){\n        const cellIndex = row*7 + col;\n        if(cellIndex < firstDow || day > dim){\n          rowHtml += `<td><\/td>`;\n          continue;\n        }\n        const d = new Date(year, monthIndex0, day);\n        const key = ymd(d);\n        const data = idx.get(key) || {hebFull:\"\", daf:null, parasha:\"\", badges:[]};\n\n        const links = data.daf ? buildLinks(data.daf) : null;\n        const href = links ? links[selectedProvider()] : null;\n\n        const isToday = (key === todayKey);\n        const dayCls = isToday ? \"day today\" : \"day\";\n\n        const hLine = data.hebFull ? data.hebFull : \"\";\n        const dafLine = data.daf ? (data.daf.heb || data.daf.title || \"\") : \"\u2014\";\n\n        const badges = (data.badges || []).slice(0,3).map(b => {\n          const cls = b.kind ? `badge ${b.kind}` : \"badge\";\n          return `<span class=\"${cls}\">${escapeHtml(b.text)}<\/span>`;\n        }).join(\"\");\n\n        const tooltip = href ? `<div class=\"tooltip\">\u05e4\u05ea\u05d7 \u05d3\u05e3 \u05d1\u05d2\u05de\u05e8\u05d0<\/div>` : \"\";\n\n        const inner = `\n          ${tooltip}\n          <div class=\"inner\">\n            <div class=\"gdate\"><span>${day}<\/span><span class=\"muted\">${dows[d.getDay()]}<\/span><\/div>\n            <div class=\"hdate\">${escapeHtml(hLine)}<\/div>\n            <div class=\"badges\">${badges}<\/div>\n            <div class=\"daf\">${escapeHtml(dafLine)}<\/div>\n          <\/div>\n        `;\n\n        if(href){\n          rowHtml += `<td><a class=\"cell-link\" href=\"${href}\" target=\"_blank\" rel=\"noopener\"><div class=\"${dayCls}\">${inner}<\/div><\/a><\/td>`;\n        }else{\n          rowHtml += `<td><div class=\"${dayCls}\">${inner}<\/div><\/td>`;\n        }\n\n        day++;\n      }\n      rowHtml += \"<\/tr>\";\n      html += rowHtml;\n      if(day > dim) break;\n    }\n\n    elCalendar.innerHTML = html;\n  }\n\n  function renderMobile(idx, year, monthIndex0){\n    const dim = daysInMonth(year, monthIndex0);\n    const todayKey = ymd(new Date());\n\n    let out = \"\";\n    for(let day=1; day<=dim; day++){\n      const d = new Date(year, monthIndex0, day);\n      const key = ymd(d);\n      const data = idx.get(key) || {hebFull:\"\", daf:null, parasha:\"\", badges:[]};\n      const links = data.daf ? buildLinks(data.daf) : null;\n\n      const isToday = (key === todayKey);\n      const title = isToday ? `\u05d4\u05d9\u05d5\u05dd \u2022 ${day}` : String(day);\n\n      const hLine = data.hebFull ? data.hebFull : \"\";\n      const dafLine = data.daf ? (data.daf.heb || data.daf.title || \"\") : \"\u2014\";\n\n      const badges = (data.badges || []).slice(0,4).map(b => {\n        const cls = b.kind ? `badge ${b.kind}` : \"badge\";\n        return `<span class=\"${cls}\">${escapeHtml(b.text)}<\/span>`;\n      }).join(\"\");\n\n      const hb = links ? links.hebrewbooks : \"\";\n      const sf = links ? links.sefaria : \"\";\n\n      out += `\n        <div class=\"mcard\">\n          <div class=\"mhead\">\n            <div class=\"g\">${escapeHtml(title)}<\/div>\n            <div class=\"dow\">${escapeHtml(dows[d.getDay()])}<\/div>\n          <\/div>\n          <div class=\"mheb\">${escapeHtml(hLine)}<\/div>\n          <div class=\"mdaf\">${escapeHtml(dafLine)}<\/div>\n          <div class=\"mbadges\">${badges}<\/div>\n          ${links ? `\n            <div class=\"mbuttons\">\n              <button class=\"mbtn\" data-hb=\"${hb}\">\u05e4\u05ea\u05d7 \u05d1\u05beHebrewBooks<\/button>\n              <button class=\"mbtn sefaria\" data-sf=\"${sf}\">\u05e4\u05ea\u05d7 \u05d1\u05beSefaria<\/button>\n            <\/div>\n          ` : ``}\n        <\/div>\n      `;\n    }\n    elMobile.innerHTML = out;\n\n    \/\/ Wire buttons\n    elMobile.querySelectorAll(\".mbtn\").forEach(btn => {\n      btn.addEventListener(\"click\", (e) => {\n        const hb = btn.getAttribute(\"data-hb\");\n        const sf = btn.getAttribute(\"data-sf\");\n        const url = hb || sf;\n        if(url) window.open(url, \"_blank\", \"noopener\");\n      });\n    });\n  }\n\n  function escapeHtml(s){\n    return String(s ?? \"\")\n      .replaceAll(\"&\",\"&amp;\")\n      .replaceAll(\"<\",\"&lt;\")\n      .replaceAll(\">\",\"&gt;\")\n      .replaceAll('\"',\"&quot;\")\n      .replaceAll(\"'\",\"&#039;\");\n  }\n\n  function getMasechetName(dafObj){\n    const title = (dafObj && dafObj.title) ? dafObj.title.trim() : \"\";\n    const parts = title.split(\/\\s+\/);\n    return parts.length >= 2 ? parts.slice(0,-1).join(\" \") : \"\";\n  }\n\n  function findNextMasechetStart(idx, fromDate){\n    const startKey = ymd(fromDate);\n    const startDaf = idx.get(startKey)?.daf || null;\n    const startMas = getMasechetName(startDaf);\n    if(!startMas) return null;\n\n    for(let offset=1; offset<=260; offset++){\n      const d = new Date(fromDate.getFullYear(), fromDate.getMonth(), fromDate.getDate()+offset);\n      const key = ymd(d);\n      const daf = idx.get(key)?.daf || null;\n      const mas = getMasechetName(daf);\n      if(mas && mas !== startMas){\n        return { date:d, masechet: mas };\n      }\n    }\n    return null;\n  }\n\n function bannerText(nextInfo, idx, today){\n  if(!nextInfo) return \"\u2014\";\n\n  const d = nextInfo.date;\n  const days = dayDiff(today, d);\n  const dow = dows[d.getDay()];\n  const key = ymd(d);\n\n  \/\/ \u05d4\u05ea\u05d0\u05e8\u05d9\u05da \u05d4\u05e2\u05d1\u05e8\u05d9 \u05dc\u05d9\u05d5\u05dd \u05d4\u05de\u05e2\u05d1\u05e8\n  const hebFull = idx.get(key)?.hebFull || \"\";\n\n  \/\/ \u05e9\u05dd \u05de\u05e1\u05db\u05ea \u05d1\u05e2\u05d1\u05e8\u05d9\u05ea (\u05d0\u05dd \u05e7\u05d9\u05d9\u05dd \u05de\u05d9\u05e4\u05d5\u05d9)\n  const masechetEn = nextInfo.masechet || \"\";\n  const masechet =\n    (typeof masechetHeb !== \"undefined\" && masechetHeb[masechetEn])\n      ? masechetHeb[masechetEn]\n      : masechetEn;\n\n  \/\/ \u05de\u05d7\u05e8\n  if (days === 1) {\n    return `\u05de\u05d7\u05e8, \u05d1\u05d9\u05d5\u05dd ${dow} ${escapeHtml(hebFull)}, \u05de\u05ea\u05d7\u05d9\u05dc\u05d9\u05dd \u05de\u05e1\u05db\u05ea <span class=\"accent\">${escapeHtml(masechet)}<\/span>`;\n  }\n\n  \/\/ \u05d1\u05e2\u05d5\u05d3 X \u05d9\u05de\u05d9\u05dd (\u05d4\u05d3\u05d2\u05e9\u05d4 \u05e9\u05dc \u05de\u05e1\u05e4\u05e8 \u05d4\u05d9\u05de\u05d9\u05dd + \u05d4\u05de\u05e1\u05db\u05ea)\n  return `\u05d1\u05e2\u05d5\u05d3 <span class=\"accent\">${days}<\/span> \u05d9\u05de\u05d9\u05dd, \u05d1\u05d9\u05d5\u05dd ${dow} ${escapeHtml(hebFull)}, \u05de\u05ea\u05d7\u05d9\u05dc\u05d9\u05dd \u05de\u05e1\u05db\u05ea <span class=\"accent\">${escapeHtml(masechet)}<\/span>`;\n}\n\n  async function loadAndRender(){\n    clearError();\n    elBanner.textContent = \"\u05d8\u05d5\u05e2\u05df\u2026\";\n\n    const year = view.getFullYear();\n    const month1 = view.getMonth()+1;\n\n    try{\n      \/\/ Fetch current month\n      const data = await fetchMonth(year, month1);\n      const idx = buildIndex(data.items || []);\n\n      \/\/ Build picker labels for +\/- 12 months around view (greg months labeled in hebrew range)\n      const opts = [];\n      for(let offset=-12; offset<=12; offset++){\n        const d = new Date(year, month1-1+offset, 1);\n        const y = d.getFullYear();\n        const m1 = d.getMonth()+1;\n        \/\/ Fetch just for label when missing cache; for speed, use current idx when same month\n        let label = \"\";\n        if(y === year && m1 === month1){\n          label = monthHebLabel(idx, y, m1-1);\n        }else{\n          \/\/ lightweight label: \"YYYY-MM\" until hydrated; we'll hydrate asynchronously below\n          label = `${y}-${String(m1).padStart(2,\"0\")}`;\n        }\n        opts.push({value: ymKey(y,m1), label});\n      }\n      renderPicker(opts);\n\n      \/\/ Render views\n      renderCalendar(idx, year, month1-1);\n      renderMobile(idx, year, month1-1);\n\n      \/\/ Banner: use forward scan within loaded month; if not found, fetch forward months until found\n      const today = new Date();\n      let bannerIdx = idx;\n      let nextInfo = findNextMasechetStart(bannerIdx, today);\n\n      if(!nextInfo){\n        \/\/ fetch more months forward (up to 6)\n        const merged = new Map(bannerIdx);\n        const base = new Date(today.getFullYear(), today.getMonth(), 1);\n        for(let k=1; k<=6 && !nextInfo; k++){\n          const d = new Date(base.getFullYear(), base.getMonth()+k, 1);\n          const dd = await fetchMonth(d.getFullYear(), d.getMonth()+1);\n          const ii = buildIndex(dd.items || []);\n          for(const [k2,v2] of ii.entries()){\n            const prev = merged.get(k2) || {hebFull:\"\", daf:null, parasha:\"\", badges:[]};\n            \/\/ merge prefer filled fields\n            merged.set(k2, {\n              hebFull: v2.hebFull || prev.hebFull,\n              daf: v2.daf || prev.daf,\n              parasha: v2.parasha || prev.parasha,\n              badges: (prev.badges || []).concat(v2.badges || [])\n            });\n          }\n          bannerIdx = merged;\n          nextInfo = findNextMasechetStart(bannerIdx, today);\n        }\n      }\n\n      if(nextInfo){\n        elBanner.innerHTML = bannerText(nextInfo, bannerIdx, today);\n      }else{\n        elBanner.textContent = \"\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d4 \u05de\u05e1\u05db\u05ea \u05d4\u05d1\u05d0\u05d4 \u05d1\u05d8\u05d5\u05d5\u05d7 \u05d4\u05e7\u05e8\u05d5\u05d1.\";\n      }\n\n      \/\/ Hydrate picker labels in background-ish (but still in this run)\n      \/\/ Do small batches to avoid heavy load.\n      hydratePickerLabels();\n\n    }catch(err){\n      console.error(err);\n      elBanner.textContent = \"\u05dc\u05d0 \u05d4\u05e6\u05dc\u05d7\u05ea\u05d9 \u05dc\u05d8\u05e2\u05d5\u05df \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd.\";\n      showError(\"\u05dc\u05d0 \u05d4\u05e6\u05dc\u05d7\u05ea\u05d9 \u05dc\u05d8\u05e2\u05d5\u05df \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd. \u05d0\u05dd \u05e4\u05ea\u05d7\u05ea \u05e7\u05d5\u05d1\u05e5 \u05de\u05e7\u05d5\u05de\u05d9, \u05e0\u05e1\u05d4 \u05dc\u05d4\u05e2\u05dc\u05d5\u05ea \u05dc\u05e9\u05e8\u05ea\/\u05d0\u05ea\u05e8, \u05d0\u05d5 \u05dc\u05e4\u05ea\u05d5\u05d7 \u05d3\u05e8\u05da localhost.\");\n    }\n  }\n\n  const labelCache = new Map(); \/\/ value \"YYYY-MM\" => label\n  async function ensureLabel(value){\n    if(labelCache.has(value)) return labelCache.get(value);\n    const [yStr,mStr] = value.split(\"-\");\n    const y = Number(yStr), m1 = Number(mStr);\n    const data = await fetchMonth(y, m1);\n    const idx = buildIndex(data.items || []);\n    const label = monthHebLabel(idx, y, m1-1);\n    labelCache.set(value, label);\n    return label;\n  }\n\n  async function hydratePickerLabels(){\n    const opts = Array.from(elPicker.options);\n    \/\/ hydrate only those still numeric\n    const targets = opts.filter(o => \/^\\d{4}-\\d{2}$\/.test(o.textContent));\n    let i = 0;\n    async function worker(){\n      while(i < targets.length){\n        const j = i++;\n        const o = targets[j];\n        try{\n          const label = await ensureLabel(o.value);\n          o.textContent = label;\n        }catch(e){\n          \/\/ leave as-is\n        }\n      }\n    }\n    await Promise.all([worker(),worker(),worker()]);\n  }\n\n  \/\/ Events\n  elPrev.addEventListener(\"click\", () => {\n    view = new Date(view.getFullYear(), view.getMonth()-1, 1);\n    loadAndRender();\n  });\n  elNext.addEventListener(\"click\", () => {\n    view = new Date(view.getFullYear(), view.getMonth()+1, 1);\n    loadAndRender();\n  });\n  elPicker.addEventListener(\"change\", () => {\n    const v = (elPicker.value || \"\").split(\"-\").map(Number);\n    if(v.length === 2 && v[0] && v[1]){\n      view = new Date(v[0], v[1]-1, 1);\n      loadAndRender();\n    }\n  });\n  document.querySelectorAll('input[name=\"prov\"]').forEach(r => {\n    r.addEventListener(\"change\", () => loadAndRender());\n  });\n\n  \/\/ Initial load\n  loadAndRender();\n})();\n<\/script>\n<\/body>\n<\/html>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-24e09f2 elementor-widget elementor-widget-spacer\" data-id=\"24e09f2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 \u05dc\u05d5\u05d7 \u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 \u05d8\u05d5\u05e2\u05df\u2026 \u05d7\u05d5\u05d3\u05e9 \u05e7\u05d5\u05d3\u05dd \u05d7\u05d5\u05d3\u05e9 \u05d4\u05d1\u05d0 HebrewBooks Sefaria \u05d4\u05dc\u05d5\u05d7 \u05e0\u05d1\u05e0\u05d4 \u05dc\u05d8\u05d5\u05d1\u05ea \u05de\u05e9\u05ea\u05de\u05e9\u05d9 \u05d0\u05ea\u05e8 \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3 \u05dc\u05d5\u05de\u05d3\u05d9 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9, \u05e9\u05d9\u05de\u05d5 \u05dc\u05d1: \u05e2\u05e7\u05d1 \u05de\u05d5\u05d2\u05d1\u05dc\u05d5\u05ea \u05d4\u05e4\u05d9\u05ea\u05d5\u05d7 \u05d9\u05d9\u05ea\u05db\u05e0\u05d5 \u05e9\u05d9\u05d1\u05d5\u05e9\u05d9\u05dd \u05d1\u05dc\u05d5\u05d7 \u05e2\u05de\u05db\u05dd \u05d4\u05e1\u05dc\u05d9\u05d7\u05d4.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-1589","page","type-page","status-publish","hentry"],"acf":[],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 - \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/daf.tfilot.org\/?page_id=1589\" \/>\n<meta property=\"og:locale\" content=\"he_IL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 - \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3\" \/>\n<meta property=\"og:description\" content=\"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 \u05dc\u05d5\u05d7 \u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 \u05d8\u05d5\u05e2\u05df\u2026 \u05d7\u05d5\u05d3\u05e9 \u05e7\u05d5\u05d3\u05dd \u05d7\u05d5\u05d3\u05e9 \u05d4\u05d1\u05d0 HebrewBooks Sefaria \u05d4\u05dc\u05d5\u05d7 \u05e0\u05d1\u05e0\u05d4 \u05dc\u05d8\u05d5\u05d1\u05ea \u05de\u05e9\u05ea\u05de\u05e9\u05d9 \u05d0\u05ea\u05e8 \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3 \u05dc\u05d5\u05de\u05d3\u05d9 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9, \u05e9\u05d9\u05de\u05d5 \u05dc\u05d1: \u05e2\u05e7\u05d1 \u05de\u05d5\u05d2\u05d1\u05dc\u05d5\u05ea \u05d4\u05e4\u05d9\u05ea\u05d5\u05d7 \u05d9\u05d9\u05ea\u05db\u05e0\u05d5 \u05e9\u05d9\u05d1\u05d5\u05e9\u05d9\u05dd \u05d1\u05dc\u05d5\u05d7 \u05e2\u05de\u05db\u05dd \u05d4\u05e1\u05dc\u05d9\u05d7\u05d4.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/daf.tfilot.org\/?page_id=1589\" \/>\n<meta property=\"og:site_name\" content=\"\u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-06T23:58:00+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u05d6\u05de\u05df \u05e7\u05e8\u05d9\u05d0\u05d4 \u05de\u05d5\u05e2\u05e8\u05da\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 \u05d3\u05e7\u05d5\u05ea\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/?page_id=1589\",\"url\":\"https:\\\/\\\/daf.tfilot.org\\\/?page_id=1589\",\"name\":\"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 - \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/#website\"},\"datePublished\":\"2024-12-18T14:37:45+00:00\",\"dateModified\":\"2026-01-06T23:58:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/?page_id=1589#breadcrumb\"},\"inLanguage\":\"he-IL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/daf.tfilot.org\\\/?page_id=1589\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/?page_id=1589#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u05d3\u05e3 \u05d4\u05d1\u05d9\u05ea\",\"item\":\"https:\\\/\\\/daf.tfilot.org\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/#website\",\"url\":\"https:\\\/\\\/daf.tfilot.org\\\/\",\"name\":\"\u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3\",\"description\":\"\u05e4\u05d5\u05e1\u05d8\u05e8\u05d9\u05dd \u05d5\u05e4\u05e8\u05e1\u05d5\u05de\u05d9\u05dd \u05dc\u05e2\u05d9\u05d3\u05d5\u05d3 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9\",\"publisher\":{\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/daf.tfilot.org\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"he-IL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/#organization\",\"name\":\"\u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3\",\"url\":\"https:\\\/\\\/daf.tfilot.org\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"he-IL\",\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/daf.tfilot.org\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/cropped-\u05dc\u05d5\u05d2\u05d5-\u05d5\u05e7\u05d8\u05d5\u05e8\u05d9-\u05ea\u05d5\u05e8\u05ea-\u05d7\u05e1\u05d3.png\",\"contentUrl\":\"https:\\\/\\\/daf.tfilot.org\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/cropped-\u05dc\u05d5\u05d2\u05d5-\u05d5\u05e7\u05d8\u05d5\u05e8\u05d9-\u05ea\u05d5\u05e8\u05ea-\u05d7\u05e1\u05d3.png\",\"width\":665,\"height\":704,\"caption\":\"\u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3\"},\"image\":{\"@id\":\"https:\\\/\\\/daf.tfilot.org\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 - \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/daf.tfilot.org\/?page_id=1589","og_locale":"he_IL","og_type":"article","og_title":"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 - \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3","og_description":"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 \u05dc\u05d5\u05d7 \u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 \u05d8\u05d5\u05e2\u05df\u2026 \u05d7\u05d5\u05d3\u05e9 \u05e7\u05d5\u05d3\u05dd \u05d7\u05d5\u05d3\u05e9 \u05d4\u05d1\u05d0 HebrewBooks Sefaria \u05d4\u05dc\u05d5\u05d7 \u05e0\u05d1\u05e0\u05d4 \u05dc\u05d8\u05d5\u05d1\u05ea \u05de\u05e9\u05ea\u05de\u05e9\u05d9 \u05d0\u05ea\u05e8 \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3 \u05dc\u05d5\u05de\u05d3\u05d9 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9, \u05e9\u05d9\u05de\u05d5 \u05dc\u05d1: \u05e2\u05e7\u05d1 \u05de\u05d5\u05d2\u05d1\u05dc\u05d5\u05ea \u05d4\u05e4\u05d9\u05ea\u05d5\u05d7 \u05d9\u05d9\u05ea\u05db\u05e0\u05d5 \u05e9\u05d9\u05d1\u05d5\u05e9\u05d9\u05dd \u05d1\u05dc\u05d5\u05d7 \u05e2\u05de\u05db\u05dd \u05d4\u05e1\u05dc\u05d9\u05d7\u05d4.","og_url":"https:\/\/daf.tfilot.org\/?page_id=1589","og_site_name":"\u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3","article_modified_time":"2026-01-06T23:58:00+00:00","twitter_card":"summary_large_image","twitter_misc":{"\u05d6\u05de\u05df \u05e7\u05e8\u05d9\u05d0\u05d4 \u05de\u05d5\u05e2\u05e8\u05da":"3 \u05d3\u05e7\u05d5\u05ea"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/daf.tfilot.org\/?page_id=1589","url":"https:\/\/daf.tfilot.org\/?page_id=1589","name":"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9 - \u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3","isPartOf":{"@id":"https:\/\/daf.tfilot.org\/#website"},"datePublished":"2024-12-18T14:37:45+00:00","dateModified":"2026-01-06T23:58:00+00:00","breadcrumb":{"@id":"https:\/\/daf.tfilot.org\/?page_id=1589#breadcrumb"},"inLanguage":"he-IL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/daf.tfilot.org\/?page_id=1589"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/daf.tfilot.org\/?page_id=1589#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u05d3\u05e3 \u05d4\u05d1\u05d9\u05ea","item":"https:\/\/daf.tfilot.org\/"},{"@type":"ListItem","position":2,"name":"\u05dc\u05d5\u05d7 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9"}]},{"@type":"WebSite","@id":"https:\/\/daf.tfilot.org\/#website","url":"https:\/\/daf.tfilot.org\/","name":"\u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3","description":"\u05e4\u05d5\u05e1\u05d8\u05e8\u05d9\u05dd \u05d5\u05e4\u05e8\u05e1\u05d5\u05de\u05d9\u05dd \u05dc\u05e2\u05d9\u05d3\u05d5\u05d3 \u05dc\u05d9\u05de\u05d5\u05d3 \u05d4\u05d3\u05e3 \u05d4\u05d9\u05d5\u05de\u05d9","publisher":{"@id":"https:\/\/daf.tfilot.org\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/daf.tfilot.org\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"he-IL"},{"@type":"Organization","@id":"https:\/\/daf.tfilot.org\/#organization","name":"\u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3","url":"https:\/\/daf.tfilot.org\/","logo":{"@type":"ImageObject","inLanguage":"he-IL","@id":"https:\/\/daf.tfilot.org\/#\/schema\/logo\/image\/","url":"https:\/\/daf.tfilot.org\/wp-content\/uploads\/2020\/08\/cropped-\u05dc\u05d5\u05d2\u05d5-\u05d5\u05e7\u05d8\u05d5\u05e8\u05d9-\u05ea\u05d5\u05e8\u05ea-\u05d7\u05e1\u05d3.png","contentUrl":"https:\/\/daf.tfilot.org\/wp-content\/uploads\/2020\/08\/cropped-\u05dc\u05d5\u05d2\u05d5-\u05d5\u05e7\u05d8\u05d5\u05e8\u05d9-\u05ea\u05d5\u05e8\u05ea-\u05d7\u05e1\u05d3.png","width":665,"height":704,"caption":"\u05ea\u05d5\u05e8\u05ea \u05d7\u05e1\u05d3"},"image":{"@id":"https:\/\/daf.tfilot.org\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/daf.tfilot.org\/index.php?rest_route=\/wp\/v2\/pages\/1589","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/daf.tfilot.org\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/daf.tfilot.org\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/daf.tfilot.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/daf.tfilot.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1589"}],"version-history":[{"count":6,"href":"https:\/\/daf.tfilot.org\/index.php?rest_route=\/wp\/v2\/pages\/1589\/revisions"}],"predecessor-version":[{"id":2076,"href":"https:\/\/daf.tfilot.org\/index.php?rest_route=\/wp\/v2\/pages\/1589\/revisions\/2076"}],"wp:attachment":[{"href":"https:\/\/daf.tfilot.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1589"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}