/* Base */
.cpc-wrapper{width:var(--cpc-wrap-w,70%);min-height:var(--cpc-wrap-h,500px);margin-left:auto;margin-right:auto;padding:16px;border:1px solid #e5e7eb;border-radius:8px;background:var(--cpc-bg,transparent);font-size:var(--cpc-font-size,16px)}
.cpc-q-title{font-weight:600;margin:8px 0;color:var(--cpc-question,#111);text-align:var(--cpc-q-align,left)}

/* Answers */
.cpc-answers{display:grid;grid-template-columns:var(--cpc-grid,1fr);row-gap:var(--cpc-gap-row,8px);column-gap:var(--cpc-gap-col,8px);justify-items:var(--cpc-answers-justify,center)}
.cpc-answers.cpc-grid{grid-template-columns:var(--cpc-grid,1fr)}

.cpc-answer{display:flex;gap:8px;align-items:center;justify-content:flex-start;padding:10px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:var(--cpc-answer,#222);cursor:pointer;transition:transform .12s ease, box-shadow .12s ease, border-color .12s ease, background .12s ease}
.cpc-answer input[type="radio"]{display:none}
.cpc-answer.cpc-selected{border-color:var(--cpc-accent,#4f46e5);box-shadow:0 0 0 3px rgba(79,70,229,.18);transform:scale(1.02);background:rgba(79,70,229,.04)}

.cpc-card{flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;border:var(--cpc-card-bw,1px) solid var(--cpc-card-bc,#e5e7eb);border-radius:var(--cpc-card-radius,8px);box-shadow:var(--cpc-card-shadow,none);width:var(--cpc-card-w, auto);height:var(--cpc-card-h, auto)}
.cpc-card.cpc-selected{border-color:var(--cpc-accent,#4f46e5);box-shadow:0 0 0 3px rgba(79,70,229,.2);transform:scale(1.02)}
.cpc-card .cpc-card-img{width:100%;height:var(--cpc-img-h, auto);overflow:hidden;border-bottom:1px solid var(--cpc-card-bc,#e5e7eb);border-top-left-radius:var(--cpc-card-radius,8px);border-top-right-radius:var(--cpc-card-radius,8px)}
.cpc-card .cpc-card-img img{width:var(--cpc-img-w, 100%);height:100%;object-fit:cover;display:block;margin:0 auto}
.cpc-card .cpc-card-title{padding:10px;text-align:center}

/* Input centering */
.cpc-input-wrap{grid-template-columns:auto auto;justify-content:var(--cpc-answers-justify,stretch);align-items:center}
.cpc-inp-unit{opacity:.75;margin-left:6px}

/* Button + alignment */
.cpc-btn{display:block;border:none;background:var(--cpc-btn-bg,var(--cpc-accent,#4f46e5));color:var(--cpc-btn-color,#fff);padding:10px 14px;border-radius:8px;cursor:pointer;font-weight:600;margin-left:auto;margin-right:auto}
.cpc-wrapper[style*="--cpc-btn-align:left"] .cpc-btn{margin-left:0;margin-right:auto}
.cpc-wrapper[style*="--cpc-btn-align:right"] .cpc-btn{margin-left:auto;margin-right:0}
.cpc-btn:hover{opacity:.95}

/* Lists */
.cpc-list{list-style:disc;padding-left:18px}
.cpc-form-out{display:grid;gap:8px;margin-top:12px}
.cpc-form-out input{padding:8px;border:1px solid #e5e7eb;border-radius:6px;width:100%}
.cpc-error{color:#b91c1c}

/* Hover animations */
.cpc-hover-grow{transition:transform .15s ease, box-shadow .15s ease}
.cpc-hover-grow:hover{transform:scale(1.03)}
.cpc-hover-shrink{transition:transform .15s ease, box-shadow .15s ease}
.cpc-hover-shrink:hover{transform:scale(0.97)}
@keyframes cpcPulse{0%{transform:scale(1)}50%{transform:scale(1.03)}100%{transform:scale(1)}}
.cpc-hover-pulse:hover{animation:cpcPulse .6s ease-in-out infinite}

/* Popup */
.cpc-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;align-items:center;justify-content:center;z-index:9999}
.cpc-overlay.open{display:flex}
.cpc-overlay .cpc-modal{max-width:920px;width:100%;max-height:90vh;overflow:auto;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.35);background:transparent}


/* Product carousel polish */
.cpc-products{margin-top:14px}
.cpc-products h4{margin:6px 0 8px 0}
.cpc-prod .cpc-price{margin-top:4px;opacity:.85}

/* Close button */
.cpc-modal{position:relative;background:var(--cpc-bg,transparent)}
.cpc-close{position:absolute;top:8px;right:10px;background:transparent;border:none;font-size:22px;line-height:1;cursor:pointer;opacity:.6}
.cpc-close:hover{opacity:1}

/* Responsive */
@media (max-width: 1024px){
  .cpc-answers.cpc-grid{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 640px){
  .cpc-answers.cpc-grid{grid-template-columns:1fr}
  .cpc-card{width:100% !important; max-width:100%; height:auto !important}
  .cpc-card .cpc-card-img{height:auto !important}
  .cpc-btn{width:100%}
  .cpc-wrapper{width:var(--cpc-wrap-w,70%);min-height:var(--cpc-wrap-h,500px);margin-left:auto;margin-right:auto;padding:12px}
}

/* Prevent overflow on fixed sizes */
.cpc-card{max-width:100%}


/* Button spacing & size */
.cpc-btn{margin-top:var(--cpc-btn-mt,40px);width:var(--cpc-btn-w,auto);height:var(--cpc-btn-h,auto)}

.cpc-consent-text{font-size:.9em; opacity:.85; margin-top:10px}
.cpc-container, .cpc-wrapper{width:var(--cpc-wrap-w,70%);min-height:var(--cpc-wrap-h,500px)}
