/**
 * Adoria Soft Body presentation layer.
 *
 * The canvas is inert and never replaces the native interactive element.
 * Original backgrounds are hidden only after the runtime has painted a valid
 * static surface. Reduced-motion users keep the surface but receive no wobble.
 */

.adoria-soft-body__target {
	position: relative !important;
	isolation: isolate;
	overflow: visible !important;
	touch-action: manipulation;
}

.adoria-soft-body__canvas {
	position: absolute;
	z-index: 0;
	inset: calc(var(--adoria-soft-body-bleed, 18px) * -1);
	width: calc(100% + (var(--adoria-soft-body-bleed, 18px) * 2));
	height: calc(100% + (var(--adoria-soft-body-bleed, 18px) * 2));
	max-width: none;
	max-height: none;
	pointer-events: none;
}

.adoria-soft-body__target > :not(.adoria-soft-body__canvas) {
	position: relative;
	z-index: 1;
}

.adoria-soft-body__target[data-adoria-soft-body-ready="yes"] {
	background: transparent !important;
	border-color: transparent !important;
	box-shadow: none !important;
}

.adoria-soft-body__target[aria-disabled="true"] .adoria-soft-body__canvas,
.adoria-soft-body__target:disabled .adoria-soft-body__canvas {
	opacity: 0.72;
}

@media (forced-colors: active) {
	.adoria-soft-body__canvas {
		display: none !important;
	}

	.adoria-soft-body__target[data-adoria-soft-body-ready="yes"] {
		background: revert !important;
		border-color: ButtonText !important;
		box-shadow: none !important;
	}
}

@media print {
	.adoria-soft-body__canvas {
		display: none !important;
	}

	.adoria-soft-body__target[data-adoria-soft-body-ready="yes"] {
		background: revert !important;
		border-color: revert !important;
		box-shadow: revert !important;
	}
}
