/* Qartki Configurator — frontend */
.qcfg{margin:22px 0;padding:22px;border:1px solid #eef0f4;border-radius:18px;
  background:#fff;box-shadow:0 14px 40px -26px rgba(80,40,120,.35)}
.qcfg__title{margin:0 0 16px;font-size:19px;font-weight:700}
.qcfg-row{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}
.qcfg-label{font-weight:600;font-size:14px;color:#374151}
.qcfg-req{color:#ec4899}
.qcfg-input{width:100%;padding:11px 13px;border:1.5px solid #e5e7eb;border-radius:10px;
  font-size:15px;font-family:inherit;background:#fff;transition:border-color .15s,box-shadow .15s}
.qcfg-input:focus{outline:none;border-color:#a855f7;box-shadow:0 0 0 3px rgba(168,85,247,.15)}
textarea.qcfg-input{resize:vertical}
.qcfg-color{height:46px;padding:5px;cursor:pointer}
.qcfg-radios{display:flex;flex-wrap:wrap;gap:12px}
.qcfg-radio,.qcfg-check{display:inline-flex;align-items:center;gap:8px;font-size:14px;
  padding:9px 14px;border:1.5px solid #e5e7eb;border-radius:10px;cursor:pointer}
.qcfg-radio input,.qcfg-check input{accent-color:#a855f7}
.qcfg-hint{color:#6b7280;font-size:12px}
.qcfg-summary{margin-top:8px;padding:14px 16px;border-radius:12px;
  background:linear-gradient(90deg,#fdf2ff,#f5f3ff);font-size:16px;display:flex;
  justify-content:space-between;align-items:center}
.qcfg-summary strong{font-size:20px;
  background:linear-gradient(90deg,#fb7185,#a855f7);-webkit-background-clip:text;
  background-clip:text;color:transparent}
