/* Scoped: solo afecta al widget */
.emp-ui-form{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:#fff;
  border-radius:24px;
  padding:24px;
  border:2px solid #E5E7EB;
  box-shadow: 0 12px 32px rgba(0,0,0,.08);
}

.emp-ui-empty{
  padding:18px;
  border-radius:16px;
  background:#fff;
  border:1px solid #E5E7EB;
}

.emp-ui-form__header{ padding-bottom:18px; border-bottom:1px solid #E5E7EB; margin-bottom:18px; }
.emp-ui-form__title{ margin:0 0 12px; font-weight:800; font-size:24px; color:#111827; }

.emp-ui-price{ display:flex; align-items:baseline; gap:10px; margin-bottom:12px; }
.emp-ui-price__main{ font-size:36px; font-weight:900; color:#5B5FEF; line-height:1; }
.emp-ui-price__meta{ font-size:14px; color:#6B7280; font-weight:600; }

.emp-ui-badge{
  display:inline-flex; align-items:center; gap:10px;
  padding:8px 12px; border-radius:999px; background:#FEF3C7;
}
.emp-ui-badge__dot{ width:8px; height:8px; border-radius:999px; background:#F59E0B; box-shadow:0 0 0 3px rgba(245,158,11,.15); }
.emp-ui-badge__text{ font-size:13px; font-weight:800; color:#92400E; }

.emp-ui-divider{ height:0; }

.emp-ui-field{ margin:18px 0; }
.emp-ui-label{ display:block; font-size:14px; font-weight:800; color:#374151; margin-bottom:10px; }

.emp-ui-qty{ display:flex; align-items:center; gap:14px; }
.emp-ui-qty__btn{
  width:48px; height:48px; border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  font-weight:900; font-size:22px; border:1px solid #E5E7EB;
  transition:all .15s ease;
}
.emp-ui-qty__btn--ghost{ background:#F3F4F6; color:#374151; }
.emp-ui-qty__btn--primary{ background:#5B5FEF; border-color:#5B5FEF; color:#fff; }
.emp-ui-qty__btn:disabled{ opacity:.4; cursor:not-allowed; }
.emp-ui-qty__value{ flex:1; text-align:center; font-size:24px; font-weight:900; color:#111827; }

.emp-ui-benefits{ margin-top:10px; }
.emp-ui-benefits__head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.emp-ui-benefits__title{ margin:0; font-size:16px; font-weight:900; color:#111827; }
.emp-ui-benefits__hint{ font-size:12px; color:#9CA3AF; font-weight:700; }

.emp-ui-benefits__list{ display:flex; flex-direction:column; gap:12px; }

.emp-ui-benefit{
  background:#F9FAFB;
  border:1px solid #E5E7EB;
  border-radius:14px;
  padding:14px;
  transition:border-color .15s ease;
}
.emp-ui-benefit:hover{ border-color:#5B5FEF; }

.emp-ui-benefit__name{ font-size:14px; font-weight:900; color:#111827; margin-bottom:4px; }
.emp-ui-benefit__desc{ font-size:12px; color:#6B7280; font-weight:650; margin-bottom:8px; }

.emp-ui-benefit__priceRow{ display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
.emp-ui-benefit__add{ color:#5B5FEF; font-weight:900; font-size:16px; }
.emp-ui-benefit__cc{ color:#9CA3AF; font-size:11px; font-weight:800; }
.emp-ui-benefit__free{ color:#10B981; font-weight:900; font-size:16px; }
.emp-ui-benefit__max{ color:#9CA3AF; font-size:11px; font-weight:800; }

.emp-ui-benefit__qty{ display:flex; align-items:center; gap:10px; margin-top:12px; }

.emp-ui-miniBtn{
  width:36px; height:36px; border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  font-weight:900; font-size:18px;
  border:1px solid #E5E7EB;
  transition:all .15s ease;
}
.emp-ui-miniBtn--ghost{ background:#fff; color:#374151; }
.emp-ui-miniBtn--primary{ background:#5B5FEF; border-color:#5B5FEF; color:#fff; }
.emp-ui-miniBtn:disabled{ opacity:.4; cursor:not-allowed; }

.emp-ui-miniQty{ flex:1; text-align:center; font-size:18px; font-weight:900; color:#111827; }

.emp-ui-total{
  margin-top:18px;
  padding:16px;
  border-radius:16px;
  border:2px solid #C7D2FE;
  background: linear-gradient(135deg, #F0F1FF, #F5F6FF);
  display:flex; align-items:center; justify-content:space-between;
}
.emp-ui-total__label{ font-size:16px; font-weight:900; color:#111827; }
.emp-ui-total__value{ display:flex; align-items:baseline; gap:10px; }
.emp-ui-total__value span{ font-weight:900; }
.emp-ui-total__value #empTotal{ font-size:28px; color:#5B5FEF; }
.emp-ui-total__cc{ font-size:14px; color:#6B7280; font-weight:800; }

.emp-ui-cta{
  margin-top:16px;
  width:100%;
  background:#5B5FEF;
  border:0;
  color:#fff;
  font-size:16px;
  font-weight:900;
  padding:14px 16px;
  border-radius:14px;
  box-shadow:0 10px 20px rgba(91,95,239,.25);
  display:flex; align-items:center; justify-content:center; gap:10px;
  transition:all .15s ease;
}
.emp-ui-cta:hover{ background:#4A4FD8; transform:translateY(-1px); }
.emp-ui-cta:disabled{ opacity:.45; cursor:not-allowed; transform:none; }

.emp-ui-cta__arrow{ font-weight:900; }

.emp-ui-foot{
  margin:10px 0 0;
  text-align:center;
  font-size:12px;
  color:#6B7280;
  font-weight:650;
}
