.qf-root{--qf-primary:#7c3aed;--qf-bg:#fff;--qf-text:#111827;--qf-font:Inter, system-ui, sans-serif;--qf-radius:12px;--qf-line:color-mix(in srgb, var(--qf-text) 12%, transparent);--qf-line-strong:color-mix(in srgb, var(--qf-text) 18%, transparent);--qf-surface:color-mix(in srgb, var(--qf-text) 5%, transparent);--qf-surface-2:color-mix(in srgb, var(--qf-text) 8%, transparent);--qf-muted:color-mix(in srgb, var(--qf-text) 70%, transparent);--qf-faint:color-mix(in srgb, var(--qf-text) 55%, transparent);--qf-danger:color-mix(in srgb, #dc2626 85%, var(--qf-text));--qf-ease:cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--qf-bg);min-height:100dvh;color:var(--qf-text);font-family:var(--qf-font);-webkit-font-smoothing:antialiased;flex-direction:column;display:flex}@media (prefers-color-scheme:dark){.qf-auto-theme{--qf-bg:#0b0b0f;--qf-text:#ededf0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.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{letter-spacing:-.02em;text-wrap:balance;margin:0 0 .6em;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:700;line-height:1.15}.qf-md h2{letter-spacing:-.015em;text-wrap:balance;margin:0 0 .5em;font-size:clamp(1.3rem,3vw,1.7rem);font-weight:700;line-height:1.2}.qf-md h3{letter-spacing:-.01em;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{letter-spacing:-.01em;margin-bottom:14px;font-size:22px;font-weight:600;line-height:1.3;display:block}.qf-optional{opacity:.6;letter-spacing:0;font-size:.9rem;font-weight:400}.qf-help{opacity:.7;margin:-8px 0 14px;font-size:.95rem;line-height:1.5}.qf-hint{opacity:.7;margin:8px 0 0;font-size:13px}.qf-error{color:var(--qf-danger);margin:10px 0 0;font-size:.9rem;font-weight:500}.qf-done{text-align:center;opacity:.8;font-size:1.1rem}.qf-fatal{text-align:center;margin:auto 0;padding:48px 8px}.qf-fatal-title{letter-spacing:-.02em;margin:0 0 10px;font-size:clamp(1.4rem,4vw,1.8rem);font-weight:700;line-height:1.15}.qf-fatal-text{color:var(--qf-muted);margin:0 0 6px;line-height:1.55}.qf-fatal-detail{color:var(--qf-faint);word-break:break-word;margin:0 0 22px;font-family:ui-monospace,monospace;font-size:13px}.qf-fatal-retry{width:auto;min-width:200px}.qf-btn{font:inherit;border-radius:var(--qf-radius);cursor:pointer;border:2px solid var(--qf-primary);transition:transform .2s var(--qf-ease), filter .2s var(--qf-ease), background-color .2s var(--qf-ease), border-color .2s var(--qf-ease), color .2s var(--qf-ease), box-shadow .2s var(--qf-ease), opacity .2s var(--qf-ease);padding:14px 22px;font-size:1rem;font-weight:600}.qf-btn:focus-visible{outline:2px solid var(--qf-primary);outline-offset:2px}.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:not(:disabled){filter:brightness(1.07);box-shadow:0 6px 18px -8px color-mix(in srgb, var(--qf-primary) 70%, transparent);transform:translateY(-1px)}.qf-btn-outline .qf-btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--qf-primary) 8%, transparent)}.qf-btn-soft .qf-btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--qf-primary) 22%, transparent)}.qf-btn-ghost{border-color:var(--qf-line-strong);color:var(--qf-muted);background:0 0}.qf-btn-ghost:hover:not(:disabled){border-color:color-mix(in srgb, var(--qf-text) 30%, transparent);color:var(--qf-text);background:var(--qf-surface)}.qf-btn:active:not(:disabled){transition-duration:80ms;transform:scale(.98)}.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 var(--qf-line-strong);background:var(--qf-surface);color:var(--qf-text);min-width:0;transition:border-color .2s var(--qf-ease), background-color .2s var(--qf-ease), box-shadow .2s var(--qf-ease);outline:none;flex:1;padding:14px 16px;font-size:1.05rem}.qf-text::placeholder{color:var(--qf-faint)}.qf-text:hover:not(:disabled){border-color:color-mix(in srgb, var(--qf-text) 28%, transparent)}.qf-text:focus{border-color:var(--qf-primary);background:var(--qf-bg);box-shadow:0 0 0 4px color-mix(in srgb, var(--qf-primary) 15%, transparent)}.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%, transparent);color:var(--qf-text);cursor:pointer;transition:border-color .2s var(--qf-ease), background-color .2s var(--qf-ease), transform .2s var(--qf-ease), box-shadow .2s var(--qf-ease);flex-direction:column;gap:6px;padding:14px 16px;display:flex}.qf-choice:hover:not(:disabled){border-color:var(--qf-primary);background:color-mix(in srgb, var(--qf-primary) 12%, transparent);transform:translateY(-1px)}.qf-choice:focus-visible{outline:2px solid var(--qf-primary);outline-offset:2px}.qf-choice:active:not(:disabled){transition-duration:80ms;transform:scale(.985)}.qf-choice-selected,.qf-choice-selected:hover:not(:disabled){border-color:var(--qf-primary);background:color-mix(in srgb, var(--qf-primary) 22%, transparent)}.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;transition:background-color .2s var(--qf-ease), border-color .2s var(--qf-ease), color .2s var(--qf-ease), transform .2s var(--qf-ease);background:0 0;flex:1;padding:0 10px;font-weight:600}.qf-scale-item:hover:not(:disabled){background:var(--qf-primary);color:#fff;border-color:var(--qf-primary);transform:translateY(-1px)}.qf-scale-item:focus-visible{outline:2px solid var(--qf-primary);outline-offset:2px}.qf-scale-item:active:not(:disabled){transition-duration:80ms;transform:scale(.97)}.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%, transparent);cursor:pointer;transition:border-color .2s var(--qf-ease), background-color .2s var(--qf-ease);align-items:center;gap:12px;padding:14px 16px;display:flex}.qf-file-drop:hover,.qf-file-drop:focus-within{border-color:var(--qf-primary);background:color-mix(in srgb, var(--qf-primary) 10%, transparent)}.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:13px}.qf-file-bar{background:var(--qf-line);border-radius:3px;height:6px;overflow:hidden}.qf-file-bar div{background:var(--qf-primary);height:100%;transition:width .2s var(--qf-ease)}.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%, transparent);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;width:40px;height:40px;transition:transform .2s var(--qf-ease), filter .2s var(--qf-ease);border:0;border-radius:50%;place-items:center;font-size:.9rem;display:grid}.qf-audio-btn:hover{filter:brightness(1.07)}.qf-audio-btn:active{transform:scale(.95)}.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%, transparent);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);border-radius:inherit;height:100%;transition:width .4s var(--qf-ease)}.qf-progress-text{opacity:.7;font-variant-numeric:tabular-nums;font-size:.8rem}.qf-outcome{text-align:center;padding:8px 0}.qf-outcome-title{letter-spacing:-.02em;text-wrap:balance;margin:12px 0;font-size:clamp(1.5rem,4vw,2rem);font-weight:700;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:var(--qf-bg);width:100%;max-width:520px;animation:qf-in .24s var(--qf-ease) both;padding:8px 0}.qf-skeleton{border-radius:var(--qf-radius);background:linear-gradient(100deg, color-mix(in srgb, var(--qf-text) 6%, transparent) 20%, color-mix(in srgb, var(--qf-text) 11%, transparent) 50%, color-mix(in srgb, var(--qf-text) 6%, transparent) 80%);background-size:200% 100%;height:240px;animation:1.4s ease-in-out infinite qf-shimmer}.qf-form{flex-direction:column;flex:1;display:flex}.qf-form .qf-skeleton{width:min(100% - 40px,640px);margin:auto}.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:.24s ease-out both qf-slide;display:flex}.qf-form-inner{width:100%;max-width:640px}.qf-form-inner .qf-label{letter-spacing:-.01em;font-size:22px;font-weight:600}.qf-form-inner .qf-md p{font-size:1rem}.qf-form-counter{color:var(--qf-primary);font-variant-numeric:tabular-nums;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{animation:qf-in .2s var(--qf-ease) both;align-items:flex-end;gap:8px;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%, transparent);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{letter-spacing:0;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(24px)}to{opacity:1;transform:none}}@keyframes qf-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes qf-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.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;transition:background-color .2s var(--qf-ease), color .2s var(--qf-ease);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:focus-visible{outline:2px solid var(--qf-primary);outline-offset:2px}.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);animation:qf-in .2s var(--qf-ease) both;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;transition:color .2s var(--qf-ease);background:0 0;border:0;margin-left:auto;padding:.2rem .4rem;font-size:1rem}.qf-file-remove:hover:not(:disabled){color:var(--qf-text)}@media (prefers-reduced-motion:reduce){.qf-root *{transition:none;animation:none}}
