/* Use SLA Design System variables with fallbacks */
.wistjedat-block {
  position: relative;
  background: linear-gradient(145deg, var(--sla-color-primary-light, #16213e), var(--sla-color-primary, #1a1a2e));
  border-radius: var(--sla-radius-xl, 20px);
  padding: 40px 50px;
  margin: var(--sla-spacing-2xl, 3rem) 0;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.04),
    0 0 60px rgba(37, 99, 235, 0.10),
    0 30px 60px rgba(0,0,0,0.40);
  overflow: hidden;
  transform: perspective(800px) translateY(80px) rotateX(10deg) scale(0.96);
  opacity: 0;
  transition:
    transform 1s cubic-bezier(0.19,1,0.22,1),
    opacity 1s ease;
  color: var(--sla-color-white, #ffffff);
}

.wistjedat-block.is-visible {
  opacity: 1;
  transform: perspective(800px) translateY(0) rotateX(0deg) scale(1);
}

/* animated gradient border */
.wistjedat-block::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--sla-radius-xl, 20px);
  padding: 2px;
  background: var(--sla-color-accent, #2563eb);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0.25;
  pointer-events: none;
}

/* moving shine on appear */
.wistjedat-block::after {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.14) 50%, transparent 100%);
  transform: skewX(-25deg);
  opacity: 0;
  pointer-events: none;
}

.wistjedat-block.is-visible::after {
  animation: wjdShine 1.5s ease-out forwards;
}

@keyframes wjdShine {
  0% { left: -75%; opacity: 0; }
  20% { opacity: 1; }
  100% { left: 125%; opacity: 0; }
}

.wistjedat-block h4,
.wistjedat-block .wistjedat-title {
  font-size: var(--sla-font-size-xl, 1.25rem);
  font-weight: var(--sla-font-weight-bold, 700);
  color: var(--sla-color-accent, #2563eb);
  margin: 0 0 14px 0;
  position: relative;
  padding-left: 38px;
}

.wistjedat-block h4::before,
.wistjedat-block .wistjedat-title::before {
  content: "💡";
  position: absolute;
  left: 0;
  top: -2px;
  font-size: 1.4rem;
  filter: drop-shadow(0 0 6px var(--sla-color-accent, #2563eb));
  animation: wjdGlowPulse 2s ease-in-out infinite;
}

@keyframes wjdGlowPulse {
  0%,100% { opacity: 0.85; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.18); }
}

.wistjedat-block p,
.wistjedat-block .wistjedat-content {
  margin: 0;
  font-size: var(--sla-font-size-base, 1rem);
  line-height: var(--sla-line-height-relaxed, 1.7);
  color: var(--sla-color-gray-400, #ced4da);
  white-space: pre-wrap;
  word-wrap: break-word;
}

/* Media container */
.wistjedat-media {
  margin-top: var(--sla-spacing-lg, 1.5rem);
  border-radius: var(--sla-radius-lg, 12px);
  overflow: hidden;
}

.wistjedat-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--sla-radius-lg, 12px);
  transition: transform var(--sla-transition-base, 0.3s ease);
}

.wistjedat-block:hover .wistjedat-image {
  transform: scale(1.02);
}

/* Video wrapper - 16:9 aspect ratio */
.wistjedat-video-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  border-radius: var(--sla-radius-lg, 12px);
  background: var(--sla-color-primary-dark, #0f0f1a);
}

.wistjedat-video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: var(--sla-radius-lg, 12px);
}

/* Responsive styling */
@media (max-width: 768px) {
  .wistjedat-block {
    padding: 30px 25px;
    margin: var(--sla-spacing-xl, 2rem) 0;
  }
  
  .wistjedat-block h4,
  .wistjedat-block .wistjedat-title {
    font-size: var(--sla-font-size-lg, 1.1rem);
  }
  
  .wistjedat-block p,
  .wistjedat-block .wistjedat-content {
    font-size: var(--sla-font-size-sm, 0.95rem);
  }

  .wistjedat-media {
    margin-top: var(--sla-spacing-md, 1.25rem);
  }
}
