.wppm-preview-page{
  margin:0;
  font-family:Inter,Segoe UI,Arial,sans-serif;
  background:#f5f7f9;
  color:#111827;
}

.wppm-preview-shell{
  max-width:420px;
  margin:32px auto;
  padding:18px;
}

.wppm-buybox{
  display:grid;
  gap:14px;
  background:var(--wppm-surface-bg, transparent);
  border:0;
  box-shadow:none;
  outline:none;
  padding:0;
  max-width:100%;
  isolation:isolate;
  font-family:var(--wppm-font-family, Inter, Segoe UI, Arial, sans-serif);
  color:var(--wppm-text-color, #111827);
}

.wppm-buybox,
.wppm-buybox *{
  box-sizing:border-box;
}

.wppm-buybox [hidden]{
  display:none !important;
}

.wppm-buybox button,
.wppm-buybox a{
  font:inherit;
}

.wppm-buybox button{
  -webkit-appearance:none;
  appearance:none;
}

.wppm-buybox img{
  max-width:100%;
  height:auto;
  vertical-align:middle;
}

.wppm-buybox__packs,
.wppm-buybox__options,
.wppm-buybox__cta-wrap,
.wppm-buybox__price-row,
.wppm-buybox__availability,
.wppm-buybox__shipping-row,
.wppm-buybox__inline-note,
.wppm-buybox__trust,
.wppm-buybox__scarcity{
  margin:0;
}

.wppm-buybox__packs{
  display:grid;
  gap:var(--wppm-pack-gap, 12px);
}

.wppm-buybox__options{
  display:grid;
  gap:8px;
}

.wppm-pack{
  position:relative;
  display:grid;
  grid-template-columns:24px 72px minmax(0,1fr);
  align-items:center;
  gap:12px;
  width:100%;
  text-align:left;
  color:var(--wppm-text-color, #111827);
  border:var(--wppm-pack-border-width, 1px) solid var(--wppm-pack-border, #d9dee5);
  border-radius:var(--wppm-pack-radius, 18px);
  background-color:var(--wppm-pack-bg, #ffffff);
  background-image:none;
  padding:var(--wppm-pack-padding, 14px 16px);
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.wppm-pack,
.wppm-pack:hover,
.wppm-pack:focus,
.wppm-pack:active,
.wppm-pack:visited{
  color:var(--wppm-text-color, #111827);
  background-color:var(--wppm-pack-bg, #ffffff);
  background-image:none;
  text-decoration:none;
}

.wppm-pack:hover{
  transform:translateY(-1px);
  border-color:var(--wppm-pack-selected-border, #16c252);
}

.wppm-pack.is-selected{
  border-color:var(--wppm-pack-selected-border, #16c252);
  box-shadow:var(--wppm-pack-selected-glow, 0 0 0 3px rgba(10,184,58,.10));
  background-color:var(--wppm-pack-selected-bg, #ffffff);
}

.wppm-pack__radio-wrap{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding-top:4px;
}

.wppm-pack__radio{
  width:18px;
  height:18px;
  border-radius:999px;
  border:2px solid var(--wppm-radio-border, #b9c0ce);
  position:relative;
  background:#fff;
}

.wppm-pack.is-selected .wppm-pack__radio{
  border-color:var(--wppm-radio-active, #0ab83a);
}

.wppm-pack.is-selected .wppm-pack__radio::after{
  content:"";
  position:absolute;
  inset:3px;
  border-radius:999px;
  background:var(--wppm-radio-active, #0ab83a);
}

.wppm-pack__body{
  display:grid;
  gap:8px;
  min-width:0;
}

.wppm-pack__media{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}

.wppm-pack__image{
  display:block;
  width:100%;
  max-width:var(--wppm-image-max-width, 64px);
  max-height:var(--wppm-image-max-width, 64px);
  object-fit:contain;
}

.wppm-pack__top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:10px;
}

.wppm-pack__label{
  font-size:var(--wppm-title-size, 17px);
  line-height:1.1;
  font-weight:900;
  color:var(--wppm-pack-title-color, var(--wppm-text-color, #111827));
}

.wppm-pack__badge{
  position:absolute;
  top:10px;
  right:10px;
  flex:0 0 auto;
  border-radius:999px;
  background:var(--wppm-badge-bg, #182230);
  color:var(--wppm-badge-text, #ffffff);
  font-size:var(--wppm-badge-font-size, 11px);
  font-weight:700;
  padding:5px 9px;
}

.wppm-buybox--pack-default .wppm-buybox__packs{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.wppm-buybox--pack-default .wppm-pack{
  grid-template-columns:1fr;
  align-content:start;
  justify-items:center;
  gap:10px;
  min-height:208px;
  padding:18px 16px 14px;
  overflow:visible;
}

.wppm-buybox--pack-default .wppm-pack__media{
  width:100%;
}

.wppm-buybox--pack-default .wppm-pack__image{
  max-width:min(132px, 100%);
  max-height:104px;
}

.wppm-buybox--pack-default .wppm-pack__body{
  justify-items:center;
  text-align:center;
  gap:8px;
  width:100%;
}

.wppm-buybox--pack-default .wppm-pack__badge{
  top:-18px;
  right:-18px;
  z-index:2;
  min-width:64px;
  justify-content:center;
  padding:8px 12px;
  border-radius:14px;
  box-shadow:0 8px 18px rgba(0,0,0,.14);
}

.wppm-buybox--pack-default .wppm-pack__top{
  width:100%;
  justify-content:center;
}

.wppm-buybox--pack-default .wppm-pack__label{
  text-align:center;
}

.wppm-buybox--pack-default .wppm-pack__prices{
  justify-content:center;
}

.wppm-buybox--pack-default .wppm-pack__radio-wrap{
  display:none;
}

.wppm-buybox--pack-default .wppm-pack__note{
  text-align:center;
}

.wppm-buybox--pack-rail .wppm-buybox__packs{
  grid-template-columns:1fr;
}

.wppm-buybox--pack-rail .wppm-pack__badge{
  top:14px;
  right:14px;
}

.wppm-pack__note{
  color:var(--wppm-pack-note-color, var(--wppm-muted-color, #667085));
  font-size:var(--wppm-note-size, 13px);
}

.wppm-pack__prices{
  display:flex;
  gap:10px;
  align-items:flex-end;
}

.wppm-pack__price{
  font-size:var(--wppm-pack-price-size, 18px);
  line-height:1;
  font-weight:900;
  color:var(--wppm-pack-price-color, var(--wppm-text-color, #111827));
}

.wppm-pack__old{
  font-size:14px;
  color:var(--wppm-old-price-color, #98a2b3);
  text-decoration:line-through;
}

.wppm-buybox__option-title{
  margin-bottom:8px;
  font-size:13px;
  font-weight:800;
  color:var(--wppm-option-title-color, var(--wppm-text-color, #111827));
}

.wppm-buybox__swatches,
.wppm-buybox__sizes{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.wppm-swatch,
.wppm-size{
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid var(--wppm-pack-border, #d9dee5);
  background:#fff;
  color:var(--wppm-variant-text-color, var(--wppm-text-color, #111827));
  border-radius:999px;
  padding:8px 12px;
  cursor:pointer;
  font:inherit;
}

.wppm-swatch,
.wppm-swatch:hover,
.wppm-swatch:focus,
.wppm-swatch:active,
.wppm-size,
.wppm-size:hover,
.wppm-size:focus,
.wppm-size:active{
  color:var(--wppm-variant-text-color, var(--wppm-text-color, #111827));
  background:#fff;
  text-decoration:none;
}

.wppm-swatch.is-selected,
.wppm-size.is-selected{
  border-color:var(--wppm-pack-selected-border, #16c252);
  box-shadow:var(--wppm-pack-selected-glow, 0 0 0 3px rgba(10,184,58,.10));
}

.wppm-swatch__dot{
  width:16px;
  height:16px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.12);
  background:var(--wppm-swatch-color,#ddd);
}

.wppm-swatch__label{
  font-size:13px;
  font-weight:700;
}

.wppm-buybox__price-row{
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  gap:12px;
  flex-wrap:wrap;
}

.wppm-buybox__price-main{
  font-size:var(--wppm-price-size, 30px);
  line-height:1;
  font-weight:900;
  color:var(--wppm-price-color, #c62828);
}

.wppm-buybox__price-old{
  order:1;
  color:var(--wppm-old-price-color, #98a2b3);
  text-decoration:line-through;
  font-size:14px;
}

.wppm-buybox__price-main{
  order:2;
}

.wppm-buybox__price-discount{
  order:3;
  background:var(--wppm-discount-bg, #dc2626);
  color:var(--wppm-discount-text, #ffffff);
  border-radius:999px;
  padding:5px 9px;
  font-size:11px;
  font-weight:700;
}

.wppm-buybox__availability,
.wppm-buybox__shipping-row,
.wppm-buybox__inline-note,
.wppm-buybox__trust,
.wppm-buybox__scarcity{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:18px;
  font-size:var(--wppm-scarcity-font-size, 14px);
  color:var(--wppm-muted-color, #667085);
}

.wppm-buybox__availability{
  justify-content:space-between;
  font-weight:700;
  color:var(--wppm-availability-text-color, var(--wppm-muted-color, #667085));
}

.wppm-buybox__shipping-row{
  color:var(--wppm-shipping-text-color, var(--wppm-muted-color, #667085));
}

.wppm-buybox__inline-note{
  color:var(--wppm-guarantee-text-color, var(--wppm-muted-color, #667085));
}

.wppm-buybox__trust{
  color:var(--wppm-trust-text-color, var(--wppm-muted-color, #667085));
}

.wppm-buybox__scarcity{
  color:var(--wppm-scarcity-text-color, var(--wppm-muted-color, #667085));
}

.wppm-buybox__shipping-logo,
.wppm-buybox__trust-logo{
  display:block;
  max-height:var(--wppm-shipping-logo-max-height, 22px);
  width:auto;
}

.wppm-buybox__trust-logo{
  max-height:var(--wppm-trust-logo-max-height, 22px);
}

.wppm-buybox__cta-wrap{
  display:grid;
  gap:10px;
}

.wppm-buybox__button{
  display:block;
  width:100%;
  border:0;
  border-radius:var(--wppm-button-radius, 16px);
  background:linear-gradient(180deg,var(--wppm-button-bg-start, #12c53f) 0%,var(--wppm-button-bg-end, #07b631) 100%);
  color:var(--wppm-button-text-color, #ffffff);
  text-decoration:none;
  text-align:center;
  padding:var(--wppm-button-padding, 17px 18px);
  font-size:var(--wppm-button-font-size, 22px);
  font-weight:900;
  box-shadow:var(--wppm-button-shadow, 0 18px 28px rgba(10,184,58,.24));
}

.wppm-buybox__button,
.wppm-buybox__button:hover,
.wppm-buybox__button:focus,
.wppm-buybox__button:active,
.wppm-buybox__button:visited{
  color:var(--wppm-button-text-color, #ffffff);
  text-decoration:none;
}

.wppm-buybox__button-subtext,
.wppm-buybox__button-row,
.wppm-buybox__button-image{
  text-align:center;
}

.wppm-buybox__button-subtext,
.wppm-buybox__button-row{
  font-size:var(--wppm-button-subtext-size, 13px);
  color:var(--wppm-button-subtext-color, #667085);
  line-height:1.4;
}

.wppm-buybox__button-row strong{
  color:var(--wppm-accent-text-color, #111827);
}

.wppm-buybox__button-image img{
  display:block;
  max-width:100%;
  height:auto;
  margin:0 auto;
}

.wppm-buybox__scarcity-num{
  color:var(--wppm-price-color, #c62828);
}

.wp-merge-buybox-host,
.wp-merge-buybox-host.wppm-buybox{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  outline:none !important;
}

@media (max-width:640px){
  .wppm-buybox--pack-default .wppm-buybox__packs{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:8px;
  }

  .wppm-pack{
    grid-template-columns:22px 56px minmax(0,1fr);
    gap:10px;
    padding:12px 14px;
  }

  .wppm-buybox--pack-default .wppm-pack{
    grid-template-columns:1fr;
    min-height:156px;
    gap:8px;
    padding:12px 8px 10px;
  }

  .wppm-pack__image{
    max-width:calc(var(--wppm-image-max-width, 64px) - 12px);
    max-height:calc(var(--wppm-image-max-width, 64px) - 12px);
  }

  .wppm-buybox--pack-default .wppm-pack__image{
    max-width:min(76px, 100%);
    max-height:68px;
  }

  .wppm-pack__label{
    font-size:calc(var(--wppm-title-size, 17px) - 1px);
  }

  .wppm-buybox--pack-default .wppm-pack__label{
    font-size:14px;
    line-height:1.15;
  }

  .wppm-buybox--pack-default .wppm-pack__price{
    font-size:16px;
  }

  .wppm-buybox--pack-default .wppm-pack__note{
    font-size:12px;
    line-height:1.2;
  }

  .wppm-buybox--pack-default .wppm-pack__badge{
    top:-12px;
    right:-8px;
    min-width:52px;
    padding:6px 9px;
    font-size:10px;
  }

  .wppm-buybox__price-main{
    font-size:calc(var(--wppm-price-size, 30px) - 4px);
  }

  .wppm-buybox__button{
    padding:16px;
    font-size:calc(var(--wppm-button-font-size, 22px) - 2px);
  }
}

.wppm-sticky{
  position:fixed;
  left:16px;
  right:16px;
  bottom:16px;
  z-index:9999;
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:center;
  padding:12px 14px;
  background:#111827;
  color:#fff;
  border-radius:16px;
  box-shadow:0 18px 40px rgba(0,0,0,.28);
}

.wppm-sticky__prices{
  display:grid;
  gap:4px;
}

.wppm-sticky__old{
  color:#cbd5e1;
  text-decoration:line-through;
  font-size:12px;
}

.wppm-sticky__new{
  font-size:18px;
  font-weight:900;
}

.wppm-sticky__title{
  font-size:13px;
  font-weight:700;
}

.wppm-sticky__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 16px;
  border-radius:999px;
  background:#12c53f;
  color:#04120a;
  text-decoration:none;
  font-size:14px;
  font-weight:900;
}

@media (max-width:560px){
  .wppm-preview-shell{
    margin:0 auto;
    padding:12px;
  }

  .wppm-buybox__price-main{
    font-size:26px;
  }

  .wppm-buybox__button{
    font-size:19px;
  }

  .wppm-sticky{
    grid-template-columns:1fr;
    text-align:center;
  }
}
