/*
 * 당고랜드 모바일 전용 패치 v10
 * PC(901px 이상)에는 어떤 규칙도 적용하지 않는다.
 */
@media (max-width: 900px) {
  html.dangoland-mobile-only,
  html.dangoland-mobile-only body {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    overflow: hidden !important;
    overscroll-behavior: none !important;
  }

  html.dangoland-mobile-only body.dangoland-home,
  html.dangoland-mobile-only body.has-dangoland-map {
    display: flex !important;
    flex-direction: column !important;
    width: 100vw !important;
    height: var(--dango-mobile-viewport-height, 100dvh) !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #bceaff !important;
  }

  html.dangoland-mobile-only .site-header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    margin: 0 !important;
    z-index: 100 !important;
  }

  html.dangoland-mobile-only .site-header .container {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 8px 12px !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
  }

  html.dangoland-mobile-only .site-header .brand {
    flex: 0 1 auto !important;
    min-width: 0 !important;
  }

  html.dangoland-mobile-only .site-header .brand img {
    display: block !important;
    width: auto !important;
    height: 48px !important;
    max-width: 180px !important;
    object-fit: contain !important;
  }

  html.dangoland-mobile-only .nav-toggle {
    display: block !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    margin-left: auto !important;
  }

  html.dangoland-mobile-only .dangoland-alert,
  html.dangoland-mobile-only .dangoland-intro,
  html.dangoland-mobile-only .dangoland-map-help,
  html.dangoland-mobile-only .dangoland-quickbar,
  html.dangoland-mobile-only .site-footer,
  html.dangoland-mobile-only .side-widget,
  html.dangoland-mobile-only .side-widget-left,
  html.dangoland-mobile-only .side-widget-right,
  html.dangoland-mobile-only .mobile-live-banner,
  html.dangoland-mobile-only .side-deco {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html.dangoland-mobile-only .dangoland-shell {
    position: relative !important;
    flex: 0 0 var(--dango-mobile-stage-height, calc(100dvh - 64px)) !important;
    display: block !important;
    width: 100vw !important;
    max-width: none !important;
    height: var(--dango-mobile-stage-height, calc(100dvh - 64px)) !important;
    min-height: 0 !important;
    max-height: var(--dango-mobile-stage-height, calc(100dvh - 64px)) !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html.dangoland-mobile-only .dangoland-map-frame {
    position: relative !important;
    display: block !important;
    width: 100vw !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x !important;
    background: #bceaff !important;
  }

  html.dangoland-mobile-only .dangoland-map-frame::-webkit-scrollbar {
    display: none !important;
  }

  html.dangoland-mobile-only #dangolandMap,
  html.dangoland-mobile-only .dangoland-map {
    position: relative !important;
    display: block !important;
    flex: 0 0 var(--dango-mobile-map-width, 100vw) !important;
    width: var(--dango-mobile-map-width, 100vw) !important;
    min-width: var(--dango-mobile-map-width, 100vw) !important;
    max-width: none !important;
    height: var(--dango-mobile-stage-height, calc(100dvh - 64px)) !important;
    min-height: var(--dango-mobile-stage-height, calc(100dvh - 64px)) !important;
    max-height: var(--dango-mobile-stage-height, calc(100dvh - 64px)) !important;
    margin: 0 !important;
    padding: 0 !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background: #bceaff !important;
  }

  html.dangoland-mobile-only #dangolandMap > .dangoland-world,
  html.dangoland-mobile-only .dangoland-world {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    display: block !important;
    width: 2048px !important;
    min-width: 2048px !important;
    max-width: 2048px !important;
    height: 1280px !important;
    min-height: 1280px !important;
    max-height: 1280px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform-origin: 0 0 !important;
    overflow: visible !important;
  }

  html.dangoland-mobile-only .dangoland-world > .dangoland-map-base,
  html.dangoland-mobile-only .dangoland-map-base {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 2048px !important;
    min-width: 2048px !important;
    max-width: 2048px !important;
    height: 1280px !important;
    min-height: 1280px !important;
    max-height: 1280px !important;
    margin: 0 !important;
    object-fit: fill !important;
    object-position: center !important;
    transform: none !important;
    transition: none !important;
    z-index: 0 !important;
  }

  html.dangoland-mobile-only .dangoland-world .landmark {
    position: absolute !important;
    display: block !important;
    left: var(--land-x) !important;
    top: var(--land-y) !important;
    width: var(--land-w) !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    transform: translate(-50%, -50%) scale(.92) !important;
    transform-origin: 50% 50% !important;
    touch-action: manipulation !important;
  }

  html.dangoland-mobile-only .dangoland-world .landmark img {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  /* 모바일에서도 PC에서 확정한 중심 좌표를 그대로 사용 */
  html.dangoland-mobile-only .landmark-games { --land-x: 550px; --land-y: 160px; --land-w: 433px; }
  html.dangoland-mobile-only .landmark-youtube { --land-x: 364px; --land-y: 513px; --land-w: 349px; }
  html.dangoland-mobile-only .landmark-schedule { --land-x: 1465px; --land-y: 160px; --land-w: 291px; }
  html.dangoland-mobile-only .landmark-live { --land-x: 1024px; --land-y: 540px; --land-w: 369px; }
  html.dangoland-mobile-only .landmark-steam { --land-x: 1655px; --land-y: 550px; --land-w: 349px; }
  html.dangoland-mobile-only .landmark-gallery { --land-x: 470px; --land-y: 900px; --land-w: 359px; }
  html.dangoland-mobile-only .landmark-community { --land-x: 1024px; --land-y: 1013px; --land-w: 369px; }
  html.dangoland-mobile-only .landmark-arcade { --land-x: 1527px; --land-y: 890px; --land-w: 369px; }

  html.dangoland-mobile-only .dangoland-map-sign,
  html.dangoland-mobile-only .dangoland-guide,
  html.dangoland-mobile-only .dangoland-social-dock {
    display: none !important;
  }

  html.dangoland-mobile-only .dangoland-map::after {
    border-radius: 0 !important;
  }

  html.dangoland-mobile-only .district-panel {
    top: auto !important;
    bottom: 0 !important;
    width: 100% !important;
    height: min(92dvh, 850px) !important;
    border-left: 0 !important;
    border-top: 1px solid var(--line) !important;
    border-radius: 26px 26px 0 0 !important;
    transform: translateY(105%) !important;
  }

  html.dangoland-mobile-only .district-panel[aria-hidden="true"] {
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(105%) !important;
  }

  html.dangoland-mobile-only .district-panel.open,
  html.dangoland-mobile-only .district-panel[aria-hidden="false"] {
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }
}
