

/* === CPC cup-designer glitch fixes (ported, brand-remapped) === */
/* Cup Designer — DM Sans (exclude FA icon elements) */
.cup-design-builder,
#cupDesignFormModal,
#cupPreviewModal,
.btn-design-cups,
.cup-design-builder button:not(.fa):not(.fas):not(.far):not(.fab),
.cup-design-builder input,
.cup-design-builder select,
.cup-design-builder textarea,
.cup-design-builder label,
.cup-design-builder span:not(.fa):not(.fas):not(.far):not(.fab),
.cup-design-builder p,
.cup-design-builder h1,
.cup-design-builder h2,
.cup-design-builder h3,
.cup-design-builder h4,
.cup-design-builder h5,
.cup-design-builder h6,
.cup-design-builder small,
.cup-design-builder .panel-title,
.cup-design-builder .tool-label,
#cupDesignFormModal .modal-content,
#cupPreviewModal .modal-content {
  font-family: "DM Sans", sans-serif !important;
}
.cup-design-builder .design-element.text-element,
.cup-design-canvas .design-element[data-type="text"] {
  font-family: "DM Sans", sans-serif;
}
.pdp_design_cta .btn-design-cups {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #fff !important;
  font-family: "DM Sans", sans-serif !important;
}
.cup-design-builder .design-element.text-element,
.cup-design-canvas .design-element[data-type="text"] {
  font-family: "DM Sans", sans-serif;
}
.pdp_design_cta .btn-design-cups {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #fff !important;
  font-family: "DM Sans", sans-serif !important;
}

/* Cup Designer styles - CPC theme */

.cup-design-builder .design-tools-panel .tool-panels .tool-section .shapes-grid .shape-item svg{display:block;margin:0 auto 8px;color:#cd9933;fill:#cd9933}

/* Shapes grid: icon on top, label below (match Hexagon) */
.cup-design-builder .design-tools-panel .tool-panels .tool-section .shapes-grid .shape-item{
  display:-webkit-box!important;
  display:-ms-flexbox!important;
  display:flex!important;
  -webkit-box-orient:vertical;
  -webkit-box-direction:normal;
  -ms-flex-direction:column;
  flex-direction:column;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  text-align:center;
  gap:6px;
}
.cup-design-builder .design-tools-panel .tool-panels .tool-section .shapes-grid .shape-item i,
.cup-design-builder .design-tools-panel .tool-panels .tool-section .shapes-grid .shape-item svg{
  display:block!important;
  margin:0 auto!important;
  font-size:24px;
  line-height:1;
  color:#cd9933;
  fill:#cd9933;
}
.cup-design-builder .design-tools-panel .tool-panels .tool-section .shapes-grid .shape-item span{
  display:block;
  width:100%;
  text-align:center;
  margin:0;
}

.cup-design-builder .design-tools-panel .tool-panels .tool-section .pattern-grid .pattern-item.active{
  background:#FFF4ED!important;
  border-color:#cd9933!important;
  -webkit-box-shadow:0 4px 12px rgba(255,103,28,0.3);
  box-shadow:0 4px 12px rgba(255,103,28,0.3);
}



/* Restore Font Awesome icons — DM Sans * must not override icon fonts */
.cup-design-builder .fa,
.cup-design-builder .fas,
.cup-design-builder .far,
.cup-design-builder .fab,
.cup-design-builder .fal,
.cup-design-builder .fad,
.cup-design-builder .fa-solid,
.cup-design-builder .fa-regular,
.cup-design-builder .fa-brands,
.cup-design-builder .fa::before,
.cup-design-builder .fas::before,
.cup-design-builder .far::before,
.cup-design-builder .fab::before,
.cup-design-builder .fal::before,
.cup-design-builder .fa-solid::before,
.cup-design-builder .fa-regular::before,
.cup-design-builder .fa-brands::before,
#cupDesignBuilder .fa,
#cupDesignBuilder .fas,
#cupDesignBuilder .far,
#cupDesignBuilder .fab,
#cupDesignBuilder .fal,
#cupDesignBuilder .fa-solid,
#cupDesignBuilder .fa-regular,
#cupDesignBuilder .fa-brands,
#cupDesignBuilder .fa::before,
#cupDesignBuilder .fas::before,
#cupDesignBuilder .far::before,
#cupDesignBuilder .fab::before,
#cupDesignBuilder .fal::before,
#cupDesignBuilder .fa-solid::before,
#cupDesignBuilder .fa-regular::before,
#cupDesignBuilder .fa-brands::before,
#cupDesignFormModal .fa,
#cupDesignFormModal .fas,
#cupDesignFormModal .far,
#cupDesignFormModal .fab,
#cupDesignFormModal .fa::before,
#cupDesignFormModal .fas::before,
#cupPreviewModal .fa,
#cupPreviewModal .fas,
#cupPreviewModal .fa::before,
#cupPreviewModal .fas::before {
	font-family: "Font Awesome 6 Free", "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome" !important;
	font-weight: 900 !important;
	font-style: normal !important;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block !important;
	line-height: 1;
	speak: none;
}
.cup-design-builder .far,
.cup-design-builder .fa-regular,
.cup-design-builder .far::before,
.cup-design-builder .fa-regular::before,
#cupDesignBuilder .far,
#cupDesignBuilder .fa-regular,
#cupDesignBuilder .far::before,
#cupDesignBuilder .fa-regular::before {
	font-weight: 400 !important;
}
.cup-design-builder .fab,
.cup-design-builder .fa-brands,
.cup-design-builder .fab::before,
.cup-design-builder .fa-brands::before,
#cupDesignBuilder .fab,
#cupDesignBuilder .fa-brands,
#cupDesignBuilder .fab::before,
#cupDesignBuilder .fa-brands::before {
	font-family: "Font Awesome 6 Brands", "Font Awesome 5 Brands" !important;
	font-weight: 400 !important;
}
