/** Coupon badges only; WooCommerce owns the surrounding Blocks layout. */

.sunny-cart-checkout-blocks .sunny-block-coupons {
	margin-bottom: var(--space-6);
}

.sunny-cart-checkout-blocks .sunny-block-coupons__title {
	display: block;
	margin-bottom: var(--space-3);
	font-family: var(--font-display);
	font-size: var(--fs-body-sm);
	font-weight: var(--fw-extrabold);
	color: var(--fg-primary);
}

.sunny-cart-checkout-blocks .sunny-block-coupons__list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2);
}

.sunny-cart-checkout-blocks .sunny-block-coupon {
	display: inline-flex;
	align-items: center;
	gap: var(--space-2);
	min-height: 36px;
	padding: 5px 10px 5px 6px;
	border: 1px solid var(--border-default);
	border-radius: var(--radius-pill);
	background: var(--surface-card);
	color: var(--fg-primary);
	font-size: var(--fs-caption);
	cursor: pointer;
}

.sunny-cart-checkout-blocks .sunny-block-coupon:hover:not(:disabled) {
	border-color: var(--accent-500);
	background: var(--accent-50);
}

.sunny-cart-checkout-blocks .sunny-block-coupon__code {
	padding: 4px 8px;
	border-radius: var(--radius-pill);
	background: var(--surface-accent);
	color: var(--fg-on-accent);
	font-family: var(--font-display);
	font-size: 11px;
	font-weight: var(--fw-black);
	letter-spacing: 0.03em;
}

.sunny-cart-checkout-blocks .sunny-block-coupon.is-applied {
	border-color: var(--surface-brand);
	background: var(--brand-50);
}

.sunny-cart-checkout-blocks .sunny-block-coupon.is-applied .sunny-block-coupon__code {
	background: var(--surface-brand);
	color: var(--fg-on-brand);
}

.sunny-cart-checkout-blocks .sunny-block-coupon:disabled {
	cursor: wait;
	opacity: 0.65;
}

/* Applied coupons rendered by WooCommerce in Cart totals / Order summary. */
.sunny-cart-checkout-blocks .wc-block-components-totals-discount__coupon-list .wc-block-components-chip {
	border-color: var(--surface-brand);
	background: var(--surface-brand);
	color: var(--fg-on-brand);
}

.sunny-cart-checkout-blocks .wc-block-components-totals-discount__coupon-list .wc-block-components-chip__remove {
	color: var(--fg-on-brand);
}

/* Primary Cart and Checkout actions follow the configured brand palette. */
.sunny-cart-checkout-blocks .wc-block-cart__submit-button,
.sunny-cart-checkout-blocks .wc-block-components-checkout-place-order-button {
	border-color: var(--surface-brand);
	background: var(--surface-brand);
	color: var(--fg-on-brand);
}

.sunny-cart-checkout-blocks .wc-block-cart__submit-button:hover,
.sunny-cart-checkout-blocks .wc-block-cart__submit-button:focus-visible,
.sunny-cart-checkout-blocks .wc-block-components-checkout-place-order-button:hover,
.sunny-cart-checkout-blocks .wc-block-components-checkout-place-order-button:focus-visible {
	border-color: var(--brand-700);
	background: var(--brand-700);
	color: var(--fg-on-brand);
}
.wc-block-components-product-price__value {
    font-weight: bold;
}
.wc-block-components-totals-item__value{
	 font-weight: bold;
}
.wc-block-components-product-name {
	font-weight: 700;
    color: black;
}
.wc-block-components-sale-badge {
    color: white;
    background-color: #4bb149;
}
.wc-block-components-totals-coupon__content button.wc-block-components-totals-coupon__button{
	background-color: #45c560;
}
.wp-block-woocommerce-checkout-order-summary-subtotal-block .wc-block-components-totals-item__value{
	    color: #000000;
}
.wp-block-woocommerce-checkout-order-summary-discount-block .wc-block-components-totals-item__value{
	    color: var(--brand-700);
}
.wp-block-woocommerce-checkout-order-summary-discount-block .wc-block-components-totals-item__value{
	    color: var(--brand-700);
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
	    font-size: x-large;
    font-weight: bold;
    color: var(--brand-700);
}
.wc-block-components-text-input input:is([type="text"], [type="email"], [type="tel"]),
.wc-blocks-components-select__select, wc-block-components-textarea {
	border: 1px solid color-mix(
		in srgb,
		rgb(209 209 209) 80%,
		transparent
	) !important;
}
.wc-block-components-sidebar{
	    padding-left: 1%;
}
.wc-block-components-sidebar-layout .wc-block-components-main{
	padding-right:1%;
}
/* Highlight the selected shipping and payment option with the brand palette. */
.sunny-cart-checkout-blocks .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted {
	border-radius: var(--radius-md);
	box-shadow: inset 0 0 0 1.5px var(--surface-brand);
	background-color: var(--brand-50);
}

.sunny-cart-checkout-blocks .wc-block-components-radio-control-accordion-option--checked-option-highlighted {
	border-radius: var(--radius-md);
	box-shadow: inset 0 0 0 1.5px var(--surface-brand);
	background-color: var(--brand-50);
}

.sunny-cart-checkout-blocks .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted .wc-block-components-radio-control__input {
	border-color: var(--surface-brand);
}

.sunny-cart-checkout-blocks .wc-block-components-radio-control-accordion-option--checked-option-highlighted .wc-block-components-radio-control__input {
	border-color: var(--surface-brand);
}

.sunny-cart-checkout-blocks .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted .wc-block-components-radio-control__input:checked::before {
	background: var(--surface-brand);
}

.sunny-cart-checkout-blocks .wc-block-components-radio-control-accordion-option--checked-option-highlighted .wc-block-components-radio-control__input:checked::before {
	background: var(--surface-brand);
}
h1 {
    font-size: var(--fs-heading-md);
}
.sunny-page__head{
	padding-top:10px;
}
.sunny-page__body{
	margin-top:10px;
}
.wp-block-woocommerce-checkout-order-summary-block, fieldset#payment-method, fieldset#shipping-option,
fieldset#billing-fields,fieldset#shipping-fields,fieldset#contact-fields,
.sunny-cart-checkout-blocks .sunny-block-coupons,div#order-notes, .wp-block-woocommerce-cart-order-summary-block {
	background-color: white;
    border-radius: 10px;
    border: 1px solid #e6e2db;
    padding: 12px;
}