/* =========================================================
   ALL dropdowns = Item details style
   White field, grey text, list same width as box
   MUST load last (after ui-polish)
   ========================================================= */

/* ---- Anchors ---- */
body .cn-item-details-wrap,
body .item-details-wrap,
body .cp-select-wrap,
body label > .cp-select-wrap {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* ---- Closed field (select face) — like a normal white text input ---- */
html body .cp-select-wrap .cp-select-trigger,
html body.admin-mode .cp-select-wrap .cp-select-trigger,
html body.staff-mode .cp-select-wrap .cp-select-trigger,
html body .form-grid .cp-select-trigger,
html body .form-stack .cp-select-trigger,
html body .quote-form-panel .cp-select-trigger,
html body button.cp-select-trigger,
html body div.cp-select-trigger {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  min-height: 42px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #b9cbd5 !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #6b7a86 !important;
  font: 14px/1.3 Arial, Helvetica, sans-serif !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  text-align: left !important;
  text-shadow: none !important;
  box-shadow: none !important;
  cursor: pointer !important;
  transform: none !important;
  transition: border-color 0.12s ease !important;
  letter-spacing: normal !important;
  filter: none !important;
  overflow: hidden !important;
  isolation: auto !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

html body .cp-select-wrap .cp-select-trigger:hover,
html body .cp-select-wrap .cp-select-trigger:focus,
html body .cp-select-wrap.is-open .cp-select-trigger,
html body.admin-mode .cp-select-trigger:hover,
html body.admin-mode .cp-select-trigger:active,
html body.admin-mode .cp-select-trigger:focus {
  border-color: #8fa7b2 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #5a6a76 !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
  outline: none !important;
}

html body .cp-select-trigger .cp-select-label {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: #6b7a86 !important;
  font-weight: 400 !important;
  font-size: 14px !important;
  background: transparent !important;
  text-shadow: none !important;
}

html body .cp-select-trigger .cp-select-caret {
  flex: 0 0 auto !important;
  color: #8a98a3 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  background: transparent !important;
  text-shadow: none !important;
}

html body .cp-select-wrap > select.cp-select-native {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* ---- Open list panel (all types) — white, full field width ---- */
html body .item-search-results,
html body .cn-item-search-results,
html body .address-results,
html body .cp-select-menu,
html body.admin-mode .item-search-results,
html body.admin-mode .cp-select-menu,
html body.admin-mode .address-results {
  position: absolute !important;
  z-index: 600 !important;
  left: 0 !important;
  right: auto !important;
  top: calc(100% + 1px) !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  max-height: 220px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border: 1px solid #c5ced6 !important;
  border-radius: 4px !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1) !important;
  box-sizing: border-box !important;
}

/* ---- List rows — grey text on white (never blue) ---- */
html body .item-search-results .item-search-option,
html body .cn-item-search-results .item-search-option,
html body .address-results .item-search-option,
html body .address-results button,
html body .cp-select-menu .item-search-option,
html body .item-search-results button,
html body .cn-item-search-results button,
html body.admin-mode .item-search-results .item-search-option,
html body.admin-mode .cp-select-menu .item-search-option,
html body.admin-mode .address-results button,
html body.admin-mode .form-grid .cp-select-menu .item-search-option,
html body.admin-mode .quote-form-panel .item-search-results .item-search-option {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  border: 0 !important;
  border-bottom: 1px solid #eceff1 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #6b7a86 !important;
  font: 13px/1.35 Arial, Helvetica, sans-serif !important;
  font-weight: 400 !important;
  font-size: 13px !important;
  text-align: left !important;
  text-shadow: none !important;
  box-shadow: none !important;
  cursor: pointer !important;
  min-height: 0 !important;
  height: auto !important;
  transform: none !important;
  transition: none !important;
  letter-spacing: normal !important;
  gap: 0 !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  white-space: normal !important;
  filter: none !important;
  overflow: visible !important;
}

html body .item-search-results .item-search-option:last-child,
html body .cp-select-menu .item-search-option:last-child,
html body .address-results .item-search-option:last-child,
html body .address-results button:last-child,
html body .item-search-results button:last-child {
  border-bottom: 0 !important;
}

html body .item-search-results .item-search-option:hover,
html body .item-search-results .item-search-option.is-active,
html body .cp-select-menu .item-search-option:hover,
html body .cp-select-menu .item-search-option.is-active,
html body .address-results .item-search-option:hover,
html body .address-results button:hover,
html body .address-results button:focus,
html body .item-search-results button:hover,
html body .item-search-results button.is-active,
html body.admin-mode .cp-select-menu .item-search-option:hover,
html body.admin-mode .item-search-results .item-search-option:hover {
  background: #f3f5f6 !important;
  background-color: #f3f5f6 !important;
  background-image: none !important;
  color: #5a6a76 !important;
  box-shadow: none !important;
  transform: none !important;
  border-radius: 0 !important;
  filter: none !important;
  text-shadow: none !important;
}

html body .item-search-results .item-search-empty,
html body .cp-select-menu .item-search-empty {
  padding: 8px 10px !important;
  background: #ffffff !important;
  color: #8a98a3 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
}

html body .address-results strong,
html body .address-results small {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font-weight: 400 !important;
  color: inherit !important;
  background: transparent !important;
  text-shadow: none !important;
}

html body .address-results small {
  margin-top: 2px !important;
  color: #8a98a3 !important;
  font-size: 12px !important;
}

/* Native selects (if any left un-enhanced): white field, full width */
html body select:not([multiple]):not([size]) {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  min-height: 42px !important;
  padding: 10px 12px !important;
  border: 1px solid #b9cbd5 !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  background-image: none !important;
  color: #6b7a86 !important;
  font: 14px/1.3 Arial, Helvetica, sans-serif !important;
  font-weight: 400 !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

/* Remove-row × — small plain control, never a blue bubble */
html body .remove-quote-item,
html body.admin-mode .remove-quote-item,
html body .quote-item-row .remove-quote-item,
html body .quote-items .remove-quote-item,
html body.admin-mode .form-grid .remove-quote-item,
html body.admin-mode .quote-form-panel .remove-quote-item {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #d0d7dc !important;
  border-radius: 6px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #a1452c !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font: 18px/1 Arial, Helvetica, sans-serif !important;
  font-weight: 400 !important;
  font-size: 18px !important;
  transform: none !important;
  filter: none !important;
  letter-spacing: normal !important;
  gap: 0 !important;
  cursor: pointer !important;
}

html body .remove-quote-item:hover,
html body.admin-mode .remove-quote-item:hover {
  background: #fff5f3 !important;
  background-image: none !important;
  color: #7f2916 !important;
  border-color: #e0b4a8 !important;
  box-shadow: none !important;
  transform: none !important;
}
