.cq-page{--cq-primary:var(--brand-primary);--cq-primary-strong:var(--brand-primary-strong);--cq-primary-soft:var(--brand-primary-soft);--cq-focus-ring:var(--brand-focus-ring);--cq-border:#e5e7eb;--cq-text:#111827;--cq-text-muted:#6b7280;--cq-error:var(--brand-danger);--cq-error-soft:var(--brand-danger-soft);--cq-error-border:var(--brand-danger-border);background:#f8f9fb}
.cq-container{max-width:1180px}
.cq-hero{display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-end;margin-bottom:1.5rem}
.cq-kicker{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--cq-primary);margin-bottom:.4rem}
.cq-hero h1{font-size:2rem;line-height:1.15;margin:0 0 .6rem;color:var(--cq-text)}
.cq-lead{color:var(--cq-text-muted);max-width:760px;margin:0}
.cq-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}
.cq-badge{background:var(--cq-primary-soft);color:var(--cq-primary-strong);border:1px solid color-mix(in srgb,var(--cq-primary) 18%,#fff);border-radius:999px;padding:.35rem .65rem;font-size:.82rem}
.cq-hero-actions{display:flex;gap:.75rem;flex-wrap:wrap}
.cq-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.9fr);gap:1rem;align-items:start}
.cq-main-card,.cq-summary-sticky{border:1px solid var(--cq-border);background:#fff;border-radius:18px;padding:1.2rem;box-shadow:0 10px 30px rgba(17,24,39,.05)}
.cq-summary-sticky{position:sticky;top:1.2rem}
.cq-hp{position:absolute;left:-9999px}
.cq-progress-wrap{margin-bottom:1rem}
.cq-progress{height:10px;background:color-mix(in srgb,var(--cq-primary) 10%,#fff);border-radius:999px;overflow:hidden}
.cq-progress .progress-bar{background:var(--cq-primary)}
.cq-progress-head{display:flex;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin-top:.6rem;color:var(--cq-text-muted);font-size:.9rem}
.cq-step-header h2{font-size:1.3rem;margin:0 0 .3rem;color:var(--cq-text)}
.cq-step-header p{color:var(--cq-text-muted);margin-bottom:1rem}
.cq-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.cq-option-group{margin-top:1rem}
.cq-option-label{font-weight:600;color:var(--cq-text);margin-bottom:.5rem}
.cq-chip-grid{display:flex;flex-wrap:wrap;gap:.5rem}
.cq-chip{border:1px solid #d1d5db;background:#fff;border-radius:999px;padding:.4rem .8rem;color:#374151;transition:.2s;cursor:pointer}
.cq-chip:hover,.cq-chip.is-active{border-color:var(--cq-primary);background:var(--cq-primary-soft);color:var(--cq-primary-strong)}
.cq-inline-input{margin-top:.6rem;max-width:260px}
.cq-segmented{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #d1d5db;border-radius:12px;overflow:hidden}
.cq-segment{cursor:pointer;margin:0}
.cq-segment input{position:absolute;opacity:0;pointer-events:none}
.cq-segment span{display:block;text-align:center;padding:.7rem .5rem;color:#374151;background:#fff;border-right:1px solid #e5e7eb}
.cq-segment:last-child span{border-right:0}
.cq-segment.is-active span,.cq-segment input:checked+span{background:var(--cq-primary-soft);color:var(--cq-primary-strong);font-weight:600}
.cq-process-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}
.cq-process-grid label{border:1px solid #e5e7eb;border-radius:10px;padding:.55rem .65rem;background:#fcfcfd}
.cq-inline-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-top:1rem}
.cq-loading{display:none;gap:.45rem;align-items:center;color:var(--cq-text-muted);font-size:.9rem}
.cq-loading.show{display:inline-flex}
.cq-spinner{width:16px;height:16px;border:2px solid #d1d5db;border-top-color:var(--cq-primary);border-radius:50%;animation:cqspin .8s linear infinite}
@keyframes cqspin{to{transform:rotate(360deg)}}
.cq-contact-card{margin-top:1rem;padding:1rem;border:1px solid #e5e7eb;background:#f9fafb;border-radius:14px}
.cq-contact-card h3{font-size:1rem;margin:0 0 .25rem}
.cq-contact-card p{margin:0 0 .8rem;color:var(--cq-text-muted)}
.cq-extras{display:grid;gap:.45rem}
.cq-footer-actions{margin-top:1.2rem;padding-top:1rem;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap}
.cq-summary h2{font-size:1.2rem;margin:0;color:var(--cq-text)}
.cq-summary-sub{color:var(--cq-text-muted);font-size:.92rem;margin:.5rem 0 1rem}
.cq-kv{display:grid;gap:.6rem;margin:0 0 1rem}
.cq-kv div{display:flex;justify-content:space-between;gap:.8rem;border-bottom:1px solid #f1f5f9;padding-bottom:.45rem}
.cq-kv dt{color:var(--cq-text-muted);font-size:.9rem}
.cq-kv dd{margin:0;color:var(--cq-text);font-weight:600;text-align:right}
.cq-includes ul{margin:0;padding-left:1.1rem;color:#374151}
.cq-ai-card{margin-top:1rem;border:1px solid color-mix(in srgb,var(--cq-primary) 25%,#fff);background:var(--cq-primary-soft);border-radius:12px;padding:.8rem}
.cq-ai-card h3{font-size:1rem;margin:0 0 .4rem;color:var(--cq-primary-strong)}
.cq-ai-card p,.cq-ai-card ul{margin:0;color:var(--cq-primary-strong);padding-left:1rem}
.cq-ai-card p{padding-left:0}
.cq-legal-note{margin-top:1rem;padding:.8rem;border:1px solid #e5e7eb;background:#f8fafc;border-radius:12px;font-size:.88rem;color:#374151}
.cq-legal-note p{margin:.35rem 0 0}
.cq-preview-card{margin-top:1rem;border:1px solid #e5e7eb;background:#fff;border-radius:12px;padding:.8rem}
.cq-preview-card:empty{display:none}
.cq-result-card{margin-top:1rem;padding:.8rem;border:1px solid color-mix(in srgb,var(--cq-primary) 20%,#fff);background:#f8fbff;border-radius:12px}
.cq-form-error{display:block;font-size:.82rem;color:var(--cq-error);margin-top:.35rem}
.cq-form-hint{display:block;font-size:.82rem;color:var(--cq-text-muted);margin-top:.35rem}
.cq-input-error,.cq-page .input.is-invalid,.cq-page .form-control.is-invalid,.cq-page .form-select.is-invalid{border-color:var(--cq-error)!important;background:var(--cq-error-soft)!important}
.cq-page .input:focus,.cq-page .form-control:focus,.cq-page .form-select:focus{border-color:var(--cq-primary);box-shadow:0 0 0 .2rem var(--cq-focus-ring)}
@media (max-width:992px){.cq-layout{grid-template-columns:1fr}.cq-summary-sticky{position:static}.cq-hero{flex-direction:column;align-items:flex-start}.cq-hero h1{font-size:1.7rem}}
@media (max-width:640px){.cq-grid-2,.cq-process-grid{grid-template-columns:1fr}.cq-segmented{grid-template-columns:1fr}.cq-segment span{border-right:0;border-bottom:1px solid #e5e7eb}.cq-segment:last-child span{border-bottom:0}}
