/* Text selection (works even if JavaScript is disabled) */
body.cs-noselect,
body.cs-noselect * {
	-webkit-user-select: none !important;
	-moz-user-select: none !important;
	-ms-user-select: none !important;
	user-select: none !important;
	-webkit-touch-callout: none !important;
}

/* Form fields and opt-in areas stay usable */
body.cs-noselect input,
body.cs-noselect textarea,
body.cs-noselect select,
body.cs-noselect [contenteditable="true"],
body.cs-noselect .cs-allow-copy,
body.cs-noselect .cs-allow-copy * {
	-webkit-user-select: text !important;
	-moz-user-select: text !important;
	user-select: text !important;
}

/* Image / link dragging */
body.cs-nodrag img,
body.cs-nodrag a {
	-webkit-user-drag: none;
	user-drag: none;
}

/* Strong image protection: images ignore the mouse (parent links still work) */
body.cs-strong-img img {
	pointer-events: none !important;
}

/* Printing */
@media print {
	body.cs-noprint > * {
		display: none !important;
	}
	body.cs-noprint::before {
		content: "Printing is disabled for this page.";
		display: block;
		padding: 40px;
		font: 20px/1.4 sans-serif;
	}
}

/* Message toast */
.cs-toast {
	position: fixed;
	left: 50%;
	bottom: 24px;
	transform: translateX(-50%);
	max-width: 90vw;
	padding: 10px 16px;
	border-radius: 8px;
	background: #111;
	color: #fff;
	font: 14px/1.4 system-ui, sans-serif;
	z-index: 2147483647;
	opacity: 0;
	transition: opacity .2s;
	pointer-events: none;
}
.cs-toast.show {
	opacity: 1;
}
