.cqz-wrap{font-family:var(--cqz-font); color:var(--cqz-text); max-width:840px; margin:0 auto; padding:12px}
.cqz-progress{display:flex; align-items:center; gap:10px; margin-bottom:12px}
.cqz-progress-bar{flex:1; height:10px; background:rgba(15,23,42,.08); border-radius:999px; overflow:hidden}
.cqz-progress-fill{display:block; height:100%; background:var(--cqz-primary); width:0%}
.cqz-progress-text{min-width:52px; text-align:right; font-weight:600}

.cqz-card{background:var(--cqz-card); border-radius:var(--cqz-radius); padding:16px; box-shadow:0 8px 24px rgba(15,23,42,.06)}
.cqz-title{margin:0 0 6px; font-size:18px}
.cqz-desc{opacity:.85; margin-bottom:10px}

.cqz-options{display:grid; gap:10px}
.cqz-grid{display:grid; gap:12px}
.cqz-grid-2{grid-template-columns:1fr}
@media (min-width:640px){ .cqz-grid-2{grid-template-columns:1fr 1fr} }

.cqz-option{display:block; cursor:pointer}
.cqz-option input{display:none}
.cqz-option-ui{display:block; border:2px solid rgba(15,23,42,.12); border-radius:var(--cqz-radius); padding:12px; background:var(--cqz-bg); transition:transform .18s, border-color .18s}
.cqz-option:hover .cqz-option-ui{transform:translateY(-1px)}
.cqz-option input:checked + .cqz-option-ui{border-color:var(--cqz-primary); box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.cqz-option-img img{width:100%; height:140px; object-fit:cover; border-radius:calc(var(--cqz-radius) - 6px); margin-bottom:8px}
.cqz-option-text{font-weight:600; display:block}
.cqz-option-note{display:block; opacity:.75; margin-top:4px; font-size:13px}

.cqz-textarea{width:100%; padding:12px; border-radius:12px; border:1px solid rgba(15,23,42,.16); background:var(--cqz-bg)}
.cqz-file{width:100%}

.cqz-actions{display:flex; justify-content:space-between; gap:10px; margin-top:14px}
.cqz-btn{border:none; border-radius:12px; padding:10px 14px; cursor:pointer; font-weight:700}
.cqz-prev{background:rgba(15,23,42,.08); color:var(--cqz-text)}
.cqz-prev[disabled]{opacity:.5; cursor:not-allowed}
.cqz-next{background:var(--cqz-primary); color:#fff}
.cqz-next:hover{filter:brightness(0.98)}

.cqz-step.cqz-in{animation:cqzIn .22s ease-out}
.cqz-step.cqz-out{animation:cqzOut .18s ease-in}
.cqz-step.cqz-left{transform:translateX(-10px)}
.cqz-step.cqz-right{transform:translateX(10px)}
@keyframes cqzIn{from{opacity:0; transform:translateX(10px)} to{opacity:1; transform:translateX(0)}}
@keyframes cqzOut{from{opacity:1} to{opacity:0}}

.cqz-channel{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px}
.cqz-chip{cursor:pointer}
.cqz-chip input{display:none}
.cqz-chip span{display:inline-block; padding:8px 12px; border-radius:999px; border:2px solid rgba(15,23,42,.12); background:var(--cqz-bg); font-weight:700}
.cqz-chip input:checked + span{border-color:var(--cqz-accent); box-shadow:0 0 0 3px rgba(14,165,233,.12)}

.cqz-fields{display:grid; gap:10px; grid-template-columns:1fr}
@media (min-width:640px){ .cqz-fields{grid-template-columns:1fr 1fr} }
.cqz-input{width:100%; padding:12px; border-radius:12px; border:1px solid rgba(15,23,42,.16); background:var(--cqz-bg)}

.cqz-consent{display:flex; gap:8px; align-items:flex-start; margin-top:10px; font-size:13px; opacity:.9}
.cqz-consent input{margin-top:3px}

.cqz-loader{width:42px; height:42px; border-radius:50%; border:4px solid rgba(15,23,42,.16); border-top-color:var(--cqz-primary); animation:cqzSpin 1s linear infinite; margin:10px auto}
@keyframes cqzSpin{to{transform:rotate(360deg)}}
.cqz-processing-text{text-align:center; font-weight:800; margin-top:6px}
.cqz-processing-sub{text-align:center; opacity:.8}
.cqz-success{text-align:center; font-weight:800; padding:18px}

.cqz-toast{position:fixed; left:50%; bottom:18px; transform:translateX(-50%); background:rgba(15,23,42,.92); color:#fff; padding:10px 14px; border-radius:12px; z-index:99999; max-width:92vw}
