/* V9: stable native touch scrolling + continuous mouse drag */
.wp-block-table{
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
  touch-action:auto!important;
}
.wp-block-table > .table-scroll-viewport{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:scroll!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-x pan-y pinch-zoom!important;
  overscroll-behavior-x:contain!important;
  scroll-behavior:auto!important;
  scroll-snap-type:none!important;
  cursor:grab!important;
  border-radius:inherit!important;
  scrollbar-width:auto!important;
  scrollbar-color:#55ef98 rgba(255,255,255,.10)!important;
}
.wp-block-table > .table-scroll-viewport.is-dragging{cursor:grabbing!important}
html.table-drag-active,
html.table-drag-active body,
html.table-drag-active *{
  cursor:grabbing!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.wp-block-table > .table-scroll-viewport::-webkit-scrollbar{height:8px!important}
.wp-block-table > .table-scroll-viewport::-webkit-scrollbar-track{
  background:rgba(255,255,255,.08)!important;
  border-radius:999px!important;
}
.wp-block-table > .table-scroll-viewport::-webkit-scrollbar-thumb{
  background:linear-gradient(90deg,#7af5aa,#24c96d)!important;
  border-radius:999px!important;
}
.wp-block-table > .table-scroll-viewport > table{
  width:max-content!important;
  max-width:none!important;
  min-width:100%!important;
  margin:0!important;
  table-layout:auto!important;
}
@media (max-width:767px){
  .wp-block-table{padding:6px 6px 10px!important}
  .wp-block-table > .table-scroll-viewport{padding-bottom:8px!important}
  .wp-block-table > .table-scroll-viewport > table{
    min-width:max(760px, 190vw)!important;
  }
  .wp-block-table > .table-scroll-viewport > table td,
  .wp-block-table > .table-scroll-viewport > table th{
    min-width:180px!important;
    white-space:normal!important;
  }
  .wp-block-table > .table-scroll-viewport > table td:first-child,
  .wp-block-table > .table-scroll-viewport > table th:first-child{
    min-width:230px!important;
  }
}

/* Retain the fixed mobile menu layout */
@media (max-width:1199px){
  header.header{overflow:visible!important;height:auto!important;min-height:0!important}
  header.header .head-container{overflow:visible!important;height:auto!important;min-height:0!important;gap:12px!important}
  header.header .line-1{position:relative!important;z-index:2!important}
  header.header .mobile-menu{
    display:none!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:min(68vh,560px)!important;
    margin:0!important;
    padding:16px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    box-sizing:border-box!important;
    z-index:1003!important;
    gap:14px!important;
    border-radius:20px!important;
  }
  header.header.mobile-open .mobile-menu{display:flex!important}
  header.header .mobile-menu .lang-switch--mobile{display:none!important}
  header.header .mobile-menu .nav{display:block!important;width:100%!important;max-width:none!important}
  header.header .mobile-menu .nav > ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    gap:10px!important;
    margin:0!important;
    padding:0!important;
  }
  header.header .mobile-menu .nav > ul > li{width:100%!important;min-width:0!important;padding:0!important;margin:0!important}
  header.header .mobile-menu .nav > ul > li > a{
    width:100%!important;
    min-height:48px!important;
    box-sizing:border-box!important;
    justify-content:center!important;
    padding:12px 10px!important;
    text-align:center!important;
  }
  header.header .mobile-menu .download-buttons{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    padding-top:12px!important;
    margin:0!important;
  }
  header.header .mobile-menu .download-buttons .btn{
    width:100%!important;
    min-width:0!important;
    min-height:58px!important;
    padding:10px!important;
    box-sizing:border-box!important;
  }
}
@media (max-width:420px){header.header .mobile-menu .nav > ul{grid-template-columns:1fr!important}}
