/**
 * Hollywood Prints Designer UI — Phase 1 mobile/tablet designer shell.
 *
 * All rules are scoped to body.hp-mobile-designer (JS adds this at max-width: 899px).
 * Desktop Design Studio (min-width: 900px) is unchanged.
 */

.hp-mobile-designer {
	--hp-pink: #FF39A3;
	--hp-mint: #77FFC9;
	--hp-yellow: #FEC85C;
	--hp-surface: #FFFFFF;
	--hp-surface-muted: #F6F6F8;
	--hp-border: #E7E7EC;
	--hp-text: #242424;
	--hp-text-muted: #6F6F78;
	--hp-mobile-header-height: 56px;
	--hp-font: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* -------------------------------------------------------------------------
   Hide normal site chrome only inside mobile designer mode.
   Prefer semantic theme/WooCommerce selectors over Elementor IDs.
   ------------------------------------------------------------------------- */

.hp-mobile-designer #haru-header,
.hp-mobile-designer .haru-page-title,
.hp-mobile-designer .haru-breadcrumb,
.hp-mobile-designer .woocommerce-breadcrumb,
.hp-mobile-designer #haru-footer,
.hp-mobile-designer #haru-bottom-toolbar,
.hp-mobile-designer .haru-bottom-toolbar,
.hp-mobile-designer .hp-design-studio-chrome-hidden {
	display: none !important;
}

/* Collapse leftover page chrome so the designer sits under our header. */
.hp-mobile-designer main.haru-page,
.hp-mobile-designer .page-content,
.hp-mobile-designer .page-content-wrap,
.hp-mobile-designer .entry-content,
.hp-mobile-designer .hp-design-studio-root {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.hp-mobile-designer .haru-container,
.hp-mobile-designer .e-con-inner,
.hp-mobile-designer .hp-design-studio-root > .elementor-element > .e-con-inner {
	max-width: 100% !important;
	width: 100% !important;
}

/* -------------------------------------------------------------------------
   Compact designer header
   ------------------------------------------------------------------------- */

.hp-mobile-designer-header {
	display: none;
	box-sizing: border-box;
	position: sticky;
	top: 0;
	z-index: 10050;
	width: 100%;
	min-height: calc(var(--hp-mobile-header-height) + env(safe-area-inset-top, 0px));
	padding: env(safe-area-inset-top, 0px) 8px 0;
	background: var(--hp-surface);
	border-bottom: 1px solid var(--hp-border);
	box-shadow: 0 1px 0 rgba(36, 36, 36, 0.04);
	font-family: var(--hp-font);
	color: var(--hp-text);
}

.admin-bar.hp-mobile-designer .hp-mobile-designer-header {
	top: var(--wp-admin--admin-bar--height, 46px);
}

.hp-mobile-designer .hp-mobile-designer-header {
	display: block;
}

.hp-mobile-designer-header__bar {
	display: flex;
	align-items: center;
	gap: 6px;
	min-height: var(--hp-mobile-header-height);
	max-width: 100%;
}

.hp-mobile-designer-header__title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0 4px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0;
	text-align: center;
	color: var(--hp-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.hp-mobile-designer-header__actions {
	display: flex;
	align-items: center;
	gap: 4px;
	flex: 0 0 auto;
}

.hp-mobile-designer-header__btn {
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 10px;
	background: transparent;
	color: var(--hp-text);
	cursor: pointer;
	line-height: 1;
}

.hp-mobile-designer-header__btn:hover,
.hp-mobile-designer-header__btn:focus-visible {
	background: var(--hp-surface-muted);
	outline: none;
}

.hp-mobile-designer-header__btn:focus-visible {
	box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px var(--hp-pink);
}

.hp-mobile-designer-header__btn:disabled {
	opacity: 0.38;
	cursor: default;
	pointer-events: none;
}

.hp-mobile-designer-header__undo,
.hp-mobile-designer-header__redo {
	border: 1px solid var(--hp-border);
	border-radius: 999px;
	background: var(--hp-surface);
	color: var(--hp-text);
}

.hp-mobile-designer-header__undo:not(:disabled):hover,
.hp-mobile-designer-header__redo:not(:disabled):hover,
.hp-mobile-designer-header__undo:not(:disabled):focus-visible,
.hp-mobile-designer-header__redo:not(:disabled):focus-visible {
	border-color: var(--hp-pink);
	color: var(--hp-pink);
	background: rgba(255, 57, 163, 0.06);
}

.hp-mobile-designer-header__undo:disabled,
.hp-mobile-designer-header__redo:disabled {
	border-color: var(--hp-border);
	background: var(--hp-surface-muted);
	color: var(--hp-text-muted);
}

.hp-mobile-designer-header__btn svg {
	display: block;
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.hp-mobile-designer-header__price {
	display: inline-flex;
	align-items: center;
	max-width: 72px;
	margin: 0 2px 0 4px;
	padding: 0;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.1;
	color: var(--hp-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.hp-mobile-designer-header__price .woocommerce-Price-amount,
.hp-mobile-designer-header__price .amount {
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
}

.hp-mobile-designer-header__next {
	min-width: 64px;
	padding: 0 10px;
	background: var(--hp-pink);
	color: #ffffff;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	border-radius: 999px;
}

@media (max-width: 360px) {
	.hp-mobile-designer-header__price {
		max-width: 56px;
		font-size: 12px;
	}

	.hp-mobile-designer-header__next {
		min-width: 56px;
		padding: 0 8px;
		font-size: 11px;
	}
}

.hp-mobile-designer-header__next:hover,
.hp-mobile-designer-header__next:focus-visible {
	background: #e0278e;
	color: #ffffff;
}

.hp-mobile-designer-header__notice {
	display: none;
	margin: 0 8px 10px;
	padding: 10px 12px;
	border-radius: 10px;
	background: var(--hp-surface-muted);
	border: 1px solid var(--hp-border);
	color: var(--hp-text);
	font-size: 13px;
	line-height: 1.4;
}

.hp-mobile-designer-header__notice.is-visible {
	display: block;
}

/* Keep WCDP canvas below the sticky header; do not retune Fabric sizing. */
.hp-mobile-designer #wcdp-container {
	padding-top: 8px;
}
