.ppfaqplus { margin-top: 1rem; margin-bottom: .5rem; }
.ppfaqplus__heading { font-size: 1.25rem; margin: 1rem 0 .5rem; font-weight: 700; }
.ppfaqplus__title { font-weight: 600; font-size: 1.1rem; margin-bottom: .5rem; }
.ppfaqplus__accordion details { border: 1px solid #e5e5e5; border-radius: 8px; padding: .75rem 1rem; margin-bottom: .5rem; background: #fff; }
.ppfaqplus__accordion summary { cursor: pointer; font-weight: 600; outline: none; list-style: none; }
.ppfaqplus__accordion summary::-webkit-details-marker { display: none; }
.ppfaqplus__a { margin-top: .5rem; }

/* === PPFAQPLUS: Force styling of product customization panel (right column) === */
#product .ppfaqplus-custom-panel {
  background: #f6f6f6 !important;
  padding: 16px 16px 12px !important;
  border-radius: 8px !important;
  border: 1px solid #e9e9e9 !important;
}
#product .ppfaqplus-custom-panel .form-group,
#product .ppfaqplus-custom-panel .form-control,
#product .ppfaqplus-custom-panel input[type="text"],
#product .ppfaqplus-custom-panel input[type="number"],
#product .ppfaqplus-custom-panel input[type="email"],
#product .ppfaqplus-custom-panel input[type="tel"],
#product .ppfaqplus-custom-panel textarea,
#product .ppfaqplus-custom-panel select {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
#product .ppfaqplus-custom-panel .row > [class*="col-"] {
  flex: 0 0 100% !important;
  max-width: 100% !important;
}
#product .ppfaqplus-custom-panel .btn {
  width: 100% !important;
}
#product .ppfaqplus-custom-panel .form-group + .form-group { margin-top: 10px !important; }
#product .ppfaqplus-custom-panel label { margin-bottom: 6px !important; font-weight: 600 !important; }

/* Upload widgets full width */
#product .ppfaqplus-custom-panel .file-input,
#product .ppfaqplus-custom-panel .customization-file,
#product .ppfaqplus-custom-panel .pp-upload,
#product .ppfaqplus-custom-panel .dz-default,
#product .ppfaqplus-custom-panel .dz-message {
  width: 100% !important;
  max-width: 100% !important;
}


/* === PPFAQPLUS v2.1.3 fix: remove margin under product variants === */
#product .product-variants.js-product-variants {
  margin-bottom: 0 !important;
}


/* === PPFAQPLUS v2.1.4: force all fields to white inside the customization panel === */
#product .ppfaqplus-custom-panel input[type="text"],
#product .ppfaqplus-custom-panel input[type="number"],
#product .ppfaqplus-custom-panel input[type="email"],
#product .ppfaqplus-custom-panel input[type="tel"],
#product .ppfaqplus-custom-panel input[type="search"],
#product .ppfaqplus-custom-panel input[type="url"],
#product .ppfaqplus-custom-panel select,
#product .ppfaqplus-custom-panel textarea {
  background-color: #ffffff !important;
  border: 1px solid #cccccc !important;
  color: #333333 !important;
  border-radius: 4px !important;
  padding: 6px 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Hover/focus tidy */
#product .ppfaqplus-custom-panel input:focus,
#product .ppfaqplus-custom-panel select:focus,
#product .ppfaqplus-custom-panel textarea:focus {
  outline: none !important;
  border-color: #999999 !important;
  box-shadow: none !important;
}


/* === PPFAQPLUS v2.1.5: Upload field full width === */
#product .ppfaqplus-custom-panel input[type="file"],
#product .ppfaqplus-custom-panel .custom-file,
#product .ppfaqplus-custom-panel .custom-file input[type="file"],
#product .ppfaqplus-custom-panel .dz-default,
#product .ppfaqplus-custom-panel .dz-message,
#product .ppfaqplus-custom-panel .dz-preview {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}


/* === PPFAQPLUS v2.1.6: PitchPrint upload placeholder full width === */
#product .ppfaqplus-custom-panel .mini-upld,
#product .ppfaqplus-custom-panel div[class*="mini-upld"] {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  box-sizing: border-box !important;
}
/* Make its parent stretch if constrained */
#product .ppfaqplus-custom-panel .ppc-main-upld,
#product .ppfaqplus-custom-panel [id^="ppg_main_btn_sep"] {
  width: 100% !important;
  max-width: 100% !important;
}
