/* Contact form feedback (2026-09-25). Loaded only on the contact page,
   next to mirror.css. The answer after "Skicka meddelande" is a white card
   with a coloured left edge and an icon — konjak for success, the site's
   warning red-brown for errors — instead of a body-text line. The script
   (js/contact.min.js) fills it, scrolls it into view and moves focus to it. */
.provitalia-mirror .pv-contact-status[hidden] {
	display: none;
}

.provitalia-mirror .pv-contact-status[data-state] {
	position: relative;
	margin: 0 0 18px;
	padding: 16px 18px 16px 54px;
	border: 1px solid var(--line, #e7ddcd);
	border-left: 5px solid var(--success, #c88a4e);
	border-radius: 8px;
	background: var(--white, #fff);
	color: var(--charcoal, #2a251f);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
}

.provitalia-mirror .pv-contact-status[data-state]::before {
	content: "";
	position: absolute;
	left: 18px;
	top: 16px;
	width: 24px;
	height: 24px;
	background: no-repeat center / contain;
}

.provitalia-mirror .pv-contact-status[data-state="success"]::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%238a5a2b%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Ccircle cx=%2712%27 cy=%2712%27 r=%2710%27/%3E%3Cpath d=%27m9 12 2 2 4-4%27/%3E%3C/svg%3E");
}

.provitalia-mirror .pv-contact-status[data-state="sending"] {
	border-left-color: var(--line, #e7ddcd);
	color: var(--ink-600, #514840);
}

.provitalia-mirror .pv-contact-status[data-state="error"] {
	border-left-color: var(--danger, #8e4630);
}

.provitalia-mirror .pv-contact-status[data-state="error"]::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%238e4630%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Ccircle cx=%2712%27 cy=%2712%27 r=%2710%27/%3E%3Cpath d=%27M12 8v4%27/%3E%3Cpath d=%27M12 16h.01%27/%3E%3C/svg%3E");
}

.provitalia-mirror .pv-contact-status:focus-visible {
	outline: 3px solid var(--focus-ring, #c88a4e);
	outline-offset: 3px;
}

.provitalia-mirror .pv-field-error {
	margin: 6px 0 0;
	font-size: 14px;
	line-height: 1.45;
	color: var(--danger, #8e4630);
}

.provitalia-mirror form[data-provitalia-contact] [aria-invalid="true"] {
	border-color: var(--danger, #8e4630) !important;
	box-shadow: 0 0 0 3px var(--danger-tint, #f0ded6);
}

.provitalia-mirror form[data-provitalia-contact] button[aria-busy="true"] {
	cursor: progress;
	opacity: 0.75;
}
