/* ---------- Global WooCommerce Notice Style (white bg, rounded, shadow) ---------- */
:root{
  --bw-wc-bg:#fff;
  --bw-wc-text:#111;
  --bw-wc-muted:#666;
  --bw-wc-border:rgba(0,0,0,.08);
  --bw-wc-shadow:0 10px 28px rgba(0,0,0,.12);
  --bw-wc-radius:.5rem;
  --bw-wc-accent:#26246f; /* brand accent if needed */
}

/* CLASSIC (shortcode/templates): success/info/error incl. "Added to cart" */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
  background: var(--bw-wc-bg);
  color: var(--bw-wc-text);
  border: 1px solid var(--bw-wc-border);
  border-radius: var(--bw-wc-radius);
  box-shadow: var(--bw-wc-shadow);
  padding: 16px 18px 16px 48px;
  margin: 12px 0;
  position: relative;
  list-style: none;
}
.woocommerce .woocommerce-error li { margin:0; padding:0; }

/* Keep Woo’s icons but neutralise heavy bg colours */
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before {
  position:absolute; left:16px; top:50%; transform:translateY(-50%);
  font-size:18px; opacity:.9;
}
.woocommerce .woocommerce-message::before { color:#2e7d32; } /* success */
.woocommerce .woocommerce-info::before    { color:#1e88e5; } /* info */
.woocommerce .woocommerce-error::before   { color:#c62828; } /* error */

.woocommerce .woocommerce-message a,
.woocommerce .woocommerce-info a,
.woocommerce .woocommerce-error a { color:inherit; text-decoration:underline; }

/* Buttons inside notices */
.woocommerce .woocommerce-message .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-error .button {
  border-radius:10px; margin-top:8px;
}

/* NOTICES WRAPPER (classic) to prevent theme borders leaking in */
.woocommerce .woocommerce-notices-wrapper,
.woocommerce-notices-wrapper {
  margin: 0 0 14px 0;
}

/* CART: empty cart message (classic templates) */
.woocommerce .cart-empty,
.woocommerce-cart .cart-empty {
  background: var(--bw-wc-bg);
  color: var(--bw-wc-text);
  border: 1px solid var(--bw-wc-border);
  border-radius: var(--bw-wc-radius);
  box-shadow: var(--bw-wc-shadow);
  padding: 18px;
  text-align: center;
}
.woocommerce .return-to-shop .button {
  border-radius: 10px;
}

/* MINI-CART (widget/off-canvas) empty message */
.woocommerce-mini-cart__empty-message {
  background: var(--bw-wc-bg);
  color: var(--bw-wc-text);
  border: 1px solid var(--bw-wc-border);
  border-radius: var(--bw-wc-radius);
  box-shadow: var(--bw-wc-shadow);
  padding: 14px;
  margin: 10px;
}

/* STORE FRONT BANNER / DEMO NOTICE */
.woocommerce-store-notice,
p.demo_store {
  background: var(--bw-wc-bg) !important;
  color: var(--bw-wc-text) !important;
  border: 1px solid var(--bw-wc-border) !important;
  border-radius: var(--bw-wc-radius) !important;
  box-shadow: var(--bw-wc-shadow) !important;
  width: fit-content; max-width: min(94vw, 1100px);
  padding: 10px 14px; left: 50% !important; transform: translateX(-50%);
}
.woocommerce-store-notice a { color: inherit !important; text-decoration: underline; }

/* ---------------- WooCommerce Blocks (Cart/Checkout blocks) ---------------- */
.wc-block-components-notice,
.wc-block-components-notice-banner,
.wp-block-woocommerce-notices .wc-block-components-notice,
.wp-block-woocommerce-store-notices .wc-block-components-notice {
  background: var(--bw-wc-bg) !important;
  color: var(--bw-wc-text) !important;
  border: 1px solid var(--bw-wc-border) !important;
  border-radius: var(--bw-wc-radius) !important;
  box-shadow: var(--bw-wc-shadow) !important;
  padding: 14px 16px 14px 44px !important;
}

/* Block notice icons (keep subtle colour only on the icon) */
.wc-block-components-notice.is-success::before { color:#2e7d32; }
.wc-block-components-notice.is-info::before    { color:#1e88e5; }
.wc-block-components-notice.is-error::before   { color:#c62828; }

/* Block "Empty cart" states */
.wc-block-cart .wc-block-cart__empty-cart,
.wc-block-mini-cart__empty-basket {
  background: var(--bw-wc-bg);
  color: var(--bw-wc-text);
  border: 1px solid var(--bw-wc-border);
  border-radius: var(--bw-wc-radius);
  box-shadow: var(--bw-wc-shadow);
  padding: 18px;
}
.wc-block-cart .wc-block-cart__empty-cart .wc-block-components-button,
.wc-block-mini-cart__empty-basket .wc-block-components-button {
  border-radius: 10px;
}

/* Compact on small screens */
@media (max-width: 480px){
  .woocommerce .woocommerce-message,
  .woocommerce .woocommerce-info,
  .woocommerce .woocommerce-error,
  .wc-block-components-notice { padding: 12px 14px 12px 40px !important; }
}

/* Optional: tiny left accent bar while staying white */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.wc-block-components-notice {
  border-left-width: 4px !important;
  border-left-color: var(--bw-wc-border) !important; /* neutral */
}
.woocommerce .woocommerce-message { border-left-color: #2e7d32 !important; }
.woocommerce .woocommerce-info    { border-left-color: #1e88e5 !important; }
.woocommerce .woocommerce-error   { border-left-color: #c62828 !important; }

/* If you prefer a single-brand accent for all, uncomment:
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.wc-block-components-notice { border-left-color: var(--bw-wc-accent) !important; }
*/

.woocommerce form#woocommerce-checkout-form-coupon {
    border: none;
    padding: 10px;
    margin: 2em 0;
    text-align: left;
    border-radius: .5rem;
    background: #ffffff;
}

.woocommerce-page form#woocommerce-checkout-form-coupon .form-row-first, 
.woocommerce-page form#woocommerce-checkout-form-coupon .form-row-last {
	float: none;
	display: inline-block;
	width: auto;
}

.woocommerce-page form#woocommerce-checkout-form-coupon input#coupon_code {
	width: 100%;
}