/* MVMP Country Switcher — Sitewide Styles */
.mvmp-cs { position: relative; display: inline-flex; font-family: inherit; }

.mvmp-cs__trigger {
	display: inline-flex; align-items: center; gap: 7px;
	padding: 8px 14px; border-radius: 8px; border: 1px solid var(--mvmp-border, #e2e8f0);
	background: var(--mvmp-card, #fff); color: var(--mvmp-text, #1a202c);
	font-size: .88rem; font-weight: 600; cursor: pointer;
	transition: all .2s; white-space: nowrap;
}
.mvmp-cs__trigger:hover { border-color: var(--mvmp-primary, #6c47ff); }
.mvmp-cs__badge {
	font-size: .68rem; background: #eff6ff; color: #3b82f6;
	padding: 1px 6px; border-radius: 10px; font-weight: 600;
}
.mvmp-cs__caret { font-size: .7rem; transition: transform .2s; }
.mvmp-cs--open .mvmp-cs__caret { transform: rotate(180deg); }

.mvmp-cs__panel {
	position: absolute; top: calc(100% + 6px); left: 0; z-index: 9999;
	background: #fff; border: 1px solid var(--mvmp-border, #e2e8f0);
	border-radius: 12px; box-shadow: 0 8px 32px rgba(0,0,0,.16);
	width: 280px; display: flex; flex-direction: column; overflow: hidden;
}
.mvmp-cs__panel[hidden] { display: none; }

.mvmp-cs__search {
	border: none; border-bottom: 1px solid var(--mvmp-border, #e2e8f0);
	padding: 11px 14px; font-size: .88rem; outline: none; width: 100%; box-sizing: border-box;
}

.mvmp-cs__list { list-style: none; margin: 0; padding: 6px 0; max-height: 300px; overflow-y: auto; }
.mvmp-cs__list li {
	padding: 9px 14px; cursor: pointer; font-size: .88rem;
	transition: background .1s; display: flex; align-items: center; gap: 8px;
}
.mvmp-cs__list li:hover { background: #f0edff; }
.mvmp-cs__list li.active { background: var(--mvmp-primary, #6c47ff); color: #fff; }
.mvmp-cs__list li.active:hover { background: #5538e0; }

/* Sticky variant */
.mvmp-cs--sticky {
	position: fixed; bottom: 20px; right: 20px; z-index: 999;
}
.mvmp-cs--sticky .mvmp-cs__trigger {
	background: var(--mvmp-primary, #6c47ff); color: #fff;
	border-color: transparent; box-shadow: 0 4px 16px rgba(108,71,255,.4);
}
.mvmp-cs--sticky .mvmp-cs__panel { bottom: calc(100% + 6px); top: auto; right: 0; left: auto; }

/* Widget variant */
.mvmp-cs--widget { display: flex; width: 100%; }
.mvmp-cs--widget .mvmp-cs__trigger { width: 100%; justify-content: space-between; }
.mvmp-cs--widget .mvmp-cs__panel { width: 100%; }

@media (max-width: 640px) {
	.mvmp-cs--sticky .mvmp-cs__panel {
		position: fixed; bottom: 0; left: 0; right: 0; width: 100%;
		border-radius: 16px 16px 0 0; max-height: 70vh;
	}
	.mvmp-cs__list { max-height: 50vh; }
}
