/**
 * VP ERP — theme isolation reset (Woodmart / Elementor / WooCommerce globals).
 * Loaded last on portal pages. All rules scoped to #vpm-app.
 */

@layer vpm-isolation {
	body.vpm-portal-page #vpm-app {
		color: var(--vpm-text, #111827);
		font-family: var(--vpm-font, inherit);
		font-size: var(--vpm-text-md, 0.875rem);
		line-height: 1.5;
		text-transform: none;
		letter-spacing: normal;
	}

	body.vpm-portal-page #vpm-app *,
	body.vpm-portal-page #vpm-app *::before,
	body.vpm-portal-page #vpm-app *::after {
		box-sizing: border-box;
	}

	body.vpm-portal-page #vpm-app a {
		color: inherit;
		text-decoration: none;
	}

	body.vpm-portal-page #vpm-app a:hover,
	body.vpm-portal-page #vpm-app a:focus-visible {
		text-decoration: none;
	}

	body.vpm-portal-page #vpm-app button,
	body.vpm-portal-page #vpm-app input,
	body.vpm-portal-page #vpm-app select,
	body.vpm-portal-page #vpm-app textarea {
		font-family: inherit;
		letter-spacing: normal;
		text-transform: none;
	}

	body.vpm-portal-page #vpm-app button:not([class*="vpm-"]) {
		appearance: none;
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		color: inherit;
		cursor: pointer;
		font-weight: inherit;
		line-height: inherit;
		min-height: 0;
		padding: 0;
		width: auto;
	}

	body.vpm-portal-page #vpm-app input:not([class*="vpm-"]),
	body.vpm-portal-page #vpm-app select:not([class*="vpm-"]),
	body.vpm-portal-page #vpm-app textarea:not([class*="vpm-"]) {
		background: #ffffff;
		border: 1px solid var(--vpm-border, #e5e7eb);
		border-radius: var(--vpm-radius-sm, 6px);
		box-shadow: none;
		color: inherit;
		min-height: 40px;
		padding: 8px 12px;
	}

	body.vpm-portal-page #vpm-app img {
		height: auto;
		max-width: 100%;
	}

	body.vpm-portal-page #vpm-app h1,
	body.vpm-portal-page #vpm-app h2,
	body.vpm-portal-page #vpm-app h3,
	body.vpm-portal-page #vpm-app h4 {
		font-family: var(--vpm-font, inherit);
		letter-spacing: -0.01em;
		text-transform: none;
	}

	body.vpm-portal-page.vpm-portal-guest .vpm-gate button:not([class*="vpm-"]) {
		appearance: none;
		background: transparent;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		color: inherit;
		font-family: inherit;
		text-transform: none;
	}

	/* Marketer card button — mobile Safari defaults center content */
	body.vpm-portal-page #vpm-app button.vpm-dash-user-panel {
		appearance: none;
		-webkit-appearance: none;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		text-align: start;
		width: 100%;
	}

	/* Marketer card — single horizontal row */
	body.vpm-portal-page #vpm-app .vpm-dash-user-panel__row {
		align-items: center !important;
		display: flex !important;
		flex-wrap: nowrap !important;
		width: 100% !important;
	}

	body.vpm-portal-page #vpm-app.vpm-ltr .vpm-dash-user-panel__row {
		flex-direction: row !important;
	}

	body.vpm-portal-page #vpm-app.vpm-rtl .vpm-dash-user-panel__row {
		flex-direction: row-reverse !important;
	}

	body.vpm-portal-page #vpm-app .vpm-dash-user-panel__profile {
		align-items: center !important;
		display: flex !important;
		flex: 0 0 auto !important;
		flex-shrink: 0 !important;
		gap: 10px !important;
		justify-content: flex-end !important;
		max-width: none !important;
		min-width: max-content !important;
		width: max-content !important;
		margin-inline: 0 !important;
	}

	body.vpm-portal-page #vpm-app.vpm-rtl .vpm-dash-user-panel__profile {
		flex-direction: row !important;
		justify-content: flex-end !important;
	}

	body.vpm-portal-page #vpm-app.vpm-ltr .vpm-dash-user-panel__profile {
		flex-direction: row-reverse !important;
		justify-content: flex-start !important;
	}

	body.vpm-portal-page #vpm-app .vpm-dash-user-panel__identity {
		flex: 0 1 auto !important;
		max-width: 100% !important;
	}

	body.vpm-portal-page #vpm-app.vpm-rtl .vpm-dash-user-panel__identity {
		align-items: flex-end !important;
		text-align: right !important;
	}

	body.vpm-portal-page #vpm-app.vpm-ltr .vpm-dash-user-panel__identity {
		align-items: flex-start !important;
		text-align: left !important;
	}

	body.vpm-portal-page #vpm-app .vpm-dash-user-panel__stat {
		display: flex !important;
		flex-direction: column !important;
		flex: 1 1 0 !important;
		min-width: 0;
		text-align: inherit !important;
	}

	@media (max-width: 959px) {
		body.vpm-portal-page #vpm-app button.vpm-dash-user-panel {
			text-align: start;
		}

		body.vpm-portal-page #vpm-app.vpm-rtl .vpm-dash-user-panel__profile {
			margin-inline: 0 !important;
		}

		body.vpm-portal-page #vpm-app .vpm-dash-user-panel__row {
			flex-wrap: nowrap !important;
		}

		body.vpm-portal-page #vpm-app .vpm-dash-user-panel__stat {
			align-items: flex-end !important;
		}

		body.vpm-portal-page #vpm-app.vpm-ltr .vpm-dash-user-panel__stat {
			align-items: flex-start !important;
		}
	}
}
