/* ===== GP Static Multilang v1.0.7 ===== */

.gp-lang-switch {
  position: relative !important;
  display: inline-block !important;
  font-family: inherit !important;
  z-index: 99999 !important;
}

.gp-lang-switch details {
  position: relative !important;
}

.gp-lang-switch summary {
  list-style: none !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 7px 11px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #202244 !important;
  border: 1px solid rgba(255, 200, 87, 0.75) !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.22) !important;
  opacity: 1 !important;
}

.gp-lang-switch summary::-webkit-details-marker {
  display: none !important;
}

.gp-lang-switch svg {
  width: 17px !important;
  height: 17px !important;
  color: #0B3D91 !important;
  fill: currentColor !important;
  opacity: 1 !important;
  flex: 0 0 auto !important;
}

.gp-lang-switch summary span,
.gp-lang-current {
  color: #202244 !important;
  opacity: 1 !important;
  font-weight: 800 !important;
  direction: ltr !important;
  unicode-bidi: isolate !important;
}

.gp-lang-switch__menu {
  position: absolute !important;
  top: calc(100% + 8px) !important;
  inset-inline-end: 0 !important;
  min-width: 138px !important;
  background: #ffffff !important;
  border: 1px solid rgba(32,34,68,0.14) !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 28px rgba(32,34,68,0.18) !important;
  padding: 8px !important;
  z-index: 999999 !important;
}

.gp-lang-switch__menu a {
  display: block !important;
  padding: 9px 10px !important;
  border-radius: 10px !important;
  color: #202244 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  white-space: nowrap !important;
}

.gp-lang-switch__menu a:hover {
  background: rgba(11,61,145,0.08) !important;
}

