/* app.css — סגנון משותף לדף הציבורי ולניהול */
:root{--deep:#1F4E5F;--accent:#9C7A2E;--hl:#8C2F2A;--paper:#FCFAF4;--ink:#241d16}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:#3a3733;font-family:'Assistant',system-ui,Arial,sans-serif;color:var(--ink);direction:rtl}

/* ---------- toolbar ---------- */
.toolbar{position:sticky;top:0;z-index:50;display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;
  align-items:center;padding:12px 16px;background:#211f1c;border-bottom:1px solid #4a453e}
.toolbar>*{flex:none}
.toolbar button,.toolbar select,.toolbar a.btn{font-family:inherit;font-size:16px;font-weight:600;
  background:#efe8da;color:#221c14;border:1px solid #cfc3ab;border-radius:5px;padding:10px 14px;
  cursor:pointer;text-decoration:none}
.toolbar button.primary{background:var(--deep);border-color:#173C4A;color:#fff}
.toolbar button.dark,.toolbar select.dark{background:#3d3a35;color:#f2ead9;border-color:#5b554b}
.toolbar button.dark:hover,.toolbar select.dark:hover{background:#4a463f;border-color:#6f685c}
.toolbar .status{color:#cfc6b4;font-size:13px;margin-inline-start:auto;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto;padding-inline-start:12px}

/* ---------- sheet ---------- */
#stage{padding:20px;display:flex;justify-content:center}
.sheet{position:relative;background:var(--paper);color:var(--ink);overflow:hidden;transform-origin:top center;
  box-shadow:0 10px 40px rgba(0,0,0,.5);print-color-adjust:exact;-webkit-print-color-adjust:exact;
  border:6px solid var(--deep);outline:2px solid var(--accent);outline-offset:6px}
.sheet.wall_a4{width:210mm;height:296.9mm;padding:14mm 16mm}
.sheet.home_a4{width:210mm;height:296.9mm;padding:12mm 14mm}
.sheet.image_4x5{width:1080px;height:1350px;padding:44px 56px}

.fitwrap{transform-origin:top right}   /* RTL — עוגן ימני, אחרת השוליים יוצאים לא סימטריים */
.bsd{position:absolute;top:6mm;right:8mm;font-size:3.4mm;color:#8a7a62}
.head{text-align:center;margin-bottom:4mm}
.logo{max-height:18mm;max-width:60%;object-fit:contain;margin-bottom:2mm}
.org{font-family:'Frank Ruhl Libre',serif;font-size:5.6mm;font-weight:700;color:var(--deep)}
.org small{display:block;font-family:'Assistant',sans-serif;font-weight:400;font-size:3.2mm;color:#7b6c56}
.head h1{margin:3mm 0 0;font-family:'Frank Ruhl Libre',serif;font-weight:900;font-size:10mm;
  line-height:1.05;color:var(--hl)}
.hdate{position:absolute;top:6mm;left:8mm;font-size:3.8mm;color:#7b6c56;text-align:left}
.rule{display:flex;align-items:center;gap:3mm;margin:3mm 0}
.rule i{flex:1;height:.35mm;background:linear-gradient(90deg,transparent,var(--accent),transparent)}
.rule b{width:2.6mm;height:2.6mm;background:var(--accent);transform:rotate(45deg)}

.sec{margin-bottom:3mm}
.sec h2{margin:0 0 1.6mm;font-family:'Frank Ruhl Libre',serif;font-weight:700;font-size:5.4mm;
  color:var(--deep);border-bottom:.5mm solid var(--deep);padding-bottom:.8mm;
  display:flex;justify-content:space-between;align-items:baseline}
.sec.shabbat h2,.sec.erev_shabbat h2{color:var(--hl);border-bottom-color:var(--hl)}
/* מועד קצר בתוך הלוח השבועי (צום, ל״ג בעומר…) — מסגרת עדינה שמבדילה אותו מהשגרה */
.sec.occasion{border:.35mm solid var(--accent);border-radius:1.6mm;padding:1.2mm 2.4mm 1mm}
.sec.occasion h2{color:var(--accent);border-bottom-color:var(--accent)}
.sec h2 em{font-family:'Assistant',sans-serif;font-style:normal;font-size:3.4mm;
  font-weight:600;color:#8a7a62}
.r{display:flex;align-items:baseline;gap:2mm;padding:.5mm 0;font-size:4.3mm;line-height:1.2}
.r .l{flex:1}
.r .l small{font-size:3.5mm;color:#7b6c56}
.r .t{flex:0 0 auto;min-width:26mm;text-align:left;direction:ltr;unicode-bidi:isolate;
  white-space:nowrap;font-weight:700;font-size:5.6mm;color:var(--deep);font-variant-numeric:tabular-nums}
.acc{color:var(--accent);font-weight:700;font-size:3.7mm}
.ltr{direction:ltr;unicode-bidi:isolate}
.note{display:block;font-size:3.9mm;line-height:1.2;padding:.4mm 0;color:var(--ink)}
.note b{color:var(--hl);font-weight:700}
.note .when{color:var(--deep);font-weight:600}
.msg{min-height:8mm;margin-top:2mm;padding:1mm 3mm;border:.4mm dashed rgba(36,29,22,.3);
  border-radius:1mm;font-size:3.8mm}
.msg:empty::before{content:'הודעות';color:#9c8c74}
.foot{text-align:center;margin-top:2.5mm;padding-top:1.4mm;border-top:.4mm solid rgba(36,29,22,.25);
  font-family:'Frank Ruhl Libre',serif;font-size:4.4mm;font-weight:700;color:var(--deep)}

/* גדלים לדף הבית ולתמונה */
.sheet.home_a4 .r{font-size:5.6mm;padding:1mm 0}
.sheet.home_a4 .r .t{font-size:7mm;min-width:32mm}
.sheet.home_a4 .sec h2{font-size:6.6mm}
.sheet.home_a4 .note{font-size:4.8mm}
.sheet.image_4x5 .head{margin-bottom:6px}
.sheet.image_4x5 .head h1{font-size:58px}
.sheet.image_4x5 .rule{margin:8px 0}
.sheet.image_4x5 .org{font-size:33px}.sheet.image_4x5 .org small{font-size:19px}
.sheet.image_4x5 .hdate{font-size:24px;top:20px;left:26px}
.sheet.image_4x5 .sec h2{font-size:33px;border-bottom-width:3px;margin-bottom:4px;padding-bottom:2px}
.sheet.image_4x5 .r{font-size:30px;padding:3px 0}
.sheet.image_4x5 .r .l small{font-size:21px}
.sheet.image_4x5 .r .t{font-size:40px;min-width:150px}
.sheet.image_4x5 .acc{font-size:25px}
.sheet.image_4x5 .note{font-size:26px;padding:3px 0}
.sheet.image_4x5 .msg{font-size:22px;min-height:44px;margin-top:6px}
.sheet.image_4x5 .foot{font-size:27px;margin-top:8px}
.sheet.image_4x5 .bsd{top:20px;right:26px;font-size:22px}

[contenteditable]:focus{outline:1.5px dashed var(--accent);outline-offset:2px;
  background:rgba(156,122,46,.10)}

@page{size:A4 portrait;margin:0}
@media print{
  body{background:none}
  .no-print,.toolbar{display:none!important}
  #stage{padding:0;display:block}
  .sheet{box-shadow:none;margin:0}
}

/* ---------- admin ---------- */
.admin{max-width:none;margin:0 auto;padding:24px 20px 60px;color:#f2ead9}
.edit-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.prev-col{position:sticky;top:78px;min-width:0}
.prev-head{position:absolute;top:8px;right:10px;z-index:5;display:flex;gap:6px;align-items:center;
  background:transparent;padding:5px 10px;max-width:calc(100% - 20px)}
.prev-head .muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;
  color:#57493a;font-weight:600}
.prev-head button{font-size:13px;padding:4px 9px}
.prev-frame{overflow-y:auto;overflow-x:hidden;border-radius:4px;max-width:100%;
  max-height:calc(100vh - 100px)}
#pvSheet{transform-origin:top right;pointer-events:none}
@media (max-width:1100px){.edit-grid{grid-template-columns:minmax(0,1fr)}.prev-col{position:relative;top:0;order:-1}}
.geo-wrap{position:relative}
.sug{position:absolute;top:100%;right:0;left:0;background:#211f1c;border:1px solid #5b554b;
  border-radius:6px;z-index:30;max-height:240px;overflow:auto;box-shadow:0 8px 24px rgba(0,0,0,.5)}
.sug div{padding:8px 12px;cursor:pointer;font-size:14px}
.sug div:hover{background:#3d3a35}
.colors{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.colpick{display:inline-flex;flex-direction:column;align-items:center;gap:3px}
.colpick i{font-style:normal;font-size:11px;color:#9c8c74}
.admin input[type=color]{width:44px;height:34px;padding:2px;border-radius:6px;
  border:1px solid #5b554b;background:#211f1c;cursor:pointer}
.admin button.on{background:var(--deep);color:#fff;border-color:#173C4A}
.brow-adv{border-top:1px dashed #3a3733;padding-top:6px;margin-top:6px}
.radios{display:flex;gap:16px;margin:12px 0}
#dlgAddBlock select{width:100%;font-family:inherit;font-size:15px;padding:10px 12px;
  border-radius:6px;border:1px solid #5b554b;background:#211f1c;color:#f2ead9}
.admin h1,.admin h2{font-family:'Frank Ruhl Libre',serif}
.admin a{color:#E0A62B}
.card{background:#2b2926;border:1px solid #4a453e;border-radius:8px;padding:18px;margin-bottom:18px}
.card h2{margin:0 0 12px;font-size:20px;color:#fff}
.admin label{display:block;font-size:14px;color:#cfc6b4;margin:10px 0 4px}
.admin input[type=text],.admin input[type=email],.admin input[type=number],
.admin select,.admin textarea{width:100%;font-family:inherit;font-size:15px;padding:10px 12px;
  border-radius:6px;border:1px solid #5b554b;background:#211f1c;color:#f2ead9}
.admin textarea{min-height:320px;font-family:ui-monospace,Menlo,monospace;font-size:13px;direction:ltr;text-align:left}
.admin button{font-family:inherit;font-size:15px;font-weight:600;padding:10px 16px;border-radius:6px;
  border:1px solid #5b554b;background:#3d3a35;color:#f2ead9;cursor:pointer}
.admin button.primary{background:var(--deep);border-color:#173C4A;color:#fff}
.admin button:hover{background:#4a463f}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.muted{color:#9c8c74;font-size:13px}
.tenant-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #3a3733}
.pill{font-size:12px;padding:3px 8px;border-radius:99px;background:#3d3a35;border:1px solid #5b554b}
.err{color:#ff9a8f}.ok{color:#8fd0a0}

/* ---------- פוסטר חג ----------
   מסגרת ומוטיבים הם SVG בשכבות מאחורי התוכן; הכרטיסים והטיפוגרפיה
   מחקים את פוסטרי החג המודפסים: כותרת בכרטיס כהה עם מסגרת זהב, כרטיס ליום. */
.sheet.poster{border:none;outline:none;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.sheet.poster_a4{width:210mm;height:296.9mm;padding:16mm 15mm 14mm}
.sheet.poster_4x5{width:1080px;height:1350px;padding:78px 70px 66px}
.sheet.poster .frame{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.sheet.poster .deco{z-index:0}
.sheet.has-bg::before{content:'';position:absolute;inset:0;background-image:var(--bg);
  background-size:cover;background-position:center;z-index:0}
/* הבהרה רק במרכז — העיטורים שבשוליים של התמונות נשארים חיים, והטקסט קריא */
.sheet.has-bg::after{content:'';position:absolute;inset:0;z-index:0;
  background:radial-gradient(ellipse 62% 58% at center,rgba(255,255,255,.62) 55%,rgba(255,255,255,0) 100%)}
.sheet.has-bg .fitwrap{position:relative;z-index:1}
/* לתמונה יש מסגרת ועיטורים משלה — המסגרת המצוירת (שגם צובעת מלבן נייר מלא
   מעל הרקע) והמוטיבים של הפוסטר רק מסתירים אותה */
.sheet.poster.has-bg .frame{display:none}
/* בלוח השבועי התוכן ממלא את כל הדף ונוגע בעיטורים שבשוליים — לכל מקטע
   גיבוי נייר שקוף־למחצה, כך שהתמונה נראית סביב הטקסט ולא מאחוריו */
.sheet.has-bg:not(.poster) .sec,.sheet.has-bg:not(.poster) .head,.sheet.has-bg:not(.poster) .foot,
.sheet.has-bg:not(.poster) .msg{background:rgba(255,253,248,.82);border-radius:2mm;
  padding-left:2.4mm;padding-right:2.4mm}
.sheet.has-bg:not(.poster) .sec{padding-top:1mm;padding-bottom:1mm}
.sheet.poster .fitwrap{position:relative;z-index:1}

.poster .phead{text-align:center;margin-bottom:4mm}
.poster .org{font-family:'Frank Ruhl Libre',serif;font-weight:900;font-size:8mm;line-height:1.05;
  color:var(--deep)}
.poster .org small{display:block;font-family:'Assistant',sans-serif;font-weight:600;
  font-size:3.4mm;color:var(--accent);margin-top:.6mm}
.poster .tcard{margin:3.4mm auto 0;padding:2.4mm 8mm 3mm;border-radius:3mm;
  background:var(--deep);border:.7mm solid var(--accent);
  box-shadow:0 0 0 .25mm var(--paper) inset;display:inline-block;min-width:60%}
.poster .tcard h1{margin:0;font-family:'Frank Ruhl Libre',serif;font-weight:900;
  font-size:10mm;line-height:1.1;color:var(--paper)}
.poster .tcard .tsub{font-size:4.4mm;font-weight:600;color:var(--accent);margin-top:.8mm}

.poster .pgrid{display:grid;gap:3mm}
.poster .pgrid[data-cols="2"]{grid-template-columns:1fr 1fr}
.poster .dcard{background:color-mix(in srgb,var(--paper) 88%,#fff);
  border:.35mm solid var(--accent);border-radius:2mm;padding:2mm 3mm 2.4mm;break-inside:avoid}
.poster .dhead{display:flex;align-items:baseline;justify-content:space-between;gap:2mm;
  background:var(--deep);border-radius:1.4mm;padding:1mm 3mm 1.4mm;margin:-1mm -1.6mm 1.6mm}
.poster .dcard.hl .dhead{background:var(--hl)}
.poster .dhead .nm{font-family:'Frank Ruhl Libre',serif;font-weight:700;font-size:5.2mm;
  color:var(--paper);line-height:1.15}
.poster .dhead .dt{font-size:3.2mm;font-weight:600;color:var(--accent);white-space:nowrap}
.poster .r{display:flex;align-items:baseline;gap:2mm;padding:.5mm 0;font-size:4.2mm;
  border-bottom:.15mm dotted rgba(36,29,22,.28)}
.poster .r:last-child{border-bottom:none}
.poster .r .l{flex:1;color:var(--ink)}
.poster .r .l small{font-size:3.2mm;color:#6b5b48}
.poster .r .t{flex:0 0 auto;min-width:20mm;text-align:left;direction:ltr;unicode-bidi:isolate;
  white-space:nowrap;font-weight:700;font-size:5mm;color:var(--deep);font-variant-numeric:tabular-nums}
.poster .note{font-size:3.6mm;line-height:1.2;padding:.5mm 0;color:var(--ink)}
.poster .note b{color:var(--hl)}
.poster .bcard{margin:3mm auto 0;padding:1.8mm 6mm;border:.35mm solid var(--accent);
  border-radius:2mm;text-align:center;font-family:'Frank Ruhl Libre',serif;font-weight:700;
  font-size:4.4mm;color:var(--deep);background:color-mix(in srgb,var(--paper) 80%,#fff)}
.poster .foot{border:none;margin-top:2.4mm;padding-top:0;font-size:3.8mm;color:var(--accent)}
.poster .bsd{color:var(--accent)}

/* פוסטר לוואטסאפ — יחידות px במקום mm */
.sheet.poster_4x5 .org{font-size:52px}
.sheet.poster_4x5 .org small{font-size:23px}
.sheet.poster_4x5 .tcard{padding:14px 44px 18px;border-width:4px;border-radius:16px}
.sheet.poster_4x5 .tcard h1{font-size:62px}
.sheet.poster_4x5 .tcard .tsub{font-size:27px}
.sheet.poster_4x5 .pgrid{gap:16px}
.sheet.poster_4x5 .dcard{border-width:2px;border-radius:12px;padding:10px 16px 12px}
.sheet.poster_4x5 .dhead{padding:6px 16px 8px;margin:-6px -10px 10px;border-radius:8px}
.sheet.poster_4x5 .dhead .nm{font-size:31px}
.sheet.poster_4x5 .dhead .dt{font-size:19px}
.sheet.poster_4x5 .r{font-size:26px;border-bottom-width:1px;padding:3px 0}
.sheet.poster_4x5 .r .l small{font-size:19px}
.sheet.poster_4x5 .r .t{font-size:31px;min-width:112px}
.sheet.poster_4x5 .note{font-size:21px}
.sheet.poster_4x5 .bcard{font-size:26px;padding:10px 32px;border-width:2px}
.sheet.poster_4x5 .foot{font-size:23px}

/* ---------- דף הבית ---------- */
.landing{max-width:560px;margin:8vh auto 0;background:var(--paper);color:var(--ink);
  border:6px solid var(--deep);outline:2px solid var(--accent);outline-offset:6px;
  padding:36px 40px;text-align:center;box-shadow:0 10px 40px rgba(0,0,0,.5)}
.landing h1{font-family:'Frank Ruhl Libre',serif;font-weight:900;color:var(--hl);margin:0 0 10px}
.landing p{color:#57493a}
.l-list{display:flex;flex-direction:column;gap:10px;margin:22px 0}
.l-list a{display:block;padding:14px;border:1px solid var(--deep);border-radius:6px;
  color:var(--deep);font-size:19px;font-weight:700;text-decoration:none;background:#fff}
.l-list a:hover{background:var(--deep);color:#fff}
.l-foot{border-top:1px dashed rgba(36,29,22,.3);padding-top:14px;font-size:14px}
.l-foot a{color:#6b5b48}

/* ---------- שורת כותרת ---------- */
.topbar{position:sticky;top:0;z-index:40;display:flex;gap:12px;align-items:center;
  margin-bottom:16px;padding:10px 16px;background:#2b2926;border:1px solid #4a453e;
  border-radius:0 0 8px 8px;box-shadow:0 6px 18px rgba(0,0,0,.35)}
.topbar .primary{background:var(--deep);border-color:#173C4A;color:#fff}
.topbar #saveMsg{font-size:13px;white-space:nowrap}
.tb-title{font-size:13px;color:#9c8c74;white-space:nowrap}
.topbar b{font-family:'Frank Ruhl Libre',serif;font-size:18px;color:#fff;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.topbar .sp{flex:1}
.topbar button{font-family:inherit;font-size:14px;font-weight:600;padding:8px 14px;border-radius:6px;
  border:1px solid #5b554b;background:#3d3a35;color:#f2ead9;cursor:pointer;white-space:nowrap}
.topbar button:hover{background:#4a463f}
.topbar select{font-family:inherit;font-size:14px;padding:8px 10px;border-radius:6px;
  border:1px solid #5b554b;background:#211f1c;color:#f2ead9}
.tb-link{color:#E0A62B;font-size:14px;font-weight:600;white-space:nowrap}

/* ---------- דיאלוג ---------- */
.admin dialog{background:#2b2926;border:1px solid #5b554b;border-radius:10px;color:#f2ead9;
  padding:22px;min-width:min(420px,90vw);box-shadow:0 20px 60px rgba(0,0,0,.6)}
#dlgSettings{width:min(860px,94vw);max-height:90vh;overflow-y:auto}
#dlgSettings .card{background:#26241f}
.dlg-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.dlg-head h2{margin:0!important}
.dlg-head button{font-family:inherit;font-size:14px;padding:7px 14px;border-radius:6px;
  border:1px solid #5b554b;background:#3d3a35;color:#f2ead9;cursor:pointer}
.admin dialog::backdrop{background:rgba(0,0,0,.6)}
.admin dialog h2{margin:0 0 10px;font-family:'Frank Ruhl Libre',serif;color:#fff}
.admin dialog input{width:100%;font-family:inherit;font-size:15px;padding:10px 12px;
  border-radius:6px;border:1px solid #5b554b;background:#211f1c;color:#f2ead9}
.admin dialog label{display:block;font-size:14px;color:#cfc6b4;margin:10px 0 4px}

.matchbox{display:flex;flex-wrap:wrap;gap:6px 14px;margin:6px 0 4px;
  max-height:132px;overflow-y:auto;padding:8px 10px;border:1px solid #5b554b;
  border-radius:6px;background:#211f1c}
.matchbox label{display:flex;align-items:center;gap:5px;font-size:13.5px;
  color:#f2ead9;margin:0;white-space:nowrap;cursor:pointer}

/* ---------- כרטיסים מתקפלים ---------- */
details.fold>summary{cursor:pointer;list-style:none;display:flex;flex-wrap:nowrap;align-items:center;gap:10px}
details.fold>summary h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
details.fold>summary::-webkit-details-marker{display:none}
details.fold>summary::before{content:'◀';font-size:12px;color:#9c8c74}
details.fold[open]>summary::before{content:'▼'}
details.fold>summary h2{margin:0}
details.fold[open]>summary{margin-bottom:12px}

/* ---------- עורך הבלוקים ---------- */
.blk{border:1px solid #55503f;border-inline-start:6px solid #1F4E5F;border-radius:8px;
  background:#282520;padding:12px;margin-bottom:4px;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.blk[data-day="erev_shabbat"]{border-inline-start-color:#B9822E}
.blk[data-day="shabbat"]{border-inline-start-color:#8C2F2A}
.blk[data-day="motzash"]{border-inline-start-color:#6B5527}
.blk[data-day="weekday"]{border-inline-start-color:#1F4E5F}
.blk.closed .brow,.blk.closed .tpl-add{display:none}
.admin .bcol{font-size:11px;padding:5px 7px;flex:none}
.blk-head{display:flex;flex-wrap:nowrap;gap:6px;align-items:center}
.blk-head .mini.grow{flex:1 1 60px;min-width:50px}
.blk:not(.closed) .blk-head{margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #3a3733}
.admin .rowsn{background:none;border:none;font-size:12px;color:#9c8c74;white-space:nowrap;
  cursor:pointer;padding:5px 2px}
.admin .rowsn:hover{background:none;color:#f2ead9}
.brow{border:1px solid #383530;border-radius:6px;background:#211f1c;padding:8px 10px;margin-bottom:8px}
.brow-line{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0}
.admin .mini{width:auto;min-width:0;font-size:13px;padding:6px 8px}
.admin .mini.grow{flex:1 1 160px}
.admin .mini.num{width:76px}
.mini-l{font-size:12px;color:#9c8c74;white-space:nowrap}
.chk{font-size:13px;color:#cfc6b4;display:inline-flex;gap:5px;align-items:center;white-space:nowrap}
.admin .chk input{width:auto}
.admin .brow button,.admin .blk button{font-size:13px;padding:5px 9px}
.tpl-add{display:flex;gap:8px;align-items:center;margin-top:6px}
#advJson{margin-top:12px}
#advJson summary{cursor:pointer}
#advJson textarea{margin-top:8px}
@media (max-width:700px){.row2{grid-template-columns:1fr}}

/* בורר תמונות רקע בניהול */
.bgpick{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}
.bgopt{width:66px;height:88px;padding:0;border:2px solid transparent;border-radius:6px;overflow:hidden;
  background:#2a2620;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#cfc6b4;font-size:12px}
.bgopt img{width:100%;height:100%;object-fit:cover;display:block}
.bgopt.dim{opacity:.45}
.bgopt.dim:hover{opacity:1}
.bgopt.on{border-color:#e0a84a;box-shadow:0 0 0 2px rgba(224,168,74,.35)}

/* עם תמונת רקע — התוכן נדחק אל האזור הריק של התמונה. לכל תמונה עיטור במקום אחר
   (חיתוך נייר עבה מכל הצדדים, שולחן שבת כבד למטה…), ולכן כל אחת מצהירה כמה מקום
   תופס העיטור: --it/--ib חלק מגובה הדף, --is חלק מרוחבו. נוצר מ‑bg/index.json (inset). */
.sheet.has-bg{--it:.1;--is:.1;--ib:.1}
.sheet[data-bg="noraim-1.jpg"]{--it:0.09;--is:0.1;--ib:0.09}
.sheet[data-bg="noraim-2.jpg"]{--it:0.22;--is:0.13;--ib:0.12}
.sheet[data-bg="sukkot-1.jpg"]{--it:0.15;--is:0.09;--ib:0.19}
.sheet[data-bg="sukkot-2.jpg"]{--it:0.24;--is:0.12;--ib:0.15}
.sheet[data-bg="pesach-1.jpg"]{--it:0.1;--is:0.1;--ib:0.27}
.sheet[data-bg="pesach-2.jpg"]{--it:0.24;--is:0.13;--ib:0.19}
.sheet[data-bg="purim-1.jpg"]{--it:0.19;--is:0.09;--ib:0.21}
.sheet[data-bg="weekly-1.jpg"]{--it:0.08;--is:0.08;--ib:0.21}
.sheet[data-bg="weekly-2.jpg"]{--it:0.09;--is:0.12;--ib:0.22}
.sheet[data-bg="weekly-3.jpg"]{--it:0.09;--is:0.08;--ib:0.08}
.sheet.has-spr{--it:.11;--is:.11;--ib:.11}
.sheet.poster_a4.has-bg,.sheet.wall_a4.has-bg,.sheet.home_a4.has-bg{
  padding:calc(296.9mm * var(--it)) calc(210mm * var(--is)) calc(296.9mm * var(--ib))}
.sheet.poster_4x5.has-bg,.sheet.image_4x5.has-bg{
  padding:calc(1350px * var(--it)) calc(1080px * var(--is)) calc(1350px * var(--ib))}
/* בפוסטר — שם בית הכנסת, בס״ד והשורה התחתונה יושבים ישר על העיטור; מקבלים גיבוי נייר */
.sheet.poster.has-bg .phead .org,.sheet.poster.has-bg .foot{background:rgba(255,253,248,.88);
  border-radius:2mm;padding:1mm 4mm;width:fit-content;margin-left:auto;margin-right:auto}
.sheet.poster.has-bg .bsd{background:rgba(255,253,248,.88);border-radius:1.5mm;padding:0 1.5mm}

/* מסגרת מספרייטים (sprites.js). השכבה בלי z-index כדי שלא תיצור stacking context —
   כך multiply מתמזג עם צבע הנייר של הגיליון והרקע הלבן של הספרייט נעלם */
.sprlayer{position:absolute;inset:0;pointer-events:none}
/* brightness דוחף את הרקע האוף־וייט של הגיליון ללבן מלא, כדי ש‑multiply ייעלם בלי מלבן */
.spr{position:absolute;display:block;background-repeat:no-repeat;mix-blend-mode:multiply;transform-origin:center;
  filter:brightness(1.035) saturate(1.05)}
.bgopt.spr{position:relative}
.bgopt.spr em{position:absolute;bottom:2px;left:2px;right:2px;font-style:normal;font-size:10px;
  background:rgba(0,0,0,.6);color:#f3e2b8;border-radius:3px;padding:1px 0}
.bgmore{align-self:center;padding:6px 10px;border-radius:6px;border:1px solid #e0a84a;background:transparent;
  color:#e0a84a;cursor:pointer;font-size:13px}
.bgopt.spr{background:#fff}
.bgopt.spr img{object-fit:contain}

/* תצוגת רקעים על הלוח */
.galdlg{max-width:min(1200px,94vw);width:94vw}
.bggal{display:flex;flex-wrap:wrap;gap:12px;max-height:70vh;overflow:auto}
.galcell{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border:2px solid transparent;
  border-radius:8px;background:#2a2620;color:#e9e1d2;cursor:pointer}
.galcell.on{border-color:#e0a84a}
.galbox{position:relative;overflow:hidden}
.galbox .sheet{position:absolute;top:0;right:0;transform-origin:top right;margin:0;box-shadow:none}
.gallab{font-size:12px}
.galfit{font-size:12px;color:#9fd39f;font-weight:600}
.galfit.bad{color:#ff8a7a}

/* לוח ימי חול — טבלה שבועית */
.sheet.weekdays .wkt{width:100%;border-collapse:collapse;margin:2mm 0 4mm;font-size:4mm}
.sheet.weekdays .wkt th,.sheet.weekdays .wkt td{border-bottom:.3mm solid rgba(0,0,0,.12);padding:1.4mm 1mm;text-align:center}
.sheet.weekdays .wkt thead th{background:var(--deep);color:#fff;font-weight:600;vertical-align:top;border-left:.3mm solid rgba(255,255,255,.25)}
.sheet.weekdays .wkt thead th b{display:block;font-size:4.2mm}
.sheet.weekdays .wkt thead th small{display:block;font-size:3mm;opacity:.85}
.sheet.weekdays .wkt thead th em{display:block;margin-top:.8mm;font-style:normal;font-size:2.9mm;background:var(--accent);
  color:#fff;border-radius:1.5mm;padding:.3mm 1mm}
.sheet.weekdays .wkt tbody th{text-align:right;font-weight:600;color:var(--deep);white-space:nowrap}
.sheet.weekdays .wkt tbody th small{display:block;font-weight:400;font-size:2.9mm;color:#8a7a62}
.sheet.weekdays .wkt td{font-family:'Assistant',sans-serif;font-weight:700;font-size:4.4mm;color:var(--deep);direction:ltr}
.sheet.weekdays .wkt tbody tr:nth-child(even) td,.sheet.weekdays .wkt tbody tr:nth-child(even) th{background:rgba(0,0,0,.03)}
.sheet.weekdays.has-bg .wkt{background:rgba(255,253,248,.85)}
.sheet.weekdays .head .hdate{position:static;display:block;text-align:center;margin-top:1mm;transform:none}
