/* === Quiz Root — прозрачный враппер, карточка на всю ширину === */
.kq-root{background:transparent;padding:0;border-radius:0;}
.kq-card{max-width:100%;margin:0;background:var(--kq-card);border-radius:var(--kq-radius);box-shadow:0 10px 30px rgba(17,24,39,.08);padding:24px 28px;}

.kq-progress{height:8px;background:#eef2f7;border-radius:999px;overflow:hidden;margin-bottom:16px}
.kq-progress-bar{height:100%;width:0;background:var(--kq-accent);transition:width .35s ease}
.kq-step-title{font-size:22px;font-weight:700;color:var(--kq-primary);margin:8px 0 16px}

.kq-answers{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (max-width:640px){.kq-answers{grid-template-columns:1fr}}

.kq-answer{display:flex;align-items:center;gap:12px;background:#fff;border:2px solid #e5e7eb;border-radius:14px;padding:10px 14px;cursor:pointer;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.kq-answer:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,.06);border-color:var(--kq-accent)}
.kq-answer.selected{border-color:var(--kq-accent);background:rgba(14,165,233,.04)}
.kq-answer img{width:64px;height:64px;object-fit:cover;border-radius:12px;border:1px solid #e5e7eb;background:#f8fafc;flex-shrink:0}
.kq-answer .kq-label{font-size:16px;color:var(--kq-primary);font-weight:600}

.kq-nav{display:flex;justify-content:space-between;margin-top:16px}
.kq-back{border:1px solid #d1d5db;background:#f3f4f6;color:var(--kq-primary);border-radius:12px;padding:10px 18px;cursor:pointer;font-size:14px;font-weight:500}
.kq-back:not([disabled]):hover{background:#e5e7eb}
.kq-back[disabled]{opacity:.5;cursor:not-allowed}

.kq-contact{display:grid;gap:12px}
.kq-gifts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.kq-gift{display:flex;align-items:center;gap:10px;border:2px solid #e5e7eb;border-radius:12px;padding:12px;cursor:pointer;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}
.kq-gift img{width:56px;height:56px;object-fit:cover;border-radius:10px;border:1px solid #e5e7eb;background:#f8fafc;flex-shrink:0}
.kq-gift.active{border-color:var(--kq-accent);box-shadow:0 0 0 3px rgba(14,165,233,.15)}

.kq-input{display:flex;gap:8px}
.kq-input input{flex:1;border:1px solid #e5e7eb;border-radius:12px;padding:12px;font-size:16px}
.kq-submit{background:var(--kq-accent);color:#fff;border:none;border-radius:12px;padding:12px 20px;font-weight:700;cursor:pointer;font-size:15px}
.kq-submit:hover{filter:brightness(1.08)}
.kq-note{font-size:12px;color:#6b7280;margin-top:6px}

.kq-success{text-align:center;padding:32px 16px}
.kq-success h3{font-size:22px;font-weight:700;color:var(--kq-primary);margin-bottom:8px}
.kq-success p{color:#6b7280;font-size:15px}

/* Мобильная адаптация */
@media (max-width:540px){
  .kq-gifts{grid-template-columns:1fr;gap:10px}
  .kq-gift{justify-content:flex-start}
  .kq-gift img{flex-shrink:0}
  .kq-card{padding:16px}
  .kq-step-title{font-size:18px}
}

/* === Контактная форма === */
.kq-contact-form{display:grid;gap:0}
.kq-contact-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:560px){.kq-contact-row{grid-template-columns:1fr}}
.kq-contact-field{display:flex;flex-direction:column;gap:4px}
.kq-field-lbl{font-size:13px;font-weight:600;color:var(--kq-primary);margin-bottom:2px}
.kq-name-inp,.kq-phone-inp,.kq-comment-inp{border:1px solid #e5e7eb;border-radius:12px;padding:11px 14px;font-size:15px;color:var(--kq-primary);background:#fff;transition:border-color .18s}
.kq-name-inp:focus,.kq-phone-inp:focus,.kq-comment-inp:focus{outline:none;border-color:var(--kq-accent)}
.kq-comment-inp{resize:vertical;min-height:80px;font-family:inherit}
.kq-field-group{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}

/* Кнопка "Далее" в fields-шаге */
.kq-next-btn{background:var(--kq-accent);color:#fff;border:none;border-radius:12px;padding:12px 24px;font-weight:700;cursor:pointer;font-size:15px;width:100%;margin-top:8px}
.kq-next-btn:hover{filter:brightness(1.08)}