.gp-lang-switch.gp-lang-hidden,
body.gp-lang-switch-not-allowed .gp-lang-switch {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.gp-lang-switch-allowed .gp-lang-switch:not(.gp-lang-hidden) {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

body.gp-header-lang-de .elementor-location-header,
body.gp-header-lang-en .elementor-location-header,
body.gp-header-lang-de .site-header,
body.gp-header-lang-en .site-header {
  direction: rtl !important;
}

.gp-lang-switch,
.gp-lang-switch *,
.gp-lang-current {
  direction: ltr !important;
  unicode-bidi: isolate !important;
}

body.gp-header-lang-de .elementor-location-header a,
body.gp-header-lang-de .elementor-location-header button,
body.gp-header-lang-en .elementor-location-header a,
body.gp-header-lang-en .elementor-location-header button,
body.gp-header-lang-de .site-header a,
body.gp-header-lang-de .site-header button,
body.gp-header-lang-en .site-header a,
body.gp-header-lang-en .site-header button {
  unicode-bidi: isolate !important;
}

body.gp-header-lang-de .gp-user-panel,
body.gp-header-lang-en .gp-user-panel {
  direction: ltr !important;
  unicode-bidi: isolate !important;
  white-space: nowrap !important;
}

body.gp-page-about-lang .post-page-head-area,
body.gp-page-about-lang .page-title-wrapper,
body.gp-page-about-lang .page-title-bar,
body.gp-page-about-lang .apus-breadscrumb,
body.gp-page-about-lang .apus-breadcrumb,
body.gp-page-about-lang .breadcrumb,
body.gp-page-about-lang .breadcrumbs,
body.gp-page-about-lang .breadcrumb-wrapper,
body.gp-page-about-lang .page-header,
body.gp-page-support-lang .post-page-head-area,
body.gp-page-support-lang .page-title-wrapper,
body.gp-page-support-lang .page-title-bar,
body.gp-page-support-lang .apus-breadscrumb,
body.gp-page-support-lang .apus-breadcrumb,
body.gp-page-support-lang .breadcrumb,
body.gp-page-support-lang .breadcrumbs,
body.gp-page-support-lang .breadcrumb-wrapper,
body.gp-page-support-lang .page-header,
body.gp-page-terms-lang .post-page-head-area,
body.gp-page-terms-lang .page-title-wrapper,
body.gp-page-terms-lang .page-title-bar,
body.gp-page-terms-lang .apus-breadscrumb,
body.gp-page-terms-lang .apus-breadcrumb,
body.gp-page-terms-lang .breadcrumb,
body.gp-page-terms-lang .breadcrumbs,
body.gp-page-terms-lang .breadcrumb-wrapper,
body.gp-page-terms-lang .page-header,
body.gp-page-privacy-lang .post-page-head-area,
body.gp-page-privacy-lang .page-title-wrapper,
body.gp-page-privacy-lang .page-title-bar,
body.gp-page-privacy-lang .apus-breadscrumb,
body.gp-page-privacy-lang .apus-breadcrumb,
body.gp-page-privacy-lang .breadcrumb,
body.gp-page-privacy-lang .breadcrumbs,
body.gp-page-privacy-lang .breadcrumb-wrapper,
body.gp-page-privacy-lang .page-header {
  display: none !important;
}

body.gp-page-about-lang,
body.gp-page-about-lang #page,
body.gp-page-about-lang .site-content,
body.gp-page-about-lang .apus-main-content,
body.gp-page-about-lang .main-content,
body.gp-page-about-lang .content-area,
body.gp-page-about-lang .elementor,
body.gp-page-about-lang .elementor-section-wrap,
body.gp-page-support-lang,
body.gp-page-support-lang #page,
body.gp-page-support-lang .site-content,
body.gp-page-support-lang .apus-main-content,
body.gp-page-support-lang .main-content,
body.gp-page-support-lang .content-area,
body.gp-page-support-lang .elementor,
body.gp-page-support-lang .elementor-section-wrap,
body.gp-page-terms-lang,
body.gp-page-terms-lang #page,
body.gp-page-terms-lang .site-content,
body.gp-page-terms-lang .apus-main-content,
body.gp-page-terms-lang .main-content,
body.gp-page-terms-lang .content-area,
body.gp-page-terms-lang .elementor,
body.gp-page-terms-lang .elementor-section-wrap,
body.gp-page-privacy-lang,
body.gp-page-privacy-lang #page,
body.gp-page-privacy-lang .site-content,
body.gp-page-privacy-lang .apus-main-content,
body.gp-page-privacy-lang .main-content,
body.gp-page-privacy-lang .content-area,
body.gp-page-privacy-lang .elementor,
body.gp-page-privacy-lang .elementor-section-wrap {
  background: #ffffff !important;
}

body.gp-page-about-lang .site-main,
body.gp-page-about-lang main,
body.gp-page-about-lang #main,
body.gp-page-support-lang .site-main,
body.gp-page-support-lang main,
body.gp-page-support-lang #main,
body.gp-page-terms-lang .site-main,
body.gp-page-terms-lang main,
body.gp-page-terms-lang #main,
body.gp-page-privacy-lang .site-main,
body.gp-page-privacy-lang main,
body.gp-page-privacy-lang #main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

@media (max-width: 767px) {
  .gp-lang-switch summary {
    padding: 6px 9px !important;
    font-size: 12px !important;
  }

  .gp-lang-switch svg {
    width: 16px !important;
    height: 16px !important;
  }

  .gp-lang-switch__menu {
    min-width: 120px !important;
  }

  .gp-lang-switch,
  .gp-lang-switch * {
    direction: ltr !important;
    unicode-bidi: isolate !important;
  }

  .gp-user-panel {
    direction: ltr !important;
    white-space: nowrap !important;
  }

  body.gp-header-lang-de .elementor-location-header,
  body.gp-header-lang-en .elementor-location-header,
  body.gp-header-lang-de .site-header,
  body.gp-header-lang-en .site-header {
    direction: rtl !important;
  }

  body.gp-header-lang-de .elementor-location-header .elementor-nav-menu--dropdown,
  body.gp-header-lang-en .elementor-location-header .elementor-nav-menu--dropdown,
  body.gp-header-lang-de .elementor-location-header .elementor-nav-menu--dropdown ul,
  body.gp-header-lang-en .elementor-location-header .elementor-nav-menu--dropdown ul,
  body.gp-header-lang-de .elementor-location-header .elementor-nav-menu--dropdown li,
  body.gp-header-lang-en .elementor-location-header .elementor-nav-menu--dropdown li,
  body.gp-header-lang-de .elementor-location-header .elementor-nav-menu--dropdown a,
  body.gp-header-lang-en .elementor-location-header .elementor-nav-menu--dropdown a {
    direction: ltr !important;
    text-align: center !important;
    unicode-bidi: isolate !important;
  }

  body.gp-header-lang-de .elementor-location-header .elementor-nav-menu--dropdown a,
  body.gp-header-lang-en .elementor-location-header .elementor-nav-menu--dropdown a {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    white-space: normal !important;
  }

  body.gp-header-lang-de .elementor-location-header .elementor-nav-menu--dropdown .gp-user-panel,
  body.gp-header-lang-en .elementor-location-header .elementor-nav-menu--dropdown .gp-user-panel,
  body.gp-header-lang-de .elementor-nav-menu--dropdown .gp-user-panel,
  body.gp-header-lang-en .elementor-nav-menu--dropdown .gp-user-panel,
  body.gp-header-lang-de .gp-mobile-menu-open .gp-user-panel,
  body.gp-header-lang-en .gp-mobile-menu-open .gp-user-panel {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    background: #ffffff !important;
    border: 2px solid #d9a441 !important;
    border-radius: 999px !important;
    text-shadow: none !important;
    box-shadow: 0 6px 16px rgba(0,0,0,0.18) !important;
    opacity: 1 !important;
    filter: none !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    padding: 10px 14px !important;
  }

  body.gp-header-lang-de .elementor-location-header .elementor-nav-menu--dropdown .gp-user-panel *,
  body.gp-header-lang-en .elementor-location-header .elementor-nav-menu--dropdown .gp-user-panel *,
  body.gp-header-lang-de .elementor-nav-menu--dropdown .gp-user-panel *,
  body.gp-header-lang-en .elementor-nav-menu--dropdown .gp-user-panel * {
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    text-shadow: none !important;
    opacity: 1 !important;
    filter: none !important;
  }
}

/* ===== GP Static Multilang v1.0.6: internal plugin language switchers hidden ===== */
body.gp-page-student_dashboard-lang .gpsdt-lang-switch,
body.gp-page-student_dashboard-lang .gpsdt-login-lang-holder,
body.gp-page-student_dashboard-lang .gpsdt-ui-lang-switch,
body.gp-page-learning_package-lang .gp-lp-visible-lang,
body.gp-page-auth_pages-lang .gp-auth-lang-switch {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* ===== GP Static Multilang v1.0.7: WPML/Woo bridge ===== */
body.gp-page-wpml_dynamic-lang .wpml-ls-statics-footer,
body.gp-page-wpml_dynamic-lang #lang_sel_footer,
body.gp-page-wpml_dynamic-lang footer .wpml-ls,
body.gp-page-wpml_dynamic-lang .elementor-location-footer .wpml-ls {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

body.gp-page-wpml_dynamic-lang .gp-lang-switch-injected {
  margin-inline: 10px 18px !important;
  align-self: center !important;
}

body.gp-page-wpml_dynamic-lang .gp-lang-switch-wpml {
  display: inline-block !important;
  vertical-align: middle !important;
}

body.gp-page-wpml_dynamic-lang.gp-header-lang-de .elementor-location-footer,
body.gp-page-wpml_dynamic-lang.gp-header-lang-en .elementor-location-footer,
body.gp-page-wpml_dynamic-lang.gp-header-lang-de footer,
body.gp-page-wpml_dynamic-lang.gp-header-lang-en footer {
  direction: ltr !important;
  unicode-bidi: isolate !important;
}

body.gp-page-wpml_dynamic-lang.gp-header-lang-de .elementor-location-header .gp-user-panel,
body.gp-page-wpml_dynamic-lang.gp-header-lang-en .elementor-location-header .gp-user-panel {
  color: #202244 !important;
  -webkit-text-fill-color: #202244 !important;
  background: #ffffff !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

@media (max-width: 767px) {
  body.gp-page-wpml_dynamic-lang .gp-lang-switch-injected {
    margin-inline: 6px !important;
  }
}
