
/* ====== Styles extraits de index.html ====== */

/* KRIAT CHEMA AL HAMITA */
.kchm-section{background:var(--white);border:1px solid var(--gray-5);border-radius:16px;margin-bottom:10px;overflow:hidden;transition:box-shadow .2s;}
.kchm-section.open{box-shadow:0 2px 12px rgba(0,0,0,0.08);}
.kchm-section-header{display:flex;align-items:center;padding:14px 16px;cursor:pointer;-webkit-tap-highlight-color:transparent;gap:10px;}
.kchm-section-num{min-width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#ffc850;flex-shrink:0;}
.kchm-section-info{flex:1;min-width:0;}
.kchm-section-title{font-size:14px;font-weight:700;color:var(--black);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kchm-section-sub{font-size:11px;color:var(--gray-3);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.kchm-section-chevron{color:var(--gray-4);transition:transform .3s;flex-shrink:0;}
.kchm-section.open .kchm-section-chevron{transform:rotate(180deg);}
.kchm-section-body{max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s ease;padding:0 16px;}
.kchm-section.open .kchm-section-body{max-height:5000px;padding:0 16px 16px;}
.kchm-instruction{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 12px;font-size:12px;color:#92400e;margin-bottom:12px;line-height:1.5;}
.kchm-omit-badge{display:inline-block;background:#fee2e2;color:#991b1b;font-size:10px;font-weight:600;padding:2px 8px;border-radius:6px;margin-left:6px;}
.kchm-repeat-badge{display:inline-block;background:#dbeafe;color:#1e40af;font-size:10px;font-weight:600;padding:2px 8px;border-radius:6px;margin-left:6px;}
.kchm-he{font-family:'Noto Serif Hebrew',serif;font-size:20px;line-height:1.9;direction:rtl;text-align:right;color:var(--black);margin-bottom:10px;}
.kchm-ph{font-size:14px;line-height:1.7;color:#6366f1;font-style:italic;margin-bottom:10px;}
.kchm-fr{font-size:13px;line-height:1.7;color:var(--gray-2);margin-bottom:10px;}
.kchm-source{font-size:11px;color:var(--gray-4);font-style:italic;margin-bottom:8px;}
.kchm-para-title{font-size:13px;font-weight:700;color:var(--black);margin:14px 0 6px;padding-top:10px;border-top:1px solid var(--gray-5);}
.kchm-response{background:#f0fdf4;border-left:3px solid #22c55e;padding:10px 12px;border-radius:0 10px 10px 0;margin:8px 0;}
.kchm-lang-toggles-wrap{position:sticky;top:0;z-index:10;background:var(--bg);padding:8px 0;}


/* ─── ZMANIM SECTION ─── */
.zmanim-card {
  margin: 10px 16px 6px 16px;
  border-radius: 16px;
  background: linear-gradient(135deg, #0f1628 0%, #1a1a2e 40%, #1e2a45 100%);
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3);
  position: relative;
  font-family: 'EB Garamond', serif;
}
.zmanim-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,200,80,0.3), transparent);
}
.zmanim-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px 0 16px;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.zmanim-header-left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.zmanim-header-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: linear-gradient(135deg, #1e3a5f, #2a4a7f);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  flex-shrink: 0;
}
.zmanim-header-title {
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  font-family: 'EB Garamond', serif;
  letter-spacing: 0.3px;
}
.zmanim-header-sub {
  color: rgba(255,255,255,0.5);
  font-size: 12px;
  font-family: 'EB Garamond', serif;
  margin-top: 1px;
}
.zmanim-chevron {
  color: rgba(255,255,255,0.4);
  transition: transform 0.3s ease;
  flex-shrink: 0;
}
.zmanim-card.open .zmanim-chevron {
  transform: rotate(180deg);
}

/* Day progress bar */
.zmanim-progress-wrap {
  padding: 10px 16px 12px 16px;
}
.zmanim-progress-bar {
  height: 3px;
  background: rgba(255,255,255,0.08);
  border-radius: 2px;
  overflow: hidden;
  position: relative;
}
.zmanim-progress-fill {
  height: 100%;
  border-radius: 2px;
  background: linear-gradient(90deg, #ffc850, #ff8c42);
  transition: width 1s ease;
  position: relative;
}
.zmanim-progress-fill::after {
  content: '';
  position: absolute;
  right: 0;
  top: -2px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ffc850;
  box-shadow: 0 0 8px rgba(255,200,80,0.6);
}
.zmanim-progress-labels {
  display: flex;
  justify-content: space-between;
  margin-top: 5px;
  font-size: 10px;
  font-family: 'EB Garamond', serif;
  color: rgba(255,255,255,0.35);
}

/* Zmanim list */
.zmanim-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, padding 0.3s ease;
  padding: 0 16px;
}
.zmanim-card.open .zmanim-body {
  max-height: 800px;
  padding: 0 16px 14px 16px;
}
.zmanim-list {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.zmanim-item {
  display: flex;
  align-items: center;
  padding: 9px 0;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  position: relative;
}
.zmanim-item:last-child {
  border-bottom: none;
}
.zmanim-item.past {
  opacity: 0.4;
}
.zmanim-item.current {
  opacity: 1;
}
.zmanim-item.current::before {
  content: '';
  position: absolute;
  left: -16px;
  top: 0;
  bottom: 0;
  width: 3px;
  border-radius: 0 2px 2px 0;
  background: linear-gradient(180deg, #ffc850, #ff8c42);
  box-shadow: 0 0 8px rgba(255,200,80,0.3);
}
.zmanim-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  margin-right: 12px;
  flex-shrink: 0;
  border: 1.5px solid rgba(255,255,255,0.2);
  background: transparent;
}
.zmanim-item.past .zmanim-dot {
  background: rgba(255,255,255,0.15);
  border-color: rgba(255,255,255,0.15);
}
.zmanim-item.current .zmanim-dot {
  background: #ffc850;
  border-color: #ffc850;
  box-shadow: 0 0 6px rgba(255,200,80,0.5);
}
.zmanim-label {
  flex: 1;
  min-width: 0;
}
.zmanim-label-fr {
  color: rgba(255,255,255,0.85);
  font-size: 14px;
  font-weight: 500;
  font-family: 'EB Garamond', serif;
}
.zmanim-item.current .zmanim-label-fr {
  color: #fff;
  font-weight: 600;
}
.zmanim-label-he {
  color: rgba(255,255,255,0.35);
  font-size: 11px;
  font-family: 'Noto Serif Hebrew', serif;
  margin-top: 1px;
}
.zmanim-time {
  color: rgba(255,255,255,0.7);
  font-size: 15px;
  font-weight: 600;
  font-family: 'EB Garamond', serif;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.5px;
  flex-shrink: 0;
  margin-left: 12px;
}
.zmanim-item.current .zmanim-time {
  color: #ffc850;
}
.zmanim-item.past .zmanim-time {
  text-decoration: line-through;
  text-decoration-color: rgba(255,255,255,0.15);
}
.zmanim-section-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: rgba(255,255,255,0.25);
  padding: 8px 0 4px 0;
  margin-top: 4px;
  font-family: 'EB Garamond', serif;
}
.zmanim-share-row {
  display: flex;
  justify-content: flex-end;
  padding-top: 8px;
  border-top: 1px solid rgba(255,255,255,0.06);
  margin-top: 4px;
}
.zmanim-share-btn {
  background: none;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  color: rgba(255,255,255,0.6);
  font-size: 12px;
  font-family: 'EB Garamond', serif;
  padding: 5px 12px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 5px;
  transition: all 0.2s;
}
.zmanim-share-btn:active {
  background: rgba(255,255,255,0.05);
}
.zmanim-next-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255,200,80,0.15);
  color: #ffc850;
  font-size: 12px;
  font-weight: 600;
  font-family: 'EB Garamond', serif;
  padding: 3px 10px;
  border-radius: 10px;
  margin-left: 8px;
}
.zmanim-next-badge #zmanim-next-time {
  font-weight: 700;
  font-size: 13px;
}
.zmanim-card.open .zmanim-next-badge {
  display: none;
}
