.hmvip-root {
	/* Cores principais HMVIP */
	--hmvip-primary: #e72b6c;
	--hmvip-secondary: #c0245a;
	--hmvip-accent: #ff6b35;
	--hmvip-discount: #F22768;
	--hmvip-success: #4caf50;
	--hmvip-z-sticky: 999;

	/* Dark/Light defaults (light as base) */
	--hmvip-bg-primary: #ffffff;
	--hmvip-bg-secondary: #f8f9fa;
	--hmvip-text-primary: #212529;
	--hmvip-shadow: rgba(231, 43, 108, 0.15);
}

/* Light Mode override — BuddyX Pro compat (escopado em .hmvip-root) */
body[data-hmvip-theme="light"] .hmvip-root,
html:not(.dark-mode):not(.dark) .hmvip-root {
	--hmvip-bg-primary: #ffffff;
	--hmvip-bg-secondary: #f8f9fa;
	--hmvip-text-primary: #212529;
	--hmvip-shadow: rgba(231, 43, 108, 0.15);
}

/* Elementos base (widgets/botões/badges) */
.hmvip-root .hmvip-subscription-widget {
	background: var(--hmvip-bg-primary);
	color: var(--hmvip-text-primary);
	box-shadow: 0 8px 24px var(--hmvip-shadow);
	border-radius: 12px;
	padding: 16px;
}

.hmvip-root .hmvip-plan-card {
	background: var(--hmvip-bg-secondary);
	color: var(--hmvip-text-primary);
	border-radius: 10px;
	padding: 12px;
}

.hmvip-root .hmvip-btn-primary {
	background: linear-gradient(135deg, var(--hmvip-primary), var(--hmvip-secondary));
	color: #fff;
	border: 0;
	border-radius: 8px;
	padding: 10px 16px;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.hmvip-root .hmvip-btn-primary:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 18px var(--hmvip-shadow);
}

/* Badge de desconto (básico; animações podem evoluir depois) */
.hmvip-root .hmvip-badge.discount-badge {
	background: linear-gradient(135deg, var(--hmvip-discount) 0%, #0099cc 100%);
	color: #fff;
	padding: 4px 8px;
	border-radius: 12px;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 0.4px;
	display: inline-block;
}

/* Ajustes mínimos responsivos */
@media (max-width: 767px) {
	.hmvip-root .hmvip-subscription-widget { padding: 12px; }
}


/* Layout variants for subscription buttons (hmvip-subscriptions) */
.hmvip-root .hmvip-layout-classic_card {
	/* classic card already covered by base styles */
}

.hmvip-root .hmvip-layout-inline_compact .hmvip-subscription-options {
	display: flex;
	gap: 8px;
	align-items: center;
	flex-wrap: wrap;
}
.hmvip-root .hmvip-layout-inline_compact .hmvip-subscription-option {
	display: inline-flex;
	align-items: center;
	padding: 6px 10px;
	border-radius: 6px;
	background: var(--hmvip-bg-secondary);
}

.hmvip-root[data-hmvip-placement="sticky_bottom"] .hmvip-layout-floating_sticky {
	position: fixed;
	right: 16px;
	bottom: 16px;
	z-index: var(--hmvip-z-sticky);
}
.hmvip-root .hmvip-layout-floating_sticky .hmvip-subscription-options {
	display: flex;
	gap: 8px;
}
.hmvip-root .hmvip-layout-floating_sticky .hmvip-subscription-option {
	box-shadow: 0 8px 24px var(--hmvip-shadow);
}

@media (max-width: 767px) {
	.hmvip-root[data-hmvip-placement="sticky_bottom"] .hmvip-layout-floating_sticky { right: 12px; bottom: 12px; }
}
