.brd-weekend {
  position: relative;
  /* резервируем место под бордер */
  padding-left: 4px;          /* = толщине бордера */
  border-left: 0px !important;
}

/* сам "бордер" — анимированный слой */
.brd-weekend::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;                 /* толщина бордера */
  height: 100%;
  pointer-events: none;
  border-radius: 2px;          /* по желанию */

  /* серебристая база + белый блик, повторяющийся по вертикали */
  background:
    linear-gradient(
      to bottom,
      rgba(255,255,255,0)    0%,
      rgba(255,255,255,0.9)  40%,
      rgba(255,255,255,0.9)  60%,
      rgba(255,255,255,0)    100%
    ) no-repeat,
    linear-gradient(
      to bottom,
      #b8b8b8, #e8e8e8, #c4c4c4, #f0f0f0, #b8b8b8
    );

  /* блик двигается сверху вниз, размер блика = 40% высоты */
  background-size:
    100% 40%,      /* блик */
    100% 100%;     /* серебро */
  background-position:
    0 -40%,        /* блик стартует выше видимой зоны */
    0 0;
  background-repeat: no-repeat;

  animation: silver-shine 1.8s linear infinite;
}

@keyframes silver-shine {
  from { background-position: 0 -40%, 0 0; }
  to   { background-position: 0 140%, 0 0; }
}
