/* FloristChina Mobile Drilldown Menu v1.0.1 */

.fcmdm {
	--fcmdm-accent: #b0173f;
	--fcmdm-text: #171717;
	--fcmdm-muted: #767676;
	--fcmdm-border: #e2e2e2;
	--fcmdm-topbar-height: 76px;
	position: relative;
	z-index: 999998;
}

.fcmdm-toggle {
	align-items: center;
	background: transparent;
	border: 0;
	color: var(--fcmdm-text);
	cursor: pointer;
	display: inline-flex;
	gap: 9px;
	justify-content: center;
	min-height: 44px;
	padding: 7px;
}

.fcmdm-toggle-icon {
	display: grid;
	gap: 5px;
	width: 25px;
}

.fcmdm-toggle-icon span {
	background: currentColor;
	border-radius: 1px;
	display: block;
	height: 2px;
	width: 100%;
}

.fcmdm-toggle-label {
	font-size: 14px;
	font-weight: 600;
}

.fcmdm-drawer,
.fcmdm-backdrop {
	display: none;
}

body.fcmdm-body-locked {
	overflow: hidden !important;
	touch-action: none;
}

@media (max-width: 1024px) {
	.fcmdm-drawer {
		background: #fff;
		bottom: 0;
		display: block;
		left: 0;
		opacity: 0;
		overflow: hidden;
		pointer-events: none;
		position: fixed;
		right: 0;
		top: 0;
		transform: translateX(-100%);
		transition: transform .3s ease, opacity .3s ease;
		visibility: hidden;
		z-index: 1000000;
	}

	.fcmdm.is-open .fcmdm-drawer {
		opacity: 1;
		pointer-events: auto;
		transform: translateX(0);
		visibility: visible;
	}

	.fcmdm-backdrop {
		background: rgba(0, 0, 0, .35);
		bottom: 0;
		display: block;
		left: 0;
		opacity: 0;
		pointer-events: none;
		position: fixed;
		right: 0;
		top: 0;
		transition: opacity .25s ease;
		z-index: 999999;
	}

	.fcmdm.is-open .fcmdm-backdrop {
		opacity: 1;
		pointer-events: auto;
	}

	.fcmdm-topbar {
		align-items: center;
		background: #fff;
		border-bottom: 1px solid var(--fcmdm-border);
		display: grid;
		grid-template-columns: 48px minmax(95px, 1fr) auto;
		height: var(--fcmdm-topbar-height);
		padding: 0 18px;
		position: relative;
		z-index: 5;
	}

	.fcmdm-close {
		align-items: center;
		background: transparent;
		border: 0;
		color: #202020;
		cursor: pointer;
		display: flex;
		height: 44px;
		justify-content: flex-start;
		padding: 0;
		width: 44px;
	}

	.fcmdm-close svg {
		fill: none;
		height: 34px;
		stroke: currentColor;
		stroke-linecap: round;
		stroke-width: 1.8;
		width: 34px;
	}

	.fcmdm-brand {
		align-items: center;
		display: flex;
		justify-content: flex-start;
		min-width: 0;
		text-decoration: none;
	}

	.fcmdm-logo {
		display: block;
		height: auto;
		max-height: 46px;
		max-width: 145px;
		width: auto;
	}

	.fcmdm-brand span {
		color: var(--fcmdm-text);
		font-family: Georgia, serif;
		font-size: 20px;
		white-space: nowrap;
	}

	.fcmdm-tools {
		align-items: center;
		display: flex;
		gap: 12px;
		justify-content: flex-end;
	}

	.fcmdm-tools a {
		align-items: center;
		color: #111;
		display: flex;
		height: 38px;
		justify-content: center;
		position: relative;
		text-decoration: none;
		width: 38px;
	}

	.fcmdm-tools svg {
		fill: none;
		height: 28px;
		stroke: currentColor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.8;
		width: 28px;
	}

	.fcmdm-stage {
		height: calc(100dvh - var(--fcmdm-topbar-height));
		overflow: hidden;
		position: relative;
		width: 100%;
	}

	.fcmdm-panel {
		background: #fff;
		bottom: 0;
		display: flex;
		flex-direction: column;
		left: 0;
		opacity: 0;
		pointer-events: none;
		position: absolute;
		right: 0;
		top: 0;
		transform: translateX(100%);
		transition: transform .3s ease, opacity .2s ease;
		visibility: hidden;
	}

	.fcmdm-panel.is-active {
		opacity: 1;
		pointer-events: auto;
		transform: translateX(0);
		visibility: visible;
		z-index: 2;
	}

	.fcmdm-panel.is-previous {
		opacity: 1;
		transform: translateX(-100%);
		visibility: visible;
		z-index: 1;
	}

	.fcmdm-panel-heading {
		align-items: center;
		border-bottom: 1px solid var(--fcmdm-border);
		display: flex;
		justify-content: space-between;
		min-height: 92px;
		padding: 0 28px;
	}

	.fcmdm-panel-heading h2 {
		color: var(--fcmdm-text);
		font-size: 25px;
		font-weight: 700;
		letter-spacing: -.02em;
		line-height: 1.2;
		margin: 0;
		text-transform: uppercase;
	}

	.fcmdm-panel-heading h2 a {
		color: inherit;
		text-decoration: none;
	}

	.fcmdm-back {
		align-items: center;
		background: transparent;
		border: 0;
		color: var(--fcmdm-muted);
		cursor: pointer;
		display: inline-flex;
		font-size: 16px;
		font-weight: 600;
		gap: 3px;
		padding: 10px 0 10px 12px;
	}

	.fcmdm-back svg {
		fill: none;
		height: 31px;
		stroke: currentColor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 2;
		width: 31px;
	}

	.fcmdm-panel-scroll {
		-webkit-overflow-scrolling: touch;
		flex: 1;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
	}

	.fcmdm-list {
		list-style: none;
		margin: 0 !important;
		padding: 0 28px 35px !important;
	}

	.fcmdm-item {
		border-bottom: 1px solid var(--fcmdm-border);
		margin: 0 !important;
		padding: 0 !important;
	}

	.fcmdm-row {
		align-items: center;
		background: transparent;
		border: 0;
		box-sizing: border-box;
		color: var(--fcmdm-text);
		cursor: pointer;
		display: flex;
		font-family: inherit;
		font-size: 19px;
		font-weight: 500;
		justify-content: space-between;
		line-height: 1.25;
		margin: 0;
		min-height: 72px;
		padding: 14px 0;
		text-align: left;
		text-decoration: none;
		width: 100%;
	}

	.fcmdm-panel[data-fcmdm-panel="fcmdm-root"] .fcmdm-row {
		font-size: 20px;
		font-weight: 650;
		text-transform: uppercase;
	}

	.fcmdm-row:hover,
	.fcmdm-row:focus-visible,
	.fcmdm-item.is-current > .fcmdm-row {
		color: var(--fcmdm-accent);
	}

	.fcmdm-label {
		min-width: 0;
		overflow-wrap: anywhere;
		padding-right: 16px;
	}

	.fcmdm-arrow {
		fill: none;
		flex: 0 0 auto;
		height: 29px;
		stroke: currentColor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 2;
		width: 29px;
	}

	.admin-bar .fcmdm-drawer,
	.admin-bar .fcmdm-backdrop {
		top: 46px;
	}

	.admin-bar .fcmdm-stage {
		height: calc(100dvh - var(--fcmdm-topbar-height) - 46px);
	}
}

