/* T1005: NATIVE SCROLL SNAP */

/* 1. Global Safety */
html, body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden; /* Prevent body scroll */
  overscroll-behavior: none;
}

/* 2. The Scroll Container (Window) */
#pages-wrapper {
  /* Layout */
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  
  /* Sizing - Matches viewport exactly */
  width: 100vw !important;
  height: 100% !important;
  
  /* Native Scrolling */
  overflow-x: auto !important;
  overflow-y: hidden !important;
  
  /* The Magic: Snap Logic */
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  
  /* Hide Scrollbar */
  scrollbar-width: none !important; /* Firefox */
  -ms-overflow-style: none !important; /* IE/Edge */
  
  /* Containment */
  box-sizing: border-box !important;
  contain: layout style;
}

/* Hide scrollbar for Chrome/Safari */
#pages-wrapper::-webkit-scrollbar {
  display: none !important;
}

/* 3. The Pages (Slides) */
.page {
  /* Fixed Width */
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  
  /* Flex Rigidness */
  flex: 0 0 100vw !important;
  
  /* Height */
  height: 100% !important;
  
  /* Snap Alignment */
  scroll-snap-align: start !important;
  scroll-snap-stop: always !important; /* Force stop on page */
  
  /* Internal Content Scrolling */
  overflow-y: auto !important;
  overflow-x: hidden !important;
  
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
}
