.cc-bar{position:relative;z-index:50;box-sizing:border-box;width:100%;padding:11px 20px;text-align:center;background:#9e1e2c;color:#fff;font:600 14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.01em}.cc-cart-notice{display:flex;align-items:center;gap:13px;padding:15px 18px;margin:0 0 20px;border:1px solid #eed1d5;border-radius:9px;background:#fff7f7;color:#6e222b;font:500 14px/1.5 system-ui,sans-serif}.cc-cart-notice>span{font-size:25px}.cc-cart-notice>div{flex:1}.cc-cart-notice strong{font-weight:650}.cc-cart-notice.cc-unlocked{border-color:#c5dfcd;background:#f3fbf5;color:#1c643a}.cc-progress{height:5px;border-radius:6px;background:#e9dadd;overflow:hidden;margin-top:9px}.cc-progress span{display:block;height:100%;background:#ba3041;transition:width .2s}.cc-unlocked .cc-progress span{background:#2e9453}.cc-festive-layer{position:fixed;inset:0;z-index:99998;pointer-events:none;overflow:hidden}.cc-flake{position:absolute;top:-40px;animation:cc-fall 3s linear forwards;will-change:transform;opacity:.85}.cc-confetti{position:absolute;top:-25px;width:6px;height:10px;animation:cc-fall 3s linear forwards;will-change:transform}@keyframes cc-fall{from{transform:translate3d(0,-20px,0) rotate(0)}to{transform:translate3d(var(--drift),110vh,0) rotate(480deg)}}@media(max-width:600px){.cc-bar{font-size:12px;padding:10px 15px}.cc-cart-notice{font-size:13px}}@media(prefers-reduced-motion:reduce){.cc-festive-layer{display:none}}

/* Christmas accents stay within the announcement bar, not over store content. */
.cc-bar{border-top:3px solid #276b47;border-bottom:2px solid #d7ae60;background:#9e1e2c}
.cc-bar span[aria-hidden="true"]{display:inline-block;margin:0 6px}

/* Shop CTA only appears when one item is in the cart. */
.cc-cart-notice .cc-notice-body{flex:1;min-width:0}
.cc-cart-notice .cc-shop-cta{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:9px 16px;border-radius:6px;background:#a11f32;color:#fff;text-decoration:none;font:700 13px/1.3 system-ui,-apple-system,Segoe UI,sans-serif;white-space:nowrap;transition:background .15s}
.cc-cart-notice .cc-shop-cta:hover,.cc-cart-notice .cc-shop-cta:focus{background:#731625;color:#fff;text-decoration:none}
.cc-cart-notice .cc-shop-cta:focus-visible{outline:2px solid #731625;outline-offset:3px}
@media(max-width:480px){.cc-cart-notice{flex-wrap:wrap}.cc-cart-notice .cc-shop-cta{margin-left:37px}}


/* Astra-friendly Christmas styling for shop elements */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce div.product {
  --cc-red:#a11f32;
  --cc-green:#216b47;
  --cc-gold:#d7ae60;
}

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.woocommerce-page ul.products li.product .woocommerce-loop-product__link {
  position:relative;
  overflow:hidden;
  border-radius:12px;
}

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap::before,
.woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap::before,
.woocommerce ul.products li.product .woocommerce-loop-product__link::before,
.woocommerce-page ul.products li.product .woocommerce-loop-product__link::before {
  content:'🎄';
  position:absolute;
  top:8px;
  left:8px;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  box-shadow:0 4px 10px rgba(0,0,0,.10);
  font-size:14px;
  line-height:1;
}

.woocommerce ul.products li.product .astra-shop-thumbnail-wrap::after,
.woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap::after,
.woocommerce ul.products li.product .woocommerce-loop-product__link::after,
.woocommerce-page ul.products li.product .woocommerce-loop-product__link::after {
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:10px;
  z-index:1;
  background:repeating-linear-gradient(90deg,var(--cc-red) 0 18px,#fff 18px 36px,var(--cc-green) 36px 54px,#fff 54px 72px);
  opacity:.92;
}

/* Only the actual Add to Cart controls get Christmas colors.
   No generic .woocommerce .button rules: those include Astra, side-cart,
   checkout, quantity/filter and other plugin controls. */
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce-page ul.products li.product a.add_to_cart_button,
.woocommerce div.product form.cart button.single_add_to_cart_button,
.woocommerce-page div.product form.cart button.single_add_to_cart_button {
  border-radius:999px !important;
  background-color:#a11f32 !important;
  color:#fff !important;
  border:1px solid rgba(0,0,0,.04) !important;
  box-shadow:0 8px 20px rgba(161,31,50,.16);
  transition:background-color .15s ease, box-shadow .15s ease;
}
.woocommerce ul.products li.product a.add_to_cart_button:is(:hover,:focus),
.woocommerce-page ul.products li.product a.add_to_cart_button:is(:hover,:focus),
.woocommerce div.product form.cart button.single_add_to_cart_button:is(:hover,:focus),
.woocommerce-page div.product form.cart button.single_add_to_cart_button:is(:hover,:focus) {
  background-color:#216b47 !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(33,107,71,.18);
}
.woocommerce ul.products li.product a.add_to_cart_button::after,
.woocommerce-page ul.products li.product a.add_to_cart_button::after {
  content:' 🎁';
  font-family:inherit;
  font-size:.9em;
}

@media (max-width: 768px) {
  .woocommerce ul.products li.product .astra-shop-thumbnail-wrap::before,
  .woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap::before,
  .woocommerce ul.products li.product .woocommerce-loop-product__link::before,
  .woocommerce-page ul.products li.product .woocommerce-loop-product__link::before {
    width:24px;
    height:24px;
    font-size:12px;
    top:6px;
    left:6px;
  }

  .woocommerce ul.products li.product .astra-shop-thumbnail-wrap::after,
  .woocommerce-page ul.products li.product .astra-shop-thumbnail-wrap::after,
  .woocommerce ul.products li.product .woocommerce-loop-product__link::after,
  .woocommerce-page ul.products li.product .woocommerce-loop-product__link::after {
    height:8px;
  }
}


/* Recovery for v1.2.0 broad selectors that may still be present in page/CDN caches.
   Only the explicitly reported utility controls are affected. These must remain
   visible and usable even if an older stylesheet supplied color:#fff !important. */
.xoo-wsc-container .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn.xoo-wsc-btn,
.xoo-wsc-modal .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn.xoo-wsc-btn,
.woocommerce .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn.xoo-wsc-btn,
.woocommerce .widget_shopping_cart p.woocommerce-mini-cart__buttons a.button,
.woocommerce.widget_shopping_cart p.woocommerce-mini-cart__buttons a.button,
.woocommerce .price_slider_amount button.button,
.woocommerce-page .price_slider_amount button.button {
  background:#216b47 !important;
  background-image:none !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  opacity:1 !important;
  box-shadow:none !important;
  border-radius:5px !important;
  text-shadow:none !important;
}
.xoo-wsc-container .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn.xoo-wsc-btn:is(:hover,:focus),
.xoo-wsc-modal .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn.xoo-wsc-btn:is(:hover,:focus),
.woocommerce .xoo-wsc-ft-buttons-cont a.xoo-wsc-ft-btn.xoo-wsc-btn:is(:hover,:focus),
.woocommerce .widget_shopping_cart p.woocommerce-mini-cart__buttons a.button:is(:hover,:focus),
.woocommerce.widget_shopping_cart p.woocommerce-mini-cart__buttons a.button:is(:hover,:focus),
.woocommerce .price_slider_amount button.button:is(:hover,:focus),
.woocommerce-page .price_slider_amount button.button:is(:hover,:focus) {
  background:#174d32 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}
