/* WooCommerce notices — RBZ custom design */

@keyframes rbz-wc-notice-in {
	from {
		opacity: 0;
		transform: translateY(-10px) scale(0.98);
	}

	to {
		opacity: 1;
		transform: none;
	}
}

.woocommerce-notices-wrapper {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	position: relative;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	list-style: none !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before,
.woocommerce-error li::before {
	display: none !important;
	content: none !important;
}

.rbz-wc-notice {
	animation: rbz-wc-notice-in 0.45s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.rbz-wc-notice--success,
.rbz-wc-notice--info {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 0.875rem;
	padding: 0.9375rem 1rem;
	border: 1px solid transparent;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 16px 40px -24px rgba(26, 35, 50, 0.28);
}

.rbz-wc-notice--success {
	border-color: rgba(63, 154, 68, 0.2);
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(244, 250, 245, 0.98) 100%);
}

.rbz-wc-notice--info {
	border-color: rgba(59, 130, 246, 0.18);
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(239, 246, 255, 0.98) 100%);
}

.rbz-wc-notice--error {
	padding: 0;
	border: 1px solid rgba(239, 68, 68, 0.2);
	border-radius: 18px;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(254, 242, 242, 0.98) 100%);
	box-shadow: 0 16px 40px -24px rgba(185, 28, 28, 0.22);
	overflow: hidden;
}

.rbz-wc-notice--error li {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 0.875rem;
	margin: 0;
	padding: 0.9375rem 1rem;
	list-style: none;
}

.rbz-wc-notice--error li + li {
	border-top: 1px solid rgba(239, 68, 68, 0.12);
}

.rbz-wc-notice__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	font-size: 1.125rem;
	box-shadow: 0 8px 20px -10px rgba(26, 35, 50, 0.35);
}

.rbz-wc-notice--success .rbz-wc-notice__icon {
	background: linear-gradient(145deg, #2d7a31, #3f9a44);
	color: #ffffff;
}

.rbz-wc-notice--info .rbz-wc-notice__icon {
	background: linear-gradient(145deg, #2563eb, #3b82f6);
	color: #ffffff;
}

.rbz-wc-notice--error .rbz-wc-notice__icon {
	background: linear-gradient(145deg, #dc2626, #ef4444);
	color: #ffffff;
}

.rbz-wc-notice__body {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.75rem;
	width: 100%;
	min-width: 0;
	color: #334155;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.65;
}

.rbz-wc-notice--success .rbz-wc-notice__body {
	color: #1e4620;
}

.rbz-wc-notice--info .rbz-wc-notice__body {
	color: #1e3a8a;
}

.rbz-wc-notice--error .rbz-wc-notice__body {
	color: #991b1b;
}

.rbz-wc-notice__body > :last-child {
	margin-bottom: 0;
}

.rbz-wc-notice__body p {
	margin: 0;
}

.rbz-wc-notice__body a:not(.button):not(.wc-forward) {
	color: inherit;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.rbz-wc-notice__body .button,
.rbz-wc-notice__body .wc-forward,
.rbz-wc-notice__body a.button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	float: none !important;
	margin: 0 !important;
	margin-inline-start: auto !important;
	padding: 0.5rem 0.9375rem !important;
	border: none !important;
	border-radius: 999px !important;
	background: linear-gradient(145deg, #2d7a31, #3f9a44) !important;
	color: #ffffff !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	box-shadow: 0 8px 18px -10px rgba(45, 122, 49, 0.55);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.rbz-wc-notice--info .rbz-wc-notice__body .button,
.rbz-wc-notice--info .rbz-wc-notice__body .wc-forward,
.rbz-wc-notice--info .rbz-wc-notice__body a.button {
	background: linear-gradient(145deg, #2563eb, #3b82f6) !important;
	box-shadow: 0 8px 18px -10px rgba(37, 99, 235, 0.45);
}

.rbz-wc-notice--error .rbz-wc-notice__body .button,
.rbz-wc-notice--error .rbz-wc-notice__body .wc-forward,
.rbz-wc-notice--error .rbz-wc-notice__body a.button {
	background: linear-gradient(145deg, #dc2626, #ef4444) !important;
	box-shadow: 0 8px 18px -10px rgba(220, 38, 38, 0.45);
}

.rbz-wc-notice__body .button:hover,
.rbz-wc-notice__body .wc-forward:hover,
.rbz-wc-notice__body a.button:hover {
	color: #ffffff !important;
	transform: translateY(-1px);
}

.rbz-wc-notice__body .showcoupon {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.75rem;
	border-radius: 999px;
	background: rgba(59, 130, 246, 0.1);
	color: #2563eb;
	font-size: 0.8125rem;
	font-weight: 700;
	text-decoration: none;
	transition: background 0.2s ease;
}

.rbz-wc-notice__body .showcoupon:hover {
	background: rgba(59, 130, 246, 0.16);
	color: #1d4ed8;
}

@media (max-width: 540px) {
	.rbz-wc-notice--success,
	.rbz-wc-notice--info,
	.rbz-wc-notice--error li {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.rbz-wc-notice__body {
		flex-wrap: wrap;
	}

	.rbz-wc-notice__body .button,
	.rbz-wc-notice__body .wc-forward,
	.rbz-wc-notice__body a.button {
		margin-inline-start: 0 !important;
		width: 100%;
	}
}

html.rbz-dark .rbz-wc-notice--success {
	border-color: rgba(63, 154, 68, 0.24);
	background: linear-gradient(135deg, rgba(20, 28, 22, 0.96) 0%, rgba(15, 23, 42, 0.96) 100%);
}

html.rbz-dark .rbz-wc-notice--info {
	border-color: rgba(59, 130, 246, 0.22);
	background: linear-gradient(135deg, rgba(15, 23, 42, 0.96) 0%, rgba(23, 37, 84, 0.92) 100%);
}

html.rbz-dark .rbz-wc-notice--error {
	border-color: rgba(239, 68, 68, 0.22);
	background: linear-gradient(135deg, rgba(28, 15, 15, 0.96) 0%, rgba(15, 23, 42, 0.96) 100%);
}

html.rbz-dark .rbz-wc-notice--success .rbz-wc-notice__body {
	color: rgba(167, 243, 176, 0.92);
}

html.rbz-dark .rbz-wc-notice--info .rbz-wc-notice__body {
	color: rgba(191, 219, 254, 0.92);
}

html.rbz-dark .rbz-wc-notice--error .rbz-wc-notice__body {
	color: rgba(254, 202, 202, 0.92);
}

html.rbz-dark .rbz-wc-notice--error li + li {
	border-top-color: rgba(239, 68, 68, 0.16);
}

@media (prefers-reduced-motion: reduce) {
	.rbz-wc-notice {
		animation: none;
	}
}
