/* ============================================
   WOOCOMMERCE NOTICES — Krem.no
   Styles for .woocommerce-message, .woocommerce-info, .woocommerce-error.
   Uses body.woocommerce-page prefix to beat WC default specificity.
   All values use CSS variables from theme.json.
   ============================================ */

body.woocommerce-page .woocommerce-notices-wrapper {
	margin-top: var(--wp--custom--spacing--md);
	margin-bottom: var(--wp--custom--spacing--md);
}

body.woocommerce-page .woocommerce-notices-wrapper:empty {
	margin-top: 0;
	margin-bottom: 0;
}

/* Base notice — cream bg, left border accent, our font and radius */
body.woocommerce-page .woocommerce-message,
body.woocommerce-page .woocommerce-info,
body.woocommerce-page .woocommerce-error {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--custom--spacing--md);
	flex-wrap: wrap;
	margin: 0 0 var(--wp--custom--spacing--md);
	padding: var(--wp--custom--spacing--md) var(--wp--custom--spacing--lg);
	background-color: var(--wp--preset--color--cream);
	color: var(--wp--preset--color--text);
	border: none;
	border-left: 4px solid var(--wp--preset--color--primary);
	border-radius: var(--wp--custom--border-radius--default);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.5;
	list-style: none;
	width: auto;
}

/* Suppress WC's icon font ::before pseudo-element */
body.woocommerce-page .woocommerce-message::before,
body.woocommerce-page .woocommerce-info::before,
body.woocommerce-page .woocommerce-error::before {
	display: none;
	content: none;
}

body.woocommerce-page .woocommerce-message::after,
body.woocommerce-page .woocommerce-info::after,
body.woocommerce-page .woocommerce-error::after {
	display: none;
	content: none;
}

/* Variant accent — info notices use the orange accent */
body.woocommerce-page .woocommerce-info {
	border-left-color: var(--wp--preset--color--accent);
}

/* Inline links inside notices */
body.woocommerce-page .woocommerce-message a:not(.button),
body.woocommerce-page .woocommerce-info a:not(.button),
body.woocommerce-page .woocommerce-error a:not(.button) {
	color: var(--wp--preset--color--primary);
	text-decoration: underline;
	text-underline-offset: 2px;
}

body.woocommerce-page .woocommerce-message a:not(.button):hover,
body.woocommerce-page .woocommerce-info a:not(.button):hover,
body.woocommerce-page .woocommerce-error a:not(.button):hover {
	color: var(--wp--preset--color--primary-dark);
}

/* "Vis handlekurv" / "Logg inn" / etc. button-style links — match our .btn--outline */
body.woocommerce-page .woocommerce-message .button,
body.woocommerce-page .woocommerce-info .button,
body.woocommerce-page .woocommerce-error .button {
	float: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.5rem 1.25rem;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 700;
	letter-spacing: 0.03em;
	background-color: transparent;
	color: var(--wp--preset--color--primary);
	border: 2px solid var(--wp--preset--color--primary);
	border-radius: var(--wp--custom--border-radius--pill);
	text-decoration: none;
	cursor: pointer;
	transition: all var(--wp--custom--transition);
	line-height: 1;
	white-space: nowrap;
}

body.woocommerce-page .woocommerce-message .button:hover,
body.woocommerce-page .woocommerce-info .button:hover,
body.woocommerce-page .woocommerce-error .button:hover {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--white);
}

/* List items inside notices (e.g. multiple errors) */
body.woocommerce-page .woocommerce-message li,
body.woocommerce-page .woocommerce-info li,
body.woocommerce-page .woocommerce-error li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	body.woocommerce-page .woocommerce-message .button,
	body.woocommerce-page .woocommerce-info .button,
	body.woocommerce-page .woocommerce-error .button {
		transition-duration: 0s;
	}
}
