.popup-overlay-c {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9999;
	opacity: 0;
	pointer-events: none;
	transition: opacity .22s ease;
}

.popup-overlay-c.open {
	opacity: 1;
	pointer-events: auto;
}

/* Modal box */
.popup-window-c {
	background: #fff;
	border-radius: 12px;
	max-width: 80%;
	width: calc(100% - 48px);
	max-height: 85vh;
	overflow: auto;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.25);
	transform: translateY(8px) scale(.995);
	transition: transform .22s cubic-bezier(.2, .9, .3, 1), opacity .18s;
	opacity: 0;
}

.popup-overlay-c.open .popup-window-c {
	transform: translateY(0) scale(1);
	opacity: 1;
}

/* Header / close */
.popup-header-c {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 18px;
	border-bottom: 1px solid #eee;
}

.popup-body-c {
	padding: 18px;
}

.popup-close-c {
	background: transparent;
	border: none;
	font-size: 18px;
	cursor: pointer;
	line-height: 1;
	padding: 6px;
	border-radius: 6px;
}

.popup-close-c:focus {
	outline: 2px solid #0078d4;
}

/* Small helper to keep focusable elements visible */
.sr-only {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

@media (max-width: 754px) {
	.popup-window-c {
		max-width: calc(100% - 12px);
		width: 100%;
		max-height: calc(100vh - 12px);
	}
}