/*
 * K-NEXT 홈 scroll-snap — fullpage.js v4(GPLv3) 라이선스 의존 제거 대체.
 * 인터랙션 엔진은 app/knext/_components/homeScrollSnap.ts (vanilla, 외부 라이브러리 0).
 *
 * - 풀스크린 섹션 snap 은 데스크톱(>=1024px) 에서만 — 레거시 fullpage responsiveWidth:1024 동등.
 *   미만(모바일/태블릿)에서는 일반 세로 스크롤(레거시도 fullpage 비활성).
 * - #fp-nav(우측 점 네비) 레이아웃은 fullpage4.css 의 #fp-nav 규칙을 자체 복제(라이선스 회피).
 *   점 색/활성 상태는 main.css 가 body.fp-viewing-* 로 구동하므로 여기서는 건드리지 않는다.
 * - body.fp-viewing-N / #ci_section[data-index] / body[data-secion-ci-index] 는 컨트롤러가 설정.
 */

@media (min-width: 1024px) {
  #main_fullpage {
    height: 100vh;
    overflow-y: scroll;
    overflow-x: hidden;
    scroll-snap-type: y mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
  }
  /* 스크롤바 숨김(레거시 fullpage 도 네이티브 스크롤바 미노출). */
  #main_fullpage::-webkit-scrollbar { width: 0; height: 0; }
  #main_fullpage { scrollbar-width: none; -ms-overflow-style: none; }

  #main_fullpage > .section {
    height: 100vh;
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }
  /* footer 섹션은 콘텐츠 높이 가변 — 최소 한 화면 보장하되 넘치면 자연 확장. */
  #main_fullpage > #footerarea {
    height: auto;
    min-height: 100vh;
  }
}

/* ===== #fp-nav (우측 점 네비) — fullpage4.css #fp-nav 복제 ===== */
#fp-nav {
  position: fixed;
  z-index: 100;
  top: 50%;
  opacity: 1;
  transform: translateY(-50%);
  -webkit-transform: translate3d(0, -50%, 0);
  pointer-events: none;
}
#fp-nav.fp-right { right: 17px; }
#fp-nav ul { margin: 0; padding: 0; list-style: none; }
#fp-nav ul li { display: block; width: 14px; height: 13px; margin: 7px; position: relative; }
#fp-nav ul li a {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
  pointer-events: all;
}
#fp-nav ul li a span {
  border-radius: 50%;
  position: absolute;
  z-index: 1;
  height: 4px;
  width: 4px;
  border: 0;
  background: #333;
  left: 50%;
  top: 50%;
  margin: -2px 0 0 -2px;
  transition: all 0.1s ease-in-out;
}
#fp-nav ul li:hover a span { width: 10px; height: 10px; margin: -5px 0 0 -5px; }
#fp-nav ul li a.active span,
#fp-nav ul li:hover a.active span { height: 12px; width: 12px; margin: -6px 0 0 -6px; border-radius: 100%; }

/* 모바일에서는 점 네비 숨김(레거시 fullpage 비활성 시 미노출). */
@media (max-width: 1023px) {
  #fp-nav { display: none; }
}
