/*! Image Shield for Photographers | 101 Keys | GPL-2.0-or-later */

/* Protected images: no drag, no long-press menu, no Save Image target */
.imgshield-img {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	-webkit-user-drag: none;
	-webkit-touch-callout: none;
	pointer-events: none;
}

.imgshield-bg,
.imgshield-layer {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
}

html.imgshield-nocopy body {
	-webkit-user-select: none;
	user-select: none;
}

html.imgshield-nocopy input,
html.imgshield-nocopy textarea,
html.imgshield-nocopy [contenteditable="true"] {
	-webkit-user-select: text;
	user-select: text;
}

/* Wrapper used for watermark and blur band */
.imgshield-wrap {
	position: relative;
	display: inline-block;
	max-width: 100%;
	line-height: 0;
}

.imgshield-wrap.is-block {
	display: block;
}

.imgshield-wrap.is-fill {
	display: block;
	width: 100%;
	height: 100%;
}

.imgshield-wrap.aligncenter {
	display: table;
	margin-left: auto;
	margin-right: auto;
}

.imgshield-wrap.alignleft {
	float: left;
	margin: 0 1.5em 1em 0;
}

.imgshield-wrap.alignright {
	float: right;
	margin: 0 0 1em 1.5em;
}

.imgshield-noalign {
	float: none !important;
	margin: 0 !important;
}

.imgshield-overlay {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 3;
	overflow: hidden;
	pointer-events: none;
	border-radius: inherit;
}

.imgshield-wm {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-image: var(--imgshield-wm-bg, none);
	background-repeat: repeat;
	background-position: center;
	opacity: var(--imgshield-wm-opacity, 0.25);
}

/* High level: permanent blur band */
.imgshield-band {
	position: absolute;
	left: 0;
	right: 0;
	height: var(--imgshield-band, 35%);
	-webkit-backdrop-filter: blur(var(--imgshield-band-blur, 18px));
	backdrop-filter: blur(var(--imgshield-band-blur, 18px));
	background: rgba(255, 255, 255, 0.04);
}

.imgshield-band--center {
	top: calc(50% - var(--imgshield-band, 35%) / 2);
}

.imgshield-band--top {
	top: 0;
}

.imgshield-band--bottom {
	bottom: 0;
}

.imgshield-band--diagonal {
	left: -25%;
	right: -25%;
	top: calc(50% - var(--imgshield-band, 35%) / 2);
	transform: rotate(-24deg);
}

/* Capture mode: screenshot attempt, focus loss, print */
html.imgshield-capture .imgshield-img,
html.imgshield-capture .imgshield-bg {
	filter: blur(var(--imgshield-blur, 40px)) !important;
	transition: none !important;
}

.imgshield-curtain {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2147483646;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(0, 0, 0, 0.35);
	color: #fff;
	font: 600 16px/1.4 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	text-align: center;
	pointer-events: none;
}

html.imgshield-capture .imgshield-curtain {
	display: flex;
}

/* Toast */
.imgshield-toast {
	position: fixed;
	left: 50%;
	bottom: 24px;
	z-index: 2147483647;
	max-width: calc(100% - 32px);
	padding: 10px 16px;
	border-radius: 6px;
	background: #111;
	color: #fff;
	font: 500 14px/1.4 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	text-align: center;
	opacity: 0;
	transform: translate(-50%, 20px);
	transition: opacity 0.2s, transform 0.2s;
	pointer-events: none;
}

.imgshield-toast.is-visible {
	opacity: 1;
	transform: translate(-50%, 0);
}

/* Print */
.imgshield-print-notice {
	display: none;
}

@media print {
	.imgshield-medium .imgshield-img,
	.imgshield-medium .imgshield-bg,
	.imgshield-high .imgshield-img,
	.imgshield-high .imgshield-bg {
		visibility: hidden !important;
	}

	.imgshield-medium .imgshield-print-notice,
	.imgshield-high .imgshield-print-notice {
		display: block !important;
		margin: 0 0 16px;
		font: 600 14px/1.4 Arial, sans-serif;
	}

	.imgshield-curtain,
	.imgshield-toast {
		display: none !important;
	}
}
