.elementor-42 .elementor-element.elementor-element-9de61ff{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for container, class: .elementor-element-9de61ff *//* ===== BOOKERSE / AMELIA CUSTOMER PANEL ===== */

/* =========================
   BASE
========================= */
html,
body {
  overflow-x: hidden !important;
}

/* El contenedor donde metes el shortcode */
.elementor-widget-shortcode,
.elementor-widget-shortcode .elementor-widget-container,
.elementor-shortcode {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
}

/* Amelia base */
#amelia-container,
.amelia-v2-booking #amelia-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Wrapper general del customer panel */
.amelia-v2-booking #amelia-container .am-cp,
.amelia-v2-booking #amelia-container .am-cp__main {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* Zona principal */
.amelia-v2-booking #amelia-container .am-cp__main {
  min-height: calc(100vh - 90px) !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
}

/* Caja interior del panel */
.amelia-v2-booking #amelia-container .am-cp__main > *,
.amelia-v2-booking #amelia-container .am-appointments,
.amelia-v2-booking #amelia-container .am-appointments__main,
.amelia-v2-booking #amelia-container .am-profile,
.amelia-v2-booking #amelia-container .am-profile__main {
  margin-top: 0 !important;
  align-self: flex-start !important;
}

/* Si Amelia añade separación superior en desktop */
.amelia-v2-booking #amelia-container .am-cp__main .am-fs__main-inner,
.amelia-v2-booking #amelia-container .am-cp__main .am-fs__main,
.amelia-v2-booking #amelia-container .am-cp__main .am-appointments__wrapper,
.amelia-v2-booking #amelia-container .am-cp__main .am-profile__wrapper {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Elimina efectos raros del contenedor de Elementor */
.elementor-section,
.elementor-container,
.elementor-element {
  box-sizing: border-box;
}

/* =========================
   QUITAR BORDE / MARCO / SOMBRA EXTERIOR
========================= */
.amelia-v2-booking #amelia-container .am-cp,
.amelia-v2-booking #amelia-container .am-cp__main,
.amelia-v2-booking #amelia-container .am-cp__main > div,
.amelia-v2-booking #amelia-container .am-appointments,
.amelia-v2-booking #amelia-container .am-profile,
.amelia-v2-booking #amelia-container .am-fs__main,
.amelia-v2-booking #amelia-container .am-fs__main-inner {
  box-shadow: none !important;
}

.amelia-v2-booking #amelia-container .am-cp__main::before,
.amelia-v2-booking #amelia-container .am-cp__main::after,
.amelia-v2-booking #amelia-container .am-cp::before,
.amelia-v2-booking #amelia-container .am-cp::after {
  display: none !important;
  content: none !important;
}

/* =========================
   EL SCROLL LO MANDA EL PANEL, NO LA PÁGINA
========================= */
.amelia-v2-booking #amelia-container .am-cp {
  height: calc(100vh - 90px) !important;
  max-height: calc(100vh - 90px) !important;
  overflow: hidden !important;
}

/* Barra lateral */
.amelia-v2-booking #amelia-container .am-cp aside,
.amelia-v2-booking #amelia-container .am-cp__aside,
.amelia-v2-booking #amelia-container .am-cpa {
  height: 100% !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

/* Contenido derecho */
.amelia-v2-booking #amelia-container .am-appointments,
.amelia-v2-booking #amelia-container .am-appointments__main,
.amelia-v2-booking #amelia-container .am-profile,
.amelia-v2-booking #amelia-container .am-profile__main,
.amelia-v2-booking #amelia-container .am-fs__main,
.amelia-v2-booking #amelia-container .am-fs__main-inner,
.amelia-v2-booking #amelia-container .am-appointments__wrapper,
.amelia-v2-booking #amelia-container .am-profile__wrapper {
  max-height: 100% !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  -webkit-overflow-scrolling: touch !important;
}

/* =========================
   AJUSTES MÓVIL / IPHONE
========================= */
@media (max-width: 767px) {
  html,
  body {
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
    overscroll-behavior: none !important;
    -webkit-overflow-scrolling: auto !important;
  }

  :root {
    --bookerse-mobile-offset-bottom: 120px;
  }

  body {
    padding-bottom: 0 !important;
    margin: 0 !important;
  }

  #amelia-container,
  .amelia-v2-booking #amelia-container,
  .amelia-v2-booking #amelia-container .am-cp,
  .amelia-v2-booking #amelia-container .am-cp__main {
    height: calc(100dvh - var(--bookerse-mobile-offset-bottom)) !important;
    max-height: calc(100dvh - var(--bookerse-mobile-offset-bottom)) !important;
    min-height: calc(100dvh - var(--bookerse-mobile-offset-bottom)) !important;
    overflow: hidden !important;
  }

  .amelia-v2-booking #amelia-container .am-cp__main {
    min-height: calc(100dvh - var(--bookerse-mobile-offset-bottom)) !important;
    padding-top: 0 !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
  }

  .amelia-v2-booking #amelia-container .am-cp,
  .amelia-v2-booking #amelia-container .am-cp__main,
  .amelia-v2-booking #amelia-container .am-appointments,
  .amelia-v2-booking #amelia-container .am-appointments__main,
  .amelia-v2-booking #amelia-container .am-profile,
  .amelia-v2-booking #amelia-container .am-profile__main {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .amelia-v2-booking #amelia-container .am-appointments,
  .amelia-v2-booking #amelia-container .am-appointments__main,
  .amelia-v2-booking #amelia-container .am-profile,
  .amelia-v2-booking #amelia-container .am-profile__main,
  .amelia-v2-booking #amelia-container .am-fs__main,
  .amelia-v2-booking #amelia-container .am-fs__main-inner,
  .amelia-v2-booking #amelia-container .am-appointments__wrapper,
  .amelia-v2-booking #amelia-container .am-profile__wrapper,
  .amelia-v2-booking #amelia-container .am-slide-popup__block,
  .amelia-v2-booking #amelia-container .am-slide-popup__block-inner {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    max-height: calc(100dvh - var(--bookerse-mobile-offset-bottom)) !important;
    padding-bottom: 8px !important;
    box-sizing: border-box !important;
  }

  .amelia-v2-booking #amelia-container .am-cp aside,
  .amelia-v2-booking #amelia-container .am-cp__aside,
  .amelia-v2-booking #amelia-container .am-cpa {
    height: 100% !important;
    max-height: 100% !important;
    overflow: hidden !important;
  }
}/* End custom CSS */