.cc-pcb-builder{font-family:inherit;color:#1f2937}.cc-pcb-header{margin:0 0 18px}.cc-pcb-header h2{margin:0 0 6px;font-size:28px}.cc-pcb-header p{margin:0;color:#6b7280}.cc-pcb-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.cc-pcb-main,.cc-pcb-summary{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px;box-shadow:0 6px 20px rgba(15,23,42,.04)}.cc-pcb-steps{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.cc-pcb-step-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:#f8fafc;border:1px solid #e5e7eb;color:#64748b;font-size:12px;line-height:1.2}.cc-pcb-step-pill span{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:#e2e8f0;font-weight:700;font-size:11px}.cc-pcb-step-pill em{font-style:normal;font-weight:600}.cc-pcb-step-pill.is-active{border-color:var(--cc-pcb-color);color:#111827;background:rgba(102,51,204,.06)}.cc-pcb-step-pill.is-active span,.cc-pcb-step-pill.is-done span{background:var(--cc-pcb-color);color:#fff}.cc-pcb-step-pill.is-done{border-color:#cbd5e1}.cc-pcb-current-step h3{margin:0 0 6px;font-size:22px}.cc-pcb-current-step p{margin:0 0 16px;color:#6b7280}.cc-pcb-filters{margin-bottom:16px}.cc-pcb-filters-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px}.cc-pcb-filter-field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#475569}.cc-pcb-filter-field select,.cc-pcb-filter-field input,.cc-pcb-form input{border:1px solid #d1d5db;border-radius:10px;padding:10px 12px;font:inherit}.cc-pcb-products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.cc-pcb-product{border:1px solid #e5e7eb;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px;background:#fff;transition:.2s ease box-shadow,.2s ease border-color}.cc-pcb-product.is-selected,.cc-pcb-product:hover{border-color:var(--cc-pcb-color);box-shadow:0 8px 24px rgba(15,23,42,.08)}.cc-pcb-product img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#f8fafc;border-radius:12px;padding:10px}.cc-pcb-product h4{margin:0;font-size:13px;line-height:1.3}.cc-pcb-product-price{font-weight:700;font-size:18px}.cc-pcb-qty-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-direction: column;}.cc-pcb-qty-row label{font-size:13px;color:#64748b}.cc-pcb-qty{width:64px;padding:6px 8px;font-size:13px}.cc-pcb-btn{appearance:none;border:0;border-radius:10px;padding:11px 14px;font-weight:700;cursor:pointer;background:var(--cc-pcb-color);color:#fff;text-align:center}.cc-pcb-btn[disabled]{opacity:.55;cursor:not-allowed}.cc-pcb-nav{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.cc-pcb-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:18px}.cc-pcb-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-pcb-platform-card{justify-content:center;min-height:220px;text-align:center}.cc-pcb-platform-copy{color:#6b7280}.cc-pcb-summary h3{margin-top:0;margin-bottom:14px}.cc-pcb-summary-items{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}.cc-pcb-summary-item{display:flex;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.cc-pcb-summary-item small{display:block;color:#64748b}.cc-pcb-summary-item strong{display:block}.cc-pcb-total-row{display:flex;justify-content:space-between;align-items:center;font-size:18px;margin:12px 0 18px}.cc-pcb-form{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.cc-pcb-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14px}.cc-pcb-actions{display:flex;flex-direction:column;gap:10px}.cc-pcb-message{margin-top:12px;padding:12px 14px;border-radius:12px;background:#eff6ff;color:#1d4ed8}.cc-pcb-message.success{background:#ecfdf5;color:#047857}.cc-pcb-message.error{background:#fef2f2;color:#b91c1c}.cc-pcb-empty,.cc-pcb-loading{padding:28px;border:1px dashed #d1d5db;border-radius:16px;text-align:center;color:#6b7280;background:#fafafa}.cc-pcb-muted{color:#6b7280;margin:0}@media (max-width: 1100px){.cc-pcb-layout{grid-template-columns:1fr}.cc-pcb-summary{order:-1}}@media (max-width: 1024px){.cc-pcb-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-pcb-filters-grid{grid-template-columns:1fr}.cc-pcb-platform-grid{grid-template-columns:1fr}}@media (max-width: 560px){.cc-pcb-products-grid{grid-template-columns:1fr}.cc-pcb-nav,.cc-pcb-pagination{flex-direction:column}.cc-pcb-step-pill{width:100%;justify-content:flex-start}}

.cc-pcb-product-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.cc-pcb-eye{border:1px solid #d1d5db;background:#fff;border-radius:10px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;line-height:1;flex:0 0 auto}.cc-pcb-product-brand{margin-top:-4px;color:#64748b;font-size:12px}.cc-pcb-btn-secondary{background:#fff;color:var(--cc-pcb-color);border:1px solid var(--cc-pcb-color);text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.cc-pcb-modal{position:fixed;inset:0;display:none;z-index:999999}.cc-pcb-modal.is-open{display:block !important}.cc-pcb-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55)}.cc-pcb-modal-dialog{position:relative;z-index:1;max-width:880px;margin:5vh auto;background:#fff;border-radius:18px;padding:24px;box-shadow:0 24px 60px rgba(0,0,0,.22);max-height:90vh;overflow:auto}.cc-pcb-modal-close{position:absolute;top:10px;right:12px;border:0;background:transparent;font-size:30px;cursor:pointer;line-height:1}.cc-pcb-modal-top{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}.cc-pcb-modal-top img{width:100%;background:#f8fafc;border-radius:12px;padding:12px;object-fit:contain}.cc-pcb-modal-top h3{margin:0 0 6px;font-size:24px}.cc-pcb-modal-brand{color:#64748b;margin-bottom:10px}.cc-pcb-modal-price{font-size:24px;font-weight:700;margin-bottom:14px}.cc-pcb-modal-section{margin-top:20px}.cc-pcb-modal-section h4{margin:0 0 10px;font-size:16px}.cc-pcb-tech-list{margin:0;padding-left:18px}.cc-pcb-tech-list li{margin-bottom:8px}.cc-pcb-modal-open{overflow:hidden}@media (max-width: 700px){.cc-pcb-modal-dialog{margin:2vh 12px;padding:18px}.cc-pcb-modal-top{grid-template-columns:1fr}}
.cc-pcb-more-info{width:100%;margin-top:8px}.cc-pcb-btn-secondary{padding:9px 12px}.cc-pcb-product-head{min-height:36px}.cc-pcb-eye{display:none}
.cc-pcb-modal[hidden]{display:none !important}.cc-pcb-modal-dialog:focus{outline:none}.cc-pcb-modal-body{position:relative;z-index:2}


.cc-pcb-more-info{font-size:11px;line-height:1.1;white-space:nowrap}
.cc-pcb-modal-close{color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:999px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.cc-pcb-modal-actions-top{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.cc-pcb-modal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;margin-bottom:16px;border-bottom:1px solid #e5e7eb;padding-bottom:12px}
.cc-pcb-modal-tab{appearance:none;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:600;cursor:pointer}
.cc-pcb-modal-tab.is-active{background:var(--cc-pcb-color);border-color:var(--cc-pcb-color);color:#fff}
.cc-pcb-modal-panel{display:none}
.cc-pcb-modal-panel.is-active{display:block}
.cc-pcb-modal-reviews{display:flex;flex-direction:column;gap:14px}
.cc-pcb-review{border:1px solid #e5e7eb;border-radius:14px;padding:14px;background:#fff}
.cc-pcb-review-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}
.cc-pcb-review-rating{color:#f59e0b;white-space:nowrap}


.cc-pcb-modal-tabs{background:#ffffff!important}
.cc-pcb-modal-tab{
  background:#f8fafc!important;
  color:#111827!important;
  border:1px solid #cbd5e1!important;
  box-shadow:none!important;
}
.cc-pcb-modal-tab:hover{
  background:#eef2ff!important;
  color:#111827!important;
  border-color:var(--cc-pcb-color)!important;
}
.cc-pcb-modal-tab.is-active{
  background:var(--cc-pcb-color)!important;
  color:#ffffff!important;
  border-color:var(--cc-pcb-color)!important;
}
.cc-pcb-modal-actions-top .cc-pcb-btn,
.cc-pcb-modal-actions-top .cc-pcb-btn-secondary{
  color:#ffffff!important;
}
.cc-pcb-modal-actions-top .cc-pcb-btn-secondary{
  background:#334155!important;
  border-color:#334155!important;
}
.cc-pcb-modal-actions-top .cc-pcb-btn-secondary:hover{
  background:#1f2937!important;
  border-color:#1f2937!important;
}
.cc-pcb-modal-panel, .cc-pcb-modal-panel *{
  color:#111827;
}
.cc-pcb-modal .shop_attributes{
  width:100%;
  border-collapse:collapse;
}
.cc-pcb-modal .shop_attributes th,
.cc-pcb-modal .shop_attributes td{
  padding:10px 12px;
  border-bottom:1px solid #e5e7eb;
  text-align:left;
  color:#111827;
}

/* v1.4.6 adjustments */
.cc-pcb-steps{gap:6px;margin-bottom:12px}
.cc-pcb-step-pill{appearance:none;cursor:pointer}
.cc-pcb-step-pill.is-clickable:hover{border-color:var(--cc-pcb-color);color:#111827;background:rgba(102,51,204,.06)}
.cc-pcb-products-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cc-pcb-more-info{font-size:10px!important;line-height:1;white-space:nowrap;padding:8px 10px}
.cc-pcb-product h4{font-size:12px;line-height:1.25}
.cc-pcb-qty{width:56px;padding:4px 6px;font-size:12px}
.cc-pcb-summary{padding:16px}
.cc-pcb-summary h3{margin-bottom:10px;font-size:18px}
.cc-pcb-summary-items{gap:8px;max-height:280px;overflow:auto;margin-bottom:10px}
.cc-pcb-summary-item{padding-bottom:8px;gap:8px}
.cc-pcb-summary-item small{font-size:11px;line-height:1.2}
.cc-pcb-summary-item strong{font-size:13px;line-height:1.25}
.cc-pcb-total-row{font-size:16px;margin:8px 0 12px}
.cc-pcb-form{gap:8px;margin-bottom:12px}
.cc-pcb-form label{gap:4px;font-size:13px}
.cc-pcb-form input{padding:8px 10px}
.cc-pcb-actions{gap:8px}
.cc-pcb-modal-dialog{padding:20px}
.cc-pcb-modal-close{display:none!important}
.cc-pcb-modal-tabs{background:#fff!important;border-bottom:1px solid #e5e7eb}
.cc-pcb-modal-tab{background:#f8fafc!important;color:#1f2937!important;border:1px solid #cbd5e1!important}
.cc-pcb-modal-tab:hover{background:#eef2ff!important;color:#111827!important;border-color:var(--cc-pcb-color)!important}
.cc-pcb-modal-tab.is-active{background:var(--cc-pcb-color)!important;color:#fff!important;border-color:var(--cc-pcb-color)!important}
.cc-pcb-modal-actions-top .cc-pcb-btn{background:var(--cc-pcb-color)!important;color:#fff!important;border:1px solid var(--cc-pcb-color)!important}
.cc-pcb-modal-actions-top .cc-pcb-btn-secondary{background:#fff!important;color:var(--cc-pcb-color)!important;border:1px solid var(--cc-pcb-color)!important}
.cc-pcb-modal-footer{display:flex;justify-content:flex-end;margin-top:18px}
.cc-pcb-modal-footer .cc-pcb-modal-close-btn{background:#fff!important;color:#1f2937!important;border:1px solid #cbd5e1!important}
.cc-pcb-modal-footer .cc-pcb-modal-close-btn:hover{background:#f8fafc!important}
@media (max-width:1024px){.cc-pcb-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.cc-pcb-products-grid{grid-template-columns:1fr}}

.cc-pcb-filters-grid{grid-template-columns:minmax(0,1fr) minmax(220px,260px) minmax(220px,260px)}
.cc-pcb-sort-field select{width:100%}
.cc-pcb-summary-note{font-size:13px;color:#64748b;line-height:1.35;border-top:1px solid #e5e7eb;padding-top:10px}
.cc-pcb-finalize-modal{position:fixed;inset:0;display:none;z-index:1000001}
.cc-pcb-finalize-modal.is-open{display:block!important}
.cc-pcb-finalize-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55)}
.cc-pcb-finalize-dialog{position:relative;z-index:1;max-width:760px;margin:6vh auto;background:#fff;border-radius:18px;padding:22px;box-shadow:0 24px 60px rgba(0,0,0,.22);max-height:88vh;overflow:auto}
.cc-pcb-finalize-header h3{margin:0 0 10px;font-size:24px}
.cc-pcb-finalize-intro{margin:0 0 14px;color:#475569}
.cc-pcb-finalize-summary{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow:auto;margin-bottom:12px}
.cc-pcb-finalize-total-row{display:flex;justify-content:space-between;align-items:center;font-size:18px;margin-bottom:14px;padding-top:10px;border-top:1px solid #e5e7eb}
.cc-pcb-finalize-actions{display:flex;flex-wrap:wrap}
.cc-pcb-finalize-actions .cc-pcb-btn{flex:1 1 220px}
@media (max-width:1024px){.cc-pcb-filters-grid{grid-template-columns:1fr 1fr}.cc-pcb-search-field{grid-column:1/-1}}
@media (max-width:560px){.cc-pcb-filters-grid{grid-template-columns:1fr}.cc-pcb-search-field{grid-column:auto}.cc-pcb-finalize-dialog{margin:2vh 12px;padding:18px}}


/* v1.4.9 visual fixes */
.cc-pcb-filters-grid{grid-template-columns:minmax(0,180px) minmax(0,1fr) minmax(0,220px)!important;align-items:end}
.cc-pcb-search-field{grid-column:auto!important}
.cc-pcb-sort-field{display:flex!important}
.cc-pcb-summary{position:sticky;top:20px;padding:16px!important}
.cc-pcb-summary h3{margin-bottom:10px!important}
.cc-pcb-summary-items{gap:8px!important;max-height:260px;overflow:auto}
.cc-pcb-summary-item{padding-bottom:8px!important}
.cc-pcb-summary-item strong{font-size:13px;line-height:1.25}
.cc-pcb-summary-item small{font-size:11px;line-height:1.2}
.cc-pcb-total-row{margin:8px 0 12px!important;font-size:16px!important}
.cc-pcb-inline-form{margin-bottom:12px!important;gap:10px!important}
.cc-pcb-inline-actions .cc-pcb-btn{width:100%}
.cc-pcb-products-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.cc-pcb-modal-close{display:none!important}
.cc-pcb-modal-footer{display:flex;justify-content:flex-end;margin-top:18px}
.cc-pcb-modal-close-btn{background:#334155!important;color:#fff!important;border:1px solid #334155!important}
.cc-pcb-modal-actions-top .cc-pcb-btn,
.cc-pcb-modal-actions-top .cc-pcb-modal-select,
.cc-pcb-modal-select{background:var(--cc-pcb-color)!important;color:#fff!important;border:1px solid var(--cc-pcb-color)!important}
.cc-pcb-modal-actions-top .cc-pcb-btn *,.cc-pcb-modal-select *{color:#fff!important}
.cc-pcb-modal-tab,.cc-pcb-modal-tab:visited,.cc-pcb-modal-tab:hover,.cc-pcb-modal-tab:focus{color:#111827!important}
.cc-pcb-modal-tab.is-active,.cc-pcb-modal-tab.is-active:hover,.cc-pcb-modal-tab.is-active:focus{background:var(--cc-pcb-color)!important;border-color:var(--cc-pcb-color)!important;color:#fff!important}
.cc-pcb-modal-tab.is-active *{color:#fff!important}
.cc-pcb-finalize-actions .cc-pcb-btn{color:#fff!important}
@media (max-width:1024px){.cc-pcb-filters-grid{grid-template-columns:1fr!important}}



/* v1.4.10 UI contrast hardening */
.cc-pcb-filters-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(220px,260px) !important;
  gap:12px !important;
  align-items:end !important;
}
.cc-pcb-filters-grid .cc-pcb-search-field{grid-column:1;}
.cc-pcb-filters-grid .cc-pcb-sort-field{grid-column:2;}
.cc-pcb-filters-grid .cc-pcb-subcategory-filter{width:100% !important;}
.cc-pcb-filters-grid .cc-pcb-filter-field span,
.cc-pcb-filters-grid label,
.cc-pcb-sort-field,
.cc-pcb-sort-field span{
  color:#0f172a !important;
}
.cc-pcb-sort-field select,
.cc-pcb-sort-filter{
  display:block !important;
  width:100% !important;
  min-height:42px !important;
  padding:10px 12px !important;
  border:1px solid #cbd5e1 !important;
  border-radius:10px !important;
  background:#ffffff !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  opacity:1 !important;
}
.cc-pcb-sort-field select option,
.cc-pcb-sort-filter option{
  color:#111827 !important;
  background:#ffffff !important;
}

.cc-pcb-modal .cc-pcb-modal-close{display:none !important;}

.cc-pcb-modal .cc-pcb-modal-actions-top{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  align-items:center !important;
}
.cc-pcb-modal .cc-pcb-modal-select,
.cc-pcb-modal .cc-pcb-modal-select.cc-pcb-btn,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-modal-select{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:10px 16px !important;
  border-radius:10px !important;
  border:1px solid var(--cc-pcb-color) !important;
  background:var(--cc-pcb-color) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  font-weight:700 !important;
  text-decoration:none !important;
}
.cc-pcb-modal .cc-pcb-modal-select *,
.cc-pcb-modal .cc-pcb-modal-select.cc-pcb-btn *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.cc-pcb-modal .cc-pcb-btn-secondary{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:10px 16px !important;
  border-radius:10px !important;
  border:1px solid #cbd5e1 !important;
  background:#ffffff !important;
  color:#1f2937 !important;
  -webkit-text-fill-color:#1f2937 !important;
  text-decoration:none !important;
}

.cc-pcb-modal .cc-pcb-modal-tabs{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}
.cc-pcb-modal .cc-pcb-modal-tab{
  appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:40px !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  border:1px solid #cbd5e1 !important;
  background:#ffffff !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  font-weight:600 !important;
  line-height:1.2 !important;
}
.cc-pcb-modal .cc-pcb-modal-tab *,
.cc-pcb-modal .cc-pcb-modal-tab:visited,
.cc-pcb-modal .cc-pcb-modal-tab:hover,
.cc-pcb-modal .cc-pcb-modal-tab:focus{
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}
.cc-pcb-modal .cc-pcb-modal-tab.is-active,
.cc-pcb-modal .cc-pcb-modal-tab.is-active:hover,
.cc-pcb-modal .cc-pcb-modal-tab.is-active:focus{
  background:var(--cc-pcb-color) !important;
  border-color:var(--cc-pcb-color) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.cc-pcb-modal .cc-pcb-modal-tab.is-active *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.cc-pcb-modal .cc-pcb-modal-footer{
  display:flex !important;
  justify-content:flex-end !important;
  gap:12px !important;
  margin-top:16px !important;
}
.cc-pcb-modal .cc-pcb-modal-close-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:42px !important;
  padding:10px 16px !important;
  border-radius:10px !important;
  border:1px solid #cbd5e1 !important;
  background:#ffffff !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
  font-weight:600 !important;
}


/* v1.5.0 hard overrides for modal and sorting UI */
.cc-pcb-filters-grid{
  grid-template-columns:minmax(220px,280px) minmax(220px,280px) minmax(220px,280px);
  align-items:end;
}
.cc-pcb-search-field,
.cc-pcb-sort-field{
  max-width:280px;
}
.cc-pcb-sort-field{
  justify-self:start;
}
.cc-pcb-filter-field span{
  color:#334155 !important;
}
.cc-pcb-search-filter,
.cc-pcb-sort-filter,
.cc-pcb-subcategory-filter{
  width:100% !important;
  min-height:40px !important;
  display:block !important;
  background:#ffffff !important;
  color:#111827 !important;
  border:1px solid #cbd5e1 !important;
  border-radius:10px !important;
  padding:10px 12px !important;
  box-sizing:border-box !important;
  -webkit-appearance:auto !important;
  appearance:auto !important;
  opacity:1 !important;
  visibility:visible !important;
}
.cc-pcb-sort-filter option,
.cc-pcb-subcategory-filter option{
  color:#111827 !important;
  background:#ffffff !important;
}
.cc-pcb-modal .cc-pcb-modal-actions-top{
  gap:12px !important;
}
.cc-pcb-modal .cc-pcb-modal-select,
.cc-pcb-modal .cc-pcb-modal-select.cc-pcb-btn,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-modal-select{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:12px 16px !important;
  background:var(--cc-pcb-color) !important;
  color:#ffffff !important;
  border:1px solid var(--cc-pcb-color) !important;
  border-radius:10px !important;
  text-decoration:none !important;
  font-weight:700 !important;
  opacity:1 !important;
  visibility:visible !important;
  box-shadow:none !important;
}
.cc-pcb-modal .cc-pcb-btn-secondary,
.cc-pcb-modal .cc-pcb-btn-secondary.cc-pcb-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:12px 16px !important;
  background:#334155 !important;
  color:#ffffff !important;
  border:1px solid #334155 !important;
  border-radius:10px !important;
  text-decoration:none !important;
  font-weight:700 !important;
}
.cc-pcb-modal .cc-pcb-modal-tabs{
  background:#ffffff !important;
}
.cc-pcb-modal .cc-pcb-modal-tab,
.cc-pcb-modal .cc-pcb-modal-tab:visited,
.cc-pcb-modal .cc-pcb-modal-tab:hover,
.cc-pcb-modal .cc-pcb-modal-tab:focus{
  background:#f8fafc !important;
  color:#111827 !important;
  border:1px solid #cbd5e1 !important;
  border-radius:999px !important;
  opacity:1 !important;
  visibility:visible !important;
  box-shadow:none !important;
}
.cc-pcb-modal .cc-pcb-modal-tab.is-active,
.cc-pcb-modal .cc-pcb-modal-tab.is-active:hover,
.cc-pcb-modal .cc-pcb-modal-tab.is-active:focus,
.cc-pcb-modal .cc-pcb-modal-tab[aria-selected="true"]{
  background:var(--cc-pcb-color) !important;
  color:#ffffff !important;
  border-color:var(--cc-pcb-color) !important;
}
.cc-pcb-modal .cc-pcb-modal-close{
  display:none !important;
}
@media (max-width: 1024px){
  .cc-pcb-filters-grid{
    grid-template-columns:1fr !important;
  }
  .cc-pcb-search-field,
  .cc-pcb-sort-field{
    max-width:none;
  }
}



/* v1.5.1 hard visibility fixes */
.cc-pcb-filters-grid{
  display:grid !important;
  grid-template-columns:minmax(0,180px) minmax(0,1fr) minmax(0,220px) !important;
  align-items:end !important;
  gap:12px !important;
}
.cc-pcb-search-field{grid-column:auto !important;}
.cc-pcb-sort-field{
  display:flex !important;
  flex-direction:column !important;
  align-self:end !important;
  min-width:220px !important;
}
.cc-pcb-sort-field span{display:block !important; color:#475569 !important;}
.cc-pcb-sort-filter,
.cc-pcb-sort-field select{
  display:block !important;
  width:100% !important;
  min-height:40px !important;
  padding:10px 12px !important;
  border:1px solid #cbd5e1 !important;
  border-radius:10px !important;
  background:#ffffff !important;
  color:#111827 !important;
  opacity:1 !important;
  visibility:visible !important;
  -webkit-appearance:auto !important;
  appearance:auto !important;
  box-shadow:none !important;
}

.cc-pcb-modal .cc-pcb-modal-actions-top{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  margin-top:14px !important;
}
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn-secondary,
.cc-pcb-modal .cc-pcb-modal-select,
.cc-pcb-modal a.cc-pcb-btn-secondary{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:10px 16px !important;
  border-radius:12px !important;
  text-decoration:none !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  box-shadow:none !important;
}
.cc-pcb-modal .cc-pcb-modal-select,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn{
  background:var(--cc-pcb-color) !important;
  border:1px solid var(--cc-pcb-color) !important;
  color:#ffffff !important;
}
.cc-pcb-modal .cc-pcb-modal-select:hover,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn:hover{
  filter:brightness(.96) !important;
  color:#ffffff !important;
}
.cc-pcb-modal a.cc-pcb-btn-secondary,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn-secondary{
  background:#334155 !important;
  border:1px solid #334155 !important;
  color:#ffffff !important;
}
.cc-pcb-modal a.cc-pcb-btn-secondary:hover,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn-secondary:hover{
  background:#1f2937 !important;
  border-color:#1f2937 !important;
  color:#ffffff !important;
}

.cc-pcb-modal .cc-pcb-modal-tabs{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin-top:20px !important;
  margin-bottom:16px !important;
  padding-bottom:12px !important;
  border-bottom:1px solid #e5e7eb !important;
  background:#ffffff !important;
}
.cc-pcb-modal .cc-pcb-modal-tab{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:8px 14px !important;
  min-height:40px !important;
  border-radius:999px !important;
  border:1px solid #cbd5e1 !important;
  background:#f8fafc !important;
  color:#111827 !important;
  font-weight:600 !important;
  line-height:1.2 !important;
  box-shadow:none !important;
  text-shadow:none !important;
  opacity:1 !important;
}
.cc-pcb-modal .cc-pcb-modal-tab:hover{
  background:#eef2ff !important;
  border-color:var(--cc-pcb-color) !important;
  color:#111827 !important;
}
.cc-pcb-modal .cc-pcb-modal-tab.is-active,
.cc-pcb-modal .cc-pcb-modal-tab[aria-selected="true"]{
  background:var(--cc-pcb-color) !important;
  border-color:var(--cc-pcb-color) !important;
  color:#ffffff !important;
}
.cc-pcb-modal .cc-pcb-modal-tab.is-active *,
.cc-pcb-modal .cc-pcb-modal-tab[aria-selected="true"] *{
  color:#ffffff !important;
}

.cc-pcb-modal-footer{
  display:flex !important;
  justify-content:flex-end !important;
  gap:10px !important;
  margin-top:18px !important;
}
.cc-pcb-modal-footer .cc-pcb-modal-close-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:10px 16px !important;
  border-radius:12px !important;
  background:#334155 !important;
  border:1px solid #334155 !important;
  color:#ffffff !important;
  font-weight:700 !important;
  line-height:1.2 !important;
}
.cc-pcb-modal-footer .cc-pcb-modal-close-btn:hover{
  background:#1f2937 !important;
  border-color:#1f2937 !important;
  color:#ffffff !important;
}

.cc-pcb-finalize-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
  align-items:start !important;
}
.cc-pcb-finalize-actions .cc-pcb-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  min-height:48px !important;
  height:auto !important;
  padding:12px 16px !important;
  border-radius:12px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  white-space:normal !important;
  text-align:center !important;
  word-break:normal !important;
  overflow:visible !important;
}
.cc-pcb-finalize-actions .cc-pcb-save,
.cc-pcb-finalize-actions .cc-pcb-cart{
  background:var(--cc-pcb-color) !important;
  border:1px solid var(--cc-pcb-color) !important;
  color:#ffffff !important;
}
.cc-pcb-finalize-actions .cc-pcb-save:hover,
.cc-pcb-finalize-actions .cc-pcb-cart:hover{
  color:#ffffff !important;
}
.cc-pcb-finalize-actions .cc-pcb-btn-secondary{
  background:#334155 !important;
  border:1px solid #334155 !important;
  color:#ffffff !important;
}
.cc-pcb-finalize-actions .cc-pcb-btn-secondary:hover{
  background:#1f2937 !important;
  border-color:#1f2937 !important;
  color:#ffffff !important;
}
@media (max-width:700px){
  .cc-pcb-finalize-actions{grid-template-columns:1fr !important;}
}


/* v1.5.2 modal button/text contrast fix */
.cc-pcb-modal .cc-pcb-modal-select,
.cc-pcb-modal .cc-pcb-modal-select.cc-pcb-btn,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn.cc-pcb-modal-select,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn.cc-pcb-modal-select:visited,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn.cc-pcb-modal-select:hover,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn.cc-pcb-modal-select:focus{
  background: #6633cc !important;
  border-color: #6633cc !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.cc-pcb-modal .cc-pcb-modal-select *,
.cc-pcb-modal .cc-pcb-modal-actions-top .cc-pcb-btn.cc-pcb-modal-select *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.cc-pcb-modal .cc-pcb-btn-secondary,
.cc-pcb-modal .cc-pcb-btn-secondary.cc-pcb-btn,
.cc-pcb-modal .cc-pcb-modal-close-btn,
.cc-pcb-modal .cc-pcb-modal-close-btn.cc-pcb-btn,
.cc-pcb-finalize-modal .cc-pcb-btn-secondary,
.cc-pcb-finalize-modal .cc-pcb-btn-secondary.cc-pcb-btn,
.cc-pcb-finalize-modal .cc-pcb-modal-close-btn,
.cc-pcb-finalize-modal .cc-pcb-modal-close-btn.cc-pcb-btn{
  background:#334155 !important;
  border-color:#334155 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.cc-pcb-modal .cc-pcb-btn-secondary *,
.cc-pcb-modal .cc-pcb-modal-close-btn *,
.cc-pcb-finalize-modal .cc-pcb-btn-secondary *,
.cc-pcb-finalize-modal .cc-pcb-modal-close-btn *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.cc-pcb-modal .cc-pcb-modal-tab,
.cc-pcb-modal .cc-pcb-modal-tab:visited,
.cc-pcb-modal .cc-pcb-modal-tab:hover,
.cc-pcb-modal .cc-pcb-modal-tab:focus{
  background:#f8fafc !important;
  border-color:#cbd5e1 !important;
  color:#111827 !important;
  -webkit-text-fill-color:#111827 !important;
}


.cc-pcb-modal .cc-pcb-modal-tab.is-active,
.cc-pcb-modal .cc-pcb-modal-tab.is-active:hover,
.cc-pcb-modal .cc-pcb-modal-tab.is-active:focus,
.cc-pcb-modal .cc-pcb-modal-tab[aria-selected="true"]{
  background:var(--cc-pcb-color) !important;
  border-color:var(--cc-pcb-color) !important;
  color:#000000 !important;
  -webkit-text-fill-color:#000000 !important;
}

.cc-pcb-modal .cc-pcb-modal-tab.is-active *,
.cc-pcb-modal .cc-pcb-modal-tab[aria-selected="true"] *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.cc-pcb-finalize-modal .cc-pcb-btn,
.cc-pcb-finalize-modal .cc-pcb-btn:visited,
.cc-pcb-finalize-modal .cc-pcb-btn:hover,
.cc-pcb-finalize-modal .cc-pcb-btn:focus{
  min-height:48px !important;
  padding:12px 18px !important;
  border-radius:10px !important;
  font-size:16px !important;
  line-height:1.2 !important;
  text-align:center !important;
}

.cc-pcb-finalize-modal .cc-pcb-btn:not(.cc-pcb-btn-secondary):not(.cc-pcb-modal-close-btn){
  background:var(--cc-pcb-color) !important;
  border-color:var(--cc-pcb-color) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

.cc-pcb-finalize-modal .cc-pcb-btn:not(.cc-pcb-btn-secondary):not(.cc-pcb-modal-close-btn) *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}


/* Responsive improvements */
.cc-pcb-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}
.cc-pcb-main,.cc-pcb-summary{min-width:0}
.cc-pcb-products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.cc-pcb-product img{max-width:100%;height:auto}
.cc-pcb-current-step h3{word-break:break-word}
.cc-pcb-summary{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}
.cc-pcb-nav,.cc-pcb-actions{display:flex;gap:12px;flex-wrap:wrap}
.cc-pcb-btn{max-width:100%;white-space:normal}
.cc-pcb-form input,.cc-pcb-form select,.cc-pcb-form textarea{width:100%;box-sizing:border-box}
.cc-pcb-modal-dialog,.cc-pcb-finalize-modal-dialog{width:min(960px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);overflow:auto}
.cc-pcb-modal-body,.cc-pcb-finalize-modal-body{overflow:auto}
.cc-pcb-steps{display:flex;gap:10px;flex-wrap:wrap}
.cc-pcb-step-pill{max-width:100%}

@media (max-width: 1200px){
  .cc-pcb-layout{grid-template-columns:minmax(0,1fr) 300px}
  .cc-pcb-products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width: 992px){
  .cc-pcb-layout{grid-template-columns:1fr}
  .cc-pcb-summary{position:static;top:auto;max-height:none;overflow:visible;order:2}
  .cc-pcb-main{order:1}
  .cc-pcb-products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cc-pcb-steps{overflow:auto;flex-wrap:nowrap;padding-bottom:6px}
  .cc-pcb-step-pill{flex:0 0 auto}
}

@media (max-width: 640px){
  .cc-pcb-builder{font-size:14px}
  .cc-pcb-header h2{font-size:24px;line-height:1.2}
  .cc-pcb-header p{font-size:14px}
  .cc-pcb-current-step h3{font-size:20px;line-height:1.25}
  .cc-pcb-products-grid{grid-template-columns:1fr;gap:12px}
  .cc-pcb-product{padding:12px;border-radius:12px}
  .cc-pcb-product h4{font-size:15px;line-height:1.3}
  .cc-pcb-product-price{font-size:16px}
  .cc-pcb-nav,.cc-pcb-actions{flex-direction:column}
  .cc-pcb-nav .cc-pcb-btn,.cc-pcb-actions .cc-pcb-btn,.cc-pcb-summary .cc-pcb-btn{width:100%}
  .cc-pcb-form label{display:block}
  .cc-pcb-summary{padding:14px;border-radius:14px}
  .cc-pcb-summary-item{grid-template-columns:1fr;gap:4px}
  .cc-pcb-total-row{align-items:flex-start;gap:6px;flex-direction:column}
  .cc-pcb-modal-dialog,.cc-pcb-finalize-modal-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);margin:8px auto}
  .cc-pcb-modal-header,.cc-pcb-finalize-modal-header{padding:12px}
  .cc-pcb-modal-body,.cc-pcb-finalize-modal-body{padding:12px}
  .cc-pcb-modal-tabs{display:flex;overflow:auto;white-space:nowrap}
  .cc-pcb-modal-tabs .cc-pcb-tab{flex:0 0 auto}
}



/* Mobile hotfix */
@media (max-width: 767px){
  .cc-pcb-products-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .cc-pcb-product{
    width:100% !important;
    max-width:100% !important;
  }
  .cc-pcb-product img{
    max-width:100% !important;
    height:auto !important;
  }
  .cc-pcb-current-step-filters,
  .cc-pcb-filters,
  .cc-pcb-search-sort,
  .cc-pcb-toolbar{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    width:100% !important;
  }
  .cc-pcb-search,
  .cc-pcb-search input,
  .cc-pcb-sort,
  .cc-pcb-sort select,
  .cc-pcb-current-step-filters input[type="search"],
  .cc-pcb-current-step-filters input[type="text"],
  .cc-pcb-current-step-filters select,
  .cc-pcb-filters input[type="search"],
  .cc-pcb-filters input[type="text"],
  .cc-pcb-filters select{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    display:block !important;
  }
}



@media (max-width: 991px){
  .cc-pcb-products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}


/* Search + sort stacked mobile & tablet */
@media (max-width: 991px){
  .cc-pcb-search-sort,
  .cc-pcb-toolbar,
  .cc-pcb-current-step-filters,
  .cc-pcb-filters{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
  }
  .cc-pcb-search,
  .cc-pcb-sort{
    width:100% !important;
  }
}


/* Premium UX refresh */
.cc-pcb-builder{--cc-pcb-accent-soft:color-mix(in srgb, var(--cc-pcb-color) 12%, white);--cc-pcb-accent-border:color-mix(in srgb, var(--cc-pcb-color) 26%, white)}
.cc-pcb-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:linear-gradient(135deg,var(--cc-pcb-accent-soft),#fff);border:1px solid var(--cc-pcb-accent-border);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--cc-pcb-color);margin-bottom:10px}
.cc-pcb-header h2{font-size:32px;line-height:1.15}
.cc-pcb-main,.cc-pcb-summary{border-radius:22px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
.cc-pcb-current-step{padding:16px 18px;border:1px solid #edf2f7;border-radius:18px;background:linear-gradient(180deg,#fff, #fafbff);margin-bottom:16px}
.cc-pcb-step-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.cc-pcb-step-meta-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:rgba(16,185,129,.12);color:#047857}
.cc-pcb-step-meta-badge.is-optional{background:#f8fafc;color:#475569}
.cc-pcb-step-helper{margin:0;color:#64748b}
.cc-pcb-step-pill{padding:8px 12px;border-radius:999px;transition:.2s ease transform,.2s ease box-shadow,.2s ease border-color}
.cc-pcb-step-pill.is-clickable{cursor:pointer}
.cc-pcb-step-pill.is-clickable:hover{transform:translateY(-1px);box-shadow:0 10px 18px rgba(15,23,42,.06)}
.cc-pcb-step-pill.is-active{box-shadow:0 12px 24px rgba(102,51,204,.15)}
.cc-pcb-filters{position:sticky;top:16px;z-index:2}
.cc-pcb-filters-grid{grid-template-columns:minmax(0,1fr) minmax(0,220px) minmax(0,220px);padding:14px;border:1px solid #edf2f7;border-radius:18px;background:#fbfcff;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.cc-pcb-filter-field span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b}
.cc-pcb-products-grid{gap:18px}
.cc-pcb-product{position:relative;border:1px solid #e8edf5;border-radius:22px;padding:14px;background:linear-gradient(180deg,#fff 0%,#fcfcff 100%);box-shadow:0 10px 30px rgba(15,23,42,.04);overflow:hidden}
.cc-pcb-product:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--cc-pcb-color),#a78bfa);opacity:0;transition:.2s ease opacity}
.cc-pcb-product.is-selected:before,.cc-pcb-product:hover:before{opacity:1}
.cc-pcb-selected-ribbon{position:absolute;top:12px;right:12px;display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--cc-pcb-color);color:#fff;font-size:11px;font-weight:700;box-shadow:0 10px 20px rgba(102,51,204,.2)}
.cc-pcb-product-media{border-radius:16px;background:radial-gradient(circle at top,#fff,#f7f8fc);padding:6px}
.cc-pcb-product img{background:transparent}
.cc-pcb-product-head h4{font-size:14px;font-weight:800;min-height:38px}
.cc-pcb-product-brand{font-size:12px;font-weight:600}
.cc-pcb-spec-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.cc-pcb-spec-chip{display:inline-flex;align-items:center;gap:4px;padding:7px 9px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;font-size:11px;line-height:1.2;color:#334155}
.cc-pcb-spec-chip strong{font-weight:800}
.cc-pcb-product-footer{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:auto}
.cc-pcb-product-price{font-size:22px}
.cc-pcb-card-actions{display:grid;grid-template-columns:1fr;gap:8px}
.cc-pcb-btn{border-radius:14px;box-shadow:0 10px 24px rgba(102,51,204,.15);transition:.2s ease transform,.2s ease box-shadow,.2s ease opacity}
.cc-pcb-btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(102,51,204,.18)}
.cc-pcb-btn-secondary{background:#111827;color:#fff;border-color:#111827;box-shadow:none}
.cc-pcb-summary{padding:18px}
.cc-pcb-summary h3{display:flex;align-items:center;justify-content:space-between}
.cc-pcb-summary h3:after{content:"En tiempo real";font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#4338ca}
.cc-pcb-summary-items{max-height:340px;overflow:auto;padding-right:4px}
.cc-pcb-summary-item{padding-bottom:10px;margin-bottom:2px}
.cc-pcb-summary-note{padding:12px 14px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;font-size:13px;line-height:1.45}
.cc-pcb-inline-actions .cc-pcb-btn:first-child,.cc-pcb-finalize-actions .cc-pcb-btn:first-child{background:linear-gradient(135deg,var(--cc-pcb-color),#7c3aed)}
.cc-pcb-modal-dialog,.cc-pcb-finalize-dialog{border-radius:24px;box-shadow:0 28px 80px rgba(15,23,42,.26)}
.cc-pcb-modal-tabs{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid #eef2f7;padding-bottom:12px;margin-bottom:16px}
.cc-pcb-modal-tabs .cc-pcb-tab{border-radius:999px;padding:10px 12px}
.cc-pcb-modal-tabs .cc-pcb-tab.is-active{background:var(--cc-pcb-color);color:#fff;box-shadow:0 10px 18px rgba(102,51,204,.18)}
@media (max-width: 1200px){
  .cc-pcb-filters-grid{grid-template-columns:1fr 1fr}
}
@media (max-width: 991px){
  .cc-pcb-filters{position:static}
  .cc-pcb-current-step{padding:14px}
  .cc-pcb-products-grid{gap:14px}
}
@media (max-width: 640px){
  .cc-pcb-header h2{font-size:26px}
  .cc-pcb-product-head h4{min-height:auto}
  .cc-pcb-product-footer{flex-direction:column;align-items:flex-start}
  .cc-pcb-summary h3:after{display:none}
}

/* FORCE search + sort stacked on mobile */
@media (max-width: 767px){
  .cc-pcb-search-sort,
  .cc-pcb-toolbar{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
    width:100% !important;
  }
  .cc-pcb-search,
  .cc-pcb-sort{
    width:100% !important;
  }
  .cc-pcb-sort select{
    width:100% !important;
  }
}


/* v1.6.2 mobile stack + finalize modal button contrast */
@media (max-width: 991px){
  .cc-pcb-filters-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    width:100% !important;
    align-items:stretch !important;
  }
  .cc-pcb-filters-grid > .cc-pcb-filter-field,
  .cc-pcb-filters-grid > .cc-pcb-search-field,
  .cc-pcb-filters-grid > .cc-pcb-sort-field{
    grid-column:1 / -1 !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
  }
  .cc-pcb-filters-grid > .cc-pcb-sort-field{
    order:2 !important;
  }
  .cc-pcb-filters-grid > .cc-pcb-search-field{
    order:1 !important;
  }
  .cc-pcb-filters-grid > .cc-pcb-filter-field select,
  .cc-pcb-filters-grid > .cc-pcb-filter-field input,
  .cc-pcb-filters-grid .cc-pcb-search-filter,
  .cc-pcb-filters-grid .cc-pcb-sort-filter{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
}

/* Match finalize modal buttons to the product info modal buttons */
.cc-pcb-finalize-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}
.cc-pcb-finalize-actions .cc-pcb-btn{
  appearance:none !important;
  border-radius:10px !important;
  border:1px solid var(--cc-pcb-color) !important;
  background:var(--cc-pcb-color) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:none !important;
  box-shadow:none !important;
}
.cc-pcb-finalize-actions .cc-pcb-btn *,
.cc-pcb-finalize-actions .cc-pcb-btn:before,
.cc-pcb-finalize-actions .cc-pcb-btn:after{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
}
.cc-pcb-finalize-actions .cc-pcb-btn:hover,
.cc-pcb-finalize-actions .cc-pcb-btn:focus{
  background:var(--cc-pcb-color) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border-color:var(--cc-pcb-color) !important;
}
.cc-pcb-finalize-actions .cc-pcb-btn-secondary,
.cc-pcb-finalize-actions .cc-pcb-finalize-close{
  background:#334155 !important;
  border-color:#334155 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.cc-pcb-finalize-actions .cc-pcb-btn-secondary:hover,
.cc-pcb-finalize-actions .cc-pcb-finalize-close:hover,
.cc-pcb-finalize-actions .cc-pcb-btn-secondary:focus,
.cc-pcb-finalize-actions .cc-pcb-finalize-close:focus{
  background:#1f2937 !important;
  border-color:#1f2937 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Keep the product-info modal buttons consistent too */
.cc-pcb-modal-actions-top .cc-pcb-btn,
.cc-pcb-modal-actions-top .cc-pcb-modal-select{
  background:var(--cc-pcb-color) !important;
  border-color:var(--cc-pcb-color) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.cc-pcb-modal-actions-top .cc-pcb-btn-secondary,
.cc-pcb-modal-footer .cc-pcb-modal-close-btn{
  background:#334155 !important;
  border-color:#334155 !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.cc-pcb-modal-actions-top .cc-pcb-btn *,
.cc-pcb-modal-actions-top .cc-pcb-btn-secondary *,
.cc-pcb-modal-footer .cc-pcb-modal-close-btn *{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
}



/* v1.6.3 finalize modal buttons + modal sizing */
.cc-pcb-finalize-modal-dialog,
.cc-pcb-finalize-dialog,
.cc-pcb-modal-finalize-dialog{
  width:min(720px, calc(100vw - 32px)) !important;
  max-width:calc(100vw - 32px) !important;
  max-height:min(85vh, 900px) !important;
  margin:24px auto !important;
  border-radius:16px !important;
  overflow:auto !important;
}

.cc-pcb-finalize-actions,
.cc-pcb-finalize-modal .cc-pcb-actions,
.cc-pcb-finalize-modal .cc-pcb-modal-actions,
.cc-pcb-finalize-modal .cc-pcb-finalize-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px !important;
  margin-top:16px !important;
}

.cc-pcb-finalize-actions .cc-pcb-btn,
.cc-pcb-finalize-modal .cc-pcb-btn,
.cc-pcb-finalize-modal .button,
.cc-pcb-finalize-modal button:not(.cc-pcb-modal-tab){
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  padding:10px 16px !important;
  min-height:42px !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
  border-radius:10px !important;
  text-decoration:none !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}

.cc-pcb-finalize-actions .cc-pcb-btn-primary,
.cc-pcb-finalize-actions .cc-pcb-save,
.cc-pcb-finalize-actions .cc-pcb-generate-pdf,
.cc-pcb-finalize-actions .cc-pcb-btn-save,
.cc-pcb-finalize-actions .cc-pcb-btn-cart,
.cc-pcb-finalize-actions .cc-pcb-cart,
.cc-pcb-finalize-modal .cc-pcb-save,
.cc-pcb-finalize-modal .cc-pcb-cart,
.cc-pcb-finalize-modal .cc-pcb-btn-primary{
  background:var(--cc-pcb-color) !important;
  border:1px solid var(--cc-pcb-color) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.cc-pcb-finalize-actions .cc-pcb-btn-secondary,
.cc-pcb-finalize-actions .cc-pcb-finalize-close,
.cc-pcb-finalize-actions .cc-pcb-close,
.cc-pcb-finalize-modal .cc-pcb-btn-secondary,
.cc-pcb-finalize-modal .cc-pcb-finalize-close,
.cc-pcb-finalize-modal .cc-pcb-close{
  background:#334155 !important;
  border:1px solid #334155 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

.cc-pcb-finalize-actions .cc-pcb-btn *,
.cc-pcb-finalize-modal .cc-pcb-btn *,
.cc-pcb-finalize-modal button *{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
}

@media (max-width: 767px){
  .cc-pcb-finalize-modal-dialog,
  .cc-pcb-finalize-dialog,
  .cc-pcb-modal-finalize-dialog{
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
    max-height:calc(100vh - 16px) !important;
    margin:8px auto !important;
    border-radius:12px !important;
  }

  .cc-pcb-finalize-actions,
  .cc-pcb-finalize-modal .cc-pcb-actions,
  .cc-pcb-finalize-modal .cc-pcb-modal-actions,
  .cc-pcb-finalize-modal .cc-pcb-finalize-actions{
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
  }

  .cc-pcb-finalize-actions .cc-pcb-btn,
  .cc-pcb-finalize-modal .cc-pcb-btn,
  .cc-pcb-finalize-modal .button,
  .cc-pcb-finalize-modal button:not(.cc-pcb-modal-tab){
    width:100% !important;
    white-space:normal !important;
  }
}

