.ab-time-bg {
  position: fixed;
  inset: 0;
  z-index: -2;
  overflow: hidden;
  background: #08070b;
  pointer-events: none;
}

.ab-time-bg__image,
.ab-time-bg__layer,
.ab-time-bg__overlay {
  position: absolute;
  inset: 0;
}

.ab-time-bg__image {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 4s ease;
  transform: scale(1.03);
}

.ab-time-bg__image.is-active {
  opacity: 1;
}

.ab-time-bg__layer {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 3s ease;
}

.ab-time-bg__stars {
  background-image: url("/themes/child_classic/assets/img/dynamic-bg/stars.png");
  animation: ab-stars-drift 90s linear infinite;
  mix-blend-mode: screen;
}

.ab-time-bg__clouds {
  background-image: url("/themes/child_classic/assets/img/dynamic-bg/clouds.png");
  animation: ab-clouds-drift 120s linear infinite;
  mix-blend-mode: screen;
}

.ab-time-bg__fog {
  background-image: url("/themes/child_classic/assets/img/dynamic-bg/fog.png");
  animation: ab-fog-drift 70s linear infinite alternate;
  mix-blend-mode: screen;
}

.ab-time-bg__neon {
  background-image: url("/themes/child_classic/assets/img/dynamic-bg/neon-glow.png");
  mix-blend-mode: screen;
  animation: ab-neon-pulse 4s ease-in-out infinite;
}

.ab-time-bg__overlay {
  z-index: 5;
  background:
    radial-gradient(circle at 50% 30%, rgba(255, 130, 40, .08), transparent 32%),
    linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.55));
}

/* widoczność warstw zależnie od pory */
body.ab-bg-sunrise .ab-time-bg__fog    { opacity: .25; }
body.ab-bg-sunrise .ab-time-bg__clouds { opacity: .18; }

body.ab-bg-day .ab-time-bg__clouds { opacity: .12; }

body.ab-bg-sunset .ab-time-bg__neon   { opacity: .22; }
body.ab-bg-sunset .ab-time-bg__clouds { opacity: .16; }

body.ab-bg-night .ab-time-bg__stars  { opacity: .55; }
body.ab-bg-night .ab-time-bg__clouds { opacity: .16; }
body.ab-bg-night .ab-time-bg__fog    { opacity: .18; }
body.ab-bg-night .ab-time-bg__neon   { opacity: .45; }

@keyframes ab-stars-drift {
  from { transform: translate3d(0, 0, 0) scale(1.05); }
  to   { transform: translate3d(-40px, 20px, 0) scale(1.08); }
}

@keyframes ab-clouds-drift {
  from { transform: translate3d(-30px, 0, 0) scale(1.08); }
  to   { transform: translate3d(40px, 0, 0) scale(1.12); }
}

@keyframes ab-fog-drift {
  from { transform: translate3d(-40px, 20px, 0) scale(1.08); }
  to   { transform: translate3d(40px, -10px, 0) scale(1.12); }
}

@keyframes ab-neon-pulse {
  0%, 100% { opacity: .35; filter: brightness(1); }
  50%       { opacity: .55; filter: brightness(1.25); }
}

/* treść nad tłem */
#page,
#wrapper,
#content,
main {
  position: relative;
  z-index: 1;
}
