.qf-root{--qf-primary:#7c3aed;--qf-bg:#fff;--qf-text:#111827;--qf-font:Inter, system-ui, sans-serif;--qf-radius:12px;background:var(--qf-bg);min-height:100dvh;color:var(--qf-text);font-family:var(--qf-font);flex-direction:column;display:flex}.qf-root *{box-sizing:border-box}.qf-preview-badge{color:#111;text-align:center;letter-spacing:.02em;background:#fbbf24;padding:6px;font-size:12px;font-weight:600}.qf-branding{color:color-mix(in srgb, var(--qf-text) 45%, transparent);margin:auto auto 12px;font-size:11px;text-decoration:none}.qf-md h1{margin:0 0 .6em;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:800;line-height:1.15}.qf-md h2{margin:0 0 .5em;font-size:clamp(1.3rem,3vw,1.7rem);font-weight:700;line-height:1.2}.qf-md h3{margin:0 0 .4em;font-size:1.1rem;font-weight:600}.qf-md p{margin:0 0 .8em;font-size:1rem;line-height:1.55}.qf-md h1+p,.qf-md h2+p{opacity:.8;font-size:1rem}.qf-md a{color:var(--qf-primary)}.qf-label{margin-bottom:14px;font-size:1.2rem;font-weight:600;line-height:1.3;display:block}.qf-optional{opacity:.6;font-size:.9rem;font-weight:400}.qf-help{opacity:.7;margin:-8px 0 14px;font-size:.95rem}.qf-hint{opacity:.6;margin:8px 0 0;font-size:.8rem}.qf-error{color:#dc2626;margin:10px 0 0;font-size:.9rem;font-weight:500}.qf-done{text-align:center;opacity:.8;font-size:1.1rem}.qf-btn{font:inherit;border-radius:var(--qf-radius);cursor:pointer;border:2px solid var(--qf-primary);padding:14px 22px;font-size:1rem;font-weight:600;transition:transform 80ms,filter .15s}.qf-btn:active{transform:scale(.98)}.qf-btn:disabled{opacity:.55;cursor:wait}.qf-btn-primary{background:var(--qf-primary);color:#fff;width:100%}.qf-btn-outline .qf-btn-primary{color:var(--qf-primary);background:0 0}.qf-btn-soft .qf-btn-primary{background:color-mix(in srgb, var(--qf-primary) 15%, transparent);color:var(--qf-primary);border-color:#0000}.qf-btn-primary:hover{filter:brightness(1.07)}.qf-btn-cta{margin-top:18px;padding:16px 24px;font-size:1.1rem}.qf-btn-send{border-radius:999px;flex:0 0 48px;width:48px;height:48px;padding:0}.qf-input{margin-top:12px}.qf-text-row{align-items:stretch;gap:10px;display:flex}.qf-text{font:inherit;border-radius:var(--qf-radius);border:2px solid color-mix(in srgb, var(--qf-text) 18%, transparent);background:color-mix(in srgb, var(--qf-bg) 92%, var(--qf-text) 8%);color:var(--qf-text);outline:none;flex:1;min-width:0;padding:14px 16px;font-size:1.05rem}.qf-text:focus{border-color:var(--qf-primary)}.qf-text-row .qf-btn-primary{width:auto}.qf-choices{gap:10px;display:grid}.qf-choices-inline{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.qf-choice{font:inherit;text-align:left;border-radius:var(--qf-radius);border:2px solid color-mix(in srgb, var(--qf-primary) 35%, transparent);background:color-mix(in srgb, var(--qf-primary) 6%, var(--qf-bg));color:var(--qf-text);cursor:pointer;flex-direction:column;gap:6px;padding:14px 16px;transition:border-color .12s,background .12s,transform 80ms;display:flex}.qf-choice:hover{border-color:var(--qf-primary);background:color-mix(in srgb, var(--qf-primary) 12%, var(--qf-bg))}.qf-choice:active{transform:scale(.985)}.qf-choice-selected{border-color:var(--qf-primary);background:color-mix(in srgb, var(--qf-primary) 22%, var(--qf-bg))}.qf-choice-row{align-items:center;gap:10px;display:flex}.qf-choice-label{font-size:1.02rem;font-weight:600}.qf-choice-desc{opacity:.75;font-size:.9rem}.qf-key{border:1px solid var(--qf-primary);color:var(--qf-primary);text-align:center;border-radius:6px;min-width:24px;padding:4px 6px;font:600 .75rem/1 ui-monospace,monospace}.qf-choice-pic{text-align:center;align-items:center;padding:8px}.qf-choice-img{aspect-ratio:1;object-fit:cover;border-radius:calc(var(--qf-radius) - 4px);width:100%}.qf-scale{flex-wrap:wrap;gap:8px;display:flex}.qf-scale-item{font:inherit;border-radius:var(--qf-radius);border:2px solid color-mix(in srgb, var(--qf-primary) 35%, transparent);min-width:44px;height:48px;color:var(--qf-text);cursor:pointer;background:0 0;flex:1;padding:0 10px;font-weight:600}.qf-scale-item:hover{background:var(--qf-primary);color:#fff;border-color:var(--qf-primary)}.qf-scale-legend{opacity:.6;justify-content:space-between;margin-top:6px;font-size:.8rem;display:flex}.qf-figure{margin:0 0 16px}.qf-figure figcaption{opacity:.7;text-align:center;margin-top:6px;font-size:.85rem}.qf-image{border-radius:var(--qf-radius);width:100%;display:block}.qf-logo{width:auto;height:36px;margin-bottom:20px}.qf-file{flex-direction:column;gap:10px;display:flex}.qf-file-drop{border:2px dashed color-mix(in srgb, var(--qf-primary) 45%, transparent);border-radius:var(--qf-radius);background:color-mix(in srgb, var(--qf-primary) 6%, var(--qf-bg));cursor:pointer;align-items:center;gap:12px;padding:14px 16px;display:flex}.qf-file-drop:hover,.qf-file-drop:focus-within{border-color:var(--qf-primary)}.qf-file-drop input{opacity:0;width:1px;height:1px;position:absolute}.qf-file-icon{font-size:1.4rem}.qf-file-meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.qf-file-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.qf-file-hint{opacity:.7;font-size:.85rem}.qf-file-bar{background:color-mix(in srgb, var(--qf-text) 12%, transparent);border-radius:3px;height:6px;overflow:hidden}.qf-file-bar div{background:var(--qf-primary);height:100%;transition:width .2s}.qf-file-thumb{border-radius:calc(var(--qf-radius) / 2);object-fit:contain;align-self:flex-start;max-height:160px}.qf-file-actions{flex-wrap:wrap;gap:8px;display:flex}.qf-video-wrap{margin:0 0 16px}.qf-audio{background:color-mix(in srgb, var(--qf-primary) 10%, var(--qf-bg));border-radius:999px;grid-template-columns:auto 1fr;align-items:center;gap:10px 12px;min-width:220px;margin:0 0 16px;padding:10px 12px;display:grid}.qf-audio audio{display:none}.qf-audio-btn{background:var(--qf-primary);color:#fff;cursor:pointer;border:0;border-radius:50%;place-items:center;width:40px;height:40px;font-size:.9rem;display:grid}.qf-audio-btn:focus-visible{outline:2px solid var(--qf-primary);outline-offset:2px}.qf-audio-body{flex-direction:column;gap:4px;min-width:0;display:flex}.qf-audio-track{background:color-mix(in srgb, var(--qf-text) 15%, transparent);cursor:pointer;border-radius:3px;height:6px;overflow:hidden}.qf-audio-fill{background:var(--qf-primary);height:100%}.qf-audio-time{opacity:.7;font-variant-numeric:tabular-nums;font-size:.75rem}.qf-audio-caption{opacity:.8;grid-column:1/-1;padding:0 4px 2px;font-size:.85rem}.qf-bubble-bot .qf-audio{background:0 0;margin:0;padding:0}.qf-video{aspect-ratio:16/9;border-radius:var(--qf-radius);background:#000;border:0;width:100%;display:block}.qf-embed{border-radius:var(--qf-radius);border:0;width:100%}.qf-timer{border-radius:var(--qf-radius);background:color-mix(in srgb, var(--qf-primary) 10%, var(--qf-bg));justify-content:center;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-weight:600;display:flex}.qf-timer-clock{font-variant-numeric:tabular-nums;color:var(--qf-primary);font-size:1.3rem}.qf-progress{align-items:center;gap:10px;margin-bottom:18px;display:flex}.qf-progress-track{background:color-mix(in srgb, var(--qf-primary) 18%, transparent);border-radius:999px;flex:1;height:6px;overflow:hidden}.qf-progress-fill{background:var(--qf-primary);height:100%;transition:width .4s}.qf-progress-text{opacity:.7;font-variant-numeric:tabular-nums;font-size:.8rem}.qf-outcome{text-align:center;padding:8px 0}.qf-outcome-title{margin:12px 0;font-size:clamp(1.5rem,4vw,2rem);font-weight:800;line-height:1.15}.qf-page{flex-direction:column;flex:1;align-items:center;padding:20px 16px 32px;display:flex}.qf-page .qf-progress{width:100%;max-width:520px}.qf-card{background:color-mix(in srgb, var(--qf-bg) 100%, #000 0%);width:100%;max-width:520px;padding:8px 0;animation:.28s qf-in}.qf-skeleton{border-radius:var(--qf-radius);background:color-mix(in srgb, var(--qf-text) 6%, transparent);height:240px;animation:1.2s infinite qf-pulse}.qf-form{flex-direction:column;flex:1;display:flex}.qf-form-progress{z-index:2;position:fixed;top:0;left:0;right:0}.qf-form-progress .qf-progress{margin:0}.qf-form-progress .qf-progress-track{border-radius:0;height:4px}.qf-form-slide{flex:1;justify-content:center;align-items:center;padding:48px 20px;animation:.35s qf-slide;display:flex}.qf-form-inner{width:100%;max-width:640px}.qf-form-inner .qf-label{font-size:clamp(1.4rem,3vw,1.9rem);font-weight:600}.qf-form-inner .qf-md p{font-size:1rem}.qf-form-counter{color:var(--qf-primary);margin-bottom:8px;font-size:.95rem;font-weight:700;display:block}.qf-chat{flex-direction:column;flex:1;width:100%;max-width:640px;min-height:100dvh;margin:0 auto;display:flex}.qf-chat-scroll{flex-direction:column;flex:1;gap:8px;padding:20px 16px 8px;display:flex;overflow-y:auto}.qf-bubble-row{align-items:flex-end;gap:8px;animation:.25s qf-in;display:flex}.qf-bubble-row-user{justify-content:flex-end}.qf-avatar{object-fit:cover;border-radius:50%;flex:0 0 32px;width:32px;height:32px}.qf-avatar-fallback{background:var(--qf-primary);opacity:.85}.qf-bubble{border-radius:18px;max-width:82%;padding:12px 16px;font-size:1rem;line-height:1.45}.qf-bubble-bot{background:color-mix(in srgb, var(--qf-text) 7%, var(--qf-bg));border-bottom-left-radius:6px}.qf-bubble-bot .qf-md p:last-child{margin-bottom:0}.qf-bubble-bot .qf-md p{font-size:1rem}.qf-bubble-user{background:var(--qf-primary);color:#fff;border-bottom-right-radius:6px}.qf-bubble-wide{width:100%;max-width:100%}.qf-typing{gap:4px;padding:14px 16px;display:flex}.qf-typing span{background:color-mix(in srgb, var(--qf-text) 45%, transparent);border-radius:50%;width:7px;height:7px;animation:1s infinite qf-bounce}.qf-typing span:nth-child(2){animation-delay:.15s}.qf-typing span:nth-child(3){animation-delay:.3s}.qf-chat-dock{background:var(--qf-bg);border-top:1px solid color-mix(in srgb, var(--qf-text) 10%, transparent);padding:12px 16px 16px;position:sticky;bottom:0}.qf-chat-dock .qf-input{margin:0}.qf-chat-dock .qf-choices{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.qf-chat-dock .qf-choice{padding:10px 14px}.qf-chat-dock .qf-label{margin-bottom:8px;font-size:1rem}.qf-done-chat{font-size:.9rem}@keyframes qf-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes qf-slide{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes qf-pulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes qf-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.qf-root *{transition:none;animation:none}}.qf-back{background:color-mix(in srgb, var(--qf-text) 7%, transparent);color:color-mix(in srgb, var(--qf-text) 70%, transparent);font:inherit;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:.25em;margin:0 0 1rem;padding:.35rem .6rem;font-size:.85rem;display:inline-flex}.qf-back:hover:not(:disabled){background:color-mix(in srgb, var(--qf-text) 12%, transparent);color:var(--qf-text)}.qf-back:disabled{opacity:.5;cursor:default}.qf-back-chat{margin:0 0 .5rem}.qf-file-list{gap:.4rem;margin:0 0 .6rem;padding:0;list-style:none;display:grid}.qf-file-item{border:1px solid color-mix(in srgb, var(--qf-text) 15%, transparent);border-radius:calc(var(--qf-radius) * .6);background:color-mix(in srgb, var(--qf-text) 4%, transparent);align-items:center;gap:.6rem;padding:.5rem .6rem;display:flex}.qf-file-item .qf-file-thumb{object-fit:cover;border-radius:6px;width:44px;height:44px;margin:0}.qf-file-remove{color:color-mix(in srgb, var(--qf-text) 55%, transparent);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:.2rem .4rem;font-size:1rem}.qf-file-remove:hover:not(:disabled){color:var(--qf-text)}
