/* Mobile menu button lock — v1.0.10
   Keeps burger and sidebar X buttons functional and prevents Elementor/Hello
   global button styles from turning them green.
*/

@media (max-width: 900px) {
	body.ep-portal-page .ep-mobile-toolbar {
		display: flex !important;
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		z-index: 100000 !important;
		align-items: center !important;
		gap: 12px !important;
		width: 100vw !important;
		margin: 0 !important;
		padding: 14px 16px !important;
		border: 0 !important;
		border-bottom: 1px solid rgba(223, 230, 242, .95) !important;
		border-radius: 0 !important;
		background: rgba(238, 243, 251, .98) !important;
		box-shadow: 0 12px 28px rgba(30, 45, 80, .10) !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
	}

	body.ep-portal-page .ep-mobile-menu-toggle,
	body.ep-portal-page .ep-mobile-toolbar .ep-mobile-menu-toggle,
	body.ep-portal-page button.ep-mobile-menu-toggle {
		display: inline-grid !important;
		place-items: center !important;
		flex: 0 0 42px !important;
		width: 42px !important;
		min-width: 42px !important;
		max-width: 42px !important;
		height: 42px !important;
		min-height: 42px !important;
		max-height: 42px !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 0 !important;
		border-radius: 11px !important;
		background: #0A4669 !important;
		background-color: #0A4669 !important;
		color: #ffffff !important;
		box-shadow: 0 8px 20px rgba(10, 70, 105, .22) !important;
		text-decoration: none !important;
		text-transform: none !important;
		letter-spacing: 0 !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		cursor: pointer !important;
	}

	body.ep-portal-page .ep-mobile-menu-toggle:hover,
	body.ep-portal-page .ep-mobile-toolbar .ep-mobile-menu-toggle:hover,
	body.ep-portal-page button.ep-mobile-menu-toggle:hover,
	body.ep-portal-page .ep-mobile-menu-toggle:focus,
	body.ep-portal-page .ep-mobile-toolbar .ep-mobile-menu-toggle:focus,
	body.ep-portal-page button.ep-mobile-menu-toggle:focus {
		background: #083A58 !important;
		background-color: #083A58 !important;
		color: #ffffff !important;
		border: 0 !important;
		outline: none !important;
		box-shadow: 0 8px 20px rgba(10, 70, 105, .28), 0 0 0 3px rgba(10, 70, 105, .16) !important;
	}

	body.ep-portal-page .ep-burger-lines,
	body.ep-portal-page .ep-burger-lines > span {
		color: #ffffff !important;
		background-color: currentColor !important;
	}

	body.ep-portal-page .ep-app-sidebar {
		z-index: 100003 !important;
	}

	body.ep-portal-page.ep-mobile-menu-open .ep-app-sidebar {
		transform: translateX(0) !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
	}

	body.ep-portal-page .ep-mobile-menu-close,
	body.ep-portal-page .ep-app-sidebar .ep-mobile-menu-close,
	body.ep-portal-page button.ep-mobile-menu-close {
		display: grid !important;
		place-items: center !important;
		position: absolute !important;
		top: 18px !important;
		right: 18px !important;
		z-index: 100004 !important;
		flex: 0 0 42px !important;
		width: 42px !important;
		min-width: 42px !important;
		max-width: 42px !important;
		height: 42px !important;
		min-height: 42px !important;
		max-height: 42px !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 1px solid rgba(255, 255, 255, .18) !important;
		border-radius: 12px !important;
		background: rgba(255, 255, 255, .08) !important;
		background-color: rgba(255, 255, 255, .08) !important;
		color: #ffffff !important;
		box-shadow: none !important;
		font-family: Inter, system-ui, sans-serif !important;
		font-size: 30px !important;
		font-weight: 400 !important;
		line-height: 1 !important;
		text-align: center !important;
		text-decoration: none !important;
		text-transform: none !important;
		letter-spacing: 0 !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		cursor: pointer !important;
	}

	body.ep-portal-page .ep-mobile-menu-close:hover,
	body.ep-portal-page .ep-app-sidebar .ep-mobile-menu-close:hover,
	body.ep-portal-page button.ep-mobile-menu-close:hover,
	body.ep-portal-page .ep-mobile-menu-close:focus,
	body.ep-portal-page .ep-app-sidebar .ep-mobile-menu-close:focus,
	body.ep-portal-page button.ep-mobile-menu-close:focus {
		background: rgba(255, 255, 255, .14) !important;
		background-color: rgba(255, 255, 255, .14) !important;
		color: #ffffff !important;
		border-color: rgba(255, 255, 255, .28) !important;
		outline: none !important;
		box-shadow: 0 0 0 3px rgba(255, 255, 255, .12) !important;
	}

	body.ep-portal-page .ep-mobile-menu-backdrop {
		display: block !important;
		position: fixed !important;
		inset: 0 !important;
		z-index: 100001 !important;
		width: 100vw !important;
		height: 100dvh !important;
		padding: 0 !important;
		margin: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		background-color: transparent !important;
		box-shadow: none !important;
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
		cursor: pointer !important;
	}

	body.ep-portal-page.ep-mobile-menu-open .ep-mobile-menu-backdrop {
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
	}
}

@media (min-width: 783px) and (max-width: 900px) {
	body.ep-portal-page.admin-bar .ep-mobile-toolbar {
		top: 32px !important;
	}
}

@media (max-width: 782px) {
	body.ep-portal-page.admin-bar .ep-mobile-toolbar {
		top: 46px !important;
	}
}
