.zb-skip-link {
  background: #1f1f1f;
  border-radius: 12px;
  color: #fff;
  inset-inline-start: 16px;
  padding: 12px;
  position: fixed;
  top: 12px;
  transform: translateY(calc(-100% - 24px));
  transition: transform 160ms;
  z-index: 100;
}
.zb-skip-link:focus {
  outline: 3px solid rgba(255, 122, 26, 0.35);
  outline-offset: 2px;
  transform: translateY(0);
}
.zb-ui .zb-site-header {
  backdrop-filter: blur(12px);
  background: color-mix(in srgb, var(--zb-color-background) 94%, transparent);
  border-bottom: 1px solid var(--zb-color-border);
  position: sticky;
  top: 0;
  z-index: 40;
}
body.admin-bar .zb-ui .zb-site-header {
  top: 32px;
}
@media screen and (max-width: 782px) {
  body.admin-bar .zb-ui .zb-site-header {
    top: 46px;
  }
}
.zb-ui .zb-site-header__inner {
  align-items: center;
  display: grid;
  gap: var(--zb-space-3);
  grid-template-columns: 1fr auto;
  margin: auto;
  max-width: 1200px;
  min-height: 72px;
  padding: var(--zb-space-3) var(--zb-space-4);
}
.zb-ui .zb-wordmark {
  color: var(--zb-color-text);
  font-size: 1.45rem;
  font-weight: 900;
  text-decoration: none;
}
.zb-ui .zb-site-search,
.zb-ui .zb-desktop-nav {
  display: none;
}
.zb-ui .zb-desktop-nav {
  align-items: center;
  gap: var(--zb-space-5);
}
.zb-ui .zb-desktop-nav a {
  color: var(--zb-color-text-secondary);
  font-size: 0.875rem;
  font-weight: 700;
  text-decoration: none;
}
.zb-ui .zb-desktop-nav a:hover {
  color: var(--zb-color-primary-deep);
}
.zb-ui .zb-header-actions {
  align-items: center;
  display: flex;
  gap: var(--zb-space-2);
}
.zb-ui .zb-cart-link {
  position: relative;
}
.zb-ui .zb-cart-count {
  align-items: center;
  background: var(--zb-color-primary-action);
  border: 2px solid var(--zb-color-background);
  border-radius: 50%;
  color: var(--zb-color-on-primary-action);
  display: flex;
  font-size: 0.625rem;
  height: 20px;
  justify-content: center;
  position: absolute;
  right: -5px;
  top: -5px;
  width: 20px;
}
.zb-ui .zb-commerce {
  display: grid;
  gap: clamp(40px, 7vw, 88px);
  padding-bottom: 120px;
}
.zb-ui .zb-hero {
  align-items: center;
  background: linear-gradient(135deg, #fff9f4, var(--zb-color-beige));
  border: 1px solid var(--zb-color-border);
  border-radius: 32px;
  display: grid;
  gap: var(--zb-space-7);
  min-height: 440px;
  overflow: hidden;
  padding: clamp(24px, 6vw, 72px);
}
.zb-ui .zb-hero__visual {
  align-items: end;
  display: flex;
  height: 260px;
  justify-content: center;
  position: relative;
}
.zb-ui .zb-hero__visual::before {
  background: var(--zb-color-peach);
  border-radius: 50%;
  content: '';
  height: 230px;
  opacity: 0.28;
  position: absolute;
  width: 230px;
}
.zb-ui .zb-hero__visual span {
  background: linear-gradient(180deg, var(--zb-color-white), #ffd6b7);
  border: 1px solid rgba(111, 106, 100, 0.14);
  border-radius: 18px 18px 26px 26px;
  box-shadow: var(--zb-shadow-floating);
  display: block;
  height: 170px;
  margin-inline: -6px;
  position: relative;
  width: 82px;
}
.zb-ui .zb-hero__visual span:nth-child(2) {
  height: 220px;
  width: 96px;
  z-index: 2;
}
.zb-ui .zb-hero__visual span:nth-child(3) {
  background: linear-gradient(180deg, #f8f1ff, var(--zb-color-purple-soft));
  height: 150px;
}
.zb-ui .zb-commerce-section {
  display: grid;
  gap: var(--zb-space-5);
}
.zb-ui .zb-section-heading {
  align-items: end;
  display: flex;
  gap: var(--zb-space-4);
  justify-content: space-between;
}
.zb-ui .zb-section-heading a {
  color: var(--zb-color-primary-deep);
  font-size: 0.875rem;
  font-weight: 700;
  text-decoration: none;
}
.zb-ui .zb-term-grid {
  display: grid;
  gap: var(--zb-space-3);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.zb-ui .zb-term-card {
  align-items: center;
  background: var(--zb-color-white);
  border: 1px solid var(--zb-color-border);
  border-radius: var(--zb-radius-card);
  color: var(--zb-color-text);
  display: flex;
  flex-direction: column;
  gap: var(--zb-space-2);
  min-height: 150px;
  padding: var(--zb-space-4);
  text-align: center;
  text-decoration: none;
}
.zb-ui .zb-term-card:hover {
  border-color: var(--zb-color-peach);
  transform: translateY(-2px);
}
.zb-ui .zb-term-card__icon {
  align-items: center;
  background: #fff2e8;
  border-radius: 50%;
  color: var(--zb-color-primary-deep);
  display: flex;
  font-size: 1.5rem;
  height: 56px;
  justify-content: center;
  width: 56px;
}
.zb-ui .zb-term-card small {
  color: var(--zb-color-text-secondary);
}
.zb-ui .zb-chip-row {
  display: flex;
  gap: var(--zb-space-2);
  overflow: auto;
  padding-bottom: var(--zb-space-2);
}
.zb-ui .zb-chip-row .zb-chip {
  color: var(--zb-color-text);
  text-decoration: none;
}
.zb-ui .zb-product-grid {
  display: grid;
  gap: var(--zb-space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.zb-ui .zb-product-grid .zb-product-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.zb-ui .zb-product-grid .zb-product-card__media {
  aspect-ratio: 4/5;
  height: auto;
  overflow: hidden;
}
.zb-ui .zb-product-card__media img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}
.zb-ui .zb-product-card__meta {
  align-items: center;
  display: flex;
  gap: var(--zb-space-2);
  justify-content: space-between;
}
.zb-ui .zb-product-card__name a {
  color: inherit;
  text-decoration: none;
}
.zb-ui .zb-rating {
  color: #a16c00;
  font-size: var(--zb-font-size-caption);
  font-weight: 700;
  white-space: nowrap;
}
.zb-ui .zb-favorite-button {
  align-items: center;
  background: #fff2e8;
  border-radius: 50%;
  color: var(--zb-color-primary-deep);
  display: flex;
  flex: 0 0 40px;
  font-size: 1.25rem;
  height: 40px;
  justify-content: center;
  text-decoration: none;
}
/* Real product imagery: the component owns the background; media never creates a canvas. */
.zb-ui .zb-product-card__media {
  background: transparent;
}
.zb-ui .zb-product-media {
  background: transparent;
  max-width: 100%;
  opacity: 1;
  object-fit: contain;
}
.zb-ui .zb-page-heading {
  display: grid;
  gap: var(--zb-space-2);
  padding-top: var(--zb-space-6);
}
.zb-ui .zb-shop-tools {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--zb-space-3);
  justify-content: space-between;
}
.zb-ui .woocommerce-ordering select {
  background: var(--zb-color-white);
  border: 1px solid var(--zb-color-border);
  border-radius: var(--zb-radius-input);
  direction: rtl;
  font: inherit;
  min-height: 48px;
  padding-inline: var(--zb-space-4);
}
.zb-ui .woocommerce-result-count {
  color: var(--zb-color-text-secondary);
  margin: 0;
}
.zb-ui .woocommerce-pagination ul {
  display: flex;
  gap: var(--zb-space-2);
  justify-content: center;
  list-style: none;
  padding: 0;
}
.zb-ui .woocommerce-pagination a,
.zb-ui .woocommerce-pagination span {
  align-items: center;
  background: var(--zb-color-white);
  border: 1px solid var(--zb-color-border);
  border-radius: 50%;
  color: var(--zb-color-text);
  display: flex;
  height: 42px;
  justify-content: center;
  text-decoration: none;
  width: 42px;
}
.zb-ui .woocommerce-pagination .current {
  background: var(--zb-color-primary-action);
  color: var(--zb-color-on-primary-action);
}
.zb-ui .zb-breadcrumb {
  color: var(--zb-color-text-secondary);
  font-size: var(--zb-font-size-caption);
  padding-top: var(--zb-space-4);
}
.zb-ui .zb-breadcrumb a {
  color: inherit;
  text-decoration: none;
}
.zb-ui .zb-product-detail {
  display: grid;
  gap: var(--zb-space-5);
}
.zb-ui .zb-product-gallery,
.zb-ui .zb-product-summary {
  min-width: 0;
}
.zb-ui .woocommerce-product-gallery {
  background: linear-gradient(145deg, #fff8f1, var(--zb-color-beige));
  border: 1px solid var(--zb-color-border);
  border-radius: 32px;
  float: none;
  min-height: 320px;
  overflow: hidden;
  padding: var(--zb-space-4);
  width: 100%;
}
.zb-ui .woocommerce-product-gallery__image {
  align-items: center;
  display: flex !important;
  justify-content: center;
  min-height: 280px;
  position: relative;
}
.zb-ui .woocommerce-product-gallery__image::before {
  content: none;
}
.zb-ui .woocommerce-product-gallery img {
  background: transparent;
  border-radius: 22px;
  height: auto;
  object-fit: contain;
  position: relative;
  width: 100%;
}
.zb-ui .woocommerce-product-gallery img[src*='placeholder'] {
  opacity: 0;
}
.zb-ui .flex-control-thumbs {
  display: grid;
  gap: var(--zb-space-2);
  grid-template-columns: repeat(4, 1fr);
  list-style: none;
  padding: 0;
}
.zb-ui .zb-product-summary {
  align-self: start;
  background: var(--zb-color-white);
  border: 1px solid var(--zb-color-border);
  border-radius: var(--zb-radius-card);
  box-shadow: var(--zb-shadow-card);
  display: grid;
  gap: var(--zb-space-4);
  padding: var(--zb-space-5);
}
.zb-ui .zb-product-summary h1 {
  font-size: clamp(1.6rem, 7vw, 2.25rem);
}
.zb-ui .zb-product-summary .price {
  color: var(--zb-color-primary-deep);
  font-size: clamp(1.25rem, 5vw, 1.65rem);
  font-weight: 900;
  margin: 0;
}
.zb-ui .zb-product-excerpt {
  color: var(--zb-color-text-secondary);
  line-height: 1.9;
}
.zb-ui .cart {
  display: flex;
  flex-wrap: wrap;
  gap: var(--zb-space-3);
}
.zb-ui .quantity .qty {
  background: var(--zb-color-surface);
  border: 1px solid var(--zb-color-border);
  border-radius: var(--zb-radius-input);
  font: inherit;
  min-height: 48px;
  text-align: center;
  width: 76px;
}
.zb-ui .single_add_to_cart_button,
.zb-ui .checkout-button,
.zb-ui #place_order {
  background: var(--zb-color-primary-action);
  background-image: var(--zb-gradient-cta);
  border: 0;
  border-radius: var(--zb-radius-button);
  box-shadow: 0 8px 18px rgba(243, 106, 6, 0.2);
  color: var(--zb-color-on-primary-action);
  cursor: pointer;
  font: 700 0.9375rem/1 var(--zb-font-family);
  min-height: 52px;
  padding-inline: var(--zb-space-5);
}
.zb-ui .zb-product-summary .single_add_to_cart_button {
  flex: 1;
}
.zb-ui .zb-product-trust {
  background: var(--zb-color-surface);
  border-radius: var(--zb-radius-button);
  color: var(--zb-color-text-secondary);
  display: flex;
  flex-wrap: wrap;
  font-size: var(--zb-font-size-caption);
  gap: var(--zb-space-3);
  justify-content: space-between;
  padding: var(--zb-space-3);
}
.zb-ui .zb-product-trust span::before {
  color: var(--zb-color-green);
  background: currentColor;
  content: '';
  display: inline-block;
  height: 1em;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E")
    center / contain no-repeat;
  vertical-align: -0.125em;
  width: 1em;
  margin-inline-end: 5px;
}
.zb-ui .zb-product-content {
  background: var(--zb-color-white);
  border: 1px solid var(--zb-color-border);
  border-radius: var(--zb-radius-card);
  padding: var(--zb-space-5);
}
.zb-ui .woocommerce-tabs .tabs {
  border-bottom: 1px solid var(--zb-color-border);
  display: flex;
  gap: var(--zb-space-3);
  list-style: none;
  overflow: auto;
  padding: 0;
}
.zb-ui .woocommerce-tabs .tabs a {
  color: var(--zb-color-text);
  display: block;
  font-weight: 700;
  padding: var(--zb-space-3);
  text-decoration: none;
}
.zb-ui .zb-checkout-shell,
.zb-ui .zb-account-shell {
  gap: var(--zb-space-6);
  max-width: 1040px;
}
.zb-ui .zb-checkout-shell > .woocommerce,
.zb-ui .zb-account-shell > .woocommerce {
  display: grid;
  gap: var(--zb-space-5);
}
.zb-ui .woocommerce table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
}
.zb-ui .woocommerce table th,
.zb-ui .woocommerce table td {
  border-bottom: 1px solid var(--zb-color-border);
  padding: var(--zb-space-3);
  text-align: start;
}
.zb-ui .woocommerce form .form-row {
  display: grid;
  float: none;
  gap: var(--zb-space-2);
  margin: 0 0 var(--zb-space-4);
  width: 100%;
}
.zb-ui .woocommerce form label {
  font-size: 0.875rem;
  font-weight: 700;
}
.zb-ui .woocommerce form input.input-text,
.zb-ui .woocommerce form textarea,
.zb-ui .woocommerce form select,
.zb-ui .select2-container--default .select2-selection--single {
  background: var(--zb-color-surface);
  border: 1px solid var(--zb-color-border);
  border-radius: var(--zb-radius-input);
  font: inherit;
  min-height: 54px;
  padding: var(--zb-space-3) var(--zb-space-4);
  width: 100%;
}
.zb-ui .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 28px;
}
.zb-ui .woocommerce-cart-form,
.zb-ui .cart_totals,
.zb-ui .woocommerce-billing-fields,
.zb-ui .woocommerce-additional-fields,
.zb-ui .woocommerce-checkout-review-order,
.zb-ui .woocommerce-form-login,
.zb-ui .woocommerce-MyAccount-content {
  background: var(--zb-color-white);
  border: 1px solid var(--zb-color-border);
  border-radius: var(--zb-radius-card);
  box-shadow: var(--zb-shadow-card);
  padding: var(--zb-space-5);
}
.zb-ui .woocommerce-cart-form .product-thumbnail img {
  background: var(--zb-color-beige);
  border-radius: 16px;
  height: 72px;
  object-fit: cover;
  width: 64px;
}
.zb-ui .woocommerce-cart-form .product-name a {
  color: var(--zb-color-text);
  font-weight: 800;
  text-decoration: none;
}
.zb-ui .woocommerce-cart-form .product-remove a {
  align-items: center;
  background: #fff2e8;
  border-radius: 50%;
  color: var(--zb-color-primary-deep);
  display: flex;
  height: 36px;
  justify-content: center;
  text-decoration: none;
  width: 36px;
}
.zb-ui .cart_totals h2,
.zb-ui .woocommerce-billing-fields h3,
.zb-ui .woocommerce-additional-fields h3,
.zb-ui #order_review_heading {
  font-size: var(--zb-font-size-h2);
  margin: 0 0 var(--zb-space-5);
}
.zb-ui .wc-proceed-to-checkout .checkout-button,
.zb-ui #place_order {
  align-items: center;
  display: flex;
  justify-content: center;
  text-decoration: none;
  width: 100%;
}
.zb-ui .woocommerce-checkout-review-order-table {
  background: var(--zb-color-surface);
  border-radius: var(--zb-radius-button);
  padding: var(--zb-space-2);
}
.zb-ui .woocommerce-checkout-payment {
  background: transparent !important;
}
.zb-ui .woocommerce-checkout-payment ul {
  list-style: none;
  padding: 0;
}
.zb-ui .woocommerce-MyAccount-navigation ul {
  display: flex;
  gap: var(--zb-space-2);
  list-style: none;
  margin: 0;
  overflow: auto;
  padding: 0 0 var(--zb-space-2);
}
.zb-ui .woocommerce-MyAccount-navigation a {
  background: var(--zb-color-beige);
  border-radius: var(--zb-radius-pill);
  color: var(--zb-color-text);
  display: block;
  padding: var(--zb-space-2) var(--zb-space-4);
  text-decoration: none;
  white-space: nowrap;
}
.zb-ui .woocommerce-MyAccount-navigation .is-active a {
  background: var(--zb-color-primary-action);
  color: var(--zb-color-on-primary-action);
}
.zb-ui .woocommerce-form-login__submit,
.zb-ui .woocommerce-form-register__submit,
.zb-ui button.button {
  background: var(--zb-color-primary-action);
  background-image: var(--zb-gradient-cta);
  border: 0;
  border-radius: var(--zb-radius-button);
  color: var(--zb-color-on-primary-action);
  font: 700 0.9375rem/1 var(--zb-font-family);
  min-height: 48px;
  padding-inline: var(--zb-space-5);
}
.zb-ui .woocommerce-error,
.zb-ui .woocommerce-info,
.zb-ui .woocommerce-message {
  background: var(--zb-color-white);
  border: 1px solid var(--zb-color-border);
  border-inline-start: 4px solid var(--zb-color-primary);
  border-radius: var(--zb-radius-button);
  list-style: none;
  margin: 0;
  padding: var(--zb-space-4);
}
.zb-ui .woocommerce-message a,
.zb-ui .woocommerce-info a {
  color: var(--zb-color-primary-deep);
  font-weight: 700;
}
.zb-ui .zb-site-footer {
  border-top: 1px solid var(--zb-color-border);
  padding-bottom: 120px;
}
@media (min-width: 768px) {
  .zb-ui .zb-site-header__inner {
    grid-template-columns: auto minmax(280px, 560px) auto;
  }
  .zb-ui .zb-site-search {
    display: block;
  }
  .zb-ui .zb-hero {
    grid-template-columns: 1.05fr 0.95fr;
  }
  .zb-ui .zb-term-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .zb-ui .zb-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .zb-ui .zb-product-detail {
    grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr);
  }
  .zb-ui .zb-product-summary {
    padding: var(--zb-space-7);
    position: sticky;
    top: 96px;
  }
  .zb-ui .woocommerce-checkout {
    display: grid;
    gap: var(--zb-space-5);
    grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.85fr);
  }
  .zb-ui .woocommerce-checkout .col2-set {
    grid-row: 1/3;
  }
  .zb-ui .woocommerce-checkout #order_review_heading,
  .zb-ui .woocommerce-checkout #order_review {
    grid-column: 2;
  }
  .zb-ui .woocommerce-MyAccount-navigation {
    float: none;
    width: 100%;
  }
  .zb-ui .woocommerce-MyAccount-content {
    float: none;
    width: 100%;
  }
}
@media (min-width: 1024px) {
  .zb-ui .zb-commerce {
    padding-bottom: 72px;
  }
  .zb-ui .zb-site-footer {
    padding-bottom: var(--zb-space-7);
  }
}
@media (min-width: 1100px) {
  .zb-ui .zb-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 560px) {
  .zb-ui .zb-header-actions .zb-icon-button:first-child {
    display: none;
  }
  .zb-ui .zb-shell {
    padding-inline: var(--zb-space-4);
    padding-bottom: 144px;
  }
  .zb-ui .zb-commerce {
    gap: var(--zb-space-7);
  }
  .zb-ui .zb-page-heading {
    padding-top: var(--zb-space-3);
  }
  .zb-ui .zb-product-card__body {
    padding: var(--zb-space-3);
  }
  .zb-ui .zb-product-card__price {
    font-size: 0.875rem;
  }
  .zb-ui .zb-product-summary {
    padding: var(--zb-space-5);
  }
  .zb-ui .zb-product-summary .cart {
    display: grid;
    grid-template-columns: 76px 1fr;
    width: 100%;
  }
  .zb-ui .zb-product-summary .single_add_to_cart_button {
    width: 100%;
  }
  .zb-ui .woocommerce table.shop_table_responsive thead {
    display: none;
  }
  .zb-ui .woocommerce table.shop_table_responsive tr {
    background: var(--zb-color-surface);
    border: 1px solid var(--zb-color-border);
    border-radius: var(--zb-radius-button);
    display: block;
    margin-bottom: var(--zb-space-4);
    overflow: hidden;
    padding: var(--zb-space-3);
  }
  .zb-ui .woocommerce table.shop_table_responsive td {
    align-items: center;
    border: 0;
    display: flex;
    gap: var(--zb-space-3);
    justify-content: space-between;
    padding: var(--zb-space-2);
  }
  .zb-ui .woocommerce table.shop_table_responsive td::before {
    color: var(--zb-color-text-secondary);
    font-size: 0.75rem;
  }
  .zb-ui .woocommerce-cart-form,
  .zb-ui .cart_totals,
  .zb-ui .woocommerce-billing-fields,
  .zb-ui .woocommerce-additional-fields,
  .zb-ui .woocommerce-checkout-review-order,
  .zb-ui .woocommerce-form-login,
  .zb-ui .woocommerce-MyAccount-content {
    padding: var(--zb-space-4);
  }
  .zb-ui .woocommerce-cart-form .actions {
    display: grid !important;
    gap: var(--zb-space-3);
  }
  .zb-ui .woocommerce-cart-form .coupon {
    display: grid !important;
    gap: var(--zb-space-2);
    width: 100%;
  }
  .zb-ui .woocommerce-cart-form .coupon .input-text {
    width: 100% !important;
  }
  .zb-ui .woocommerce-checkout .col-1,
  .zb-ui .woocommerce-checkout .col-2 {
    float: none;
    width: 100%;
  }
  .zb-ui .zb-bottom-nav {
    bottom: max(var(--zb-space-3), env(safe-area-inset-bottom));
  }
  .zb-ui .zb-site-footer {
    padding-bottom: 140px;
  }
}
.zb-ui .woocommerce-cart-form .product-thumbnail {
  align-items: center;
  background: var(--zb-color-beige);
  border-radius: 16px;
  display: flex !important;
  height: 72px;
  justify-content: center;
  width: 64px;
}
.zb-ui .woocommerce-cart-form .product-thumbnail::before {
  background: linear-gradient(180deg, #fff, #ffd6b7);
  border-radius: 9px 9px 13px 13px;
  content: '';
  height: 42px;
  width: 22px;
}
.zb-ui .woocommerce-cart-form .product-thumbnail img {
  display: none;
}
.zb-ui button.single_add_to_cart_button.button.alt {
  background-color: var(--zb-color-primary-action);
  background-image: var(--zb-gradient-cta);
  border: 0;
  border-radius: var(--zb-radius-button);
  box-shadow: var(--zb-shadow-cta);
  color: var(--zb-color-on-primary-action);
  font: 700 0.9375rem/1 var(--zb-font-family);
  min-height: 52px;
}
@media (max-width: 560px) {
  .zb-ui .zb-product-gallery .woocommerce-product-gallery {
    min-height: 204px;
    padding: 12px;
  }
  .zb-ui .zb-product-gallery .woocommerce-product-gallery__image {
    min-height: 180px;
  }
  .zb-ui .zb-product-gallery .woocommerce-product-gallery__image::before {
    height: 126px;
    width: 70px;
  }
  .zb-ui .zb-product-gallery .woocommerce-product-gallery img[src*='placeholder'] {
    height: 180px;
    object-fit: contain;
  }
}

.zb-ui .zb-personalization {
  background: var(--zb-color-white);
  border: 1px solid var(--zb-color-border);
  border-radius: var(--zb-radius-card);
  box-shadow: var(--zb-shadow-card);
  display: grid;
  gap: var(--zb-space-4);
  padding: var(--zb-space-5);
}
.zb-ui .zb-personalization__heading {
  align-items: center;
  display: flex;
  gap: var(--zb-space-4);
  justify-content: space-between;
}
.zb-ui .zb-personalization h2,
.zb-ui .zb-personalization h3 {
  margin: 0;
}
.zb-ui .zb-personalization small {
  color: var(--zb-color-primary-deep);
  font-weight: 700;
}
.zb-ui .zb-match-score {
  align-items: center;
  background: #fff2e8;
  border-radius: 50%;
  display: flex;
  flex: 0 0 82px;
  flex-direction: column;
  height: 82px;
  justify-content: center;
}
.zb-ui .zb-match-score strong {
  color: var(--zb-color-primary-deep);
  font-size: 1.55rem;
}
.zb-ui .zb-match-score span {
  color: var(--zb-color-text-secondary);
  font-size: 0.7rem;
}
.zb-ui .zb-match-columns {
  display: grid;
  gap: var(--zb-space-4);
}
.zb-ui .zb-match-columns > div {
  background: var(--zb-color-surface);
  border-radius: 18px;
  padding: var(--zb-space-4);
}
.zb-ui .zb-match-columns ul {
  display: grid;
  gap: var(--zb-space-2);
  margin: var(--zb-space-3) 0 0;
  padding-inline-start: 22px;
}
.zb-ui .zb-match-warnings {
  background: var(--zb-color-yellow-soft) !important;
}
.zb-ui .zb-guidance-note {
  color: var(--zb-color-text-secondary);
  font-size: 0.8rem;
  margin: 0;
}
.zb-ui .zb-alternatives {
  display: grid;
  gap: var(--zb-space-3);
}
.zb-ui .zb-alternatives > a {
  background: var(--zb-color-surface);
  border: 1px solid var(--zb-color-border);
  border-radius: 18px;
  color: var(--zb-color-text);
  display: grid;
  gap: 4px;
  padding: var(--zb-space-4);
  text-decoration: none;
}
.zb-ui .zb-alternatives > a strong {
  color: var(--zb-color-primary-deep);
}
.zb-ui .zb-alternatives > a small {
  color: var(--zb-color-text-secondary);
}
.zb-ui .zb-personalization--guest {
  background: linear-gradient(135deg, #fff9f4, var(--zb-color-beige));
}
@media (min-width: 768px) {
  .zb-ui .zb-match-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .zb-ui .zb-personalization {
    padding: var(--zb-space-7);
  }
}
