/* IntroTypingOverlay.css 와 동일 + 정적 템플릿용 body 스크롤 잠금 */
body.overflow-lock {
  overflow: hidden;
}

.intro-typing-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: clamp(20px, 6vw, 40px);
  background:
    radial-gradient(circle at 50% 42%, rgb(255 255 255 / 0.08), transparent 32%),
    rgb(10 10 10 / 0.58);
  backdrop-filter: blur(12px) saturate(0.82);
  -webkit-backdrop-filter: blur(12px) saturate(0.82);
  text-align: center;
  opacity: 1;
  pointer-events: auto;
  transition:
    opacity 0.5s ease,
    visibility 0.5s ease;
}

.intro-typing-overlay--exiting {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.intro-handwriting {
  display: block;
  width: 100%;
  max-width: min(var(--intro-handwriting-max-w, 600px), 94vw);
  height: auto;
  overflow: visible;
  opacity: 0;
  font-family: var(--serif, "Noto Serif KR", serif);
}

.intro-handwriting--ready {
  opacity: 1;
}

.intro-handwriting__stroke {
  fill: none;
  stroke: #f5f5f5;
  stroke-width: 14;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
}

@media (max-width: 520px) {
  .intro-handwriting {
    max-width: min(var(--intro-handwriting-max-w, 94vw), 94vw);
  }

  .intro-handwriting__stroke {
    stroke-width: 13;
  }
}

@media (prefers-reduced-motion: reduce) {
  .intro-typing-overlay {
    transition-duration: 0.2s;
  }

  .intro-handwriting__stroke {
    stroke-dasharray: none !important;
    stroke-dashoffset: 0 !important;
    transition: none !important;
  }
}
