/* Sparks Prism Walkthrough popup. Phone-shaped dialog on desktop, full screen on phones. */
.spw-overlay {
	position: fixed; inset: 0; z-index: 100000;
	background: rgba(15, 14, 11, 0.55);
	display: flex; align-items: center; justify-content: center;
	padding: 24px;
	-webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px);
	animation: spw-fade .18s ease-out;
}
.spw-overlay[hidden] { display: none; }
.spw-dialog {
	position: relative;
	width: 100%; max-width: 420px; height: min(860px, 100%);
	background: #FFFBF0;
	border-radius: 28px;
	box-shadow: 0 30px 80px rgba(15, 14, 11, 0.35);
	overflow: hidden;
	animation: spw-rise .22s cubic-bezier(.22,.61,.36,1);
}
.spw-frame { display: block; width: 100%; height: 100%; border: 0; background: #FFFBF0; }
body.spw-open { overflow: hidden; }

@media (max-width: 480px), (max-height: 560px) {
	.spw-overlay { padding: 0; }
	.spw-dialog { max-width: none; height: 100%; border-radius: 0; }
}
@keyframes spw-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes spw-rise { from { transform: translateY(16px); opacity: 0; } to { transform: none; opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .spw-overlay, .spw-dialog { animation: none; } }
