
.moh-wrap{
  font-size: var(--moh-font-size, 16px);
  max-width: var(--moh-max-width, 520px);
}
.moh-card{
  background: var(--moh-card-bg, #0f172a);
  border: 1px solid var(--moh-card-border, #1f2937);
  border-radius: var(--moh-radius, 18px);
  box-shadow: 0 18px 48px rgba(2,6,23,.28);
  overflow: hidden;
  color: var(--moh-text, #e5e7eb);
}
.moh-header{
  display:flex; align-items:center; justify-content:space-between;
  padding: calc(var(--moh-padding, 12px) + 4px) var(--moh-padding, 12px);
  border-bottom: 1px solid var(--moh-row-border, #22304a);
}
.moh-heading{
  font-weight: 800;
  letter-spacing: .01em;
  font-size: 1.05em;
}
.moh-dot{
  width: 10px; height: 10px; border-radius: 999px;
  background: linear-gradient(135deg, var(--moh-today-bg, #1d4ed8), #22c55e);
  opacity: .85;
}
.moh-rows{ display:flex; flex-direction:column; }
.moh-row{
  display:flex; align-items:center; justify-content:space-between;
  gap: 12px;
  padding: var(--moh-padding, 12px);
  border-top: 1px solid var(--moh-row-border, #22304a);
}
.moh-row:first-child{ border-top: none; }
.moh-row.is-today{
  background: var(--moh-today-bg, #1d4ed8);
  color: var(--moh-today-text, #ffffff);
}
.moh-day{
  font-weight: 700;
  opacity: .95;
}
.moh-hours{
  text-align: right;
  font-weight: 600;
  opacity: .92;
}
.moh-muted{
  color: var(--moh-muted, #9ca3af);
  font-weight: 600;
  opacity: 1;
}
.moh-row.is-today .moh-muted{
  color: rgba(255,255,255,.9);
}
.moh-sep{
  opacity: .7;
  margin: 0 6px;
}

@media (max-width: 520px){
  .moh-row{ flex-direction:column; align-items:flex-start; }
  .moh-hours{ text-align:left; }
}
