/**
 * ClaudMentor front-end: flush Elementor embedding + auto-height hosts.
 */

.claudmentor--iframe {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.claudmentor--iframe.claudmentor--auto-height {
	height: auto;
	min-height: 0;
}

.claudmentor--iframe.claudmentor--auto-height:not(.claudmentor--chrome) .claudmentor-frame {
	min-height: 50vh;
}

.claudmentor--iframe.claudmentor--chrome {
	overflow: hidden !important;
}

.claudmentor-frame {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: top;
	overflow: hidden;
}

/* Elementor widget shell */
.elementor-widget-claudmentor_design,
.elementor-widget-claudmentor_design > .elementor-widget-container {
	padding: 0 !important;
	margin: 0;
	width: 100%;
	height: auto !important;
	min-height: 0 !important;
	overflow: hidden !important;
}

/* Classic sections/columns */
.elementor-section:has(.elementor-widget-claudmentor_design),
.elementor-section:has(.elementor-widget-claudmentor_design) > .elementor-container,
.elementor-column:has(.elementor-widget-claudmentor_design),
.elementor-column:has(.elementor-widget-claudmentor_design) > .elementor-widget-wrap {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: hidden !important;
}

/* Elementor flexbox containers (e-con) */
.e-con:has(.elementor-widget-claudmentor_design),
.e-con:has(> .elementor-widget-claudmentor_design) {
	--padding-top: 0px !important;
	--padding-right: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--min-height: auto !important;
	--height: auto !important;
	padding: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	gap: 0;
	overflow: hidden !important;
}

.e-con.e-parent:has(.elementor-widget-claudmentor_design) {
	--container-widget-height: auto;
}

/* Elementor Theme Builder header/footer slots */
.elementor-location-header:has(.elementor-widget-claudmentor_design),
.elementor-location-footer:has(.elementor-widget-claudmentor_design) {
	padding: 0 !important;
	margin: 0;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: hidden !important;
}

.elementor-location-header .elementor-widget-claudmentor_design,
.elementor-location-footer .elementor-widget-claudmentor_design {
	width: 100%;
	overflow: hidden !important;
}

.elementor-location-header .claudmentor-frame,
.elementor-location-footer .claudmentor-frame,
.elementor-location-header .claudmentor--iframe,
.elementor-location-footer .claudmentor--iframe {
	overflow: hidden !important;
}

/* Elementor Theme-Builder setzt sonst 400px Vorschau-Höhe */
.elementor-location-header .elementor-theme-builder-content-area,
.elementor-location-footer .elementor-theme-builder-content-area,
.elementor-location-header,
.elementor-location-footer {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: hidden !important;
}

.elementor-location-header .e-con,
.elementor-location-footer .e-con,
.elementor-location-header .e-con-inner,
.elementor-location-footer .e-con-inner {
	overflow: hidden !important;
	min-height: 0 !important;
	max-height: none !important;
}

.claudmentor--chrome-header,
.claudmentor--chrome-footer {
	overflow: hidden !important;
}

.claudmentor--chrome-header.claudmentor--iframe,
.elementor-location-header .claudmentor--chrome-header {
	overflow: visible !important;
}

/* Konto-Dropdown aus Header-iframe — schwebt über Hero/Seiteninhalt */
.claudmentor-account-menu-backdrop {
	position: fixed;
	inset: 0;
	z-index: 999998;
	background: transparent;
}

.claudmentor-account-menu {
	position: fixed;
	z-index: 999999;
	min-width: 220px;
	padding: 6px;
	border-radius: 12px;
	border: 1px solid #e6eaf0;
	background: #fff;
	box-shadow: 0 12px 32px rgba(15, 50, 114, 0.12);
}

.claudmentor-account-menu a {
	display: block;
	padding: 10px 12px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 600;
	color: #0f172a;
	text-decoration: none;
}

.claudmentor-account-menu a:hover {
	background: #f8fafc;
	color: #1b4f9b;
}

.claudmentor-account-menu a.is-danger {
	color: #dc2626;
}

.claudmentor-account-menu a.is-danger:hover {
	background: #fef2f2;
	color: #dc2626;
}