@media (max-width: 480px) {
	.fcmdm-topbar {
		grid-template-columns: 44px minmax(80px, 1fr) auto;
		padding: 0 14px;
	}

	.fcmdm-tools {
		gap: 7px;
	}

	.fcmdm-tools a {
		height: 34px;
		width: 34px;
	}

	.fcmdm-tools svg {
		height: 25px;
		width: 25px;
	}

	.fcmdm-logo {
		max-height: 40px;
		max-width: 120px;
	}

	.fcmdm-list {
		padding-left: 22px !important;
		padding-right: 22px !important;
	}

	.fcmdm-panel-heading {
		padding-left: 22px;
		padding-right: 22px;
	}

	.fcmdm-row {
		font-size: 17px;
		min-height: 66px;
	}

	.fcmdm-panel[data-fcmdm-panel="fcmdm-root"] .fcmdm-row {
		font-size: 18px;
	}
}

@media (min-width: 1025px) {
	.fcmdm {
		display: none !important;
	}
}


/* v1.0.1 Elementor editor safety.
 * Never allow inactive panels to enter normal document flow.
 */
.fcmdm .fcmdm-drawer:not([aria-hidden="false"]) {
	pointer-events: none;
}

.fcmdm .fcmdm-panel[aria-hidden="true"] {
	pointer-events: none;
}
