/* ============================================================
   חלוקת השיחות — שפת-עיצוב עצמאית.
   הועתקה מהפיילוט כמו שהיא, למעט הגופנים: שם הם הגיעו מ-next/font,
   וכאן הם נטענים כ-link ומוגדרים כטוקנים בשורש.
   ⛔ אין כאן ולו אסימון אחד של מוצר אחר. הטוקנים עומדים בפני עצמם,
   וכל זיווג טקסט/רקע נמדד מול WCAG AA (scripts/check-security.ts).
   ============================================================ */

.reports { max-width: 1180px; }
.report-filters,.report-edit { padding: 22px; border: 1px solid #d8e1eb; border-radius: 16px; background: #f5f8fc; margin-block: 20px; }
.report-filters,.report-filter-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.report-filters label,.report-filter-grid label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; }
.report-filters input,.report-filters select,.report-filter-grid input,.report-filter-grid select { width: 100%; min-width: 0; min-height: 44px; padding: 9px; border: 1px solid #bbcbdc; border-radius: 8px; background: white; color: #193450; font: inherit; box-sizing: border-box; }
.report-search,.report-more,.report-filters>.sichot-actions { grid-column: 1 / -1; }
.report-more summary { cursor: pointer; padding-block: 8px; font-weight: 600; }
.report-stats { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; text-align: center; }
.report-stats div { border: 1px solid #d8e1eb; border-radius: 12px; padding: 16px; }
.report-stats b { display: block; font-size: 30px; color: #193450; }
.report-help { color: #4b6077; font-size: 14px; line-height: 1.7; }
.report-groups { display: grid; grid-template-columns: repeat(auto-fit,minmax(170px,1fr)); gap: 8px; max-height: 290px; overflow: auto; margin-block: 16px; }
.report-group { display: flex; flex-direction: column; gap: 5px; border: 1px solid #d8e1eb; padding: 12px; border-radius: 10px; color: #193450; text-decoration: none; }
.report-group:hover { background: #edf3fa; }
.report-table-wrap { overflow-x: auto; }
.report-table { min-width: 740px; }
.report-table td { vertical-align: top; }
.report-table small { display: block; margin-block: 5px; color: #4b6077; }
.report-table details p { max-width: 300px; overflow-wrap: anywhere; font-size: 13px; }
.report-quality { font-size: 12px; color: #344e69; }
.report-topics { display: grid; grid-template-columns: repeat(auto-fit,minmax(130px,1fr)); gap: 8px; max-height: 250px; overflow: auto; padding: 8px; }
.report-edit .report-filter-grid { margin-block: 16px; }
@media(max-width:650px) { .report-filters,.report-filter-grid { grid-template-columns: 1fr; } .report-filters,.report-edit { padding: 14px; } .report-stats div { padding: 10px 4px; } }
:root {
  --sh-serif: "Frank Ruhl Libre", Georgia, "Times New Roman", serif;
  --sh-sans: "Assistant", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;
}

html { -webkit-text-size-adjust: 100%; }
body { margin: 0; }
*, *::before, *::after { box-sizing: border-box; }


.sichot-root {
  /* ── קלף ──────────────────────────────────────────── */
  --sh-paper: #F7F2E8;      /* קרקע: טיח חם */
  --sh-paper-2: #EFE7D7;    /* שקע */
  --sh-surface: #FFFDF8;    /* פני-כרטיס */

  /* ── דיו ──────────────────────────────────────────── */
  --sh-ink: #2B2116;        /* 14.13:1 על קלף — טקסט ראשי */
  --sh-text-2: #5A4A35;     /*  7.63:1 — טקסט משני */
  --sh-text-3: #6A5A44;     /*  5.96:1 — טקסט שלישוני, עדיין AA */

  /* ── כחול צפת ─────────────────────────────────────── */
  --sh-blue: #17618F;       /*  5.99:1 על קלף · 6.68:1 ללבן-עליו */
  --sh-blue-deep: #14537D;  /*  7.34:1 — ריחוף ומצב-לחוץ */
  --sh-blue-mark: #2E8BC0;  /*  3.38:1 — ⛔ סימון וקו בלבד, לעולם לא טקסט */
  --sh-blue-tint: #E4EEF6;

  /* ── פליז: מה שנתפס ───────────────────────────────── */
  --sh-brass: #7A5C18;      /*  5.58:1 על קלף */
  --sh-brass-tint: #F6EDD6;

  /* ── חֵמר: שגיאה ──────────────────────────────────── */
  --sh-clay: #8F3524;       /*  6.96:1 */
  --sh-clay-tint: #FBEBE6;

  /* ── קווים ────────────────────────────────────────── */
  --sh-line: #D8CDB8;       /* שערה דקורטיבית */
  --sh-line-strong: #C3B695;/* קו-הפרדה */

  --sh-gap: 14px;
  --sh-radius: 6px;         /* פינות כמעט-ישרות: דף, לא כרטיסיית-ממשק */

  background: var(--sh-paper);
  min-height: 100dvh;
  font-family: var(--sh-sans), system-ui, sans-serif;
  color: var(--sh-ink);
}

.sichot {
  max-width: 680px;
  margin: 0 auto;
  padding: 22px 16px 96px;
  color: var(--sh-ink);
}

/* ── שער-הדף: עמוד-שער של ספר, לא כותרת של דשבורד ───────── */

.sichot-head {
  background: var(--sh-surface);
  border: 1px solid var(--sh-line-strong);
  /* הקו הכפול הוא הסימן-ההיכר. הוא מצוטט מעמוד-שער, ולכן הוא דק
     ופנימי ולא מסגרת כבדה. */
  box-shadow: inset 0 0 0 4px var(--sh-surface), inset 0 0 0 5px var(--sh-line);
  border-radius: var(--sh-radius);
  padding: 26px 22px 20px;
  margin-bottom: var(--sh-gap);
  text-align: center;
}
.sichot-kicker {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--sh-text-2);
}
.sichot-parsha {
  font-family: var(--sh-serif), Georgia, serif;
  font-size: clamp(30px, 8.5vw, 42px);
  font-weight: 700;
  line-height: 1.12;
  margin: 10px 0 6px;
  color: var(--sh-ink);
}
.sichot-sub { font-size: 14px; color: var(--sh-text-2); }

/* המספר שהשאלה האמיתית נשענת עליו: כמה נשאר */
.sichot-stat {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 9px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 2px solid var(--sh-blue-mark);
}
.sichot-stat b {
  font-family: var(--sh-serif), Georgia, serif;
  font-size: 34px;
  font-weight: 900;
  line-height: 1;
  color: var(--sh-blue);
}
.sichot-stat span { font-size: 14px; color: var(--sh-text-2); }
.sichot-stat.is-done b { color: var(--sh-brass); }

/* ── פסי-הודעה ───────────────────────────────────────────── */

.sichot-note {
  border-radius: var(--sh-radius);
  padding: 12px 14px;
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: var(--sh-gap);
  border: 1px solid var(--sh-line-strong);
  border-inline-start: 4px solid var(--sh-line-strong);
  background: var(--sh-surface);
  color: var(--sh-text-2);
}
.sichot-note strong { color: var(--sh-ink); }
.sichot-note.is-demo { background: var(--sh-brass-tint); border-color: var(--sh-brass); }
.sichot-note.is-error { background: var(--sh-clay-tint); border-color: var(--sh-clay); color: var(--sh-clay); }
.sichot-note.is-ok { background: var(--sh-blue-tint); border-color: var(--sh-blue); color: var(--sh-blue-deep); }

/* ── מי אני ──────────────────────────────────────────────── */

.sichot-who {
  background: var(--sh-surface);
  border: 1px solid var(--sh-line-strong);
  border-radius: var(--sh-radius);
  padding: 18px;
  margin-bottom: var(--sh-gap);
}
.sichot-who h2 {
  font-family: var(--sh-serif), Georgia, serif;
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 6px;
  color: var(--sh-ink);
}
.sichot-who p { font-size: 14px; color: var(--sh-text-2); margin: 0 0 14px; line-height: 1.6; }
.sichot-names { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.sichot-name-btn {
  min-height: 44px;
  padding: 10px 18px;
  border-radius: var(--sh-radius);
  border: 1px solid var(--sh-line-strong);
  background: var(--sh-paper);
  color: var(--sh-ink);
  font: 600 15px var(--sh-sans), sans-serif;
  cursor: pointer;
}
.sichot-name-btn:hover { border-color: var(--sh-blue); color: var(--sh-blue-deep); }
.sichot-row { display: flex; gap: 8px; }
.sichot-row input {
  flex: 1;
  min-height: 44px;
  padding: 10px 14px;
  border-radius: var(--sh-radius);
  border: 1px solid var(--sh-line-strong);
  background: var(--sh-paper);
  font: 400 16px var(--sh-sans), sans-serif; /* 16px — מונע זום ב-iOS */
  color: var(--sh-ink);
}
.sichot-row input::placeholder { color: var(--sh-text-3); }
.sichot-row input:focus-visible { outline: 2px solid var(--sh-blue); outline-offset: 1px; }

.sichot-me {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
  font-size: 14px;
  color: var(--sh-text-2);
  margin-bottom: var(--sh-gap);
  padding: 0 4px;
}
.sichot-me strong { color: var(--sh-ink); }

/* ── כרטיס "השיחה שלי" ───────────────────────────────────── */

.sichot-mine {
  background: var(--sh-brass-tint);
  border: 1px solid var(--sh-brass);
  border-inline-start: 5px solid var(--sh-brass);
  border-radius: var(--sh-radius);
  padding: 18px;
  margin-bottom: var(--sh-gap);
}
.sichot-mine .sichot-kicker { color: var(--sh-brass); }
.sichot-mine h2 {
  font-family: var(--sh-serif), Georgia, serif;
  font-size: 22px;
  font-weight: 700;
  margin: 6px 0 12px;
  color: var(--sh-ink);
}

/* ── רשימת השיחות ────────────────────────────────────────── */

.sichot-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }

.sichot-item {
  background: var(--sh-surface);
  border: 1px solid var(--sh-line-strong);
  border-radius: var(--sh-radius);
  padding: 15px;
  display: grid;
  gap: 10px;
}
/* ⛔ "נתפסה" אינו נשען על צבע בלבד: הכרטיס גם דוהה, גם מקבל קו-שוליים,
   וגם נושא את שם הלוקח במילים. */
.sichot-item.is-taken { background: var(--sh-paper-2); border-inline-start: 5px solid var(--sh-line-strong); }
.sichot-item.is-mine { background: var(--sh-brass-tint); border-color: var(--sh-brass); border-inline-start: 5px solid var(--sh-brass); }

.sichot-title {
  font-family: var(--sh-serif), Georgia, serif;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.3;
  color: var(--sh-ink);
}
.sichot-meta { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }

.sichot-chip {
  font-size: 12px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 3px;
  background: var(--sh-paper);
  color: var(--sh-text-2);
  border: 1px solid var(--sh-line);
}
.sichot-chip.is-free { background: var(--sh-blue-tint); color: var(--sh-blue-deep); border-color: var(--sh-blue); }
.sichot-chip.is-taken { background: var(--sh-surface); color: var(--sh-text-2); }

.sichot-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }

.sichot-btn {
  min-height: 44px;
  padding: 11px 22px;
  border-radius: var(--sh-radius);
  border: 1px solid transparent;
  font: 700 15px var(--sh-sans), sans-serif;
  cursor: pointer;
  background: var(--sh-blue);
  color: #fff;
}
.sichot-btn:hover { background: var(--sh-blue-deep); }
.sichot-btn:disabled { background: var(--sh-paper-2); color: var(--sh-text-3); border-color: var(--sh-line-strong); cursor: not-allowed; }
.sichot-btn.is-ghost { background: transparent; color: var(--sh-ink); border-color: var(--sh-line-strong); }
.sichot-btn.is-ghost:hover { background: var(--sh-paper); border-color: var(--sh-blue); color: var(--sh-blue-deep); }
.sichot-btn:focus-visible { outline: 2px solid var(--sh-blue); outline-offset: 2px; }

.sichot-link {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 10px 14px;
  border-radius: var(--sh-radius);
  color: var(--sh-blue-deep);
  font-size: 14px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  border: 1px solid transparent;
}
.sichot-link:hover { background: var(--sh-surface); border-color: var(--sh-line-strong); }
.sichot-link:focus-visible { outline: 2px solid var(--sh-blue); outline-offset: 2px; }

.sichot-taken-by { font-size: 14px; color: var(--sh-text-2); }
.sichot-taken-by b { color: var(--sh-ink); }

/* ── מספר-השיחה ──────────────────────────────────────────── */
/* מקשר בין המסך, דף-ההדפסה ומה שאומרים בקבוצה ("לקחתי את 3"). */
.sichot-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  margin-inline-end: 9px;
  border-radius: 50%;
  border: 1px solid var(--sh-line-strong);
  background: var(--sh-paper);
  color: var(--sh-text-2);
  font-family: var(--sh-sans), sans-serif;
  font-size: 13px;
  font-weight: 700;
  vertical-align: middle;
}
.sichot-item.is-mine .sichot-num { border-color: var(--sh-brass); color: var(--sh-brass); }

/* ── סינון "רק הפנויות" ──────────────────────────────────── */
/* קישורים ולא כפתורי-JS: עובד גם בלי סקריפט, וניתן לשיתוף. */
.sichot-filter {
  display: flex;
  gap: 8px;
  margin-bottom: 10px;
  padding: 0 2px;
}
.sichot-filter .sichot-chip {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 0 16px;
  font-size: 14px;
  text-decoration: none;
  border-radius: var(--sh-radius);
  color: var(--sh-text-2);
}
.sichot-filter .sichot-chip.is-on {
  background: var(--sh-ink);
  color: var(--sh-paper);
  border-color: var(--sh-ink);
}
.sichot-filter .sichot-chip:focus-visible { outline: 2px solid var(--sh-blue); outline-offset: 2px; }

/* כפתור בזמן-המתנה: אומר שהלחיצה נקלטה, כדי שלא ילחצו שוב */
.sichot-btn[data-pending], .sichot-name-btn[data-pending] { opacity: 0.7; cursor: progress; }

/* פס-הודעה ממוקד אחרי פעולה — בלי טבעת כפולה מסביב לטקסט ארוך */
.sichot-note:focus { outline: 2px solid var(--sh-blue); outline-offset: 2px; }
.sichot-note:focus:not(:focus-visible) { outline: none; }

/* ── פקדי-ניהול ──────────────────────────────────────────── */
.sichot-select,
.sichot-input {
  width: 100%;
  min-height: 44px;
  padding: 10px 14px;
  border-radius: var(--sh-radius);
  border: 1px solid var(--sh-line-strong);
  background: var(--sh-paper);
  font: 400 16px var(--sh-sans), sans-serif;
  color: var(--sh-ink);
}
.sichot-select:focus-visible,
.sichot-input:focus-visible { outline: 2px solid var(--sh-blue); outline-offset: 1px; }

.sichot-check {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px;
  border: 1px solid var(--sh-line-strong);
  border-radius: var(--sh-radius);
  background: var(--sh-paper);
  font-size: 14px;
  line-height: 1.6;
  color: var(--sh-text-2);
  cursor: pointer;
}
.sichot-check input { inline-size: 22px; block-size: 22px; margin-top: 2px; accent-color: var(--sh-blue); }
.sichot-check strong { color: var(--sh-ink); font-size: 15px; }

.sichot-manager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.sichot-manager em { font-style: normal; color: var(--sh-text-3); font-size: 13px; }

.sichot-token {
  display: inline-block;
  margin: 6px 0;
  padding: 8px 10px;
  background: var(--sh-surface);
  border: 1px solid var(--sh-blue);
  border-radius: 4px;
  font-family: var(--font-mono), monospace;
  font-size: 12px;
  word-break: break-all;
  direction: ltr;
  text-align: left;
  color: var(--sh-ink);
}

/* ── סיכום השנה ──────────────────────────────────────────── */
/* רישום, לא תחרות: בלי מדליות, בלי פודיום, פס-אורך שקט בלבד. */
.sichot-year {
  width: 100%;
  border-collapse: collapse;
  background: var(--sh-surface);
  border: 1px solid var(--sh-line-strong);
  border-radius: var(--sh-radius);
  overflow: hidden;
}
.sichot-year th {
  text-align: right;
  font-size: 13px;
  font-weight: 700;
  color: var(--sh-text-2);
  padding: 10px 14px;
  border-bottom: 1px solid var(--sh-line-strong);
  background: var(--sh-paper);
}
.sichot-year td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--sh-line);
  font-size: 16px;
}
.sichot-year tbody tr:last-child td { border-bottom: 0; }
.sichot-year td.mono-count {
  width: 46%;
  font-weight: 700;
  color: var(--sh-ink);
  position: relative;
  white-space: nowrap;
}
.sichot-bar {
  display: block;
  height: 6px;
  margin-top: 6px;
  border-radius: 3px;
  background: var(--sh-blue-mark);
  min-inline-size: 0;
}

progress.sichot-bar { width: 100%; border: 0; appearance: none; background: var(--sh-paper-2); }
progress.sichot-bar::-webkit-progress-bar { background: var(--sh-paper-2); border-radius: 3px; }
progress.sichot-bar::-webkit-progress-value { background: var(--sh-blue-mark); border-radius: 3px; }
progress.sichot-bar::-moz-progress-bar { background: var(--sh-blue-mark); border-radius: 3px; }
.sichot-row-spaced { margin-top: 12px; }
.sichot-inline { display: inline; }
.sichot-print-tools { padding-bottom: 0; }
.sichot-print-tools .sichot-foot { margin-top: 0; border-top: 0; }

/* טקסט לקוראי-מסך בלבד */
.sr-only {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

/* ── תחתית ───────────────────────────────────────────────── */

.sichot-foot {
  margin-top: 26px;
  padding-top: 16px;
  border-top: 1px solid var(--sh-line-strong);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.sichot-empty {
  background: var(--sh-surface);
  border: 1px dashed var(--sh-line-strong);
  border-radius: var(--sh-radius);
  padding: 30px 20px;
  text-align: center;
  color: var(--sh-text-2);
  font-size: 15px;
  line-height: 1.7;
}

/* ── ניהול ───────────────────────────────────────────────── */

.sichot-admin textarea {
  width: 100%;
  min-height: 190px;
  padding: 12px 14px;
  border-radius: var(--sh-radius);
  border: 1px solid var(--sh-line-strong);
  background: var(--sh-paper);
  font: 400 15px/1.8 var(--sh-sans), sans-serif;
  color: var(--sh-ink);
  resize: vertical;
}
.sichot-admin textarea:focus-visible { outline: 2px solid var(--sh-blue); outline-offset: 1px; }
.sichot-admin label {
  display: block;
  font-family: var(--sh-serif), Georgia, serif;
  font-size: 17px;
  font-weight: 700;
  margin-bottom: 6px;
  color: var(--sh-ink);
}
.sichot-admin .sichot-who { display: grid; gap: 16px; }
.sichot-preview { display: grid; gap: 6px; margin: 4px 0 0; padding: 0; list-style: none; }
.sichot-preview li {
  font-size: 14px;
  padding: 9px 12px;
  background: var(--sh-paper);
  border-radius: 3px;
  border: 1px solid var(--sh-line);
  color: var(--sh-text-2);
}
.sichot-pre {
  white-space: pre-wrap;
  background: var(--sh-paper);
  border: 1px solid var(--sh-line-strong);
  border-radius: var(--sh-radius);
  padding: 14px;
  margin: 0;
  font: 400 15px/1.8 var(--sh-sans), sans-serif;
  color: var(--sh-ink);
}

/* ============================================================
   דף ההדפסה — A4 בצבע
   ------------------------------------------------------------
   המדפסת של בית-הכנסת צבעונית (הבעלים, 20.9), ולכן הדף משתמש בצבע
   כדי **לדרג מידע**, לא כדי להתקשט: כותרת על רקע דיו, שורות פנויות
   בכחול-צפת, ופסי-קלף שמפרידים בין השורות.

   ⛔ הצבע מוסיף, ולא נושא לבדו: "פנויה" כתוב גם במילים ובקו-מילוי.
   דף שיצא בטעות בשחור-לבן נשאר קריא במלואו.
   ============================================================ */

.sheet {
  max-width: 190mm;
  margin: 0 auto;
  padding: 14mm 12mm;
  background: #fff;
  color: var(--sh-ink);
  font-family: var(--sh-sans), system-ui, sans-serif;
}

.sheet-head {
  text-align: center;
  background: var(--sh-ink);
  color: var(--sh-paper);
  border-radius: 4px;
  padding: 14px 16px 16px;
  margin-bottom: 4mm;
}
.sheet-community { font-size: 12pt; letter-spacing: 0.08em; opacity: 0.85; }
.sheet-title {
  font-family: var(--sh-serif), Georgia, serif;
  font-size: 26pt;
  font-weight: 700;
  margin: 4px 0 6px;
  color: #fff;
}
.sheet-sub {
  font-size: 10.5pt;
  display: inline-block;
  padding: 3px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
}

.sheet-table { width: 100%; border-collapse: collapse; font-size: 11pt; }
.sheet-table th {
  background: var(--sh-blue);
  color: #fff;
  font-weight: 700;
  font-size: 10pt;
  letter-spacing: 0.05em;
  padding: 8px 10px;
  text-align: right;
  border: 1px solid var(--sh-blue);
}
.sheet-table td {
  padding: 9px 10px;
  text-align: right;
  vertical-align: middle;
  border: 1px solid var(--sh-line-strong);
}
/* פס-קלף בשורות זוגיות: מוביל את העין לרוחב הדף בלי קווים כבדים */
.sheet-table tbody tr:nth-child(even) td { background: var(--sh-paper); }

.sheet-table td.num {
  width: 9mm;
  text-align: center;
  font-weight: 800;
  color: var(--sh-blue);
  font-size: 12pt;
}
.sheet-table td.sicha { font-family: var(--sh-serif), Georgia, serif; font-size: 12.5pt; }
.sheet-table td.who { width: 54mm; font-weight: 600; }

/* שורה שנלקחה: הלומד בפליז, והשורה כולה רגועה */
.sheet-row-taken td.who { color: #2C608D; }
/* שורה פנויה: כחול + המילה "פנויה" + קו למילוי ביד. שלושה סימנים. */
.sheet-row-free td { background: var(--sh-blue-tint) !important; }
.sheet-free {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--sh-blue);
  font-weight: 700;
  font-size: 10pt;
}
.sheet-free::after {
  content: "";
  flex: 1;
  border-bottom: 1px solid var(--sh-blue);
  opacity: 0.55;
}

.sheet-foot {
  margin-top: 4mm;
  padding-top: 3mm;
  border-top: 2px solid var(--sh-blue-mark);
  font-size: 9.5pt;
  color: var(--sh-text-2);
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.sheet-foot strong { color: var(--sh-ink); }

@media print {
  @page { size: A4 portrait; margin: 10mm; }
  html, body, .sichot-root { background: #fff !important; }
  .no-print { display: none !important; }
  /* רכיבים גלובליים שאין להם מה לעשות על דף שנתלה על הלוח */
  .a11y-fab, .a11y-panel, .a11y-backdrop, .skip-link { display: none !important; }
  .sheet { padding: 0; max-width: none; }
  .sheet-table { page-break-inside: auto; }
  .sheet-table tr { page-break-inside: avoid; }
  .sheet-head, .sheet-table th, .sheet-row-free td, .sheet-table tbody tr:nth-child(even) td {
    /* בלי זה הדפדפן מפשיט את רקעי-הצבע בהדפסה, והדירוג נעלם */
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}

/* ── 390px: מסך-הייחוס לבדיקות-המובייל ───────────────────── */
@media (max-width: 420px) {
  .sichot { padding: 16px 12px 88px; }
  .sichot-head { padding: 22px 16px 18px; }
  .sichot-actions .sichot-btn { flex: 1 1 auto; }
}
/* ── כמה שיחות ללומד אחד, ושיוך בידי הגבאי ───────────────── */
/* נוסף אחרי שהתברר שבפועל לוקחים 2–3 שיחות, ולא אחת. */

.sichot-mine-row + .sichot-mine-row {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--sh-brass);
}
.sichot-mine-row h2 { margin: 0 0 8px; }
.sichot-mine-more {
  margin: 14px 0 0;
  font-size: 14px;
  color: var(--sh-text-2);
}

.sichot-topics {
  display: grid;
  gap: 8px;
  margin: 0 0 var(--sh-gap);
  padding: 0;
  border: 0;
}
.sichot-topics legend {
  padding: 0 0 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--sh-ink);
}
.sichot-topics .sichot-check { padding: 10px 12px; }
.sichot-topics em { font-style: normal; color: var(--sh-text-3); font-size: 13px; }

.sichot-assign {
  display: grid;
  gap: 8px;
  padding: 12px;
}
.sichot-assign .sichot-row { flex-wrap: wrap; }
.sichot-assign .sichot-row select,
.sichot-assign .sichot-row input { flex: 1 1 140px; min-inline-size: 0; }
.sichot-inline-form { display: inline-block; }


/* Community identity, drawn from the supplied copper logo and letterhead. */
.sichot-root {
  --sh-paper: #F8F5F0;
  --sh-paper-2: #F0E9E1;
  --sh-surface: #FFFFFF;
  --sh-ink: #472A19;
  --sh-text-2: #655448;
  --sh-text-3: #756355;
  --sh-blue: #824B2B;
  --sh-blue-deep: #62361F;
  --sh-blue-mark: #A97652;
  --sh-blue-tint: #F5EBDF;
  --sh-brass: #326147;
  --sh-brass-tint: #EDF5EE;
  --sh-line: #E5D9CC;
  --sh-line-strong: #D2BCA5;
  --sh-radius: 14px;
}
.sichot { max-width: 880px; padding-top: 16px; }
.community-nav { display:flex; justify-content:center; flex-wrap:wrap; gap:6px 22px; padding:10px 0 18px; font-size:15px; }
.community-nav a { color:var(--sh-text-2); text-decoration:none; padding:6px 0; border-bottom:1px solid transparent; }
.community-nav a:hover { color:var(--sh-blue); border-color:var(--sh-blue); }
.sichot-head { border:0; box-shadow:none; background:transparent; padding:12px 20px 24px; }
.community-logo { display:block; object-fit:contain; width:150px; height:auto; margin:0 auto 14px; mix-blend-mode:multiply; }
.sichot-kicker { letter-spacing:0; }
.sichot-parsha { font-size:clamp(28px,6vw,40px); line-height:1.22; margin:8px 0; }
.sichot-stat { display:grid; grid-template-columns:repeat(3,1fr); gap:0; border:1px solid var(--sh-line); background:#fff; border-radius:14px; padding:16px 8px; max-width:560px; margin:24px auto 0; }
.sichot-stat>div { display:grid; gap:2px; text-align:center; }
.sichot-stat>div+div { border-inline-start:1px solid var(--sh-line); }
.sichot-stat b { color:var(--sh-blue-deep); font-family:var(--sh-sans); font-size:30px; line-height:1.1; }
.sichot-stat span { font-size:14px; }
.sichot-who { border-color:var(--sh-line); padding:22px; }
.sichot-btn { border-radius:9px; min-height:44px; padding:10px 18px; }
.sichot-row input,.sichot-input,.sichot-select,textarea { border-radius:8px; min-height:44px; }
.returning-login { background:var(--sh-paper); padding:12px 16px; border-radius:8px; margin:14px 0; }
summary { cursor:pointer; font-weight:700; }
.returning-login .sichot-row { margin-top:12px; }
.join-label { font-weight:600; }
.board-filters { display:flex; gap:8px; flex-wrap:wrap; margin:24px 0 12px; }
.board-filters a { display:flex; align-items:center; gap:8px; border:1px solid var(--sh-line); background:#fff; border-radius:999px; padding:9px 15px; color:var(--sh-text-2); text-decoration:none; font-size:15px; }
.board-filters a[aria-current] { background:var(--sh-blue-deep); border-color:var(--sh-blue-deep); color:#fff; }
.board-filters span { font-size:13px; opacity:.9; }
.sichot-list { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; scroll-margin-top:16px; }
.talk-group { grid-column:1/-1; padding:8px 2px 0; }
.talk-group h2 { font-size:20px; margin:8px 0; }
.sichot-item { border:1px solid var(--sh-line); padding:18px; gap:8px; align-content:start; }
.sichot-title { margin:0; font-size:23px; }
.talk-detail { margin:0; color:var(--sh-text-2); font-size:15px; line-height:1.5; }
.sichot-item .sichot-actions { margin-top:4px; justify-content:space-between; }
.sichot-item.is-taken { border-inline-start:4px solid #A39586; background:#F0EDE8; }
.sichot-item.is-mine { border-inline-start:4px solid #326147; background:#EDF5EE; }
.sichot-chip.is-free { color:#356247; background:#EDF5EE; border-color:#BAD0BE; }
.sichot-taken-by { font-size:15px; }
#identity { scroll-margin-top:20px; }
.admin-details { background:#fff; border:1px solid var(--sh-line); border-radius:12px; margin:14px 0; }
.admin-details>summary { padding:18px 22px; }
.admin-details>.sichot-who { border:0; margin:0; }
.sichot-admin .community-logo { width:110px; }
.sichot-admin textarea { min-height:250px; }
.sheet { width:210mm; max-width:100%; margin:20px auto; padding:12mm 15mm; background:#fff; color:#193A5B; }
.sheet-head { position:relative; background:transparent; color:#193A5B; border:0; text-align:center; padding:0 0 5mm; }
.sheet-head .community-logo { width:31mm; margin-bottom:2mm; }
.sheet-bh { position:absolute; inset-inline-start:0; top:0; font-size:10pt; }
.sheet-community { color:#435B72; font-size:9pt; letter-spacing:0; }
.sheet-kicker { font-size:11pt; color:#2C608D; margin-top:3mm; font-weight:700; }
.sheet-title { font-size:23pt; line-height:1.15; color:#193A5B; margin:1mm 0 2mm; }
.sheet-sub { background:transparent; color:#435B72; font-size:9pt; padding:0; }
.sheet-table { font-size:10pt; table-layout:fixed; border:1px solid #B7CADA; }
.sheet-table th { background:#EAF0F6; color:#193A5B; padding:2mm; border:1px solid #B7CADA; font-size:11pt; }
.sheet-table td { padding:1.6mm 2.5mm; border:1px solid #DCE5EE; vertical-align:middle; background:#fff !important; }
.sheet-table td.sicha { font-size:11pt; line-height:1.2; width:62%; }
.sheet-table td.who { width:38%; font-size:10pt; text-align:center; }
.sheet-detail { display:block; font-family:var(--sh-sans); font-size:8.5pt; font-weight:400; color:#435B72; margin-top:.4mm; }
.sheet-group th { background:#EAF2F9; color:#2C608D; font-size:10pt; padding:1.4mm; text-align:right; }
.sheet-free { color:#91A8BF; font-size:9pt; }
.sheet-free::after { content:none; }
.sheet-foot { font-size:8pt; border-top:0; padding-top:3mm; }
.sheet-brand-foot { border-top:1px solid #477CA6; margin-top:4mm; padding-top:2mm; text-align:center; font-size:9pt; color:#2C608D; font-weight:700; }
.sheet-brand-foot span { font-size:8pt; font-weight:400; }
@media(max-width:600px) {
  .sichot-list { grid-template-columns:1fr; }
  .community-logo { width:125px; }
  .sichot { padding:10px 14px 50px; }
  .sichot-head { padding:8px 0 18px; }
  .sichot-who { padding:18px; }
  .board-filters { gap:6px; }
  .board-filters a { padding:8px 11px; font-size:14px; }
  .community-nav { gap:16px; font-size:14px; }
  .sichot-stat { margin-top:18px; }
  .sichot-stat span { font-size:12px; }
}
@media print {
  @page { size:A4 portrait; margin:9mm 12mm; }
  .sheet { width:auto; max-width:none; margin:0; padding:0; }
  .sheet-head .community-logo { width:26mm; }
  .sheet-table td { padding:1.1mm 2mm; }
  .sheet-table td.sicha { font-size:10pt; }
  .sheet-detail { font-size:8pt; }
  .sheet-table thead { display:table-header-group; }
  .sheet-group { break-after:avoid; }
  .sheet-brand-foot,.sheet-foot { break-inside:avoid; }
}
.community-purpose { margin:4px 0 12px; font-size:15px; color:var(--sh-text-2); }
.sichot-stat:not(:has(>div)) { display:flex; justify-content:center; gap:12px; }
@media(max-width:600px) {
  .community-logo { width:104px; margin-bottom:10px; }
  .community-purpose { font-size:14px; margin-bottom:8px; }
  .sichot-parsha { font-size:28px; }
  .sichot-stat { padding:12px 6px; margin-top:14px; }
  .sichot-stat b { font-size:26px; }
}
@media print {
  .sheet-detail { display:inline; margin-inline-start:2mm; font-size:7.5pt; }
  .sheet-head { padding-bottom:3mm; }
  .sheet-table td { padding:1.2mm 2mm; }
}
.board-refresh { font-size:13px; color:var(--sh-text-2); margin:0 2px 14px; }

/* One compact record per row: talk | who took it | action, aligned across the list. */
.community-board .sichot-list { display:block; background:#fff; border:1px solid var(--sh-line); border-radius:14px; overflow:hidden; }
.community-board .talk-group { padding:14px 16px 8px; background:var(--sh-paper); border-bottom:1px solid var(--sh-line); }
.community-board .talk-group:not(:first-child) { border-top:1px solid var(--sh-line); }
.community-board .talk-group h2 { margin:0; font:700 15px var(--sh-sans); color:var(--sh-blue); letter-spacing:.2px; }
.community-board .sichot-item {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(120px,190px) 104px;
  gap:6px 16px; align-items:center; padding:10px 16px; min-height:60px;
  border:0; border-bottom:1px solid var(--sh-line); border-radius:0; background:#fff;
  border-inline-start:4px solid transparent;
}
.community-board .sichot-item:last-child { border-bottom:0; }
.community-board .sichot-item:hover { background:#FAFCFE; box-shadow:none; }
.community-board .sichot-item.is-taken:not(.is-mine) { background:#F4F7FA; border-inline-start-color:#B7CADA; }
.community-board .sichot-item.is-mine { background:#EEF6F0; border-inline-start-color:#326147; }
.community-board .talk-summary { display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 12px; min-width:0; }
.community-board .sichot-title { font-size:18px; line-height:1.3; margin:0; white-space:nowrap; }
.community-board .talk-detail { display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 10px; font-size:13px; line-height:1.45; color:var(--sh-text-2); margin:0; min-width:0; }
.community-board .talk-source { color:var(--sh-blue); font-weight:600; text-decoration:none; white-space:nowrap; border-bottom:1px solid currentColor; line-height:1.2; }
.community-board .talk-source:hover { color:var(--sh-blue-deep); }
.community-board .talk-source:focus-visible { outline:2px solid var(--sh-blue); outline-offset:2px; border-radius:2px; }
.community-board .sichot-meta { font-size:14px; min-width:0; }
.community-board .sichot-chip.is-free { background:transparent; border:0; padding:0; color:#356247; font-size:14px; font-weight:600; }
.community-board .sichot-chip.is-free::before { content:'○ '; }
.community-board .sichot-taken-by { font-size:14px; line-height:1.35; color:var(--sh-text-2); overflow-wrap:anywhere; }
.community-board .sichot-taken-by b { color:var(--sh-ink); font-weight:600; }
.community-board .sichot-taken-by.is-me b { color:#326147; font-weight:700; }
.community-board .sichot-item .sichot-actions { margin:0; justify-content:flex-end; flex-wrap:nowrap; }
.community-board .sichot-item .sichot-actions form { margin:0; }
.community-board .sichot-item .sichot-btn { display:inline-flex; align-items:center; justify-content:center; min-width:96px; min-height:40px; padding:8px 12px; font-size:14px; border-radius:9px; white-space:nowrap; text-decoration:none; }
a.sichot-btn { text-decoration:none; display:inline-flex; align-items:center; justify-content:center; }
@media(max-width:600px) {
  .community-board .sichot-list { border-radius:12px; margin-inline:-4px; }
  .community-board .talk-group { padding:12px 12px 6px; }
  .community-board .sichot-item { grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"talk action" "who action"; gap:3px 10px; padding:10px 12px; }
  .community-board .talk-summary { grid-area:talk; display:block; }
  .community-board .sichot-meta { grid-area:who; font-size:13px; }
  .community-board .sichot-item .sichot-actions { grid-area:action; }
  .community-board .sichot-title { font-size:16.5px; white-space:normal; }
  .community-board .talk-detail { font-size:12px; margin-top:1px; }
  .community-board .sichot-item .sichot-btn { min-width:80px; min-height:44px; padding:8px 10px; font-size:14px; }
  .community-board .sichot-taken-by, .community-board .sichot-chip.is-free { font-size:13px; }
}

/* Gabbai bulletin editor: a practical workspace, separate from the printed brand. */
.bulletin-workspace{max-width:1440px;margin:auto;padding:32px 28px 64px}
.bulletin-app-header{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-bottom:24px;border-bottom:1px solid var(--sh-line)}
.bulletin-app-header h1{font-family:Assistant,sans-serif;font-size:34px;margin:4px 0}
.bulletin-app-header p{margin:4px 0;color:var(--sh-text-2)}
.bulletin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}
.bulletin-toolbar form,.bulletin-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.bulletin-toolbar input{width:auto}
.bulletin-editor-grid{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(400px,1.15fr);align-items:start;gap:28px}
.bulletin-edit-panel{padding:26px;background:#fff;border:1px solid var(--sh-line);border-radius:16px}
.bulletin-edit-panel h2,.bulletin-preview h2{margin:0;font-family:Assistant,sans-serif;font-size:22px}
.bulletin-edit-panel input:not([type=checkbox]),.bulletin-edit-panel textarea{width:100%;box-sizing:border-box}
.bulletin-edit-panel label{display:block;margin:10px 0 5px;font-weight:600}
.bulletin-start{padding:24px;background:var(--sh-paper);border:1px dashed var(--sh-line-strong);margin:20px 0;border-radius:10px}
.bulletin-start h3{margin:0}
.bulletin-fieldset{min-width:0;padding:16px;margin:24px 0;border:1px solid var(--sh-line);border-radius:10px}
.bulletin-fieldset legend{font-weight:700;padding:0 8px}
.bulletin-options label,.bulletin-save label,.bulletin-block-actions label{display:flex;gap:8px;align-items:center;font-size:14px}
.bulletin-options input,.bulletin-save input,.bulletin-block-actions input{width:18px;height:18px;flex-shrink:0}
.bulletin-block-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.bulletin-block-actions .btn{font-size:13px;padding:7px 10px}
.bulletin-save{border-top:1px solid var(--sh-line);margin-top:24px;padding-top:12px}
.bulletin-save p{font-size:14px;color:var(--sh-text-2);line-height:1.7}
.bulletin-save>.btn{width:100%}
.bulletin-preview-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}
.bulletin-preview-heading span{font-size:13px;color:var(--sh-text-2)}
.bulletin-preview>.muted{font-size:13px}
.bulletin-history{margin-top:28px;padding:20px;background:#fff;border:1px solid var(--sh-line);border-radius:12px}
.bulletin-history summary{cursor:pointer;font-weight:700}
.bulletin-history>div{display:flex;flex-wrap:wrap;gap:20px;padding-top:18px}
/* Cream, copper and rounded white inset drawn from Dudi's September 2026 bulletin. */
.bulletin-paper{position:relative;isolation:isolate;box-sizing:border-box;background:#f3eee7;color:#472a19;max-width:794px;min-height:960px;margin:0 auto;padding:26px 30px 18px;box-shadow:0 8px 30px #472a1914;border:1px solid #e5d9cc;font-family:'Frank Ruhl Libre',serif}
.bulletin-masthead{position:relative;text-align:center;padding:12px 0 22px}
.bulletin-masthead:before{content:'';position:absolute;z-index:-1;top:-38px;left:50%;transform:translateX(-50%);width:115px;height:86px;border-radius:0 0 70px 70px;background:#fff}
.bulletin-bh{position:absolute;right:0;top:0;font-size:15px}
.bulletin-masthead .community-logo{display:block;width:156px;height:auto;margin:auto}
.bulletin-paper-body{background:white;border:1px solid #ad815f;border-radius:30px;padding:22px 25px;min-height:645px}
.bulletin-dates{font-size:14px;text-align:left;color:#655448;line-height:1.6}
.bulletin-paper h1{font-size:30px;text-align:center;margin:22px 0 5px;line-height:1.25}
.bulletin-week-label{text-align:center;font-size:17px;margin:0 0 26px;color:#824b2b}
.bulletin-blocks{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.bulletin-block{break-inside:avoid;overflow-wrap:anywhere;text-align:center}
.bulletin-block h2,.bulletin-block .bulletin-copy{text-align:center}
.bulletin-block:last-child:nth-child(odd){grid-column:1 / -1}
.bulletin-block h2{font-family:'Frank Ruhl Libre',serif;font-size:21px;border-bottom:1px solid #d2bca5;padding-bottom:7px;margin:0 0 10px;color:#62361f}
.bulletin-wide{grid-column:1/-1}
.bulletin-copy{white-space:pre-wrap;line-height:1.8;font-size:18px;min-height:28px;unicode-bidi:plaintext}
.bulletin-paper footer{text-align:center;padding-top:16px;font-size:13px;color:#824b2b}
.bulletin-print{background:#e9e7e3;padding:24px}
.bulletin-print-tools{max-width:794px;margin:0 auto 24px;font-size:15px}
.bulletin-blank .bulletin-paper-body{min-height:710px}
@media(max-width:1000px){.bulletin-editor-grid{grid-template-columns:1fr 1fr;gap:16px}.bulletin-workspace{padding:24px 16px}.bulletin-paper{padding:20px 18px}.bulletin-paper-body{padding:20px 16px}.bulletin-blocks{gap:18px}.bulletin-app-header{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.bulletin-editor-grid{grid-template-columns:1fr}.bulletin-toolbar{align-items:flex-start;flex-direction:column}.bulletin-preview{margin-top:16px}.bulletin-edit-panel{padding:20px 16px}.bulletin-workspace{padding:22px 12px}.bulletin-paper{min-height:760px}.bulletin-paper-body{min-height:500px}.bulletin-paper h1{font-size:26px}.bulletin-copy{font-size:16px}.bulletin-block h2{font-size:19px}.bulletin-dates{font-size:12px}.bulletin-print{padding:12px}}
@media print{
 @page{size:A4;margin:10mm}
 .bulletin-print{background:white;padding:0}
 .bulletin-print-tools{display:none!important}
 .bulletin-print .bulletin-paper{width:100%;max-width:none;min-height:274mm;padding:8mm 9mm 5mm;border:0;box-shadow:none;background:#f3eee7!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .bulletin-print .bulletin-masthead{padding:3mm 0 7mm}
 .bulletin-print .bulletin-masthead .community-logo{width:43mm;height:auto}
 .bulletin-print .bulletin-paper-body{min-height:193mm;border:1px solid #ad815f!important;background:#fff!important;padding:7mm;border-radius:10mm;box-decoration-break:clone;-webkit-box-decoration-break:clone}
 .bulletin-print .bulletin-blank .bulletin-paper-body{min-height:201mm}
 .bulletin-print .bulletin-blocks{display:grid;grid-template-columns:1fr 1fr;gap:6mm}
 .bulletin-print .bulletin-paper h1{font-size:25pt}
 .bulletin-print .bulletin-block h2{font-size:17pt}
 .bulletin-print .bulletin-copy{font-size:14pt;line-height:1.7}
 .bulletin-print .bulletin-paper footer{padding-top:4mm}
}

.bulletin-workspace .btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 16px;border:1px solid var(--sh-line-strong);border-radius:8px;background:white;color:var(--sh-ink);font:600 15px Assistant,sans-serif;text-decoration:none;cursor:pointer}
.bulletin-workspace .btn-primary{background:#62361f;border-color:#62361f;color:#fff}
.bulletin-workspace input:not([type=checkbox]):not([type=hidden]),.bulletin-workspace textarea{padding:10px 12px;border:1px solid var(--sh-line-strong);border-radius:7px;background:#fff;color:var(--sh-ink);font:16px Assistant,sans-serif;line-height:1.5}
.bulletin-workspace textarea{resize:vertical}
.bulletin-workspace .muted{color:var(--sh-text-2)}
.bulletin-workspace .eyebrow{font-size:14px;color:var(--sh-text-2)}
.bulletin-workspace :focus-visible{outline:3px solid #a97652;outline-offset:3px}

.pdf-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 0}
.pdf-tools p{width:100%;margin:0;font:15px Assistant,sans-serif;line-height:1.6}
.pdf-render-host{position:absolute;top:0;left:0;width:718px;z-index:-9999;pointer-events:none;background:#fff}
.pdf-render-host .pdf-export-paper{box-sizing:border-box;width:718px!important;max-width:718px!important;margin:0!important;box-shadow:none!important}
.pdf-render-host .sheet{padding:0!important;background:#fff}
.pdf-render-host .sheet-head{padding-bottom:3mm}
.pdf-render-host .sheet-head .community-logo{width:26mm}
.pdf-render-host .sheet-table td{padding:1.2mm 2mm}
.pdf-render-host .sheet-table td.sicha{font-size:10pt}
.pdf-render-host .sheet-detail{display:inline;margin-inline-start:2mm;font-size:7.5pt}
.pdf-render-host .bulletin-paper{min-height:1035px;padding:30px 34px 19px;background:#f3eee7;border:0}
.pdf-render-host .bulletin-masthead{padding:11px 0 26px}
.pdf-render-host .bulletin-masthead .community-logo{width:162px}
.pdf-render-host .bulletin-paper-body{min-height:729px;border:1px solid #ad815f;background:white;padding:26px;border-radius:38px}
.pdf-render-host .bulletin-blank .bulletin-paper-body{min-height:759px}
.pdf-render-host .bulletin-blocks{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.pdf-render-host .bulletin-paper h1{font-size:33px}
.pdf-render-host .bulletin-block h2{font-size:23px}
.pdf-render-host .bulletin-copy{font-size:19px;line-height:1.7}
@media print{.pdf-tools,.pdf-render-host{display:none!important}}

/* Blue application identity; printed community stationery retains its copper palette. */
.sichot-root:not(.print-copper):not(.bulletin-print){
 --sh-paper:#F6F8FB;--sh-paper-2:#EAF0F6;--sh-surface:#FFFFFF;
 --sh-ink:#193A5B;--sh-text-2:#435B72;--sh-text-3:#526A80;
 --sh-blue:#2C608D;--sh-blue-deep:#193A5B;--sh-blue-mark:#477CA6;
 --sh-blue-tint:#EAF2F9;--sh-line:#DCE5EE;--sh-line-strong:#B7CADA;
}
.bulletin-workspace .btn-primary{background:#193A5B;border-color:#193A5B}
.bulletin-workspace :focus-visible{outline-color:#477CA6}

/* Preserve the visible row while an action refreshes the board. */
.board-action-pending { overflow-anchor: none; scroll-behavior: auto; }
.board-action-toast { position: fixed; inset-inline: 16px; bottom: 20px; z-index: 100; width: fit-content; max-width: min(560px, calc(100% - 32px)); margin: 0 auto; padding: 12px 20px; border-radius: 12px; background: #193a5b; color: white; box-shadow: 0 4px 20px #0003; text-align: center; }
.board-action-toast[hidden] { display: none; }

/* Compact, consistent navigation and controls. */
.community-nav{flex-wrap:wrap;row-gap:10px;padding-bottom:16px;border-bottom:1px solid var(--sh-line)}
.community-board .sichot-head{padding-top:20px}
.community-board .sichot-mine{padding:14px 18px;border-radius:12px}
.community-board .sichot-mine>summary{font-weight:700;color:var(--sh-blue-deep);cursor:pointer}
.community-board .sichot-mine[open]>summary{margin-bottom:16px}
.sichot-btn:disabled{opacity:.6;cursor:wait}
.sichot-admin .sichot-manager{flex-wrap:wrap;gap:12px}
.sichot-admin [data-member-row][hidden]{display:none}
.sichot-admin .share-preview{margin-top:16px}
.sichot-admin .share-preview>summary{cursor:pointer;font-weight:600}
.sichot-admin .sichot-pre{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;max-height:440px;overflow:auto}
.sichot-admin [data-copy]{margin:8px}
.sichot-admin #manager-share{min-height:150px;margin-top:8px}
#member-search{margin-top:6px;max-width:420px}
@media(max-width:600px){.community-nav a{padding:7px 0}.community-board .board-refresh{line-height:1.7}.sichot-admin .sichot-manager form{flex:1}.sichot-admin .sichot-manager button{width:100%}}

/* Form rows wrap instead of widening the page on phones. */
.sichot-row { flex-wrap:wrap; align-items:flex-end; }
.sichot-row > input, .sichot-row > select, .sichot-row > label { flex:1 1 170px; min-width:0; }
.sichot-row > label { display:flex; flex-direction:column; gap:4px; font-size:14px; font-weight:600; }
.sichot-row > label > input { width:100%; }
.sichot-row > .sichot-btn { flex:0 0 auto; }
.simple-join > p { font-size:14px; line-height:1.65; color:var(--sh-text-2); }
@media(max-width:600px) {
  .simple-join .sichot-row > input { flex-basis:100%; }
  .simple-join .sichot-row > .sichot-btn, .returning-login .sichot-row > .sichot-btn { flex:1 1 100%; }
}
.sichot-admin .member-count { color:var(--sh-blue); font-weight:600; }
.sichot-admin .member-merge { margin-top:10px; padding-top:10px; border-top:1px dashed var(--sh-line); }
.report-table details summary { font-size:13px; font-weight:600; color:var(--sh-blue); }
.report-table td strong { display:block; }
/* Manager dashboard: state first, then sharing, then editing. */
.admin-dashboard { background:#fff; border:1px solid var(--sh-line); border-radius:14px; padding:18px; margin:6px 0 16px; }
.admin-dash-stats { display:grid; grid-template-columns:repeat(4,1fr); text-align:center; }
.admin-dash-stats>div { display:grid; gap:2px; }
.admin-dash-stats>div+div { border-inline-start:1px solid var(--sh-line); }
.admin-dash-stats b { font:700 26px var(--sh-sans); color:var(--sh-blue-deep); }
.admin-dash-stats span { font-size:13px; color:var(--sh-text-2); }
.admin-dash-links { display:flex; flex-wrap:wrap; justify-content:center; gap:2px 6px; margin-top:12px; padding-top:10px; border-top:1px solid var(--sh-line); }
.admin-dash-links .sichot-link { min-height:36px; padding:6px 10px; font-size:14px; }
.admin-dash-empty { text-align:center; margin:0; color:var(--sh-text-2); }
.admin-details>.sichot-who+.sichot-who, .admin-details>.sichot-who+form.sichot-who { border-top:1px solid var(--sh-line); border-radius:0; }
@media(max-width:600px){ .admin-dash-stats{grid-template-columns:repeat(2,1fr);row-gap:12px} .admin-dash-stats>div:nth-child(3){border-inline-start:0} .admin-dashboard{padding:14px 10px} }
.dup-suggest { background:#FFF8E8; border:1px solid #E9D3A3; border-radius:12px; padding:14px 16px; margin:14px 0; }
.dup-suggest h3 { margin:0 0 4px; font:700 17px var(--sh-sans); color:#6B4A12; }
.dup-suggest p { margin:0 0 10px; font-size:14px; color:#6B5A3A; }
.dup-suggest ul { list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.dup-suggest li { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; background:#fff; border:1px solid #F0E2C2; border-radius:9px; padding:6px 10px; }
.dup-suggest li span { flex:1 1 220px; font-size:15px; }
.dup-suggest li small { color:var(--sh-text-2); }
.dup-suggest .sichot-btn { min-height:36px; padding:6px 12px; font-size:13px; }

/* Minimal board head (Oct 2026): small logo, one quiet progress line, light join card. */
.community-board .sichot-head { padding:14px 0 10px; }
.community-board .community-logo { width:96px; margin-bottom:8px; }
.community-board .sichot-parsha { font-size:clamp(24px,5vw,34px); margin:4px 0 2px; }
.community-board .sichot-sub { font-size:14px; color:var(--sh-text-2); }
.board-progress { display:flex; flex-direction:column; align-items:center; gap:6px; margin:14px auto 0; font-size:14px; color:var(--sh-text-2); }
.board-progress b { color:var(--sh-blue-deep); font-weight:700; }
.board-bar { appearance:none; -webkit-appearance:none; width:min(320px,80%); height:6px; border:0; border-radius:99px; background:var(--sh-line); overflow:hidden; }
.board-bar::-webkit-progress-bar { background:var(--sh-line); border-radius:99px; }
.board-bar::-webkit-progress-value { background:var(--sh-blue); border-radius:99px; }
.board-bar::-moz-progress-bar { background:var(--sh-blue); border-radius:99px; }
.board-progress.is-done .board-bar::-webkit-progress-value { background:#326147; }
.community-board .simple-join { background:#fff; border:1px solid var(--sh-line); border-radius:14px; padding:16px 18px; margin:16px 0; box-shadow:none; }
.community-board .simple-join h2 { font:700 17px var(--sh-sans); margin:0 0 10px; color:var(--sh-ink); }
.community-board .simple-join > p { font-size:13px; margin:8px 0 0; }
.community-board .simple-join .returning-login { background:transparent; padding:0; margin:10px 0 0; }
.community-board .simple-join .returning-login summary { font-size:14px; color:var(--sh-blue); font-weight:600; }
.community-board .sichot-me { background:transparent; border:0; padding:4px 0; margin:10px 0; font-size:15px; }
.community-board .board-filters { margin:16px 0 6px; }
.community-board .board-filters a { padding:7px 13px; font-size:14px; }
.community-board .board-refresh { font-size:12px; color:var(--sh-text-3); margin:0 2px 10px; }
.community-board .sichot-foot { border-top:0; justify-content:center; gap:4px 14px; font-size:13px; }
.community-board .sichot-foot .sichot-link { font-size:13px; font-weight:500; min-height:36px; padding:6px 8px; color:var(--sh-text-2); }

/* Minimal manager screen (Oct 2026). */
.sichot-admin .sichot-head { padding:12px 0 8px; }
.sichot-admin .community-logo { width:84px; margin-bottom:6px; }
.sichot-admin .sichot-parsha { font-size:clamp(22px,4vw,30px); margin:2px 0; }
.sichot-admin .sichot-kicker, .sichot-admin .sichot-sub { font-size:13px; color:var(--sh-text-2); }
.sichot-admin .sichot-who { padding:18px 20px; }
.sichot-admin .sichot-who h2 { font:700 18px var(--sh-sans); margin:0 0 6px; }
.admin-hint { font-size:13px; color:var(--sh-text-2); margin:0 0 10px; }
.admin-actions { display:flex; flex-wrap:wrap; gap:8px; margin:6px 0 4px; }
.admin-actions .sichot-btn, .sichot-admin [data-copy] { margin:0; min-height:40px; padding:8px 16px; font-size:14px; border-radius:9px; flex:0 0 auto; width:auto; }
.sichot-admin .share-preview { margin-top:10px; }
.sichot-admin .share-preview>summary { font-size:14px; color:var(--sh-blue); }
.sichot-admin .sichot-pre { font-size:13px; line-height:1.6; max-height:300px; background:var(--sh-paper); border-radius:10px; padding:12px; }
.admin-details>summary { padding:14px 20px; font-size:16px; color:var(--sh-ink); list-style:none; display:flex; align-items:center; gap:8px; }
.admin-details>summary::-webkit-details-marker { display:none; }
.admin-details>summary::before { content:'›'; display:inline-block; font-size:20px; line-height:1; color:var(--sh-text-3); transition:transform .15s; }
.admin-details[open]>summary::before { transform:rotate(90deg); }
.admin-details[open]>summary { border-bottom:1px solid var(--sh-line); }
.assign-list { list-style:none; margin:0; padding:0; border:1px solid var(--sh-line); border-radius:12px; overflow:hidden; }
.assign-row { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(180px,.9fr); gap:6px 14px; align-items:center; padding:8px 12px; border-bottom:1px solid var(--sh-line); background:#fff; }
.assign-row:last-child { border-bottom:0; }
.assign-row:nth-child(even) { background:#FAFCFE; }
.assign-talk { min-width:0; }
.assign-talk strong { font:700 15px var(--sh-sans); color:var(--sh-ink); }
.assign-talk .talk-detail { font-size:12px; }
.assign-names { display:flex; flex-wrap:wrap; gap:4px; }
.assign-name { display:inline-flex; align-items:center; gap:2px; background:var(--sh-blue-tint); color:var(--sh-blue-deep); border-radius:99px; padding:2px 4px 2px 10px; font-size:13px; font-weight:600; }
.assign-name.is-gabbai { background:#F1ECE3; color:#5C4630; }
.assign-name form { display:inline; margin:0; }
.assign-name button { border:0; background:transparent; color:inherit; font-size:16px; line-height:1; width:24px; height:24px; border-radius:99px; cursor:pointer; padding:0; }
.assign-name button:hover { background:#0001; }
.assign-free { font-size:13px; color:#356247; }
.assign-form { display:flex; gap:6px; margin:0; }
.assign-form input { flex:1 1 auto; min-width:0; min-height:36px; padding:6px 10px; border:1px solid var(--sh-line-strong); border-radius:8px; font:14px var(--sh-sans); background:#fff; }
.assign-form .sichot-btn { min-height:36px; min-width:36px; padding:4px 10px; font-size:18px; border-radius:8px; }
@media(max-width:700px) {
  .assign-row { grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"talk names" "form form"; }
  .assign-talk { grid-area:talk; } .assign-names { grid-area:names; justify-content:flex-end; } .assign-form { grid-area:form; }
}
.assign-name button, .assign-name .sichot-btn { min-height:0 !important; min-width:0; }
.sichot-admin .sichot-who > p:empty { display:none; }
.sichot-note.is-floating, .bulletin-workspace .is-floating { position:fixed; inset-inline:16px; bottom:20px; z-index:100; width:fit-content; max-width:min(560px,calc(100% - 32px)); margin:0 auto; box-shadow:0 4px 20px #0003; transition:opacity .4s; }
.is-floating.is-gone { opacity:0; pointer-events:none; }
/* Print sheet: horizontal rules only, for a calmer table. */
.sheet-table { border:0; border-top:2px solid #2C608D; border-bottom:2px solid #2C608D; }
.sheet-table th, .sheet-table td { border-inline:0 !important; border-top:0; border-bottom:1px solid #DCE5EE; }
.sheet-table thead th { background:transparent; border-bottom:1px solid #B7CADA; color:#2C608D; font-size:10pt; }
.sheet-group th { background:#F2F6FA; border-bottom:1px solid #DCE5EE; }
.sheet-tools-back { display:inline-block; margin-top:6px; }
.assign-by { font-size:12px; font-weight:400; color:var(--sh-text-2); margin-inline-start:3px; }

/* Personal history: grouped by allocation, one line per talk. */
.mine-page .community-logo { width:84px; margin-bottom:6px; }
.mine-page .sichot-parsha { font-size:clamp(24px,5vw,32px); margin:2px 0; }
.mine-page .sichot-head p { font-size:14px; color:var(--sh-text-2); margin:4px 0 0; }
.mine-history { display:grid; gap:12px; }
.mine-round { background:#fff; border:1px solid var(--sh-line); border-radius:12px; overflow:hidden; }
.mine-round h2 { display:flex; justify-content:space-between; gap:10px; margin:0; padding:10px 14px; background:var(--sh-paper); border-bottom:1px solid var(--sh-line); font:700 15px var(--sh-sans); color:var(--sh-blue-deep); }
.mine-round h2 span { font-weight:400; font-size:13px; color:var(--sh-text-2); }
.mine-round ul { list-style:none; margin:0; padding:0; }
.mine-round li { display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 12px; padding:8px 14px; border-bottom:1px solid var(--sh-line); }
.mine-round li:last-child { border-bottom:0; }
.mine-round li strong { font:700 16px var(--sh-serif); color:var(--sh-ink); }
.mine-round .talk-detail { font-size:13px; color:var(--sh-text-2); }
.mine-round .talk-source { margin-inline-start:auto; font-size:13px; font-weight:600; color:var(--sh-blue); text-decoration:none; border-bottom:1px solid currentColor; }
.year-controls { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:8px; margin:12px 0 16px; }
.year-controls form { display:flex; align-items:center; gap:8px; margin:0; flex-wrap:wrap; }
.year-controls label { display:flex; align-items:center; gap:6px; font-size:14px; font-weight:600; }
.year-controls select { min-height:38px; padding:4px 10px; border:1px solid var(--sh-line-strong); border-radius:8px; background:#fff; font:14px var(--sh-sans); }
.year-controls .sichot-btn, .year-controls .sichot-link { min-height:38px; padding:6px 12px; font-size:14px; }
.year-controls .sichot-chip { display:inline-flex; align-items:center; min-height:38px; padding:6px 14px; border-radius:99px; border:1px solid var(--sh-line); background:#fff; color:var(--sh-text-2); text-decoration:none; font-size:14px; font-weight:600; }
.year-controls .sichot-chip.is-on { background:var(--sh-blue-deep); border-color:var(--sh-blue-deep); color:#fff; }
.sichot-year td, .sichot-year th { padding:8px 14px; }
.year-idle { margin:14px 0; background:#fff; border:1px solid var(--sh-line); border-radius:12px; padding:12px 16px; }
.year-idle summary { font-size:14px; color:var(--sh-text-2); }
.year-idle p { font-size:13px; line-height:1.9; color:var(--sh-text-2); margin:8px 0 0; }
/* Direct-link confirmation: one card, one decision. */
.choose-page { max-width:560px; }
.choose-page .community-logo { width:84px; margin-bottom:6px; }
.choose-page .sichot-parsha { font-size:clamp(26px,6vw,34px); margin:4px 0; }
.choose-page .sichot-head p { margin:2px 0; font-size:14px; color:var(--sh-text-2); }
.choose-page .sichot-who { background:#fff; border:1px solid var(--sh-line); border-radius:14px; padding:18px; text-align:center; }
.choose-page .sichot-who h2 { font:700 18px var(--sh-sans); margin:0 0 12px; }
.choose-confirm { display:flex; justify-content:center; gap:10px; flex-wrap:wrap; }
.choose-confirm form { margin:0; }
.choose-confirm .sichot-btn { min-width:140px; }
.choose-page .sichot-who p { font-size:13px; color:var(--sh-text-2); }
.choose-page .sichot-foot { justify-content:center; border-top:0; }
/* One logo size across app pages (print/bulletin keep their own, more specific rules). */
.sichot-head .community-logo { width:88px; margin-bottom:6px; }
.sichot-head .sichot-parsha { font-size:clamp(24px,5vw,32px); }
main.year-page > .sichot-note.is-demo { background:transparent; border:0; box-shadow:none; padding:4px 0; font-size:13px; color:var(--sh-text-2); text-align:center; }
.reports .report-table td, .reports .report-table th { padding:7px 10px; font-size:14px; }
.reports .report-table small { margin-block:2px; font-size:12px; }
.reports .report-quality { font-size:11px; color:var(--sh-text-3); }
.reports .report-groups { max-height:220px; }
.reports .report-group { padding:8px 10px; }
.reports .report-filters { padding:16px; }
/* Bulletin: keep the white arch inside the sheet; toolbar links look like the other buttons. */
.bulletin-paper { overflow:hidden; }
.bulletin-links a:not(.btn) { color:var(--sh-blue); font-weight:600; text-decoration:none; border-bottom:1px solid currentColor; }

/* Learner flow (Oct 2026 plan): two tabs, one action per row, "done" lives in שלי. */
.board-toggle { margin:14px 2px 8px; font-size:14px; color:var(--sh-text-2); }
.board-toggle a { color:var(--sh-blue); font-weight:600; text-decoration:none; border-bottom:1px solid currentColor; }
.simple-join.is-collapsed { padding:12px 16px; }
.join-hint { margin:0 0 6px; font-size:15px; color:var(--sh-ink); }
.simple-join .returning-login { margin:6px 0 0; }
.simple-join .returning-login > summary { font-size:14px; color:var(--sh-blue); font-weight:600; }
.community-board .sichot-me a { color:var(--sh-blue); font-weight:600; text-decoration:none; }
.learner-page { max-width:760px; }
.learner-name { margin:2px 0 0; font-size:15px; color:var(--sh-text-2); }
.learner-week { background:var(--sh-blue-tint); border-radius:14px; padding:14px 16px; margin:12px 0 20px; }
.learner-week h2 { margin:0 0 8px; font:700 17px var(--sh-sans); color:var(--sh-blue-deep); }
.learner-empty { margin:0; font-size:15px; }
.learner-empty a { color:var(--sh-blue); font-weight:600; }
.learner-list { list-style:none; margin:0; padding:0; }
.learner-list li { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:9px 2px; border-bottom:1px solid var(--sh-line); }
.learner-list li:last-child { border-bottom:0; }
.mine-round .learner-list li { padding:8px 14px; }
.talk-main { display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 10px; min-width:0; }
.talk-main strong { font:700 16px var(--sh-serif); color:var(--sh-ink); }
.talk-main .talk-detail { font-size:13px; color:var(--sh-text-2); }
.talk-main .talk-source { font-size:13px; font-weight:600; color:var(--sh-blue); text-decoration:none; border-bottom:1px solid currentColor; }
.done-form { margin:0; flex:0 0 auto; }
.done-form .sichot-btn { min-height:38px; padding:6px 14px; font-size:14px; }
.pill { display:inline-flex; align-items:center; border:0; border-radius:99px; padding:4px 12px; font:700 13px var(--sh-sans); cursor:pointer; white-space:nowrap; }
.pill.done { background:#E5F2EA; color:#2F6B47; }
.pill.todo { background:#fff; color:var(--sh-blue); border:1px solid var(--sh-line-strong); }
.learner-summary { display:grid; gap:12px; margin:8px 0 14px; }
.learner-summary .board-filters { margin:0; }
.learner-nums { display:grid; grid-auto-flow:column; grid-auto-columns:1fr; background:#fff; border:1px solid var(--sh-line); border-radius:12px; padding:12px 6px; text-align:center; font-variant-numeric:tabular-nums; }
.learner-nums div + div { border-inline-start:1px solid var(--sh-line); }
.learner-nums b { display:block; font:700 24px var(--sh-sans); color:var(--sh-blue-deep); }
.learner-nums span { font-size:12px; color:var(--sh-text-2); }
.learner-bars { display:grid; gap:6px; font-size:13px; }
.learner-bars div { display:grid; grid-template-columns:96px 1fr 34px; align-items:center; gap:8px; font-variant-numeric:tabular-nums; }
.learner-bars progress, .year-table progress { appearance:none; -webkit-appearance:none; width:100%; height:8px; border:0; border-radius:9px; background:var(--sh-line); overflow:hidden; }
.learner-bars progress::-webkit-progress-bar, .year-table progress::-webkit-progress-bar { background:var(--sh-line); }
.learner-bars progress::-webkit-progress-value, .year-table progress::-webkit-progress-value { background:var(--sh-blue); border-radius:9px; }
.learner-bars progress::-moz-progress-bar, .year-table progress::-moz-progress-bar { background:var(--sh-blue); }
.learner-view { margin:0; font-size:14px; color:var(--sh-text-2); }
.learner-view a { color:var(--sh-blue); font-weight:600; }
.learner-note { font-size:12px; color:var(--sh-text-3); text-align:center; margin:14px 0 0; }
.learner-page .sichot-foot { justify-content:center; align-items:center; border-top:0; }
.year-page .year-table td a { color:var(--sh-ink); font-weight:600; text-decoration:none; border-bottom:1px solid var(--sh-line-strong); }
.year-page .year-table td small { color:var(--sh-text-2); }
.year-page .year-table progress { display:block; margin-top:4px; max-width:220px; }
.year-table-wrap { overflow-x:auto; }
.year-sort, .year-hint { font-size:13px; color:var(--sh-text-2); margin:6px 2px; }
.year-sort a { color:var(--sh-blue); }
.year-rebbe-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; margin:6px 0 10px; font-size:14px; color:var(--sh-text-2); }
.year-controls .board-filters { margin:0; }
@media(max-width:600px){ .learner-list li { flex-wrap:wrap; } .learner-bars div { grid-template-columns:80px 1fr 30px; } }
.year-table td:first-child { min-width:120px; }

/* Zmanim: automatic Shabbat box on the community sheet + weekly table page. */
.bulletin-zmanim .zmanim-cols { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:6px 28px; text-align:center; }
.bulletin-zmanim h3 { margin:0 0 4px; font:700 16px 'Frank Ruhl Libre',serif; color:#824b2b; }
.bulletin-zmanim .zmanim-col > div { display:flex; justify-content:space-between; gap:10px; border-bottom:1px dotted #d2bca5; padding:2px 0; font-size:16px; }
.bulletin-zmanim .zmanim-col b { font-variant-numeric:tabular-nums; }
.bulletin-zmanim-toggle { display:flex !important; gap:8px; align-items:center; margin:12px 0 4px !important; font-weight:600; background:var(--sh-paper); padding:10px 12px; border-radius:8px; }
.bulletin-zmanim-toggle input { width:18px !important; height:18px; }
.zmanim-page { max-width:980px; }
.zmanim-nav { display:flex; justify-content:center; align-items:center; gap:14px; flex-wrap:wrap; font-size:14px; color:var(--sh-text-2); margin:6px 0 0; }
.zmanim-nav a { color:var(--sh-blue); text-decoration:none; font-weight:600; }
.zmanim-shabbat { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:8px 0 16px; }
.zmanim-shabbat > div { background:#fff; border:1px solid var(--sh-line); border-radius:12px; padding:12px 16px; }
.zmanim-shabbat h2 { margin:0 0 6px; font:700 16px var(--sh-sans); color:var(--sh-blue-deep); }
.zmanim-shabbat p { display:flex; justify-content:space-between; margin:0; padding:4px 0; border-bottom:1px solid var(--sh-line); font-size:15px; }
.zmanim-shabbat p:last-child { border-bottom:0; }
.zmanim-shabbat b, .zmanim-table td { font-variant-numeric:tabular-nums; }
.zmanim-table-wrap { overflow-x:auto; background:#fff; border:1px solid var(--sh-line); border-radius:12px; }
.zmanim-table { width:100%; min-width:640px; border-collapse:collapse; font-size:14px; }
.zmanim-table th, .zmanim-table td { padding:7px 8px; text-align:center; border-bottom:1px solid var(--sh-line); }
.zmanim-table thead th { background:var(--sh-paper); font-weight:700; color:var(--sh-blue-deep); }
.zmanim-table thead th small { display:block; font-weight:400; font-size:11px; color:var(--sh-text-2); }
.zmanim-table tbody th { text-align:right; font-weight:600; white-space:nowrap; color:var(--sh-ink); }
.zmanim-table td:last-child, .zmanim-table th:last-child { background:#F2F6FA; }
.zmanim-method { font-size:12px; color:var(--sh-text-3); text-align:center; margin:10px 0; }
@media(max-width:600px){ .zmanim-shabbat { grid-template-columns:1fr; } .bulletin-zmanim .zmanim-cols { grid-template-columns:1fr; } }
.pdf-render-host .bulletin-zmanim .zmanim-col > div { font-size:17px; }
.google-btn { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:8px 16px; margin:8px 0 2px; border:1px solid var(--sh-line-strong); border-radius:10px; background:#fff; color:#1f1f1f; font:600 15px var(--sh-sans); text-decoration:none; }
.google-btn:hover { background:#F7F9FC; }
.google-btn span { display:inline-grid; place-items:center; width:22px; height:22px; border-radius:50%; background:#4285F4; color:#fff; font:700 13px Arial,sans-serif; }
.google-first { text-align:center; }
.google-first p { margin:8px 0 0; font-size:13px; color:var(--sh-text-2); }

/* Communities: set up and hand over. */
.community-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 16px; margin:8px 0 14px; }
.community-grid label { display:flex; flex-direction:column; gap:5px; font-size:14px; font-weight:600; }
.community-grid input, .community-grid select { min-height:42px; padding:8px 10px; border:1px solid var(--sh-line-strong); border-radius:8px; font:15px var(--sh-sans); background:#fff; }
.slug-field { display:flex; align-items:center; gap:2px; font-weight:400; color:var(--sh-text-2); font-size:13px; }
.slug-field input { flex:1; min-width:0; direction:ltr; }
.community-created textarea { width:100%; min-height:110px; margin:6px 0; font:14px var(--sh-sans); }
.community-created h2 { margin:0 0 8px; }
.community-list { list-style:none; margin:0; padding:0; }
.community-list li { display:flex; flex-wrap:wrap; justify-content:space-between; gap:4px 12px; padding:9px 0; border-bottom:1px solid var(--sh-line); }
.community-list a { color:var(--sh-ink); text-decoration:none; }
.community-list span { font-size:13px; color:var(--sh-text-2); }
@media(max-width:600px){ .community-grid { grid-template-columns:1fr; } }

/* Year summary, focused (Oct 2026): year pills, angle tabs, a ranked list instead of a wide table. */
.year-page .year-controls { flex-direction:column; gap:10px; margin:6px 0 14px; }
.year-years, .year-angles { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; }
.year-years a, .year-angles a { text-decoration:none; border:1px solid var(--sh-line); background:#fff; color:var(--sh-text-2); border-radius:99px; padding:6px 14px; font:600 14px var(--sh-sans); }
.year-years a[aria-current], .year-angles a[aria-current] { background:var(--sh-blue-deep); border-color:var(--sh-blue-deep); color:#fff; }
.year-years a { font-size:13px; padding:4px 12px; }
.year-sort { text-align:center; }
.year-rank { list-style:none; margin:0; padding:0; background:#fff; border:1px solid var(--sh-line); border-radius:12px; overflow:hidden; counter-reset:rank; }
.year-rank li { display:grid; grid-template-columns:2em minmax(0,1fr) minmax(80px,2fr) 3em auto; align-items:center; gap:10px; padding:7px 14px; border-bottom:1px solid var(--sh-line); counter-increment:rank; font-size:15px; }
.year-rank li:last-child { border-bottom:0; }
.year-rank li::before { content:counter(rank); color:var(--sh-text-3); font-size:12px; font-variant-numeric:tabular-nums; }
.year-rank a { color:var(--sh-ink); font-weight:600; text-decoration:none; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.year-rank a:hover { color:var(--sh-blue); }
.year-rank b { text-align:left; font-variant-numeric:tabular-nums; color:var(--sh-blue-deep); }
.year-rank small { font-size:12px; color:#2F6B47; }
.year-rank progress, .year-table progress { direction:rtl; }
.year-rank progress { appearance:none; -webkit-appearance:none; width:100%; height:8px; border:0; border-radius:9px; background:var(--sh-line); overflow:hidden; margin:0; }
.year-rank progress::-webkit-progress-bar { background:var(--sh-line); }
.year-rank progress::-webkit-progress-value { background:var(--sh-blue); border-radius:9px; }
.year-rank progress::-moz-progress-bar { background:var(--sh-blue); }
.year-caveat { font-size:12px; color:var(--sh-text-3); text-align:center; margin:14px 0 0; }
@media(max-width:600px){ .year-rank li { grid-template-columns:1.6em minmax(0,1fr) 3em; } .year-rank progress { display:none; } }
.bulletin-zmanim.is-new { outline:3px solid #A97652; outline-offset:6px; border-radius:10px; transition:outline-color .6s; }

/* Zmanim A4 sheet: same printed identity as the community sheet (cream, copper, logo). */
.zmanim-paper { min-height:auto; }
.zmanim-paper .bulletin-paper-body { min-height:0; padding:20px 22px 18px; }
.zmanim-paper h1 { margin:10px 0 2px; }
.zp-shabbat { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:12px; margin:14px auto 18px; max-width:640px; }
.zp-shabbat div { background:#f3eee7; border:1px solid #d2bca5; border-radius:14px; padding:10px 12px; text-align:center; display:grid; gap:2px; }
.zp-shabbat span { font-size:15px; color:#824b2b; }
.zp-shabbat b { font:700 30px 'Frank Ruhl Libre',serif; color:#62361f; font-variant-numeric:tabular-nums; }
.zp-table { width:100%; border-collapse:collapse; font-family:'Frank Ruhl Libre',serif; font-size:15px; color:#472a19; table-layout:fixed; }
.zp-table th, .zp-table td { padding:5px 4px; text-align:center; border-bottom:1px solid #eadfd3; font-variant-numeric:tabular-nums; }
.zp-table thead th { color:#62361f; font-size:15px; border-bottom:2px solid #ad815f; padding-bottom:6px; }
.zp-table thead th small { display:block; font-size:11px; font-weight:400; color:#824b2b; }
.zp-table tbody th { text-align:right; font-weight:700; color:#62361f; width:21%; white-space:nowrap; font-size:14px; }
.zp-table td:last-child, .zp-table thead th:last-child { background:#f7f1ea; }
.zp-table tbody tr:nth-child(even) td { background-color:#fcfaf7; }
.zp-table tbody tr:nth-child(even) td:last-child { background:#f3eadf; }
.zp-method { font:12px Assistant,sans-serif; color:#824b2b; text-align:center; margin:12px 0 0; }
@media print { .bulletin-print .zmanim-paper { min-height:auto; } .zp-table { font-size:11pt; } .zp-shabbat b { font-size:22pt; } }
.pdf-render-host .zmanim-paper { min-height:0; }
.pdf-render-host .zmanim-paper .bulletin-paper-body { min-height:0; padding:20px; }
.reports .report-talk { display:block; font-weight:700; color:var(--sh-ink); text-decoration:none; }
.reports .report-talk:hover { color:var(--sh-blue); text-decoration:underline; }
.reports .report-source summary { font-size:12px; font-weight:400; color:var(--sh-text-3); white-space:nowrap; }
.reports .report-source[open] summary { color:var(--sh-blue); }
.reports .report-table th:last-child, .reports .report-table td:last-child { width:110px; }
/* Archive: one row per source document; documents kept for review come first. */
.archive-list { list-style:none; margin:10px 0; padding:0; background:#fff; border:1px solid var(--sh-line); border-radius:12px; overflow:hidden; }
.archive-list li { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:4px 14px; padding:8px 14px; border-bottom:1px solid var(--sh-line); }
.archive-list li:last-child { border-bottom:0; }
.archive-list li.is-review { background:#FFF8E8; }
.archive-name { font:700 15px var(--sh-sans); color:var(--sh-ink); text-decoration:none; }
.archive-name:hover { color:var(--sh-blue); }
.archive-meta { font-size:13px; color:var(--sh-text-2); }
.archive-note { grid-column:1 / -1; font-size:13px; color:#6B5A3A; }
.archive-pdf { font-size:13px; font-weight:600; color:var(--sh-blue); text-decoration:none; border:1px solid var(--sh-line); border-radius:6px; padding:2px 8px; }
.policy-links { text-align:center; font-size:12px; color:var(--sh-text-3); padding:8px 16px 24px; }
.policy-links a { color:var(--sh-text-3); text-decoration:none; }
.policy-links a:hover { color:var(--sh-blue); text-decoration:underline; }
.home-communities a { font-size:17px; }
.archive-list li .archive-pdf { grid-row:1; grid-column:3; } .archive-list li .archive-meta { grid-row:1; grid-column:2; }

/* Allocation print sheet: one line per talk so a week fits on one A4 page. */
.print-blue { background:#e9edf2; }
.print-blue .bulletin-print-tools { max-width:210mm; margin:16px auto; padding:0 16px; }
.sheet { box-shadow:0 8px 30px #193a5b14; border-radius:4px; }
.sheet-head { padding-bottom:4mm; }
.sheet-head .community-logo { width:26mm; }
.sheet-kicker { margin-top:1mm; letter-spacing:.04em; }
.sheet-title { font-size:22pt; }
.sheet-table td { padding:1.3mm 2.5mm; }
.sheet-table td.sicha { font-size:10.5pt; line-height:1.25; }
.sheet-table td.sicha strong { font-weight:700; }
.sheet-detail { display:inline; margin-inline-start:2mm; font-size:8pt; }
.sheet-table td.who { font-size:10pt; }
.sheet-free { letter-spacing:-1px; }
.sheet-foot { display:flex; justify-content:space-between; color:#435B72; }
.bulletin-print-tools > a, .print-blue .bulletin-print-tools > a { color:var(--sh-blue); font-weight:600; text-decoration:none; }
.bulletin-field-hint { font-size:12px; margin:2px 0 8px; }

/* Home: name, one sentence, the communities, three steps. */
.home-page { max-width:640px; }
.home-page .sichot-head { padding-top:28px; }
.home-lede { font-size:16px; color:var(--sh-text-2); margin:6px 0 0; }
.home-communities { list-style:none; margin:18px 0; padding:0; display:grid; gap:8px; }
.home-communities a { display:flex; justify-content:space-between; align-items:center; gap:10px; background:#fff; border:1px solid var(--sh-line); border-radius:12px; padding:14px 18px; text-decoration:none; color:var(--sh-ink); }
.home-communities a:hover { border-color:var(--sh-blue); }
.home-communities b { font:700 18px var(--sh-serif); }
.home-communities span { font-size:14px; color:var(--sh-text-2); }
.home-steps { list-style:none; margin:24px 0 0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; counter-reset:step; }
.home-steps li { counter-increment:step; display:grid; gap:4px; font-size:14px; color:var(--sh-text-2); }
.home-steps li::before { content:counter(step); display:inline-grid; place-items:center; width:26px; height:26px; border-radius:50%; background:var(--sh-blue-tint); color:var(--sh-blue-deep); font-weight:700; }
.home-steps b { color:var(--sh-ink); font-size:15px; }
@media(max-width:600px){ .home-steps { grid-template-columns:1fr; } }
/* Sheets hub. */
.sheets-page { max-width:860px; }
.sheets-h { font:700 16px var(--sh-sans); color:var(--sh-blue-deep); margin:18px 2px 8px; }
.sheet-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.sheet-card { display:grid; gap:4px; background:#fff; border:1px solid var(--sh-line); border-radius:12px; padding:14px 16px; text-decoration:none; color:var(--sh-ink); }
.sheet-card:hover { border-color:var(--sh-blue); }
.sheet-card b { font:700 17px var(--sh-serif); }
.sheet-card span { font-size:13px; color:var(--sh-text-2); }
.sheet-card em { font-style:normal; font-size:12px; color:var(--sh-blue); margin-top:4px; }
@media(max-width:700px){ .sheet-cards { grid-template-columns:1fr; } }
/* Narrow phones: the gabbai menu (6 links) wraps as two even rows of three, not 5 + an orphan. */
@media(max-width:480px){ .community-nav:has(> a:nth-child(4)){display:grid;grid-template-columns:repeat(3,auto);justify-content:center;justify-items:center;column-gap:18px} }
/* Phones: the 8-column A4 zmanim table keeps its proportions and scrolls inside the sheet instead of overlapping. */
.zp-scroll { overflow-x:auto; -webkit-overflow-scrolling:touch; }
@media screen and (max-width:600px) { .zp-table { min-width:600px; } .pdf-render-host .zp-table { min-width:0; } }

/* ── Touch screens and phones (Chrome/Safari mobile) ─────────────────────────
   16px fields stop iOS Safari zooming in on focus; small links and toggles get a
   tappable height (~36–44px) without changing how they look on desktop. */
@media (pointer:coarse), (max-width:700px) {
  input:not([type=checkbox]):not([type=radio]):not([type=hidden]), select, textarea,
  :is(.sichot-admin, .community-created, .sichot) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]), select, textarea) { font-size:16px; }
  input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]), select { min-height:40px; }
  a.sichot-chip { min-height:36px; display:inline-flex; align-items:center; padding-inline:12px; font-size:13px; }
  .share-preview > summary, .bulletin-history > summary, .report-source > summary { display:inline-flex; align-items:center; min-height:36px; }
  .bulletin-links a, .year-years a, .year-sort a, .sichot-actions a, .bulletin-print-tools > a, a.report-talk, .report-source > a { display:inline-flex; align-items:center; min-height:36px; }
  .bulletin-history a { display:inline-block; padding-block:8px; }
  /* Removing someone from a talk is one tap: make it a real target, apart from the name. */
  .assign-name .sichot-btn.is-ghost { min-width:32px; min-height:32px; margin-inline-start:6px; }
}
/* Board: free talks carry the solid button; taken ones (shared mode) get a quiet outline,
   so a learner sees at a glance where to tap instead of 47 identical blue buttons. */
.sichot-item.is-taken .sichot-actions .sichot-btn:not(.is-mine) { background:#fff; color:var(--sh-blue); border:1px solid var(--sh-line-strong); box-shadow:none; }
.sichot-item.is-taken .sichot-actions .sichot-btn:not(.is-mine):hover { border-color:var(--sh-blue); }
/* Sign-up form on narrow phones: name, mother's name and phone stack, so placeholders are not cut off. */
@media(max-width:480px){ .sichot-who .sichot-row { flex-direction:column; } .sichot-who .sichot-row > * { flex:0 0 auto; width:100%; } }
/* Community sheet: pick the week by name (this week / next / the one after). */
.bulletin-weeks { display:flex; align-items:stretch; gap:6px; margin:14px 0 10px; overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:2px; }
.bulletin-weeks a { flex:1 0 auto; display:grid; gap:1px; align-content:center; text-align:center; text-decoration:none; color:var(--sh-ink); background:#fff; border:1px solid var(--sh-line); border-radius:10px; padding:8px 12px; min-height:44px; }
.bulletin-weeks a small { font-size:12px; color:var(--sh-text-2); }
.bulletin-weeks a b { font-size:15px; font-weight:700; white-space:nowrap; }
.bulletin-weeks a[aria-current] { background:var(--sh-blue-deep); border-color:var(--sh-blue-deep); color:#fff; }
.bulletin-weeks a[aria-current] small { color:#d6e3ef; }
.bulletin-weeks .bulletin-week-step { flex:0 0 40px; font-size:22px; color:var(--sh-blue); }
.bulletin-other-week summary { cursor:pointer; color:var(--sh-text-2); font-size:14px; }
.bulletin-other-week form { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:8px; }
@media(max-width:520px){ .bulletin-weeks .bulletin-week-step { display:none; } }

/* Community sheet: automatic zmanim sections (Shabbat entry/exit; the week's zmanim by Sunday). */
.bulletin-zmanim .zmanim-list { display:grid; gap:2px 28px; max-width:420px; margin:0 auto; }
.bulletin-zmanim .zmanim-list-2 { grid-template-columns:1fr 1fr; max-width:none; }
.bulletin-zmanim .zmanim-list > div { display:flex; justify-content:space-between; gap:10px; border-bottom:1px dotted #d2bca5; padding:2px 0; font-size:16px; }
.bulletin-zmanim .zmanim-list b { font-variant-numeric:tabular-nums; }
.bulletin-zmanim .zmanim-place { margin:6px 0 0; font-size:12px; color:#824b2b; text-align:center; }
@media(max-width:600px){ .bulletin-zmanim .zmanim-list-2 { grid-template-columns:1fr; } }
fieldset.bulletin-auto-zmanim { display:grid; gap:6px; border:1px solid var(--sh-line); border-radius:10px; padding:10px 14px; margin:12px 0; }
fieldset.bulletin-auto-zmanim legend { font-weight:700; padding:0 6px; }
fieldset.bulletin-auto-zmanim label { display:flex; gap:8px; align-items:center; }
.bulletin-fieldset-auto { background:var(--sh-paper-2, #EAF0F6); }

/* Manual assignment hint: suggest existing names before creating a new learner. */
.assign-form { flex-wrap:wrap; }
.assign-hint { flex-basis:100%; margin:4px 0 0; font-size:13px; color:var(--sh-text-2); display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.assign-hint[hidden] { display:none; }
.assign-pick, .assign-new { font:inherit; border:1px solid var(--sh-line-strong); background:#fff; color:var(--sh-blue); border-radius:999px; padding:4px 10px; min-height:32px; cursor:pointer; }
.assign-new { color:var(--sh-text-2); border-style:dashed; }
/* "Install as an app" row on phones (added by board-actions.js). */
.install-hint { display:flex; align-items:center; gap:10px; margin:10px 16px 0; padding:8px 8px 8px 12px; background:var(--sh-paper-2, #EAF0F6); border:1px solid var(--sh-line); border-radius:12px; font-size:14px; line-height:1.5; color:var(--sh-ink); }
.install-hint span { flex:1; }
.install-go { font:600 14px var(--sh-sans); background:var(--sh-blue); color:#fff; border:0; border-radius:8px; padding:8px 14px; min-height:36px; cursor:pointer; }
.install-close { font-size:20px; line-height:1; background:none; border:0; color:var(--sh-text-2); min-width:36px; min-height:36px; cursor:pointer; }
@media print { .install-hint { display:none; } }

/* ── Community menu as tabs with icons (current page filled) ───────────────── */
nav.community-nav { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; padding:10px 0 14px; border-bottom:1px solid var(--sh-line); }
nav.community-nav a { display:inline-flex; align-items:center; gap:7px; padding:8px 14px; border-radius:999px; border:1px solid transparent; color:var(--sh-text-2); text-decoration:none; font-size:15px; font-weight:600; min-height:40px; }
nav.community-nav a svg { width:18px; height:18px; flex:none; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
nav.community-nav a:hover { background:var(--sh-paper-2, #EAF0F6); color:var(--sh-blue); border-color:transparent; }
nav.community-nav a[aria-current] { background:var(--sh-blue-deep); color:#fff; }
@media (max-width:600px) {
  nav.community-nav, nav.community-nav:has(> a:nth-child(4)) { display:grid; grid-template-columns:repeat(3, 1fr); justify-items:stretch; column-gap:6px; row-gap:6px; padding:8px 0 12px; }
  nav.community-nav:not(:has(> a:nth-child(3))) { grid-template-columns:repeat(2, 1fr); }
  nav.community-nav a { flex-direction:column; gap:3px; padding:8px 4px; border-radius:12px; border-color:var(--sh-line); background:#fff; font-size:12.5px; min-height:56px; justify-content:center; }
  nav.community-nav a svg { width:20px; height:20px; }
}
@media print { nav.community-nav { display:none; } }
/* Community sheet: the week's name is the headline; an optional line under it. */
.bulletin-paper .bulletin-week-name { font:700 27px 'Frank Ruhl Libre', serif; color:#62361f; margin:2px 0 4px; }
.bulletin-paper .bulletin-week-note { text-align:center; font-size:17px; color:#824b2b; margin:0 0 22px; }
.bulletin-paper .bulletin-week-note[hidden] { display:none; }
.bulletin-paper .bulletin-week-name:has(+ .bulletin-week-note[hidden]) { margin-bottom:24px; }
@media print { .bulletin-print .bulletin-paper .bulletin-week-name { font-size:22pt; } }

/* Logins (gabbaim only) */
.logins-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:8px 0}
.logins-stats div{display:flex;flex-direction:column;align-items:center;padding:14px 8px;border:1px solid var(--sh-line);border-radius:12px;background:#fff}
.logins-stats strong{font-size:30px;line-height:1.1;color:var(--sh-blue);font-variant-numeric:tabular-nums}
.logins-stats span{font-size:14px;color:var(--sh-text-2)}
.logins-note{font-size:13px;margin:0 0 12px}
.logins-chart{display:flex;align-items:flex-end;gap:3px;height:150px;overflow-x:auto;padding-bottom:4px}
.logins-bar{flex:1 0 18px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;font-size:11px;color:var(--sh-text-2)}
.logins-bar span{display:block;width:100%;min-height:2px;background:var(--sh-blue);border-radius:3px 3px 0 0}
.logins-bar b{font-weight:600;font-variant-numeric:tabular-nums}
.logins-bar small{font-size:10px;white-space:nowrap}
.logins-bar .h0{height:2px}.logins-bar .h1{height:10%}.logins-bar .h2{height:20%}.logins-bar .h3{height:30%}.logins-bar .h4{height:40%}.logins-bar .h5{height:50%}.logins-bar .h6{height:60%}.logins-bar .h7{height:70%}.logins-bar .h8{height:80%}.logins-bar .h9{height:90%}.logins-bar .h10{height:100%}
.logins-scroll{overflow-x:auto;max-height:480px;overflow-y:auto}
.logins-table{width:100%;border-collapse:collapse;font-size:15px}
.logins-table th,.logins-table td{padding:7px 8px;border-bottom:1px solid var(--sh-line);text-align:right;vertical-align:top}
.logins-table thead th{font-weight:600;color:var(--sh-text-2);font-size:13px;position:sticky;top:0;background:#fff}
.logins-table td:not(:first-child){font-variant-numeric:tabular-nums}
.community-board .talk-summary .talk-source{display:inline-block;margin-top:4px;font-size:14px}
.choose-page .talk-source{display:inline-block;color:var(--sh-blue);font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;font-size:16px}

/* ── Share as image (WhatsApp): a phone-shaped page of its own, with real margins ── */
.img-render-host{position:absolute;top:0;left:0;width:560px;box-sizing:border-box;padding:40px 36px 44px;z-index:-9999;pointer-events:none;background:#fff;direction:rtl}
.img-render-host.is-bulletin{background:#f3eee7}
.img-render-host .img-export-paper{box-sizing:border-box;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;box-shadow:none!important;border:0!important}
/* The learners' sheet */
.img-render-host .sheet{padding:0!important;background:#fff;color:#193A5B}
.img-render-host .sheet-head{padding:0 0 18px}
.img-render-host .sheet-head .community-logo{width:104px;margin-bottom:6px}
.img-render-host .sheet-bh{font-size:13px}
.img-render-host .sheet-kicker{font-size:16px;margin-top:8px}
.img-render-host .sheet-title{font-size:30px;line-height:1.2;margin:4px 0 8px}
.img-render-host .sheet-sub{font-size:14px}
.img-render-host .sheet-table{font-size:15px;table-layout:auto;border:0}
.img-render-host .sheet-table th{font-size:14px;padding:8px 10px}
.img-render-host .sheet-table td{padding:9px 10px;vertical-align:top}
.img-render-host .sheet-table td.sicha{font-size:16px;line-height:1.35}
.img-render-host .sheet-table td.who{width:38%;font-size:15px;line-height:1.35}
.img-render-host .sheet-detail{display:block;margin:2px 0 0;font-size:12.5px;opacity:.8}
.img-render-host .sheet-group th{font-size:16px;padding:12px 10px 8px}
.img-render-host .sheet-free{display:inline-block;width:90px;overflow:hidden;color:transparent;border-bottom:1px solid #9fb6ca}
.img-render-host .sheet-free::after{display:none}
.img-render-host .sheet-foot{font-size:13px;padding-top:14px}
/* The community sheet */
.img-render-host .bulletin-paper{padding:0!important;background:transparent!important}
.img-render-host .bulletin-masthead .community-logo{width:150px}
.img-render-host .bulletin-paper h1{font-size:30px}
.img-render-host .bulletin-block h2{font-size:21px}
.img-render-host .bulletin-copy{font-size:17px;line-height:1.55}
.img-render-host .bulletin-zmanim .zmanim-list>div{font-size:17px;padding:4px 0}
.img-render-host .bulletin-zmanim .zmanim-list-2{grid-template-columns:1fr;gap:0}
.img-render-host .bulletin-blocks{grid-template-columns:1fr!important}
/* html2canvas draws a z-index:-1 shape above its parent and breaks "17:42" inside RTL text: fix both, for images and PDFs. */
.img-render-host .bulletin-masthead:before,.pdf-render-host .bulletin-masthead:before{display:none}
.img-render-host .zmanim-list b,.pdf-render-host .zmanim-list b{direction:ltr;unicode-bidi:isolate;font-variant-numeric:normal}
.img-render-host *,.pdf-render-host *{font-variant-numeric:normal!important;letter-spacing:0!important}
/* Gabbai menu (7 tabs) on a phone: rows of 4 and 3, not 3+3+1. */
@media (max-width:600px){ nav.community-nav:has(> a:nth-child(7)) { grid-template-columns:repeat(4, 1fr); } nav.community-nav:has(> a:nth-child(7)) a { font-size:11.5px; min-height:52px; padding:7px 2px; } }
.mine-display,.mine-reminders{margin-top:28px}
.choose-page .sichot-who form > .sichot-btn{width:100%}.choose-page .sichot-who form > p{margin:12px 0 14px}
/* Learner rows on a phone: the name line on top, "עריכה ואיחוד" always on its own small line, so the list is even. */
@media(max-width:600px){.sichot-admin [data-member-row]{flex-direction:column;align-items:stretch;gap:6px}.sichot-admin [data-member-row]>details>summary{font-size:14px;color:var(--sh-text-2)}}
/* Gabbai rows: learner link and Gmail — a full field with its button beside it. */
.sichot-admin form.manager-email{display:flex;gap:8px;width:100%;flex:1 1 100%;align-items:stretch}
.sichot-admin form.manager-email input{flex:1 1 auto;min-width:0;padding:10px 12px;border:1px solid var(--sh-line);border-radius:10px;font:inherit;font-size:15px;background:#fff;color:inherit}
.sichot-admin form.manager-email input:focus{outline:2px solid var(--sh-blue);outline-offset:1px}
.sichot-admin .sichot-manager form.manager-email button{flex:0 0 auto;width:auto;white-space:nowrap}
.sichot-admin .sichot-manager form[action$="/can-create"]{flex:1 1 100%}
.assign-talk .talk-source{color:var(--sh-blue);font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;font-size:14px;white-space:nowrap;margin-inline-start:6px}
/* Phone: the talk on its own line, its names under it, then the form — a long list of names never squeezes the title. */
@media (max-width:600px){ .assign-row { grid-template-columns:1fr; grid-template-areas:"talk" "names" "form"; } .assign-names { justify-content:flex-start; } }

/* ── "מחזור השבוע": the week at a glance ── */
.momentum{margin:14px auto 4px;max-width:560px;padding:16px 16px 14px;border-radius:18px;background:linear-gradient(160deg,#fff 0%,#eef4fb 100%);border:1px solid #d6e3f0;box-shadow:0 6px 22px #1b3a5b12;text-align:right}
.momentum.is-complete{background:linear-gradient(160deg,#fffdf5 0%,#fdf1d6 100%);border-color:#ecd59a}
.momentum-top{display:flex;align-items:center;gap:16px}
.momentum-ring{flex:0 0 112px;width:112px;height:112px}
.momentum-ring circle{fill:none;stroke-linecap:round}
.momentum-ring .ring-track{stroke:#dde7f1;stroke-width:10}
.momentum-ring .ring-track.is-inner{stroke:#e7efe9;stroke-width:8}
.momentum-ring .ring-taken{stroke:#2c608d;stroke-width:10;animation:ring-in 1.1s ease-out both}
.momentum-ring .ring-done{stroke:#3f9a63;stroke-width:8;animation:ring-in 1.4s ease-out both}
.momentum.is-complete .ring-taken{stroke:#c99a2e}
@keyframes ring-in{from{stroke-dasharray:0 400}}
.momentum-ring .ring-pct{font:800 24px var(--sh-sans,Assistant,sans-serif);fill:#193a5b}
.momentum-ring .ring-sub{font:600 11px var(--sh-sans,Assistant,sans-serif);fill:#5d7389}
.momentum-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.momentum-title{font:800 19px/1.25 var(--sh-sans,Assistant,sans-serif);color:#193a5b}
.momentum-title.is-complete{color:#8a5a00}
.momentum-copy>span{font-size:14px;color:#4b6075;line-height:1.45}
.momentum-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:#4b6075}
.momentum-legend span::before{content:'';display:inline-block;width:9px;height:9px;border-radius:50%;margin-inline-end:5px;vertical-align:middle}
.momentum-legend .lg-taken::before{background:#2c608d}.momentum-legend .lg-done::before{background:#3f9a63}
.momentum-cta{align-self:flex-start;margin-top:4px;padding:8px 16px;font-size:15px}
.momentum-milestones{display:flex;gap:6px;list-style:none;margin:14px 0 0;padding:0}
.momentum-milestones li{flex:1;text-align:center;font:700 12px var(--sh-sans,Assistant,sans-serif);color:#8aa0b5;padding:6px 0;border-radius:999px;background:#eef3f8;border:1px solid #dfe8f1}
.momentum-milestones li.is-on{color:#fff;background:#2c608d;border-color:#2c608d}
.momentum.is-complete .momentum-milestones li.is-on{background:#c99a2e;border-color:#c99a2e}
.momentum-week{display:flex;list-style:none;margin:12px 0 0;padding:0;position:relative}
.momentum-week::before{content:'';position:absolute;top:6px;right:6%;left:6%;height:2px;background:#d6e2ee}
.momentum-week li{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11.5px;color:#7d92a6;position:relative}
.momentum-week i{width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid #c6d5e4;box-sizing:border-box}
.momentum-week li.is-past i{background:#9fb8cf;border-color:#9fb8cf}
.momentum-week li.is-today i{background:#2c608d;border-color:#2c608d;box-shadow:0 0 0 4px #2c608d26}
.momentum-week li.is-today span{color:#193a5b;font-weight:800}
.momentum-week li.is-shabbat span{font-weight:700}
.momentum-recent{list-style:none;margin:12px 0 0;padding:10px 0 0;border-top:1px dashed #d6e2ee;display:grid;gap:4px;font-size:13px;color:#4b6075}
.momentum-recent li span{color:#8aa0b5}
@media(max-width:420px){.momentum-ring{flex-basis:96px;width:96px;height:96px}.momentum-title{font-size:17px}}
@media(prefers-reduced-motion:reduce){.momentum-ring circle{animation:none}}
/* "לשיחה ↗" and the quieter "קיצור וביאור ↗" (dach.dev) side by side. */
.talk-links{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.talk-links .is-dach{color:#5d7389!important;font-weight:600;border-bottom:1px dotted currentColor!important}
.talk-links .is-dach:hover{color:var(--sh-blue)!important}
.community-board .talk-summary .talk-links{margin-top:4px}

/* ── 📣 Share card (also the picture sent to WhatsApp) ── */
.share-big{display:block;text-align:center;font-size:17px;padding:14px 16px;margin:6px 0 12px}
.share-tools{justify-content:center}
.share-send{font-size:18px;padding:14px 22px}
.share-card{max-width:520px;margin:12px auto 20px;padding:24px 22px 18px;border-radius:22px;background:linear-gradient(160deg,#173f66 0%,#245a8f 60%,#2f6ea8 100%);color:#fff;text-align:center;box-shadow:0 10px 30px #1b3a5b33}
.share-card.is-complete{background:linear-gradient(160deg,#6b4300 0%,#b07d14 60%,#d9a93a 100%)}
.share-day{font:800 20px var(--sh-sans,Assistant,sans-serif);opacity:.95}
.share-card h2{margin:4px 0 14px;font:900 32px/1.15 'Frank Ruhl Libre',serif;color:#fff}
.share-top{display:flex;align-items:center;justify-content:center;gap:22px}
.share-card .momentum-ring{flex:0 0 130px;width:130px;height:130px}
.share-card .momentum-ring .ring-track{stroke:rgba(255,255,255,.2)}
.share-card .momentum-ring .ring-taken{stroke:#fff;animation:none}
.share-card .momentum-ring .ring-pct,.share-card .momentum-ring .ring-sub{fill:#fff}
.share-left{display:flex;flex-direction:column;align-items:center;line-height:1}
.share-left-label{font-size:15px;opacity:.85}
.share-left-num{font:900 72px/1 var(--sh-sans,Assistant,sans-serif);margin:4px 0}
.share-left span:last-child{font-size:16px;font-weight:700}
.share-goal{margin:16px auto 10px;display:inline-block;background:#fff;color:#173f66;font:800 18px/1.3 var(--sh-sans,Assistant,sans-serif);padding:10px 16px;border-radius:14px}
.share-card.is-complete .share-goal{color:#6b4300}
.share-meter{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:6px auto 4px;max-width:420px}
.share-meter i{width:12px;height:12px;border-radius:3px;background:rgba(255,255,255,.22)}
.share-meter i.on{background:#fff}
.share-count{font-size:14px;opacity:.9;margin-bottom:10px}
.share-free{list-style:none;margin:6px 0 0;padding:12px 14px;background:rgba(255,255,255,.1);border-radius:14px;text-align:right;display:grid;gap:6px}
.share-free li{font-size:16px}.share-free li span{opacity:.8;font-size:14px}
.share-free .share-more{opacity:.85;font-weight:700}
.share-cta{margin-top:14px;font:800 17px var(--sh-sans,Assistant,sans-serif)}
.share-site{margin-top:8px;font-size:13px;opacity:.75;direction:ltr}
.img-render-host.is-share{background:#eef3f8}
.img-render-host .share-card{margin:0!important;max-width:none!important}

/* Logins: this week's funnel */
.logins-week h2{margin-bottom:10px}
.funnel{display:grid;gap:8px;margin-bottom:10px}
.funnel-row{display:grid;grid-template-columns:110px 1fr 36px;align-items:center;gap:10px;font-size:14px}
.funnel-row b{font-size:18px;text-align:left;font-variant-numeric:tabular-nums}
.funnel-track{height:14px;background:#eef3f8;border-radius:999px;overflow:hidden}
.funnel-fill{display:block;height:100%;border-radius:999px;background:#9fb8cf}
.is-chose .funnel-fill{background:#2c608d}.is-done .funnel-fill{background:#3f9a63}
.funnel-fill.w0{width:2%}.funnel-fill.w1{width:10%}.funnel-fill.w2{width:20%}.funnel-fill.w3{width:30%}.funnel-fill.w4{width:40%}.funnel-fill.w5{width:50%}.funnel-fill.w6{width:60%}.funnel-fill.w7{width:70%}.funnel-fill.w8{width:80%}.funnel-fill.w9{width:90%}.funnel-fill.w10{width:100%}
.funnel-note{background:#fff8e6;border:1px solid #f0dca8;border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.5}
.week-table td{white-space:nowrap}.week-table td:first-child{white-space:normal}
.pill-ok{display:inline-block;padding:2px 9px;border-radius:999px;background:#e6f0f9;color:#1f4f80;font-weight:700;font-size:13px}
.pill-wait{display:inline-block;padding:2px 9px;border-radius:999px;background:#fff1d6;color:#8a5a00;font-weight:700;font-size:13px}
.pill-done{display:inline-block;padding:2px 9px;border-radius:999px;background:#e5f4ea;color:#2e7a4c;font-weight:700;font-size:13px}
.logins-table .dim{color:#9aabbc}
.funnel-hint{font-size:12.5px;margin:-4px 0 10px}

/* One-time "complete your details" window: a bottom sheet on phones, a card on wide screens. */
.profile-prompt{position:fixed;inset:auto 0 0 0;z-index:50;padding:0 12px calc(12px + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;pointer-events:none}
.profile-prompt-card{pointer-events:auto;width:100%;max-width:440px;background:#fff;border:1px solid #d6e3f0;border-radius:20px;box-shadow:0 -6px 30px #1b3a5b30;padding:18px 18px 12px;animation:sheet-in .35s ease-out both}
@keyframes sheet-in{from{transform:translateY(30px);opacity:0}}
.profile-prompt h2{margin:0 0 4px;font-size:20px}
.profile-prompt p{margin:0 0 10px;color:#4b6075;font-size:15px}
.profile-prompt form{display:grid;gap:8px}
.profile-prompt input[type=tel],.profile-prompt input[type=email]{padding:12px;border:1px solid var(--sh-line);border-radius:12px;font:inherit;font-size:16px}
.profile-remind{display:flex;align-items:center;gap:8px;font-size:15px}
.profile-actions{display:flex;gap:8px}.profile-actions .sichot-btn{flex:1}
.profile-fine{font-size:12px!important;color:#8aa0b5!important;margin:2px 0 0!important;text-align:center}
@media(prefers-reduced-motion:reduce){.profile-prompt-card{animation:none}}

/* Share card, short version: the number left, the squares, one call. */
.share-card h2{margin:0 0 6px}
.share-big-num{font:900 120px/1 var(--sh-sans,Assistant,sans-serif);margin:6px 0 0}
.share-big-label{font:800 26px var(--sh-sans,Assistant,sans-serif);margin-bottom:14px}
.share-card .share-meter{margin:8px auto 14px}
.share-card .share-meter i{width:14px;height:14px}
.share-card .share-cta{font-size:20px;margin-top:6px}
.share-text{white-space:pre-wrap;font-size:15px;line-height:1.6}
.share-bar{position:relative;height:34px;margin:6px auto 16px;max-width:420px;background:rgba(255,255,255,.2);border-radius:999px;overflow:hidden}
.share-bar span{position:absolute;inset-block:0;right:0;background:#fff;border-radius:999px}
.share-bar b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:800 18px var(--sh-sans,Assistant,sans-serif);color:#173f66;mix-blend-mode:normal}
.share-card.is-complete .share-bar b{color:#6b4300}
.share-bar .p0{width:0%}.share-bar .p1{width:5%}.share-bar .p2{width:10%}.share-bar .p3{width:15%}.share-bar .p4{width:20%}.share-bar .p5{width:25%}.share-bar .p6{width:30%}.share-bar .p7{width:35%}.share-bar .p8{width:40%}.share-bar .p9{width:45%}.share-bar .p10{width:50%}.share-bar .p11{width:55%}.share-bar .p12{width:60%}.share-bar .p13{width:65%}.share-bar .p14{width:70%}.share-bar .p15{width:75%}.share-bar .p16{width:80%}.share-bar .p17{width:85%}.share-bar .p18{width:90%}.share-bar .p19{width:95%}.share-bar .p20{width:100%}
.share-bar .p0{width:0}
.share-bar b{color:#fff!important;text-shadow:0 1px 4px rgba(0,0,0,.55)}

/* ── The sheet hung in the shul (printSheet): calm header, two columns per book, clear names ── */
.wall .wall-head{padding-bottom:4mm}
.wall .sheet-title{margin-bottom:3mm}
.wall-progress{display:flex;align-items:center;justify-content:center;gap:10px;font-size:11pt;color:#435B72}
.wall-bar{position:relative;width:46mm;height:3mm;background:#e3ebf3;border-radius:99px;overflow:hidden}
.wall-bar span{position:absolute;inset-block:0;right:0;background:#2C608D;border-radius:99px}
.wall-bar .w0{width:0%}.wall-bar .w1{width:5%}.wall-bar .w2{width:10%}.wall-bar .w3{width:15%}.wall-bar .w4{width:20%}.wall-bar .w5{width:25%}.wall-bar .w6{width:30%}.wall-bar .w7{width:35%}.wall-bar .w8{width:40%}.wall-bar .w9{width:45%}.wall-bar .w10{width:50%}.wall-bar .w11{width:55%}.wall-bar .w12{width:60%}.wall-bar .w13{width:65%}.wall-bar .w14{width:70%}.wall-bar .w15{width:75%}.wall-bar .w16{width:80%}.wall-bar .w17{width:85%}.wall-bar .w18{width:90%}.wall-bar .w19{width:95%}.wall-bar .w20{width:100%}
.wall-group{margin-top:5mm;break-inside:auto}
.wall-group-head{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 2mm;padding:1.6mm 3mm;background:#EEF4FA;border-right:3px solid #2C608D;border-radius:2mm;font:700 12pt var(--sh-sans,Assistant,sans-serif);color:#193A5B}
.wall-group-head span{font-size:9pt;font-weight:600;color:#5d7389}
.wall-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 7mm}
.wall-row{display:grid;grid-template-columns:7mm 1fr auto;align-items:start;gap:2mm;padding:1.8mm 0;border-bottom:1px solid #E3EBF2;break-inside:avoid}
.wall-n{font:600 8.5pt var(--sh-sans,Assistant,sans-serif);color:#9aabbc;padding-top:.6mm;font-variant-numeric:tabular-nums}
.wall-talk b{display:block;font:700 11pt/1.25 var(--sh-serif,'Frank Ruhl Libre'),serif;color:#193A5B}
.wall-talk small{display:block;font-size:8pt;color:#6b7f93;margin-top:.4mm;line-height:1.3}
.wall-who{display:flex;flex-direction:column;align-items:flex-end;gap:.6mm;text-align:left;max-width:44mm}
.wall-who span{font:700 10pt/1.25 var(--sh-sans,Assistant,sans-serif);color:#1f4f80}
.wall-who em{font-style:normal;font-size:8pt;font-weight:700;color:#8a5a00;background:#FFF4DA;border-radius:99px;padding:.4mm 2.4mm}
.wall-line{display:block;width:30mm;border-bottom:1px dotted #9fb6ca;height:4mm}
.is-free .wall-talk b{color:#2a4a68}
@media print{.wall-group-head{-webkit-print-color-adjust:exact;print-color-adjust:exact}.wall-who em{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
/* On a phone, and in the shared picture: one column. */
@media(max-width:640px){.wall-cols{grid-template-columns:1fr}}
.img-render-host .wall-cols{grid-template-columns:1fr}
.img-render-host .wall-talk b{font-size:16px}.img-render-host .wall-talk small{font-size:12.5px}
.img-render-host .wall-who span{font-size:15px}.img-render-host .wall-who{max-width:220px}
.img-render-host .wall-group-head{font-size:17px;padding:8px 12px}
.img-render-host .wall-row{padding:9px 0;grid-template-columns:26px 1fr auto}
.img-render-host .wall-progress{font-size:14px}
/* Names wrap on one line; the writing line sits beside "פנויה" — rows stay short so a week fits one A4. */
.wall-who{flex-direction:row;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;gap:0 1.2mm;max-width:52mm}
.wall-sep{font-style:normal;color:#9fb6ca}
.wall-row.is-free .wall-who{align-items:center;flex-wrap:nowrap}
.wall-line{width:22mm;height:3mm;margin-right:1.5mm}
.wall-row{padding:1.5mm 0}
/* The talk title never breaks; the names take the rest of the row and wrap there. */
.wall-row{grid-template-columns:7mm auto 1fr}
.wall-talk b{white-space:nowrap}
.wall-who{max-width:none;min-width:0}
.img-render-host .wall-row{grid-template-columns:26px auto 1fr}
/* Manual email send */
.mail-send form{display:grid;gap:10px}
.mail-to{padding:11px;border:1px solid var(--sh-line);border-radius:12px;font:inherit;font-size:16px;background:#fff}
.mail-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}
.mail-list{display:grid;gap:8px;padding-inline-start:18px}
.display-family{align-self:center;font-weight:700;color:#193a5b;padding:0 4px}

/* ── Wall sheet v2 (owner: "not clear, not readable, too small"): bigger type, each talk a small block —
   title (wraps, never cut), detail, then the names (or "פנויה" and a line) on their own line. ── */
.wall .sheet-title{font-size:26pt}
.wall .sheet-kicker{font-size:13pt}
.wall-progress{font-size:12pt}
.wall-group{margin-top:6mm}
.wall-group-head{font-size:14pt;padding:2mm 3.5mm}
.wall-group-head span{font-size:10.5pt}
.wall-cols{gap:0 8mm}
.wall .wall-row{display:grid;grid-template-columns:8mm 1fr;align-items:start;gap:0 2mm;padding:2.2mm 0;border-bottom:1px solid #DCE6F0}
.wall .wall-n{font-size:10pt;font-weight:700;color:#8aa0b5;padding-top:1mm}
.wall .wall-body{display:grid;gap:.8mm;min-width:0}
.wall .wall-talk b{white-space:normal;font-size:13pt;line-height:1.25;color:#193A5B}
.wall .wall-talk small{font-size:9pt;color:#5f7488;margin-top:.3mm}
.wall .wall-who{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.4mm 1.6mm;text-align:right;max-width:none}
.wall .wall-who span{font-size:12pt;font-weight:700;color:#1f5a92}
.wall .wall-sep{color:#a9bccd}
.wall .wall-who em{font-size:9.5pt;padding:.5mm 2.6mm}
.wall .wall-line{width:40mm;height:4.5mm;margin-right:1mm}
.wall .wall-row.is-free .wall-who{flex-wrap:nowrap}
.img-render-host .wall .wall-row{grid-template-columns:28px 1fr}
.img-render-host .wall .wall-talk b{font-size:18px}.img-render-host .wall .wall-talk small{font-size:13px}
.img-render-host .wall .wall-who span{font-size:16px}

/* ── Wall sheet v3 (owner: "still not clear — a background band, what is the talk, who took it"):
   every talk is a card — a light-blue header band (number + talk + detail) and a white body with the name;
   a free talk is a gold card with a line to write a name. ── */
.wall .wall-cols{gap:0 6mm}
.wall .wall-row{display:block;padding:0;margin:0 0 3mm;border:1px solid #C9D9EA;border-radius:3mm;overflow:hidden;background:#fff;break-inside:avoid}
.wall .wall-row.is-free{border-color:#E9CF8F;background:#FFFBF0}
.wall .wall-body{display:block}
.wall .wall-n{float:right;display:flex;align-items:center;justify-content:center;width:7mm;height:7mm;margin:1.6mm 2mm 0 1.5mm;border-radius:50%;background:#2C608D;color:#fff;font:700 9.5pt var(--sh-sans,Assistant,sans-serif);padding:0}
.wall .wall-row.is-free .wall-n{background:#B07D14}
.wall .wall-talk{display:block;background:#EAF2FA;padding:1.6mm 3mm 1.6mm 3mm;min-height:7mm;border-bottom:1px solid #D5E3F1}
.wall .wall-row.is-free .wall-talk{background:#FFF1CC;border-bottom-color:#EFD9A0}
.wall .wall-talk b{font-size:12.5pt;color:#16365A}
.wall .wall-talk small{font-size:8.5pt;color:#55708a}
.wall .wall-who{clear:both;display:flex;flex-wrap:wrap;align-items:baseline;gap:.4mm 1.8mm;padding:2mm 3mm 2.2mm}
.wall .wall-row.is-taken .wall-who::before{content:'לומד:';font:600 9pt var(--sh-sans,Assistant,sans-serif);color:#7d92a6;margin-left:1mm}
.wall .wall-who span{font-size:13pt;color:#1F5A92}
.wall .wall-row.is-free .wall-who{flex-wrap:nowrap;align-items:flex-end}
.wall .wall-row.is-free .wall-who em{background:none;padding:0;color:#8A5A00;font-size:10pt;white-space:nowrap}
.wall .wall-row.is-free .wall-who em::after{content:'. כתבו כאן את שמכם:'}
.wall .wall-line{flex:1;width:auto;min-width:25mm;height:5mm;border-bottom:1.2px dotted #B8933C;margin-right:2mm}
.img-render-host .wall .wall-n{width:26px;height:26px;font-size:13px}
.img-render-host .wall .wall-talk b{font-size:17px}.img-render-host .wall .wall-who span{font-size:17px}
/* Fixed layout reads widths from the header row: give the label column its width there (labels hit the times, 4.10.2026). */
.zp-table thead th:first-child{width:21%}.zp-table tbody th{padding-left:8px}
/* Two columns read down, in time order: the right column first, then the left (4.10.2026). */
.bulletin-zmanim .zmanim-list-2.r4{grid-auto-flow:column;grid-template-rows:repeat(4,auto)}.bulletin-zmanim .zmanim-list-2.r5{grid-auto-flow:column;grid-template-rows:repeat(5,auto)}.bulletin-zmanim .zmanim-list-2.r6{grid-auto-flow:column;grid-template-rows:repeat(6,auto)}.bulletin-zmanim .zmanim-list-2.r7{grid-auto-flow:column;grid-template-rows:repeat(7,auto)}.bulletin-zmanim .zmanim-list-2.r8{grid-auto-flow:column;grid-template-rows:repeat(8,auto)}
.img-render-host .bulletin-zmanim .zmanim-list-2{grid-auto-flow:row;grid-template-rows:none}
.profile-form{display:grid;gap:10px}.profile-form label{display:grid;gap:4px;font-weight:600;font-size:14px}.profile-form input{padding:11px;border:1px solid var(--sh-line);border-radius:10px;font:inherit;font-size:16px;font-weight:400}
.wall .wall-row.is-taken.is-many .wall-who::before{content:'לומדים:'}

/* Print sheet v4 (4.10.2026): one table, number · sicha · learner. Free rows in amber with a line to write on. */
.roster .roster-top{padding-bottom:3mm;border-bottom:2px solid #2C608D;margin-bottom:2mm}
.roster .sheet-title{font-size:24pt;margin-bottom:2mm}
.roster-sum{font:600 13pt var(--sh-sans,Assistant,sans-serif);color:#193A5B;text-align:center}
.roster-sum-free{color:#8a5a00}
.roster-how{margin:1.5mm 0 0;text-align:center;font:500 10.5pt var(--sh-sans,Assistant,sans-serif);color:#5f7488}
.roster-group{margin-top:5mm}
.roster-head{display:flex;justify-content:space-between;align-items:baseline;margin:0;padding:2mm 3.5mm;background:#2C608D;color:#fff;border-radius:2mm 2mm 0 0;font:700 13pt var(--sh-sans,Assistant,sans-serif)}
.roster-head small{font-size:10pt;font-weight:600;color:#DCE9F5}
.roster-cols,.roster-row{display:grid;grid-template-columns:9mm 1fr 58mm;align-items:center}
.roster-cols{padding:1mm 0;background:#EEF4FA;font:700 8.5pt var(--sh-sans,Assistant,sans-serif);color:#5f7488;border-inline:1px solid #C9D9EA}
.roster-cols span:first-child,.roster-n{text-align:center}
.roster-row{min-height:9mm;border:1px solid #C9D9EA;border-top:0;break-inside:avoid}
.roster-row:nth-of-type(even){background:#F8FBFD}
.roster-n{align-self:stretch;display:flex;align-items:center;justify-content:center;font:700 10pt var(--sh-sans,Assistant,sans-serif);color:#2C608D;border-left:1px solid #DCE6F0;font-variant-numeric:tabular-nums}
.roster-talk{padding:1.4mm 2.5mm;min-width:0}
.roster-talk b{display:block;font:700 11.5pt/1.25 var(--sh-serif,'Frank Ruhl Libre'),serif;color:#193A5B}
.roster-talk small{display:block;font:500 8.5pt/1.3 var(--sh-sans,Assistant,sans-serif);color:#6b7f93;margin-top:.3mm}
.roster-who{align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:.4mm;padding:1.2mm 2.5mm;border-right:1px solid #DCE6F0}
.roster-who span{font:700 11pt/1.2 var(--sh-sans,Assistant,sans-serif);color:#1f5a92}
.roster-row.is-free .roster-who{background:#FFF4DA;flex-direction:row;align-items:flex-end;gap:2mm}
.roster-who em{font:700 9pt var(--sh-sans,Assistant,sans-serif);font-style:normal;color:#8a5a00;white-space:nowrap}
.roster-who i{flex:1;border-bottom:1px solid #C9A65A;height:5mm}
@media print{.roster-head,.roster-cols,.roster-row,.roster-who{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
@media(max-width:640px){.roster-cols,.roster-row{grid-template-columns:8mm 1fr 34%}.roster .sheet-title{font-size:20pt}}
.img-render-host .roster-cols,.img-render-host .roster-row{grid-template-columns:34px 1fr 36%}
.img-render-host .roster-talk b{font-size:17px}.img-render-host .roster-talk small{font-size:13px}
.img-render-host .roster-who span{font-size:16px}.img-render-host .roster-head{font-size:18px}
.render-clip{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;pointer-events:none}

/* Two cycles on the board (5.10.2026): talk, then a cell per cycle with its names and buttons. */
.sichot-item.has-cycles{display:grid;grid-template-columns:1fr;gap:8px}
.cycle-cells{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.cycle-cell{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"name act" "who who";align-items:center;gap:4px 8px;padding:8px 10px;border:1px solid var(--sh-line,#DCE6F0);border-radius:10px;background:#fff}
.cycle-cell.is-free{background:#FFFBF0;border-color:#EBD9A8}
.cycle-cell.is-mine{border-color:#2C608D;box-shadow:inset 0 0 0 1px #2C608D}
.cycle-name{grid-area:name;font-weight:700;font-size:13px;color:#2C608D}
.cycle-who{grid-area:who;min-width:0;font-size:14px}
.cycle-act{grid-area:act;display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.cycle-act .sichot-btn{min-height:34px;padding:6px 12px;font-size:14px}
@media(min-width:760px){.sichot-item.has-cycles{grid-template-columns:minmax(0,1.2fr) minmax(0,1.6fr);align-items:center}}
.momentum-cycles{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:14px;color:#435B72;margin-top:4px}.momentum-cycles b{color:#193A5B}.momentum-cycles .is-full b{color:#2f7d4f}
.assign-row.has-cycles{grid-template-columns:1fr}.assign-cycle-part{display:grid;grid-template-columns:auto 1fr auto;gap:6px 10px;align-items:center;padding:6px 0;border-top:1px dashed #DCE6F0}.assign-cycle{font-weight:700;font-size:13px;color:#2C608D;white-space:nowrap}
@media(max-width:640px){.assign-cycle-part{grid-template-columns:1fr}}
/* Print sheet with two cycles: a learner column per cycle. */
.roster-cols.has-cycles,.roster-row.has-cycles{grid-template-columns:9mm 1fr 44mm 44mm}
.roster-row.has-cycles .roster-who{border-right:1px solid #DCE6F0}
.roster-row.has-cycles .roster-who.is-free{background:#FFF4DA;flex-direction:row;align-items:flex-end;gap:2mm}
.roster-who.is-none{color:#a9bccd;align-items:center;justify-content:center}
@media(max-width:640px){.roster-cols.has-cycles,.roster-row.has-cycles{grid-template-columns:7mm 1fr 26% 26%}}
.img-render-host .roster-cols.has-cycles,.img-render-host .roster-row.has-cycles{grid-template-columns:30px 1fr 27% 27%}
.cycles-form{display:grid;gap:10px}.cycles-form label{display:grid;gap:4px;font-weight:600}
/* Two cycles, after the board rules: the talk on top, the cycle cells side by side under it (phone too). */
.community-board .sichot-item.has-cycles{display:grid;grid-template-columns:1fr;grid-template-areas:none;gap:8px;align-items:start}
.community-board .sichot-item.has-cycles .cycle-cells{grid-template-columns:repeat(2,minmax(0,1fr))}
.community-board .sichot-item.has-cycles .cycle-cell{grid-template-columns:1fr;grid-template-areas:"name" "who" "act";padding:8px}
.community-board .sichot-item.has-cycles .cycle-act{justify-content:stretch}
.community-board .sichot-item.has-cycles .cycle-act .sichot-btn,.community-board .sichot-item.has-cycles .cycle-act form{width:100%}
.community-board .sichot-item.has-cycles .cycle-who{font-size:13.5px;line-height:1.35}
@media(min-width:760px){.community-board .sichot-item.has-cycles{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:center}}
.community-board .sichot-item.has-cycles{grid-template-areas:"talk" "cells"}
.community-board .sichot-item.has-cycles .cycle-cells{grid-area:cells}
@media(min-width:760px){.community-board .sichot-item.has-cycles{grid-template-areas:"talk cells"}}
/* Progress per cycle under the ring (owner, 5.10.2026): one bar for each "חלוקה". Widths as classes (CSP: no inline style). */
.cycle-bars{list-style:none;margin:8px 0 2px;padding:0;display:grid;gap:6px}
.cycle-bars li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:13.5px;color:#435B72}
.cb-name{font-weight:700;color:#193A5B;white-space:nowrap}
.cb-track{position:relative;height:8px;border-radius:99px;background:#E3EBF3;overflow:hidden}
.cb-fill{position:absolute;inset-block:0;right:0;border-radius:99px;background:#2C608D}
.cycle-bars .is-full .cb-fill{background:#2f7d4f}
.cb-num{font-variant-numeric:tabular-nums;white-space:nowrap}.cb-num b{color:#193A5B}.cycle-bars .is-full .cb-num{color:#2f7d4f}
.cb-w0{width:0%}.cb-w1{width:5%}.cb-w2{width:10%}.cb-w3{width:15%}.cb-w4{width:20%}.cb-w5{width:25%}.cb-w6{width:30%}.cb-w7{width:35%}.cb-w8{width:40%}.cb-w9{width:45%}.cb-w10{width:50%}.cb-w11{width:55%}.cb-w12{width:60%}.cb-w13{width:65%}.cb-w14{width:70%}.cb-w15{width:75%}.cb-w16{width:80%}.cb-w17{width:85%}.cb-w18{width:90%}.cb-w19{width:95%}.cb-w20{width:100%}
/* Tabs for the cycles (owner, 5.10.2026): "חלוקה א׳ / ב׳", each its own ring and list. */
.cycle-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:6px;margin:10px auto 12px;max-width:520px;padding:4px;background:#E9F0F7;border-radius:14px}
.cycle-tabs a{display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 6px;border-radius:10px;color:#2C608D;text-decoration:none;font-size:15px}
.cycle-tabs a span{font-size:12.5px;color:#5f7488;font-variant-numeric:tabular-nums}
.cycle-tabs a[aria-current="page"]{background:#fff;box-shadow:0 1px 3px rgba(25,58,91,.15);color:#193A5B}
.cycle-tabs a.is-full span{color:#2f7d4f}
/* The community's name, more prominent (owner, 13.10.2026: "שמות הקהילה כשנכנסים מכל קישור שיהיה יותר בולט"). */
.community-wordmark{display:flex;align-items:center;justify-content:center;gap:12px;font:700 27px/1.25 var(--sh-serif,'Frank Ruhl Libre'),serif;color:#193A5B;text-align:center;margin:6px 0 10px;letter-spacing:.2px;text-wrap:balance}
.community-wordmark::before,.community-wordmark::after{content:'';flex:0 1 48px;min-width:18px;height:2px;border-radius:2px;background:linear-gradient(90deg,#B08A3E00,#B08A3E)}
.community-wordmark::after{background:linear-gradient(90deg,#B08A3E,#B08A3E00)}
@media (max-width:480px){.community-wordmark{font-size:24px;gap:8px}}
.sheet .community-wordmark{font-size:18pt;margin:0 0 2mm}

/* Home (5.10.2026): a card per community. */
.home-head{text-align:center}
.home-choose h2{font-size:15px;font-weight:700;color:#5f7488;margin:18px 4px 10px}
.home-cards{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.home-card{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:14px;padding:14px 16px;background:#fff;border:1px solid #DCE6F0;border-radius:16px;text-decoration:none;color:inherit;box-shadow:0 1px 2px rgba(25,58,91,.05);transition:border-color .15s,box-shadow .15s}
.home-card:hover,.home-card:focus-visible{border-color:#2C608D;box-shadow:0 4px 14px rgba(25,58,91,.10)}
.home-mark{width:64px;height:64px;display:grid;place-items:center}
.home-mark .community-logo{width:64px;height:auto;margin:0}
.home-initial{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#EEF4FA;color:#2C608D;font:700 26px var(--sh-serif,'Frank Ruhl Libre'),serif}
.home-body{display:grid;gap:3px;min-width:0}
.home-name{font:700 19px/1.25 var(--sh-serif,'Frank Ruhl Libre'),serif;color:#193A5B}
.home-city{font-size:13px;color:#6b7f93}
.home-week{font-size:13.5px;color:#435B72}.home-week b{color:#193A5B}
.home-week.is-idle{color:#8a9bab}
.home-bar{position:relative;display:block;height:6px;border-radius:99px;background:#E3EBF3;overflow:hidden;margin-top:3px;max-width:260px}
.home-bar span{position:absolute;inset-block:0;right:0;background:#2C608D;border-radius:99px}
.home-go{font-size:22px;color:#2C608D}
@media(min-width:720px){.home-cards{grid-template-columns:1fr 1fr}}
.hb-w0{width:0%}.hb-w1{width:5%}.hb-w2{width:10%}.hb-w3{width:15%}.hb-w4{width:20%}.hb-w5{width:25%}.hb-w6{width:30%}.hb-w7{width:35%}.hb-w8{width:40%}.hb-w9{width:45%}.hb-w10{width:50%}.hb-w11{width:55%}.hb-w12{width:60%}.hb-w13{width:65%}.hb-w14{width:70%}.hb-w15{width:75%}.hb-w16{width:80%}.hb-w17{width:85%}.hb-w18{width:90%}.hb-w19{width:95%}.hb-w20{width:100%}
.print-picker{max-width:640px;margin:8px auto 14px}

/* Site administrator (5.10.2026). */
.site-admin{max-width:1100px}
.admin-site-nav{display:flex;gap:6px;justify-content:center;margin:6px 0 14px}
.admin-site-nav a{padding:8px 16px;border-radius:10px;border:1px solid #DCE6F0;text-decoration:none;color:#2C608D;font-weight:600;background:#fff}
.admin-site-nav a[aria-current="page"]{background:#2C608D;color:#fff;border-color:#2C608D}
.admin-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:0 0 14px}
.admin-totals div{background:#fff;border:1px solid #DCE6F0;border-radius:12px;padding:10px;text-align:center}
.admin-totals b{display:block;font-size:22px;color:#193A5B;font-variant-numeric:tabular-nums}.admin-totals span{font-size:13px;color:#5f7488}
.admin-table-wrap{overflow-x:auto;background:#fff;border:1px solid #DCE6F0;border-radius:12px}
.admin-table{width:100%;border-collapse:collapse;font-size:14px}
.admin-table th,.admin-table td{padding:8px 10px;border-bottom:1px solid #EEF2F6;text-align:right;white-space:nowrap}
.admin-table thead th{background:#F4F8FB;color:#435B72;font-size:12.5px;position:sticky;top:0}
.admin-table tbody th small{display:block;font-weight:400;color:#6b7f93;font-size:12px}
.admin-table .num{font-variant-numeric:tabular-nums}
.admin-table tfoot th,.admin-table tfoot td{background:#F4F8FB;font-weight:700}
.admin-filter{margin:0 0 12px;gap:8px}
.admin-table td small.also{display:block;color:#2f7d4f;font-size:12px}
.site-admin-link{font-weight:700}
.community-nav .nav-site svg{color:#7a5b16}.community-nav a.nav-site span{color:#7a5b16}

/* Report to the Rebbe (5.10.2026): an A4 table. */
.rebbe-filter{max-width:760px;margin:10px auto 14px;display:grid;gap:10px}
.rebbe-filter label{display:grid;gap:3px;font-weight:600;font-size:14px}
.rebbe-presets{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.rebbe-presets a{padding:6px 12px;border:1px solid #DCE6F0;border-radius:99px;text-decoration:none;color:#2C608D;background:#fff;font-size:14px}
.rebbe-presets a[aria-current="page"]{background:#2C608D;color:#fff;border-color:#2C608D}
.rebbe-period{text-align:center;font-size:12pt;color:#435B72;margin-top:1mm}
.rebbe-sum{text-align:center;font-size:12pt;color:#193A5B;margin:2mm 0 1mm}
.rebbe-table{width:100%;border-collapse:collapse;font-size:11pt;margin-top:4mm}
.rebbe-table th{background:#2C608D;color:#fff;font-weight:700;padding:2mm 2.5mm;text-align:right;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.rebbe-table td{padding:1.8mm 2.5mm;border-bottom:1px solid #DCE6F0;text-align:right}
.rebbe-table tbody tr:nth-child(even) td{background:#F6F9FC;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.rebbe-table .num{text-align:center;font-variant-numeric:tabular-nums;width:16mm}
.rebbe-table td.rb-comm{font-size:9.5pt;color:#5f7488}
.rebbe-table tfoot td{font-weight:700;border-top:2px solid #2C608D;background:#EEF4FA}
/* First visit (5.10.2026): what it is and what to do, in three lines. */
.welcome{max-width:560px;margin:12px auto 6px;padding:14px 16px;background:#fff;border:1px solid #DCE6F0;border-radius:16px;text-align:right}
.welcome-idea{margin:0 0 10px;font-size:16.5px;line-height:1.55;color:#193A5B}
.welcome-steps{list-style:none;counter-reset:w;margin:0 0 12px;padding:0;display:grid;gap:8px}
.welcome-steps li{counter-increment:w;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:10px;font-size:15px;color:#435B72}
.welcome-steps li::before{content:counter(w);width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#EEF4FA;color:#2C608D;font-weight:700}
.welcome-steps b{color:#193A5B}
.welcome-go{display:flex;width:100%;justify-content:center}
.admin-back{display:inline-flex;align-items:center;gap:4px;margin:4px 0 10px;padding:8px 14px;border-radius:10px;background:#EEF4FA;color:#2C608D;font-weight:700;text-decoration:none}
.admin-back:hover{background:#DCE9F5}
.admin-link span{font-size:13px;color:#2C608D}.admin-link .copy-link{min-height:30px;padding:4px 10px;font-size:13px}
.admin-links{margin:16px 0;background:#fff;border:1px solid #DCE6F0;border-radius:12px;padding:12px 14px}.admin-links h2{font-size:16px;margin:0 0 6px}.admin-links pre{direction:rtl;text-align:right;white-space:pre-wrap;font-size:14px;max-height:220px;overflow:auto}
.link-list{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}
.link-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name btn" "url btn";align-items:center;gap:2px 10px;padding:8px 10px;border:1px solid #EEF2F6;border-radius:10px}
.link-name{grid-area:name;font-weight:700;color:#193A5B}.link-url{grid-area:url;font-size:13px;color:#2C608D;word-break:break-all;text-align:left}
.link-list .copy-link{grid-area:btn;min-height:36px;padding:6px 14px}

/* Sign-in to management (5.10.2026). */
.manager-login .login-card{display:grid;gap:10px;max-width:420px;margin:0 auto}
.manager-login .login-google{display:flex;justify-content:center;min-height:52px;font-size:17px}
.login-help{margin:0;font-size:14px;color:#5f7488;text-align:center}
.login-code summary{cursor:pointer;color:#2C608D;font-weight:600;text-align:center;padding:6px}
.login-code form{margin-top:8px}
.login-foot{text-align:center;font-size:14px;color:#5f7488;margin:16px 0}

/* Permissions from a user's row (6.10.2026). */
.role-form{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0}
.role-form label{display:inline-flex;align-items:center;gap:4px;font-size:13px;white-space:nowrap}
.role-form .sichot-btn{min-height:32px;padding:4px 12px;font-size:13px}
.role-tag.is-owner{font-size:13px;font-weight:700;color:#193A5B}

/* Site administrator, redesigned (owner, 6.10.2026: "שפר את הנראות של לוח הניהול… ממש מבחינת הכל"). */
.admin-v2{max-width:1120px}
.admin-head{display:grid;gap:10px;padding:14px 0 6px;text-align:start}
.admin-head-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 14px}
.admin-kicker{font-size:13px;font-weight:600;color:#5f7488;letter-spacing:.02em}
.admin-v2 .admin-back{margin:0;padding:6px 12px;font-size:14px;border-radius:999px}
.admin-head h1{margin:0;font:700 clamp(26px,4vw,34px)/1.15 var(--sh-sans);color:#193A5B;text-wrap:balance}
.admin-v2 .admin-site-nav{justify-content:flex-start;margin:4px 0 0;padding:4px;background:#E9F0F7;border-radius:14px;width:max-content;max-width:100%}
.admin-v2 .admin-site-nav a{border:0;background:transparent;padding:8px 18px;border-radius:10px}
.admin-v2 .admin-site-nav a[aria-current="page"]{background:#fff;color:#193A5B;box-shadow:0 1px 3px rgba(25,58,91,.15)}
.admin-kpis{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px;margin:18px 0}
.kpi{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:16px 18px;background:#fff;border:1px solid #DCE6F0;border-radius:16px}
.kpi b{font:700 28px/1.1 var(--sh-sans);color:#193A5B;font-variant-numeric:tabular-nums}
.kpi b small{font-size:17px;font-weight:600;color:#5f7488}
.kpi-label{font-size:13px;color:#5f7488}
.kpi-sub{font-size:13px;color:#435B72}
.kpi-wide{background:#193A5B;border-color:#193A5B}
.kpi-wide b,.kpi-wide b small{color:#fff}.kpi-wide .kpi-label,.kpi-wide .kpi-sub{color:#C9D9E8}
.kpi-wide .admin-bar{background:rgba(255,255,255,.18)}.kpi-wide .admin-bar span{background:#fff}
.admin-bar{max-width:none;height:8px;margin:2px 0}
.admin-bar.is-full span{background:#2f7d4f}
.admin-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin:22px 0 10px}
.admin-section-head h2{margin:0;font:700 19px var(--sh-sans);color:#193A5B}
.admin-v2 .admin-section-head .sichot-btn{width:auto;min-height:38px;padding:7px 14px;font-size:14px;margin:0}
.comm-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:12px}
.comm-card{display:flex;flex-direction:column;gap:12px;padding:18px;background:#fff;border:1px solid #DCE6F0;border-radius:16px}
.comm-top{display:grid;gap:2px}
.comm-top h2{margin:0;font:700 19px var(--sh-sans)}.comm-top h2 a{color:#193A5B;text-decoration:none}.comm-top h2 a:hover{text-decoration:underline}
.comm-week{font-size:14px;color:#5f7488}
.comm-progress{display:grid;gap:4px}
.comm-progress-line{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;color:#435B72}
.comm-progress-line b{color:#193A5B;font-size:16px}
.comm-pct{font-weight:700;color:#2C608D;font-variant-numeric:tabular-nums}
.comm-done{font-size:13px;color:#2f7d4f}
.comm-meta{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:10px 0;border-block:1px solid #EEF2F6}
.comm-meta div{display:grid;gap:1px;text-align:center}.comm-meta div+div{border-inline-start:1px solid #EEF2F6}
.comm-meta dt{font-size:12px;color:#5f7488}.comm-meta dd{margin:0;font:700 17px var(--sh-sans);color:#193A5B;font-variant-numeric:tabular-nums}
.comm-link{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.comm-link .link-url{font-size:13px;color:#2C608D;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.admin-v2 .comm-link .copy-link{flex:0 0 auto;margin:0;padding:5px 10px;min-height:32px;font:600 13px var(--sh-sans);color:#2C608D;background:#E9F0F7;border:0;border-radius:8px;cursor:pointer;width:auto}
.comm-actions{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;margin-top:auto}
.admin-v2 .comm-actions .sichot-btn{margin:0;min-height:40px;padding:8px 10px;font-size:15px;text-align:center;justify-content:center}
.admin-foot-hint{margin-top:16px}
.admin-filter{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto;gap:8px;margin:18px 0 0;padding:12px;background:#fff;border:1px solid #DCE6F0;border-radius:16px}
.admin-filter input,.admin-filter select{min-width:0;min-height:44px;padding:8px 12px;border:1px solid #CFDCE8;border-radius:10px;background:#fff;font:inherit;font-size:15px;color:#193A5B}
.admin-v2 .admin-filter .sichot-btn{margin:0;width:auto;min-height:44px;padding:8px 18px}
.admin-count{margin:0;font-size:14px;color:#435B72}.admin-count b{color:#193A5B;font-size:16px}
.admin-v2 .users-table th,.admin-v2 .users-table td{vertical-align:top;padding:10px 12px}
.admin-v2 .users-table small{display:block;font-size:12px;color:#5f7488;font-weight:400;margin-top:2px}
.u-name{font-weight:700;color:#193A5B}
.u-contact small{word-break:break-all}
.role-tag{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12.5px;font-weight:700;margin-inline-end:4px}
.role-tag.is-owner{background:#193A5B;color:#fff}.role-tag.is-amb{background:#E3F1E8;color:#24603D}.role-tag.is-view{background:#FDF1D8;color:#7A5300}
.role-none{font-size:13px;color:#8396A8}
.role-edit summary{display:flex;flex-wrap:wrap;align-items:center;gap:4px;cursor:pointer;list-style:none}
.role-edit summary::-webkit-details-marker{display:none}
.role-change{font-size:12.5px;color:#2C608D;text-decoration:underline;text-underline-offset:2px}
.role-edit[open] .role-change{display:none}
.admin-v2 .role-form{display:grid;gap:8px;margin-top:8px;padding:10px;background:#F4F8FB;border-radius:10px;min-width:200px}
.admin-v2 .role-form label{font-size:14px;white-space:normal}
.role-form label.is-off{color:#8396A8}
.admin-v2 .role-form .sichot-btn{width:auto;justify-self:start;margin:0;min-height:36px;padding:6px 16px;font-size:14px}
@media(max-width:900px){.admin-kpis{grid-template-columns:repeat(4,1fr)}.kpi-wide{grid-column:1/-1}}
@media(max-width:640px){
  .admin-kpis{grid-template-columns:1fr 1fr}.kpi{padding:12px 14px}.kpi b{font-size:24px}
  .admin-filter{grid-template-columns:1fr 1fr}.admin-filter input[type=search]{grid-column:1/-1}.admin-v2 .admin-filter .sichot-btn{grid-column:1/-1;width:100%}
  .admin-v2 .admin-table-wrap{border:0;background:transparent;overflow:visible}
  .admin-v2 .users-table thead{display:none}
  .admin-v2 .users-table,.admin-v2 .users-table tbody,.admin-v2 .users-table tr,.admin-v2 .users-table th,.admin-v2 .users-table td{display:block;width:auto}
  .admin-v2 .users-table tr{margin:0 0 10px;padding:12px 14px;background:#fff;border:1px solid #DCE6F0;border-radius:14px}
  .admin-v2 .users-table th,.admin-v2 .users-table td{padding:4px 0;border:0;text-align:start}
  .admin-v2 .users-table td::before{content:attr(data-label);display:block;font-size:11.5px;font-weight:600;color:#8396A8}
  .admin-v2 .users-table th{font-size:16px;padding-bottom:6px}
  .admin-v2 .users-table td.u-role{padding-top:8px;margin-top:4px;border-top:1px solid #EEF2F6}
}

/* Every dropdown on the site, one look (owner, 6.10.2026: "כל המקומות הנפתחים האלו צריך לשפר עיצוב"):
   the same field as the inputs, a quiet chevron on the left (RTL), a clear focus ring. */
select:not([multiple]){appearance:none;-webkit-appearance:none;min-height:44px;padding-block:8px;padding-inline:12px 38px;border:1px solid #CFDCE8;border-radius:10px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%232C608D' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 14px center;background-size:12px 8px;font:inherit;font-size:15px;color:#193A5B;cursor:pointer;box-sizing:border-box;max-width:100%}
select:not([multiple]):hover{border-color:#9FB6CC}
select:focus-visible,input[type=date]:focus-visible,input[type=month]:focus-visible{outline:2px solid #2C608D;outline-offset:1px;border-color:#2C608D}
[dir=ltr] select:not([multiple]),select[dir=ltr]:not([multiple]){background-position:right 14px center;padding-inline:12px 38px}
input[type=date],input[type=month]{min-height:44px;padding:8px 12px;border:1px solid #CFDCE8;border-radius:10px;background:#fff;font:inherit;font-size:15px;color:#193A5B;box-sizing:border-box}
.rebbe-filter label{color:#435B72}
/* Users on a phone: a compact card — the name on top, the details two by two. */
@media(max-width:640px){
  .admin-v2 .users-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
  .admin-v2 .users-table th{grid-column:1/-1;padding:0}
  .admin-v2 .users-table td{padding:0;min-width:0;font-size:14px}
  .admin-v2 .users-table td.u-contact{grid-column:1/-1}
  .admin-v2 .users-table td.u-role{grid-column:1/-1;padding-top:8px;margin-top:0}
}
/* On a phone the A4 sheet fits the screen: its padding is inside its width, not added to it (the PDF renders apart). */
@media screen and (max-width:820px){
  .sheet{box-sizing:border-box;padding:16px 14px}
  .rebbe-table{font-size:13px}.rebbe-table th,.rebbe-table td{padding:6px 5px}
  .rebbe-table .num{width:auto}
}
@media screen and (max-width:820px){.rebbe-filter,.bulletin-print-tools{padding-inline:16px;box-sizing:border-box}}

/* The community's management, redesigned (owner, 6.10.2026: "תשפר גם את לוח הניהול של הקהילה"). */
.dash-v2{padding:14px}
.dash-kpis{display:grid;grid-template-columns:3fr 1fr;gap:10px}
.dash-v2 .kpi{padding:14px 16px}
.dash-state{font-size:24px!important}.dash-state.is-open{color:#2f7d4f!important}.dash-state.is-closed{color:#7A5300!important}
.dash-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.dash-tools a{display:inline-flex;align-items:center;min-height:38px;padding:6px 14px;border:1px solid #DCE6F0;border-radius:999px;background:#fff;color:#2C608D;font-size:14px;font-weight:600;text-decoration:none}
.dash-tools a:hover{border-color:#2C608D;background:#F4F8FB}
.share-box{gap:12px!important}
.share-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.share-head h2{margin:0!important}
.share-head .cycle-tabs{margin:0;max-width:none;width:auto;grid-template-columns:none;grid-auto-flow:column}.share-head .cycle-tabs a{white-space:nowrap;padding:6px 14px}
.share-box .share-big{margin:0}
.share-box .admin-hint{margin:0}
.share-box .share-preview{margin-top:0}
.share-box .mail-templates-link{justify-self:start;font-size:14px;margin-top:4px}
.assign-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:4px 0 0}
.assign-filter input{flex:1 1 220px;min-width:0;min-height:42px;padding:8px 12px;border:1px solid #CFDCE8;border-radius:10px;font:inherit;font-size:15px;background:#fff}
.seg{display:inline-flex;padding:3px;background:#E9F0F7;border-radius:12px;gap:2px}
.seg button{min-height:36px;padding:4px 14px;border:0;border-radius:9px;background:transparent;color:#2C608D;font:600 14px var(--sh-sans);cursor:pointer}
.seg button[aria-pressed="true"]{background:#fff;color:#193A5B;box-shadow:0 1px 3px rgba(25,58,91,.15)}
.assign-row[hidden]{display:none}
#assign-status:empty{display:none}
.sichot-admin #member-search{width:100%;min-height:44px;padding:8px 12px;border:1px solid #CFDCE8;border-radius:10px;font:inherit;font-size:15px;background:#fff;box-sizing:border-box}
@media(max-width:640px){.dash-kpis{grid-template-columns:1fr}.dash-tools a{flex:1 1 auto;justify-content:center}.seg{width:100%}.seg button{flex:1}}

/* "על המיזם" (6.10.2026). */
.about-body{display:grid;gap:14px;max-width:620px;margin:0 auto;font-size:17px;line-height:1.75;color:#24415f}
.about-body p{margin:0}
.about-body h2{margin:6px 0 0;font:700 19px var(--sh-sans);color:#193A5B}
.about-steps{margin:0}
.about-aim{padding:14px 16px;background:#F4F8FB;border-inline-start:3px solid #2C608D;border-radius:10px;color:#193A5B}
.about-go{justify-self:center;width:auto;padding-inline:28px}
.home-about{text-align:center;margin:18px 0 0;font-size:15px}
.welcome-about{display:block;text-align:center;margin-top:8px;font-size:14px;color:#2C608D}
.invite-box .admin-actions{margin-top:8px}

.known-join{text-align:center}.known-join h2{margin:0 0 4px}.known-join p{margin:0 0 10px;color:#435B72}

/* Never joined by accident (6.10.2026): his own community first, joining another is the second, explicit choice. */
.known-choice{display:grid;gap:8px;max-width:420px;margin:0 auto}
.known-choice form{margin:0}.known-choice .sichot-btn{width:100%}
.home-card{position:relative}
.home-card.is-mine{border-color:#2C608D;box-shadow:0 0 0 2px #2C608D22}
.home-mine{position:absolute;top:-10px;inset-inline-start:14px;padding:1px 10px;border-radius:999px;background:#2C608D;color:#fff;font-size:12px;font-weight:700}
.home-about a{color:#2C608D;font-weight:600;text-underline-offset:3px}
/* Polish (6.10.2026, owner: "תשפץ"): the about page and the home steps as cards. */
.about-page .home-head{padding:28px 18px 26px;margin:0 0 18px;border-radius:20px;background:linear-gradient(160deg,#173f66 0%,#245a8f 60%,#2f6ea8 100%);color:#fff;box-shadow:0 10px 28px #1b3a5b2e}
.about-page .home-head .sichot-kicker{color:#cfe0f0;letter-spacing:.02em}
.about-page .home-head .sichot-parsha{color:#fff;font-size:clamp(26px,6.4vw,36px);line-height:1.2}
.about-body{gap:18px;font-size:17px}
.about-body>p:first-child{font-size:18px;color:#193A5B}
.about-body h2{text-align:center;font-size:20px;margin-top:4px}
.home-steps li,.about-steps li{padding:14px 16px;background:#fff;border:1px solid #DCE6F0;border-radius:14px;box-shadow:0 1px 3px rgba(25,58,91,.06)}
.home-steps li::before{background:#2C608D;color:#fff}
.about-steps{grid-template-columns:1fr!important;gap:10px}
.about-steps li{grid-template-columns:30px 1fr;column-gap:12px;align-items:start}
.about-steps li::before{grid-row:span 2;width:30px;height:30px}
.about-steps li span{font-size:15px;line-height:1.6}
.about-body>p:nth-of-type(2){text-align:center;font-size:15px;color:#435B72}
.about-aim{text-align:center;font:500 18px/1.7 'Frank Ruhl Libre',serif;padding:18px 18px;background:#FBF6EA;border:1px solid #EAD9AE;border-inline-start:1px solid #EAD9AE;color:#5b4210;border-radius:14px}
.about-go{min-width:200px}
.home-about .home-admin{font-weight:400;color:#6B7F93}
/* Sortable tables (6.10.2026). */
.is-sortable th{position:relative}
.th-sort{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:4px;font:inherit;color:inherit;border-radius:6px;padding:2px 4px;margin:-2px -4px}
.th-sort:hover{background:rgba(44,96,141,.10)}
.th-sort:focus-visible{outline:2px solid #2C608D;outline-offset:2px}
.th-arrow{display:inline-block;width:0;height:0;border-inline:4px solid transparent;border-top:5px solid currentColor;opacity:.25;transition:transform .2s,opacity .2s}
.th-sort:hover .th-arrow{opacity:.55}
th[aria-sort] .th-arrow{opacity:1}
th[aria-sort="ascending"] .th-arrow{transform:rotate(180deg)}
.table-filter{display:flex;align-items:center;gap:10px;margin:8px 0}
.table-filter input{flex:1 1 220px;max-width:340px;min-height:40px;padding:6px 12px;border:1px solid #CFDCE8;border-radius:10px;font:inherit;font-size:15px;background:#fff}
.table-filter-n{font-size:13px;color:#6B7F93}
@media print{.th-arrow{display:none}.th-sort{all:unset}}

.role-tag.is-national{background:#193A5B;color:#fff}
.role-site{border:0;margin:6px 0 0;padding:0;display:grid;gap:4px}.role-site legend{font-size:12px;color:#6B7F93;padding:0;margin-bottom:2px}.role-site.is-off{opacity:.55}

/* Search suggestions (7.10.2026). */
.suggest-wrap{position:relative;flex:1 1 260px;min-width:0}
.suggest-wrap input{width:100%;box-sizing:border-box}
.suggest-list{position:absolute;z-index:30;inset-inline:0;top:calc(100% + 4px);margin:0;padding:6px;list-style:none;background:#fff;border:1px solid #DCE6F0;border-radius:12px;box-shadow:0 12px 32px rgba(25,58,91,.16);max-height:360px;overflow:auto}
.suggest-item a{display:grid;gap:1px;padding:8px 10px;border-radius:8px;color:#193A5B;text-decoration:none}
.suggest-item.is-active a,.suggest-item a:hover{background:#EEF4FA}
.sg-label{font-weight:700;font-size:15px}.sg-sub{font-size:12.5px;color:#6B7F93;direction:rtl;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.suggest-item.is-community .sg-label::before{content:"קהילה · ";font-weight:400;color:#7A5300}
.suggest-item.is-community .sg-sub{display:none}
.suggest-list mark{background:#FFF1C9;color:inherit;border-radius:3px;padding:0 1px}
.suggest-empty{padding:8px 10px;font-size:13px;color:#6B7F93}
@media(max-width:640px){.suggest-wrap{flex:1 1 100%}}

/* Reminders by kind (7.10.2026). */
.rk-tag{display:inline-block;margin:0 0 2px 4px;padding:1px 8px;border-radius:999px;background:#E6F2EA;color:#2f6b44;font-size:12px;font-weight:600;white-space:nowrap}
.rk-note{display:block;font-size:12px;color:#8a5a00}
.rk-warn{margin:0 0 6px;padding:6px 8px;background:#FFF6E0;border-radius:8px;font-size:12.5px;color:#6b4a00}
.rk-edit .role-form label{display:grid;grid-template-columns:auto 1fr;column-gap:6px;align-items:start}
.rk-edit .role-form label small{grid-column:2;font-size:11.5px;color:#6B7F93}
.member-remind{display:flex;flex-wrap:wrap;align-items:center;gap:6px;width:100%;font-size:13px}
.member-remind .rk-label{color:#6B7F93}
.remind-kinds{border:0;padding:0;margin:10px 0;display:grid;gap:8px}
.remind-kinds legend{font-weight:700;margin-bottom:4px;padding:0}
.remind-kinds label{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:start;padding:10px 12px;border:1px solid #DCE6F0;border-radius:12px;background:#fff;cursor:pointer}
.remind-kinds label small{grid-column:2;color:#6B7F93;font-size:13px}
.remind-kinds input{margin-top:3px;width:18px;height:18px}

/* The reminders window and the two-week banner (7.10.2026). */
.remind-offer .remind-kinds{margin:10px 0 12px}
.mine-banner{position:fixed;z-index:40;inset-inline:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:560px;margin:0 auto;display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;background:#193A5B;color:#fff;border-radius:999px;box-shadow:0 8px 24px rgba(25,58,91,.28);font-size:14px}
.mine-banner[hidden]{display:none}
.mine-banner span{flex:1;min-width:0}
.mine-banner a{color:#FFE9A8;font-weight:700;white-space:nowrap;text-decoration:none}
.mine-banner button{flex:0 0 auto;width:30px;height:30px;border:0;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;font-size:18px;line-height:1;cursor:pointer}
@media(max-width:420px){.mine-banner{font-size:13px}}
/* The users filter with the suggestions box and the reminders filter (7.10.2026). */
.admin-filter{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr)) auto}
.admin-filter .suggest-wrap{min-width:0}
.admin-count a{color:#2C608D}
@media(max-width:820px){.admin-filter{grid-template-columns:1fr 1fr}.admin-filter .suggest-wrap{grid-column:1/-1}}

/* Phone and email, and "לא מצליח להיכנס?" (7.10.2026). */
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
.contact-fields label{display:grid;gap:4px;font-size:13px;color:#435B72}
.contact-fields input{min-height:42px;padding:8px 10px;border:1px solid #CFDCE8;border-radius:10px;font:inherit;font-size:15px;background:#fff}
@media(max-width:560px){.contact-fields{grid-template-columns:1fr}}
.contact-edit{margin-top:4px}.contact-edit .role-form label{display:grid;gap:3px}.contact-edit input{min-height:38px;padding:6px 8px;border:1px solid #CFDCE8;border-radius:8px;font:inherit}
.login-help-box{margin:8px 0;font-size:14px;color:#435B72}
.login-help-box summary{cursor:pointer;color:#2C608D;font-weight:600}
.login-help-box ul{margin:8px 0;padding-inline-start:18px;display:grid;gap:6px}
.login-help-box p{margin:0;font-size:13px}
.person-link{color:inherit;text-decoration:underline;text-decoration-color:rgba(44,96,141,.35);text-underline-offset:3px}.person-link:hover{color:#2C608D;text-decoration-color:currentColor}

/* A learner's public card (7.10.2026). */
.pc-count{font-size:17px;color:#435B72}
.pc-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-width:620px;margin-inline:auto}
.pc-list li{padding:12px 14px;background:#fff;border:1px solid #DCE6F0;border-radius:12px;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}
.pc-week{width:100%;font-size:12.5px;color:#6B7F93}
.pc-list small{color:#6B7F93}
.pc-done{color:#2f7d4f;font-size:13px;font-weight:600}
.hide-public{display:flex;gap:8px;align-items:center;margin:8px 0;font-size:14px}.hide-public small{color:#6B7F93}
/* Edit boxes: save, and a small "ביטול" that closes without saving (7.10.2026). */
.edit-actions{display:flex;align-items:center;gap:12px;margin-top:6px}
.btn-cancel{border:0;background:none;padding:6px 4px;color:#6B7F93;font:inherit;font-size:13.5px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.btn-cancel:hover{color:#193A5B}
.member-edit>summary{display:inline-flex;align-items:center;min-height:32px;padding:2px 12px;border:1px solid #DCE6F0;border-radius:999px;background:#fff;color:#2C608D;font-size:13.5px;font-weight:600;cursor:pointer;list-style:none}
.member-edit>summary::-webkit-details-marker{display:none}
.member-edit[open]>summary{background:#EEF4FA}
.users-table .u-n{color:#8A9BAD;font-size:13px;width:36px}@media(max-width:700px){.users-table .u-n{display:none}}

/* "דיווח על תקלה" (7.10.2026). */
.report-form{display:grid;gap:12px;max-width:560px;margin:0 auto}
.report-form label{display:grid;gap:6px;font-weight:600;color:#193A5B}
.report-form label small{font-weight:400;color:#6B7F93}
.report-form textarea,.report-form input{padding:10px 12px;border:1px solid #CFDCE8;border-radius:10px;font:inherit;font-size:16px;background:#fff}
.report-form .hp{position:absolute;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}
.tab-badge{display:inline-block;min-width:18px;padding:0 6px;border-radius:999px;background:#B3261E;color:#fff;font-size:11.5px;line-height:18px;text-align:center}
.pr-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px}
.pr-card{padding:14px 16px;background:#fff;border:1px solid #DCE6F0;border-radius:14px}
.pr-card.is-done{opacity:.6}
.pr-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12.5px;color:#6B7F93}
.pr-meta a{color:#2C608D}
.pr-body{margin:8px 0;white-space:pre-wrap;color:#193A5B;font-size:15.5px}
.pr-contact{margin:0 0 6px;font-size:13.5px;color:#435B72}
.no-gabbai dd{color:#8a5a00;font-size:14px!important}

.people-page .admin-section-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:12px 0}

/* "עוד לא בחרו השבוע" (7.10.2026). */
.not-yet-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.not-yet-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;background:#fff;border:1px solid #DCE6F0;border-radius:12px}
.not-yet-list li small{color:#6B7F93;font-size:12.5px;flex:1}
.not-yet-list .wa-btn{min-height:34px;padding:4px 14px;margin:0;width:auto;font-size:14px}

/* "קהילה חדשה" (7.10.2026). */
.new-community-form{display:grid;gap:14px;max-width:620px}
.new-community-form>label{display:grid;gap:6px;font-weight:600;color:#193A5B}
.new-community-form>label small,.new-community-form legend small{font-weight:400;color:#6B7F93}
.new-community-form input[name=name]{min-height:44px;padding:8px 12px;border:1px solid #CFDCE8;border-radius:10px;font:inherit;font-size:16px}
.slug-field{display:flex;align-items:center;gap:6px;direction:ltr;justify-content:flex-end}
.slug-field input{flex:1;min-height:44px;padding:8px 12px;border:1px solid #CFDCE8;border-radius:10px;font:inherit;font-size:16px}
.new-community-form fieldset{border:0;padding:0;margin:0}
.new-community-form legend{font-weight:700;color:#193A5B;margin-bottom:6px;padding:0}
.learner-streak{display:inline-block;margin:6px auto 0;padding:4px 14px;border-radius:999px;background:#FBF6EA;border:1px solid #EAD9AE;color:#5b4210;font-size:14px}

/* Weekly bars on the community cards (7.10.2026). */
.comm-spark{margin:10px 0 4px}
.spark-bars{display:flex;align-items:flex-end;gap:4px;height:36px}
.spark-bar{flex:1;min-height:3px;border-radius:3px 3px 0 0;background:#9DB7D1}
.spark-bar:last-child{background:#2C608D}
.spark-bar.sh0{height:8%}.spark-bar.sh1{height:10%}.spark-bar.sh2{height:20%}.spark-bar.sh3{height:30%}.spark-bar.sh4{height:40%}.spark-bar.sh5{height:50%}.spark-bar.sh6{height:60%}.spark-bar.sh7{height:70%}.spark-bar.sh8{height:80%}.spark-bar.sh9{height:90%}.spark-bar.sh10{height:100%}
.comm-spark small{display:block;margin-top:4px;color:#6B7F93;font-size:12px}.comm-spark .up{color:#2f7d4f}.comm-spark .down{color:#B3261E}

/* Another week, read-only (7.10.2026). */
.week-nav{display:flex;justify-content:space-between;align-items:center;gap:8px;max-width:620px;margin:10px auto;font-size:14.5px}
.week-nav a{color:#2C608D;font-weight:600;text-decoration:none;padding:6px 10px;border-radius:999px}
.week-nav a:hover{background:#EEF4FA}
.board-week-nav{margin:0 auto 6px}
.week-kind{margin:6px 0 0;color:#435B72;font-size:14.5px}
.week-list{list-style:none;margin:0 auto;padding:0;max-width:620px;display:grid;gap:6px}
.week-section{margin:12px 0 2px;font-weight:700;color:#2C608D;font-size:14px}
.week-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;background:#fff;border:1px solid #DCE6F0;border-radius:12px}
.week-row small{color:#6B7F93}
.week-links{margin-top:4px;display:flex;flex-wrap:wrap;gap:10px;font-size:14px}
.week-who{color:#193A5B;font-size:14px}.week-who.is-free{color:#8A9BAD}
.policy-page{max-width:720px;margin:0 auto;line-height:1.75}.policy-home{display:inline-block;margin:6px 0 4px;color:#2C608D;font-weight:600;text-decoration:none;font-size:14px}.policy-page h2{font-size:19px;color:#193A5B;margin:22px 0 6px}
/* Weekly bars, warmer (8.10.2026): numbers on the bars, parsha under them, this week blue, the best week gold. */
.comm-spark .spark-bars{height:auto;align-items:stretch;gap:6px}
.spark-col{flex:1;display:grid;grid-template-rows:16px 44px auto;align-items:end;justify-items:center;min-width:0}
.spark-col>b{font-size:11.5px;color:#435B72;font-weight:700;line-height:16px}
.spark-col .spark-bar{width:100%;align-self:end;background:#C9D9E8;border-radius:5px 5px 0 0}
.spark-col.is-now .spark-bar{background:#2C608D}
.spark-col.is-best .spark-bar{background:linear-gradient(180deg,#D9A93A,#B07D14)}
.spark-col.is-now>b{color:#193A5B}
.spark-col>small{display:block;margin-top:4px;font-size:10.5px;color:#6B7F93;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.spark-trend{margin:6px 0 0;font-size:12.5px;font-weight:600}.spark-trend.up{color:#2f7d4f}.spark-trend.down{color:#B3261E}
.admin-v2 .users-table .u-contact span{display:block}.people-page .sichot-head{margin-bottom:6px}
@media(max-width:820px){.admin-v2 .users-table td.u-n{display:none}}
@media(max-width:560px){.admin-v2 .admin-site-nav{width:100%;box-sizing:border-box;display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.admin-v2 .admin-site-nav a{padding:8px 6px;text-align:center}}.pr-meta a{word-break:break-all}.admin-v2{overflow-wrap:anywhere}
.profile-form label.hide-public{display:flex!important;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;font-weight:600}.profile-form label.hide-public input{width:20px;height:20px;min-height:0;margin:0;flex:0 0 auto}.profile-form label.hide-public small{flex-basis:100%;font-weight:400}

/* A learner's own list (8.10.2026). */
.my-print-link{margin:8px 0 0}.my-print-link .sichot-btn{width:auto;min-height:36px;padding:6px 16px;font-size:14px}
.my-table td small{display:block;font-size:.82em;color:#5f7488}
.my-mother{font-size:.55em;font-weight:500;color:#5f7488}

.req-box{margin:14px 0;padding:14px;background:#FBF6EA;border:1px solid #EAD9AE;border-radius:16px}.req-box h2{margin:0 0 8px;font-size:17px;color:#5b4210}
.report-form{text-align:start}.report-form label small{display:inline}
/* Date boxes, in Hebrew (8.10.2026). */
.rebbe-filter .sichot-row{align-items:flex-start;gap:12px}
.rebbe-filter label{display:grid;gap:6px;font-weight:600;color:#193A5B;font-size:14px;flex:1 1 200px}
.rebbe-filter input[type=date]{min-height:46px;padding:8px 12px;border:1px solid #CFDCE8;border-radius:12px;background:#fff;font:inherit;font-size:16px;color:#193A5B;direction:rtl}
.date-he{display:block;font-size:13px;font-weight:600;color:#7A5300;min-height:18px;line-height:1.4}
.rebbe-filter .sichot-btn{align-self:flex-end;margin-top:22px}
@media print{.date-he{display:none}}

/* Several at once (8.10.2026). */
.bulk-done{position:sticky;bottom:10px;z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:12px 0;padding:10px 14px;background:#fff;border:1px solid #DCE6F0;border-radius:14px;box-shadow:0 6px 18px rgba(25,58,91,.12)}
.bulk-done.is-active{border-color:#2C608D}
.bulk-done .bulk-hint{flex-basis:100%;font-size:13.5px;color:#435B72}
.bulk-done label{display:flex;align-items:center;gap:6px;font-size:14px}
.bulk-done .sichot-btn{width:auto;margin:0 auto 0 0;min-height:38px;padding:6px 16px}
.bulk-done .sichot-btn:disabled{opacity:.45}
.learner-list li{position:relative}
.bulk-pick{width:20px;height:20px;margin:4px 0 0 8px;flex:0 0 auto;accent-color:#2C608D}

/* The year summary, redesigned (8.10.2026). */
.year-kpis{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:10px;max-width:920px;margin:6px auto 14px}
.year-kpis .kpi{padding:14px 16px}
.year-weeks{max-width:920px;margin:0 auto 16px;padding:14px 16px;background:#fff;border:1px solid #DCE6F0;border-radius:16px}
.year-weeks h2{margin:0 0 10px;font-size:15px;color:#193A5B}
.year-weeks-bars{display:flex;align-items:stretch;gap:4px;overflow-x:auto;padding-bottom:4px}
.year-weeks-bars .spark-col{min-width:34px;grid-template-rows:16px 90px auto}
.year-controls{display:grid;gap:8px;justify-items:center;margin:0 auto 14px}
.year-years a,.year-angles a{border-radius:10px}
.year-angles{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:2px;padding:4px;background:#E9F0F7;border-radius:14px}
.year-angles a{border:0!important;background:transparent!important;color:#2C608D!important;padding:8px 16px!important}
.year-angles a[aria-current="true"]{background:#fff!important;color:#193A5B!important;box-shadow:0 1px 3px rgba(25,58,91,.15)}
.year-table .of{font-size:12px;color:#6B7F93;font-weight:400}
.year-rank li:nth-child(-n+3) a{font-weight:700}
@media(max-width:700px){.year-kpis{grid-template-columns:1fr 1fr}.year-kpis .kpi-wide{grid-column:1/-1}.year-angles a{padding:7px 10px!important;font-size:14px}}
@media(max-width:700px){
  .year-kpis{grid-template-columns:repeat(3,1fr)}.year-kpis .kpi{padding:10px 12px}.year-kpis .kpi b{font-size:22px}
  .year-rank li{grid-template-columns:1.6em minmax(0,1fr) auto!important;row-gap:4px}
  .year-rank li .sichot-bar{display:block!important;grid-column:2/-1;grid-row:2;width:100%;height:8px}
  .year-rank li small{grid-column:2/-1;grid-row:3;white-space:nowrap}
}

/* Needs attention, at the top of the site administration (9.10.2026). */
.admin-attention{max-width:1100px;margin:0 auto 16px;padding:12px 16px;background:#FFF8E6;border:1px solid #F0D58C;border-radius:14px}
.admin-attention h2{margin:0 0 6px;font-size:15px;color:#7A5300}
.admin-attention ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.admin-attention li{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:14.5px}
.admin-attention li>a:first-child{font-weight:700;color:#193A5B}
.admin-attention li span{color:#6B4A00}
.admin-attention .att-act{margin-inline-start:auto;font-size:13.5px;color:#2C608D}

/* The letter before Shabbat Bereshit (9.10.2026). */
.bereshit-letter{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#0f243a66;padding:16px}
.bereshit-letter[hidden]{display:none}
.bereshit-letter .letter-card{width:100%;max-width:460px;max-height:calc(100vh - 32px);overflow:auto;background:#fff;border:1px solid #d6e3f0;border-top:5px solid #B08A3E;border-radius:18px;box-shadow:0 10px 40px #1b3a5b40;padding:22px 22px 16px;font-family:'Frank Ruhl Libre',serif;animation:sheet-in .35s ease-out both}
.bereshit-letter .letter-bh{margin:0;text-align:right;font-size:13px;color:#6B7F93}
.bereshit-letter h2{text-align:center;font-size:24px;color:#193A5B;margin:2px 0 12px}
.bereshit-letter p{font-size:16.5px;line-height:1.6;color:#2b3f53;margin:0 0 10px}
.bereshit-letter .letter-note{background:#EEF4FA;border-radius:12px;padding:10px 12px;font-family:Assistant,sans-serif;font-size:15.5px}
.bereshit-letter .letter-note b{color:#193A5B}
.bereshit-letter .letter-blessing{text-align:center;font-weight:700;color:#7A5300}
.bereshit-letter .letter-actions{display:flex;justify-content:center;margin-top:6px}

/* The free-only view says so plainly (10.10.2026). */
.board-toggle.is-filtered{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 14px;background:#FFF8E6;border:1px solid #F0D58C;border-radius:12px;font-size:15px;color:#4a3a10}
.board-toggle.is-filtered a{font-weight:700;color:#1f4f80;white-space:nowrap}

/* Who took the talk stands out (owner, 10.10.2026): the names in a soft blue tag, bold and a little larger; mine in green. */
.community-board .sichot-taken-by{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:15px;color:#2f7a52}
.community-board .sichot-taken-by b{display:inline-block;padding:3px 11px;border-radius:999px;background:#E3EEF9;border:1px solid #C9DDF0;color:#173f66;font-weight:700;line-height:1.45}
.community-board .sichot-taken-by.is-me b{background:#E4F3EA;border-color:#BFE0CC;color:#24563A}
.community-board .sichot-taken-by .person-link{text-decoration:none}
.community-board .sichot-taken-by .person-link:hover{text-decoration:underline}
@media(max-width:700px){.community-board .sichot-taken-by{font-size:14.5px}}

/* "הקהילה נפתחה" after the request form (10.10.2026). */
.opened-box{display:grid;gap:10px;padding:18px;background:#fff;border:1px solid #DCE6F0;border-radius:16px;text-align:center}
.opened-box p{margin:0}
.opened-box .opened-link{font-size:19px;font-weight:700}
.opened-box .opened-link a{color:#1f4f80}

/* The mother's name filled in place on "אנשי קשר", or asked for in WhatsApp (11.10.2026). */
.mother-inline{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.mother-inline input{min-width:0;width:9.5em;min-height:34px;padding:4px 8px;border:1px dashed #C9A54A;border-radius:8px;background:#FFFBEF;font-size:14px}
.mother-inline .sichot-btn{width:auto;min-height:34px;padding:4px 10px;font-size:13.5px;margin:0}
.mother-ask{display:inline-block;margin-top:4px;font-size:13px;color:#1f7a4a}
.mother-missing{color:#8a5a00}
.assign-form .assign-mother{flex:1 1 100%}

/* Where people got stuck, in the site administration (11.10.2026). */
.admin-stuck{max-width:1100px;margin:0 auto 16px;padding:10px 16px;background:#fff;border:1px solid #DCE6F0;border-radius:14px}
.admin-stuck summary{cursor:pointer;font-weight:700;color:#193A5B}
.admin-stuck ul{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:6px;font-size:14.5px}
.admin-stuck small{color:#6B7F93}

/* The raffle for a flight to the Rebbe, for gabbaim (11.10.2026). */
.raffle-pop{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#0f243a66;padding:16px}
.raffle-pop[hidden],.raffle-bar[hidden]{display:none}
.raffle-card{width:100%;max-width:440px;max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-top:5px solid #B08A3E;border-radius:18px;box-shadow:0 10px 40px #1b3a5b40;padding:16px 20px 16px;font-family:'Frank Ruhl Libre',serif;color:#2b3f53;animation:sheet-in .35s ease-out both}
.raffle-card .letter-bh{margin:0;text-align:right;font-size:13px;color:#6B7F93}
.raffle-art{display:block;width:100%;height:auto;margin:4px 0 6px}
.raffle-kicker{margin:0;text-align:center;font-size:13px;color:#7A5300;font-family:Assistant,sans-serif}
.raffle-card h2{margin:2px 0 10px;text-align:center;font-size:24px;color:#193A5B}
.raffle-card p{margin:0 0 10px;font-size:16.5px;line-height:1.6}
.raffle-rules{background:#EEF4FA;border-radius:12px;padding:10px 12px;margin:0 0 10px;font-family:Assistant,sans-serif}
.raffle-rules p{font-size:15.5px;margin:0 0 6px}.raffle-rules p:last-child{margin:0}
.raffle-rules b{color:#193A5B}
.raffle-bless{text-align:center;font-weight:700;color:#7A5300}
.raffle-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.raffle-actions .sichot-btn{width:auto;margin:0}
.raffle-bar{position:fixed;inset:auto 0 0 0;z-index:40;display:flex;justify-content:center;padding:0 12px calc(10px + env(safe-area-inset-bottom,0px));pointer-events:none}
.raffle-bar button{pointer-events:auto;max-width:520px;width:100%;border:1px solid #E2C98A;background:#FFF8E6;color:#5a3f00;border-radius:14px;padding:10px 14px;font:600 14.5px Assistant,sans-serif;box-shadow:0 4px 16px #1b3a5b26;cursor:pointer}
.has-raffle-bar{padding-bottom:78px}
.raffle-card .raffle-when{margin:0 0 12px;text-align:center;font-size:17px;font-weight:700;color:#7A5300;background:#FFF8E6;border:1px solid #F0D58C;border-radius:10px;padding:6px 10px}

/* "חיפוש בחלוקות" clearer (owner, 11.10.2026): one big search line, the main filters beside it, results as number cards,
   "סיכום לפי" as a switch, the help line small. */
.reports .report-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;align-items:end;padding:16px 18px;background:#fff;border:1px solid #DCE6F0;border-radius:16px}
.reports .report-filters .report-search{grid-column:1/-1;font-size:15px}
.reports .report-filters .report-search input{min-height:50px;font-size:17px;padding:10px 14px;border:1.5px solid #9DB8D3;border-radius:12px;background:#F7FAFD}
.reports .report-filters .report-search input:focus{border-color:#1f4f80;background:#fff}
.reports .report-filters label{font-size:14px;color:#435B72}
.reports .report-filters .sichot-btn{grid-column:1/-1;justify-self:start;width:auto;min-width:180px;margin:0}
.reports .report-more{margin:4px 0 0}
.reports .report-more>summary{cursor:pointer;color:#1f4f80;font-weight:600;padding:6px 0}
.report-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 8px}
.report-kpis .kpi{background:#fff;border:1px solid #DCE6F0;border-radius:14px;padding:12px 14px;text-align:center}
.report-kpis .kpi b{display:block;font-size:26px;color:#193A5B}
.report-kpis .kpi-label{font-size:13.5px;color:#6B7F93}
.reports .report-help{font-size:13px;color:#6B7F93;margin:4px 0 14px}
.report-groupby{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:6px;background:#E9F0F7;border-radius:14px;margin:6px 0 12px}
.report-groupby strong{font-size:14px;color:#435B72;padding:0 6px}
.report-groupby .sichot-chip{border:0!important;background:transparent!important;color:#2C608D!important;padding:7px 14px!important;border-radius:10px}
.report-groupby .sichot-chip.is-on{background:#fff!important;color:#193A5B!important;box-shadow:0 1px 3px rgba(25,58,91,.15);font-weight:700}
.report-groupby .sichot-link{margin-inline-start:auto;font-size:14px}
@media(max-width:700px){.report-kpis .kpi b{font-size:22px}.report-groupby .sichot-link{margin-inline-start:0;flex-basis:100%;padding:4px 6px}}
.report-groupby .sichot-chip{text-decoration:none!important}
.assign-form .assign-contact{flex:1 1 45%}
/* The gabbai's four tabs (11.10.2026): a small link back to the board, the tabs, and the reports sub-menu. */
.nav-to-board{display:inline-block;margin:8px 0 0;font-size:14px;color:var(--sh-blue);text-decoration:none;font-weight:600}
.nav-to-board::before{content:"→ "}
.nav-to-board:hover{text-decoration:underline}
@media (max-width:600px){ nav.community-nav.is-gabbai{grid-template-columns:repeat(4,1fr)} nav.community-nav.is-gabbai:has(> a:nth-child(5)){grid-template-columns:repeat(3,1fr)} }
.reports-subnav{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:12px 0 4px}
.reports-subnav a{padding:7px 14px;border:1px solid var(--sh-line);border-radius:999px;color:var(--sh-text-2);text-decoration:none;font-size:14px;font-weight:600;background:#fff}
.reports-subnav a[aria-current]{border-color:var(--sh-blue);color:var(--sh-blue);background:var(--sh-paper-2,#EAF0F6)}
@media print{.reports-subnav,.nav-to-board{display:none}}
.screen-news{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0;padding:10px 14px;border-radius:10px;background:#FFF8E1;border:1px solid #E9D48A;color:#5b4a12;font-size:14.5px}
.screen-news-x{border:0;background:none;font-size:20px;line-height:1;color:inherit;cursor:pointer;min-width:32px;min-height:32px}
.dash-tools a.dash-print{background:var(--sh-blue-deep);color:#fff;border-color:var(--sh-blue-deep)}
.admin-sub{font-size:17px;margin:22px 0 8px}
.admin-stuck-list{margin:0;padding:0 18px 0 0;line-height:1.8}
.admin-stuck-list small{color:var(--sh-text-2)}
/* Status picture (12.10.2026): 9:16, one big number, a series of colours. */
.status-page{max-width:520px}
.status-colors{display:flex;justify-content:center;gap:10px;margin:6px 0 14px}
.status-colors .sw{width:34px;height:34px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px var(--sh-line)}
.status-colors .sw[aria-current]{box-shadow:0 0 0 3px var(--sh-blue)}
.sw-blue,.st-blue{background:linear-gradient(170deg,#1d4570 0%,#0f2740 100%)}
.sw-teal,.st-teal{background:linear-gradient(170deg,#11606b 0%,#0a3b44 100%)}
.sw-wine,.st-wine{background:linear-gradient(170deg,#7d2537 0%,#4a1220 100%)}
.sw-green,.st-green{background:linear-gradient(170deg,#2f6b45 0%,#173d27 100%)}
.sw-gold,.st-gold{background:linear-gradient(170deg,#8a6a1f 0%,#4d3a0e 100%)}
.sw-violet,.st-violet{background:linear-gradient(170deg,#4f3a85 0%,#2a1d4f 100%)}
.status-card{position:relative;width:min(100%,405px);aspect-ratio:9/16;margin:0 auto;border-radius:18px;overflow:hidden;color:#fff;display:flex;flex-direction:column;align-items:center;text-align:center;padding:34px 26px 30px;box-sizing:border-box;box-shadow:0 10px 30px rgba(0,0,0,.18);direction:rtl}
.status-card .st-bh{position:absolute;top:12px;right:16px;font-size:13px;opacity:.85}
.status-card .st-comm{font-size:16px;opacity:.88;margin-top:8px}
.status-card .st-par{font-size:36px;font-weight:700;margin:14px 0 0;line-height:1.2}
.status-card .st-big{font-size:120px;font-weight:800;line-height:1;margin-top:auto;color:#F3D27A}
.status-card.st-gold .st-big{color:#fff}
.status-card .st-label{font-size:22px;font-weight:700;margin-top:10px;line-height:1.3}
.status-card .st-bar{width:82%;height:12px;border-radius:8px;background:rgba(255,255,255,.2);margin:26px 0 8px;overflow:hidden;display:flex}
.status-card .st-bar span{display:block;height:100%;background:#F3D27A;border-radius:8px}
.status-card.st-gold .st-bar span{background:#fff}
.status-card .st-sub{font-size:14px;opacity:.88}
.status-card .st-line{font-size:18px;line-height:1.55;margin-top:auto;opacity:.95;max-width:90%}
.status-card .st-cta{margin-top:18px;background:#fff;color:#193A5B;border-radius:999px;padding:11px 24px;font-weight:700;font-size:17px}
.status-card .st-url{font-size:13px;opacity:.78;margin-top:10px;direction:ltr}
.st-bar .p0{width:0}.st-bar .p1{width:5%}.st-bar .p2{width:10%}.st-bar .p3{width:15%}.st-bar .p4{width:20%}.st-bar .p5{width:25%}.st-bar .p6{width:30%}.st-bar .p7{width:35%}.st-bar .p8{width:40%}.st-bar .p9{width:45%}.st-bar .p10{width:50%}.st-bar .p11{width:55%}.st-bar .p12{width:60%}.st-bar .p13{width:65%}.st-bar .p14{width:70%}.st-bar .p15{width:75%}.st-bar .p16{width:80%}.st-bar .p17{width:85%}.st-bar .p18{width:90%}.st-bar .p19{width:95%}.st-bar .p20{width:100%}
.status-how{font-size:14px;color:var(--sh-text-2);text-align:center;margin:14px 0 4px}
.img-render-host.is-status{width:405px;padding:0;background:transparent}
.img-render-host.is-status .status-card{width:405px!important;height:720px;border-radius:0;box-shadow:none}
.board-week-nav .nav-status{font-weight:600}
.status-link-row{margin:8px 0 0}
.status-refs{margin:12px 0;padding:10px 14px;border:1px solid var(--sh-line);border-radius:10px;background:#fff}
.status-refs h3{font-size:15px;margin:0 0 6px}
.status-refs ul{margin:0;padding:0 18px 0 0;line-height:1.8;font-size:14.5px}
/* The week buttons under the board head (owner, 12.10.2026): real buttons, and "שיתוף בסטטוס" plain to see. */
.board-week-nav{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"share share" "prev next";gap:8px;max-width:520px;margin:6px auto 10px}
.board-week-nav a{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px 12px;border:1px solid #c9d6e3;border-radius:12px;background:#fff;color:#1d4570;font-weight:700;font-size:15px;text-decoration:none}
.board-week-nav a:hover{background:#EEF4FA}
.board-week-nav a:first-child{grid-area:prev}
.board-week-nav a:last-child{grid-area:next}
.board-week-nav a.nav-status{grid-area:share;background:linear-gradient(170deg,#1d4570 0%,#0f2740 100%);color:#fff;border-color:transparent;font-size:16px;min-height:48px}
.board-week-nav a.nav-status:hover{filter:brightness(1.1)}
.board-week-nav .nav-status svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.board-week-nav:not(:has(.nav-status)){grid-template-areas:"prev next"}
/* The empty sheet to fill by hand (12.10.2026): copper on cream, like the community sheet. */
.bulletin-blank .blank-head{text-align:center;margin-bottom:18px}
.bulletin-blank .blank-head h1{font-family:"Frank Ruhl Libre",serif;font-size:30px;color:#7a4a2a;margin:4px 0 12px}
.bulletin-blank .blank-week{max-width:70%;margin:0 auto}
.bulletin-blank .blank-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.bulletin-blank .blank-section{margin-bottom:16px}
.bulletin-blank .blank-section h3{font-family:"Frank Ruhl Libre",serif;font-size:19px;color:#7a4a2a;margin:0 0 8px;padding-bottom:4px;border-bottom:2px solid #ad815f}
.bulletin-blank .blank-row{display:flex;align-items:flex-end;gap:8px;min-height:30px;font-size:15px;color:#5b3a22}
.bulletin-blank .blank-row span{white-space:nowrap;font-weight:600}
.bulletin-blank .blank-row i{flex:1;border-bottom:1.5px dotted #b99777;margin-bottom:5px}
.bulletin-blank .blank-line{height:30px;border-bottom:1.5px dotted #b99777}
@media(max-width:600px){.bulletin-blank .blank-grid{grid-template-columns:1fr;gap:0}}
/* Weekly times (12.10.2026): striped rows, the labels in copper. */
.zmanim-paper .zp-table tbody tr:nth-child(even) td,.zmanim-paper .zp-table tbody tr:nth-child(even) th{background:#faf5ee}
.zmanim-paper .zp-table tbody th{color:#7a4a2a;font-weight:700}
@media print{.zmanim-paper .zp-table tbody tr:nth-child(even) td,.zmanim-paper .zp-table tbody tr:nth-child(even) th{background:#faf5ee!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
/* Owner's activity feed (12.10.2026). */
.act-filters{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.act-filters a{padding:6px 12px;border:1px solid var(--sh-line);border-radius:999px;background:#fff;color:var(--sh-text-2);text-decoration:none;font-weight:600;font-size:14px}
.act-filters a[aria-current]{background:var(--sh-blue-deep);color:#fff;border-color:transparent}
.act-community{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;font-size:14px}
.act-feed{list-style:none;margin:0;padding:0;border:1px solid var(--sh-line);border-radius:12px;background:#fff;overflow:hidden}
.act-feed li{display:grid;grid-template-columns:auto auto 1fr auto;gap:10px;align-items:baseline;padding:8px 12px;border-bottom:1px solid #eef1f5;font-size:14.5px}
.act-feed li:last-child{border-bottom:0}
.act-feed time{color:var(--sh-text-2);font-size:13px;white-space:nowrap;direction:ltr}
.act-feed .act-kind{font-weight:700;white-space:nowrap;padding:1px 8px;border-radius:999px;font-size:12.5px;background:#EEF4FA;color:#1d4570}
.act-join .act-kind{background:#E8F5EC;color:#1f5130}.act-done .act-kind{background:#FFF6DD;color:#6b5210}
.act-gabbai .act-kind{background:#F1ECF8;color:#4f3a85}.act-stuck .act-kind{background:#FDECEC;color:#8a2a2a}.act-status .act-kind{background:#E6F4F5;color:#0a3b44}
.act-feed .act-comm{color:var(--sh-text-2);font-size:13px;text-decoration:none;white-space:nowrap}
@media(max-width:600px){.act-feed li{grid-template-columns:auto 1fr;grid-template-areas:"time kind" "body body" "comm comm"}.act-feed time{grid-area:time}.act-feed .act-kind{grid-area:kind;justify-self:start}.act-feed .act-body{grid-area:body}.act-feed .act-comm{grid-area:comm}}
.act-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:6px}
.act-kpis .kpi{background:#fff;border:1px solid var(--sh-line);border-radius:12px;padding:10px;text-align:center}
.act-kpis .kpi b{display:block;font-size:26px;color:var(--sh-blue-deep)}
.act-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--sh-line);border-radius:12px;overflow:hidden;font-size:14.5px;margin-bottom:8px}
.act-table th,.act-table td{padding:7px 10px;border-bottom:1px solid #eef1f5;text-align:right}
.act-table th{background:#f6f8fb;font-size:13px;color:var(--sh-text-2)}
@media(max-width:600px){.act-kpis{grid-template-columns:repeat(3,1fr)}.act-kpis .kpi b{font-size:22px}}
/* Permissions (12.10.2026). */
.perm-list{display:grid;gap:10px;margin-bottom:12px}
.perm-card{background:#fff;border:1px solid var(--sh-line);border-radius:12px;padding:12px 14px}
.perm-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.perm-role{font-size:12.5px;font-weight:700;padding:1px 9px;border-radius:999px;background:#EEF4FA;color:#1d4570}
.perm-head small{color:var(--sh-text-2)}
.perm-scope{margin:6px 0 0;color:var(--sh-text-2);font-size:14px}
.perm-mode{border:0;padding:0;margin:8px 0;display:flex;flex-wrap:wrap;gap:14px;font-size:14.5px}
.perm-comms{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 12px;font-size:14px;margin-bottom:10px}
.perm-g{display:block}
.perm-g small{color:var(--sh-text-2)}
/* "סיימתי" stands out for the learner (Chanoch, 12.10.2026: "להדגיש את הסימון אחרי שלמדו"). */
.sichot-btn.done-cta,.pill.todo.done-cta{background:#1f7a45;color:#fff;border:1px solid #1f7a45;font-weight:800;box-shadow:0 2px 8px rgba(31,122,69,.28)}
.sichot-btn.done-cta:hover,.pill.todo.done-cta:hover{background:#17663a}
/* "בכל הקהילות שלי" in the personal area (13.10.2026). */
.learner-all{margin:0 0 16px}
.learner-all h2{font:700 17px var(--sh-sans);color:var(--sh-blue-deep);margin:0 0 8px}
.learner-all-list{list-style:none;margin:8px 0 0;padding:0;border:1px solid var(--sh-line);border-radius:12px;background:#fff}
.learner-all-list li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 12px;font-size:15.5px}
.learner-all-list li+li{border-top:1px solid var(--sh-line)}
.learner-all-list li.is-here{background:#EEF4FA}
.learner-all-list a{font-weight:700;color:var(--sh-blue-deep)}
.learner-all-list span{color:#4f6377;white-space:nowrap;font-variant-numeric:tabular-nums}
/* The learners' raffle (13.10.2026): same card as the ambassadors', with a close ×, progress dots and the prize in small. */
.raffle-pop.is-learners .raffle-card{position:relative}
.raffle-x{position:absolute;top:8px;left:8px;width:36px;height:36px;border:0;border-radius:50%;background:#EEF4FA;color:#193A5B;font:700 22px/1 Assistant,sans-serif;cursor:pointer}
.raffle-x:hover{background:#dbe7f3}
.raffle-progress{background:#EEF4FA;border-radius:12px;padding:10px 12px;margin:0 0 10px;text-align:center;font-family:Assistant,sans-serif}
.raffle-progress[hidden]{display:none}
.raffle-progress p{margin:0 0 8px;font-size:15.5px}
.raffle-dots{display:flex;justify-content:center;gap:5px;flex-wrap:wrap}
.raffle-dots span{width:18px;height:18px;border-radius:50%;border:2px solid #9fb6cc;background:#fff}
.raffle-dots span.is-done{background:#2e7d4f;border-color:#2e7d4f}
.raffle-dots span.is-now{border-color:#B08A3E}
.raffle-card .raffle-prize{margin:0 0 12px;text-align:center;font:600 13.5px Assistant,sans-serif;color:#6B7F93}
.raffle-actions a.sichot-btn{background:var(--sh-blue-deep,#193A5B);color:#fff;border-color:transparent}
/* The learners' raffle, very readable (owner, 13.10.2026): sans-serif body, larger, darker; a small WhatsApp share link. */
.raffle-pop.is-learners .raffle-card{font-family:Assistant,sans-serif;color:#13283d}
.raffle-pop.is-learners .raffle-card h2{font-family:'Frank Ruhl Libre',serif;font-size:28px;margin:2px 0 12px}
.raffle-pop.is-learners .raffle-card p{font-size:18.5px;line-height:1.55;font-weight:500}
.raffle-pop.is-learners .raffle-card p b{font-weight:800;color:#193A5B}
.raffle-pop.is-learners .raffle-kicker{font-size:16px;font-weight:700;color:#7A5300}
.raffle-pop.is-learners .raffle-when{font-size:18.5px;font-weight:800;color:#5a3f00}
.raffle-pop.is-learners .raffle-progress p{font-size:17px;font-weight:700}
.raffle-pop.is-learners .raffle-prize{font-size:16px;font-weight:700;color:#3d5266}
.raffle-share-line{margin:12px 0 0 !important;text-align:center}
.raffle-share{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 14px;border:1px solid #25D366;border-radius:999px;color:#0f6b3a;background:#effbf3;font:700 15px Assistant,sans-serif;text-decoration:none}
.raffle-share:hover{background:#dff6e8}
/* The ambassadors' notice, a little different from the learners' (owner, 13.10.2026): deep blue band, kicker as a badge, readable text. */
.raffle-pop.is-ambassadors .raffle-card{border-top:6px solid #193A5B;font-family:Assistant,sans-serif;color:#13283d}
.raffle-pop.is-ambassadors .raffle-kicker{display:table;margin:2px auto 4px;padding:3px 14px;border-radius:999px;background:#193A5B;color:#F6E3B4;font-size:15px;font-weight:700}
.raffle-pop.is-ambassadors .raffle-card h2{font-family:'Frank Ruhl Libre',serif;font-size:27px}
.raffle-pop.is-ambassadors .raffle-card p{font-size:18px;line-height:1.55;font-weight:500}
.raffle-pop.is-ambassadors .raffle-rules p{font-size:17px}
.raffle-pop.is-ambassadors .raffle-when{font-size:18px;font-weight:800}
/* A cycle locked until the one before it fills (13.10.2026). */
.cycle-tabs .is-locked{display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 6px;border-radius:10px;color:#8a9aab;font-size:15px;cursor:default}
.cycle-tabs .is-locked span{font-size:12.5px}
.cycle-opened{max-width:520px;margin:-4px auto 12px;padding:8px 12px;border-radius:10px;background:#EAF6EE;color:#1f5f39;font:600 15px Assistant,sans-serif;text-align:center}
/* "פתיחת חלוקה ב׳" offered to the gabbai once every talk was chosen (13.10.2026). */
.cycle-offer{margin:0 0 14px;padding:14px 16px;border:1px solid #bfe3cb;border-radius:14px;background:#EAF6EE;text-align:center}
.cycle-offer h2{margin:0 0 6px;font-size:19px;color:#1f5f39}
.cycle-offer p{margin:0 0 10px;font-size:15.5px;line-height:1.5;color:#244a33}
.cycle-offer .sichot-btn{width:auto;background:#2e7d4f}
/* Opening the raffle notice again, to forward it (Chanoch, 13.10.2026). */
.raffle-reopen{margin:-4px 0 12px;text-align:center}
.raffle-reopen button{border:1px solid #E2C98A;background:#FFF8E6;color:#5a3f00;border-radius:999px;padding:7px 16px;min-height:36px;font:700 14.5px Assistant,sans-serif;cursor:pointer}
.status-link-row{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center}
.raffle-link{background:none;border:0;padding:0;cursor:pointer;font:inherit;color:#7A5300;text-decoration:underline}
