.probealarm-overlay {
	position: fixed;
	inset: 0;
	z-index: 2147483647;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(0, 0, 0, 0.58);
	box-sizing: border-box;
}

.probealarm-overlay.is-visible {
	display: flex;
}

.probealarm-box {
	position: relative;
	display: flex;
	align-items: center;
	gap: 22px;
	width: min(var(--probealarm-width, 720px), 100%);
	min-height: min(var(--probealarm-height, 260px), calc(100vh - 48px));
	padding: 34px 60px 34px 34px;
	border: 4px solid #fff;
	border-radius: 12px;
	background: #c8102e;
	color: #fff;
	box-shadow: 0 18px 60px rgba(0, 0, 0, 0.45);
	box-sizing: border-box;
	font-family: Arial, Helvetica, sans-serif;
}

.probealarm-icon {
	flex: 0 0 auto;
	font-size: 72px;
	line-height: 1;
	color: #fff;
}

.probealarm-content h2 {
	margin: 0 0 10px;
	padding: 0;
	color: #fff;
	font-size: clamp(25px, 4vw, 38px);
	line-height: 1.15;
	font-weight: 800;
}

.probealarm-message {
	color: #fff;
	font-size: clamp(18px, 2.5vw, 24px);
	line-height: 1.45;
	font-weight: 600;
	white-space: pre-line;
}

.probealarm-message * {
	color: inherit;
}

.probealarm-message p:first-child { margin-top: 0; }
.probealarm-message p:last-child { margin-bottom: 0; }

.probealarm-confirm {
	display: block;
	margin-top: 22px;
	padding: 12px 22px;
	border: 2px solid #fff;
	border-radius: 6px;
	background: #fff;
	color: #9e0b23;
	font: 700 17px/1.2 Arial, sans-serif;
	cursor: pointer;
}

.probealarm-confirm:hover,
.probealarm-confirm:focus {
	background: #f2f2f2;
	color: #78081a;
	outline: 3px solid rgba(255, 255, 255, 0.45);
	outline-offset: 3px;
}

body.probealarm-open {
	overflow: hidden;
}

.bevoelkerungswarnung-item { max-width: 850px; margin: 20px 0; padding: 20px; border: 1px solid #c3c4c7; border-left: 5px solid #c8102e; background: #fff; }
.bevoelkerungswarnung-item-head, .bevoelkerungswarnung-times, .bevoelkerungswarnung-size { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.bevoelkerungswarnung-item-head h2 { margin: 0; }
.bevoelkerungswarnung-times { justify-content: flex-start; }
.bevoelkerungswarnung-size { justify-content: flex-start; }
.bevoelkerungswarnung-size input { width: 170px; }

.bevoelkerungswarnung-editor { margin: 16px 0; }
.bevoelkerungswarnung-editor > label { display: block; margin-bottom: 6px; }
.bevoelkerungswarnung-fallback-editor { border: 1px solid #8c8f94; background: #fff; }
.bevoelkerungswarnung-toolbar { display: flex; flex-wrap: wrap; gap: 4px; padding: 7px; border-bottom: 1px solid #dcdcde; background: #f6f7f7; }
.bevoelkerungswarnung-toolbar button, .bevoelkerungswarnung-toolbar select { min-height: 32px; }
.bevoelkerungswarnung-editable { min-height: 180px; padding: 12px; font-size: 16px; line-height: 1.5; }

@media (max-width: 600px) {
	.probealarm-overlay {
		align-items: flex-start;
		padding: 12px;
		overflow-y: auto;
	}

	.probealarm-box {
		display: block;
		width: 100%;
		min-height: 0;
		max-height: calc(100vh - 24px);
		max-height: calc(100dvh - 24px);
		margin: auto;
		padding: 20px 16px 16px;
		overflow-x: hidden;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.probealarm-icon {
		margin-bottom: 8px;
		font-size: 42px;
		text-align: center;
	}

	.probealarm-content h2 {
		font-size: clamp(24px, 7vw, 32px);
		text-align: center;
		overflow-wrap: anywhere;
		hyphens: auto;
	}

	.probealarm-message,
	.probealarm-message * {
		font-size: clamp(16px, 5vw, 21px) !important;
		line-height: 1.45 !important;
		overflow-wrap: anywhere;
		word-break: normal;
		hyphens: auto;
	}

	.probealarm-message p {
		margin-top: 0.75em;
		margin-bottom: 0.75em;
	}

	.probealarm-confirm {
		position: sticky;
		bottom: 0;
		z-index: 2;
		width: 100%;
		margin-top: 18px;
		box-shadow: 0 -8px 18px rgba(200, 16, 46, 0.92);
	}
}

@media (prefers-reduced-motion: no-preference) {
	.probealarm-overlay.is-visible .probealarm-box {
		animation: probealarm-in 180ms ease-out;
	}

	@keyframes probealarm-in {
		from { opacity: 0; transform: scale(0.94); }
		to { opacity: 1; transform: scale(1); }
	}
}
