/* cherish-milestone (patch-milestone-popup.py, 2026-09-24) — 배틀 10,000회 돌파 기념 팝업.
   body 직속 DOM. 점검 오버레이(.cw-maint, 9000) 아래에 둔다. */
.cw-milestone {
	position: fixed; inset: 0; z-index: 8500;
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px;
	padding: max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right))
		max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
	box-sizing: border-box;
	background: rgba(20, 12, 24, .62);
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	animation: cw-milestone-fade .22s ease-out;
}
.cw-milestone.is-out { opacity: 0; transition: opacity .2s ease-in; }
.cw-milestone-img {
	display: block;
	width: auto; height: auto;
	max-width: min(560px, 100%);
	max-height: calc(100vh - 80px);
	max-height: calc(100dvh - 80px);
	object-fit: contain;
	border-radius: 18px;
	box-shadow: 0 24px 60px -18px rgba(10, 5, 14, .75);
	user-select: none; -webkit-user-select: none; -webkit-user-drag: none;
	animation: cw-milestone-pop .34s cubic-bezier(.2, .9, .3, 1.15);
}
.cw-milestone-hint {
	font-size: 10pt; line-height: 1.4; color: rgba(255, 255, 255, .85);
	text-shadow: 0 1px 4px rgba(0, 0, 0, .45);
}
@keyframes cw-milestone-fade { from { opacity: 0; } }
@keyframes cw-milestone-pop { from { opacity: 0; transform: scale(.92) translateY(8px); } }
@media (max-width: 700px) {
	.cw-milestone-img { border-radius: 14px; }
	.cw-milestone-hint { font-size: 9.5pt; }
}
@media (prefers-reduced-motion: reduce) {
	.cw-milestone, .cw-milestone-img { animation: none; }
}
