.dfxrp-wrap{
  border:1px solid #e5e7eb;
  border-radius:10px;
  padding:14px;
  background:#fff;
  margin:12px 0;
}
.dfxrp-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:flex-end;
}
.dfxrp-row label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:14px;
}
.dfxrp-row input{
  min-width:160px;
  padding:8px 10px;
  border:1px solid #d1d5db;
  border-radius:8px;
}
.dfxrp-row .dfxrp-qty{ min-width:90px; }
.dfxrp-fieldset{
  border:1px solid #e5e7eb;
  border-radius:10px;
  padding:10px 12px;
  margin:12px 0;
}
.dfxrp-fieldset legend{
  padding:0 6px;
  font-weight:600;
}
.dfxrp-field{
  margin:10px 0;
}
.dfxrp-field-label{
  font-weight:600;
  margin-bottom:6px;
}
.dfxrp-radio-group{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  align-items:center;
}
.dfxrp-radio-group label,
.dfxrp-field-checkbox label,
.dfxrp-field-select label{
  display:flex;
  gap:8px;
  align-items:center;
  font-size:14px;
  line-height:1.2;
}

.dfxrp-radio-group label{
  white-space:nowrap;
  margin:0;
  padding:2px 0;
}

.dfxrp-radio-group input{
  margin:0;
  flex:0 0 auto;
  vertical-align:middle;
}
.dfxrp-field-select select{
  padding:8px 10px;
  border:1px solid #d1d5db;
  border-radius:8px;
  min-width:200px;
  margin-top:6px;
}
.dfxrp-summary{
  margin-top:10px;
  border-top:1px solid #e5e7eb;
  padding-top:10px;
}
.dfxrp-price-line{
  display:flex;
  justify-content:space-between;
  padding:4px 0;
  font-size:15px;
}
.dfxrp-price-label{ color:#374151; }
.dfxrp-unit-price, .dfxrp-line-total{
  font-weight:700;
}
.dfxrp-setup-charge{
  font-weight:700;
}
.dfxrp-note{
  margin-top:6px;
  font-size:13px;
}
.dfxrp-note-muted{ color:#6b7280; }
.dfxrp-note-warn{ color:#b45309; }
.dfxrp-error{
  border:1px solid #fecaca;
  background:#fff1f2;
  padding:10px 12px;
  border-radius:10px;
  color:#991b1b;
}


/* RADIO ALIGN OVERRIDE (theme-safe) */
.dfxrp-wrap .dfxrp-radio-group{
  align-items:center !important;
}
.dfxrp-wrap .dfxrp-radio-group > label{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  line-height:1.2 !important;
  margin:0 !important;
  padding:2px 0 !important;
  white-space:nowrap !important;
}
.dfxrp-wrap .dfxrp-radio-group input[type="radio"]{
  position:static !important;
  top:auto !important;
  margin:0 !important;
  vertical-align:middle !important;
  transform:none !important;
  appearance:auto !important;
  -webkit-appearance:auto !important;
  width:16px !important;
  height:16px !important;
  flex:0 0 auto !important;
}

/*
  Product-page cleanup:
  If a product uses a DuctFix pricer shortcode, hide the default WooCommerce
  price (£0.00) and the default add-to-cart block (theme-safe fallback).
*/
body.dfxrp-pricer-product .summary .price,
body.dfxrp-pricer-product .summary form.cart{
  display:none !important;
}


/* Setup fee note shown under finish options */
.dfxrp-setup-note{
  margin-top:6px;
  font-size:13px;
  color:#6b7280;
}
