/* ═══════════════════════════════════════════
   VedKaal v7.2 — Hebrew Calendar Styles
   ═══════════════════════════════════════════ */

/* Hebrew font */
.hebrew-text {
  font-family: 'Noto Sans Hebrew', 'Noto Sans', sans-serif;
  direction: rtl;
}

/* ─── Clock section accent ───────────────── */
.hebrew-clock-section {
  border-bottom: 3px solid #1e40af;
}

/* ─── Section title colors ───────────────── */
.section-title.hebrew-blue  { color: #1e40af; }
.section-title.hebrew-green { color: #15803d; }
.section-title.hebrew-gold  { color: #92400e; }

/* ─── Accordion overrides ────────────────── */
.accordion-section[data-accordion="shabbat"]     .accordion-header { border-left: 3px solid #1e40af; }
.accordion-section[data-accordion="zmanim"]      .accordion-header { border-left: 3px solid #1e40af; }
.accordion-section[data-accordion="parasha"]     .accordion-header { border-left: 3px solid #15803d; }
.accordion-section[data-accordion="holidays"]    .accordion-header { border-left: 3px solid #92400e; }

/* ─── Hebrew Date Header ─────────────────── */
.hebrew-date-header {
  background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
  border: 1px solid #bfdbfe;
  border-left: 4px solid #1e40af;
  border-radius: var(--radius);
  padding: 1.1rem 1.25rem;
  text-align: center;
}
.hdh-date {
  font-size: 1.35rem;
  font-weight: 700;
  color: #1e40af;
  margin-bottom: .35rem;
}
.hdh-sub {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  font-size: .82rem;
  color: var(--text-secondary);
  flex-wrap: wrap;
  margin-bottom: .5rem;
}
.hdh-sep { color: var(--text-muted); }
.hdh-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .4rem;
  margin-top: .4rem;
}
.hd-badge {
  font-size: .72rem;
  font-weight: 600;
  padding: .2rem .65rem;
  border-radius: 20px;
  white-space: nowrap;
}
.badge-major       { background: #dbeafe; color: #1e40af; border: 1px solid #bfdbfe; }
.badge-minor       { background: #f0fdf4; color: #15803d; border: 1px solid #bbf7d0; }
.badge-fast        { background: #fff7ed; color: #c2410c; border: 1px solid #fed7aa; }
.badge-modern      { background: #fef3c7; color: #92400e; border: 1px solid #fde68a; }
.badge-shabbat     { background: #1e40af; color: #fff; }
.badge-rosh-chodesh{ background: #f5f3ff; color: #6d28d9; border: 1px solid #ddd6fe; }
.badge-omer        { background: #fef9ee; color: #b45309; border: 1px solid #fde68a; }

/* ─── Shabbat Banner ─────────────────────── */
.shabbat-banner {
  display: flex;
  align-items: center;
  gap: 1rem;
  background: linear-gradient(135deg, #1e3a5f 0%, #1e40af 100%);
  color: #fff;
  border-radius: var(--radius);
  padding: 1rem 1.25rem;
  margin-bottom: 1rem;
}
.sb-icon  { font-size: 1.75rem; flex-shrink: 0; }
.sb-body  { flex: 1; }
.sb-title { font-size: 1rem; font-weight: 700; }
.sb-sub   { font-size: .8rem; opacity: .85; margin-top: .15rem; }
.sb-right { text-align: right; flex-shrink: 0; }
.sb-countdown {
  font-size: 1.4rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  letter-spacing: .03em;
}
.sb-cd-label { font-size: .65rem; opacity: .7; margin-top: .1rem; }

/* ─── Shabbat Times Grid ─────────────────── */
.shabbat-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .75rem;
  margin-bottom: 1rem;
}
.shabbat-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  padding: 1rem;
  text-align: center;
}
.candle-card   { border-top: 3px solid #d97706; }
.havdalah-card { border-top: 3px solid #7c3aed; }
.sc-icon  { font-size: 1.5rem; margin-bottom: .35rem; }
.sc-label { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--text-muted); margin-bottom: .3rem; }
.sc-time  { font-size: 1.25rem; font-weight: 700; color: var(--text-primary); }
.sc-sub   { font-size: .72rem; color: var(--text-secondary); margin-top: .25rem; }

/* ─── Shabbat Parasha snippet ────────────── */
.shabbat-parasha {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: var(--radius-sm);
  padding: .75rem 1rem;
}
.sp-label  { font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--text-muted); margin-bottom: .2rem; }
.sp-name   { font-size: 1rem; font-weight: 700; color: #15803d; }
.sp-date   { font-size: .78rem; color: var(--text-secondary); margin-top: .15rem; }
.sp-holiday { font-size: .75rem; color: #b45309; margin-top: .2rem; }

/* ─── Zmanim ─────────────────────────────── */
.zmanim-method {
  font-size: .72rem;
  color: var(--text-muted);
  margin-bottom: .75rem;
  font-style: italic;
}
.zmanim-list { display: flex; flex-direction: column; }
.zman-row {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .6rem .25rem;
  border-bottom: 1px solid var(--border);
  transition: opacity .15s;
}
.zman-row:last-child { border-bottom: none; }
.zman-past { opacity: .4; }
.zman-soon { background: #eff6ff; border-radius: var(--radius-sm); }
.zman-info { flex: 1; }
.zman-name { font-size: .88rem; font-weight: 600; color: var(--text-primary); }
.zman-desc { font-size: .72rem; color: var(--text-muted); margin-top: .05rem; }
.zman-time {
  font-size: .88rem;
  font-weight: 700;
  white-space: nowrap;
  color: var(--text-primary);
  text-align: right;
  min-width: 75px;
}
.zman-time.sunrise  { color: #d97706; }
.zman-time.sunset   { color: #b45309; }
.zman-time.deadline { color: #b91c1c; }
.zman-time.prayer   { color: #1e40af; }
.zman-time.dawn     { color: #6d28d9; }
.zman-time.nightfall{ color: #4c1d95; }
.zman-time.neutral  { color: var(--text-secondary); }
.zman-done {
  display: inline-block;
  font-size: .58rem;
  font-weight: 600;
  color: var(--text-muted);
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: .05rem .3rem;
  margin-left: .25rem;
  vertical-align: middle;
}

/* ─── Parasha Card ───────────────────────── */
.parasha-card {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: var(--radius-sm);
  padding: 1.25rem;
  text-align: center;
}
.parasha-icon { font-size: 2rem; margin-bottom: .5rem; }
.parasha-name { font-size: 1.35rem; font-weight: 700; color: #15803d; margin-bottom: .3rem; }
.parasha-week { font-size: .78rem; color: var(--text-secondary); }
.parasha-date { font-size: .82rem; color: var(--text-secondary); margin-top: .15rem; }
.parasha-holiday-note { font-size: .78rem; color: #b45309; margin-top: .5rem; }
.parasha-note { font-size: .7rem; color: var(--text-muted); margin-top: .75rem; font-style: italic; }

/* ─── Holiday Cards ──────────────────────── */
.holiday-today-card {
  border-radius: var(--radius-sm);
  padding: 1rem 1.25rem;
  margin-bottom: .75rem;
  text-align: center;
}
.htype-major   { background: #dbeafe; border: 1px solid #bfdbfe; }
.htype-minor   { background: #f0fdf4; border: 1px solid #bbf7d0; }
.htype-fast    { background: #fff7ed; border: 1px solid #fed7aa; }
.htype-modern  { background: #fef3c7; border: 1px solid #fde68a; }
.ht-label { font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--text-muted); margin-bottom: .25rem; }
.ht-name  { font-size: 1.1rem; font-weight: 700; color: var(--text-primary); }
.ht-hname { font-size: .9rem; color: var(--text-secondary); margin-top: .15rem; font-family: 'Noto Sans Hebrew', sans-serif; direction: rtl; }

.holiday-next-card {
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  padding: 1rem 1.25rem;
  margin-bottom: .75rem;
}
.hn-label { font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--text-muted); margin-bottom: .2rem; }
.hn-name  { font-size: 1rem; font-weight: 700; color: var(--text-primary); }
.hn-hname { font-size: .82rem; color: var(--text-secondary); font-family: 'Noto Sans Hebrew', sans-serif; direction: rtl; }
.hn-date  { font-size: .78rem; color: var(--text-secondary); margin-top: .2rem; }
.hn-days  { display: inline-block; margin-top: .35rem; font-size: .72rem; font-weight: 600; color: #1e40af; background: #dbeafe; border-radius: 10px; padding: .1rem .5rem; }

/* ─── Omer Card ──────────────────────────── */
.omer-card {
  background: #fef9ee;
  border: 1px solid #fde68a;
  border-radius: var(--radius-sm);
  padding: 1rem 1.25rem;
  text-align: center;
}
.omer-label        { font-size: .65rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: #92400e; margin-bottom: .25rem; }
.omer-day          { font-size: 2rem; font-weight: 800; color: #b45309; line-height: 1; }
.omer-label-detail { font-size: .82rem; color: #92400e; margin-top: .25rem; }

/* ─── Mobile ─────────────────────────────── */
@media (max-width: 480px) {
  .shabbat-grid { grid-template-columns: 1fr 1fr; }
  .shabbat-banner { flex-wrap: wrap; }
  .sb-right { width: 100%; text-align: left; }
}
@media (max-width: 360px) {
  .shabbat-grid { grid-template-columns: 1fr; }
}
