*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--font-sans:"Space Grotesk",sans-serif;--font-serif:"EB Garamond",Georgia,serif;--bg:#07091a;--surface:#0c1024;--surface2:#11162e;--surface3:#161c38;--border:rgba(255,255,255,0.07);--border-active:rgba(124,92,252,0.40);--accent:#7c5cfc;--accent-dim:rgba(124,92,252,0.13);--accent-glow:rgba(124,92,252,0.28);--text:#eeeef8;--text-2:#9fa0be;--text-3:#525272;--success:#3ddc97}body,html{height:100%;overflow:hidden}body{max-width:100%;background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}*{outline:none}:focus-visible{outline:2px solid rgba(124,92,252,.45);outline-offset:2px}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:128px;opacity:.03;pointer-events:none;z-index:0}.shell{display:flex;flex-direction:column;height:100vh;max-width:800px;margin:0 auto;overflow:hidden;position:relative;z-index:1}.header{padding:16px 24px;gap:14px;border-bottom:1px solid var(--border);background:rgba(7,9,26,.97);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 1px 0 rgba(255,255,255,.04)}.header,.logo-wrap{display:flex;align-items:center;flex-shrink:0}.logo-wrap{width:32px;height:32px;justify-content:center}.logo-wrap img{width:30px;height:30px;object-fit:contain;filter:brightness(1.1)}.header-info{flex:1 1;min-width:0}.brand-name{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}.kai-title{font-family:var(--font-serif);font-size:22px;font-style:italic;color:var(--text);line-height:1.1;margin-top:1px}.status{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-3);letter-spacing:.06em;font-weight:300}.dot,.status{flex-shrink:0}.dot{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 6px var(--success);animation:breathe 3s ease-in-out infinite}@keyframes breathe{0%,to{opacity:1}50%{opacity:.4}}.messages{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:28px 24px 12px;display:flex;flex-direction:column;gap:20px;min-height:0}.messages::-webkit-scrollbar{width:3px}.messages::-webkit-scrollbar-thumb{background:rgba(255,255,255,.08);border-radius:2px}.msg-row{display:flex;gap:10px;align-items:flex-end;animation:rise .28s ease both;min-width:0}.msg-row.user{flex-direction:row-reverse}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.av{width:26px;height:26px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:500;letter-spacing:.05em}.av.ai{background:var(--accent-dim);border:1px solid var(--accent-glow)}.av.ai img{width:15px;height:15px;object-fit:contain;opacity:.9}.av.hu{background:var(--surface3);border:1px solid var(--border);color:var(--text-3);font-size:9px;letter-spacing:.06em}.bubble{max-width:72%;padding:12px 16px;border-radius:16px;font-size:15px;line-height:1.75;font-weight:300;word-break:break-word;overflow-wrap:break-word;min-width:0}.bubble.ai{background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px;color:var(--text)}.bubble.user{background:var(--accent);border-bottom-right-radius:4px;color:#fff;font-weight:400}.bubble em{font-family:var(--font-serif);font-size:16px;font-style:italic;color:rgba(255,255,255,.88)}.typing-dots{display:flex;gap:5px;align-items:center;padding:13px 16px}.typing-dots span{width:5px;height:5px;border-radius:50%;background:var(--text-3);animation:bob 1.1s ease infinite}.typing-dots span:nth-child(2){animation-delay:.14s}.typing-dots span:nth-child(3){animation-delay:.28s}@keyframes bob{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px);background:var(--accent)}}.quiz-wrap{padding:0 24px;animation:rise .28s ease both}.quiz-card{background:var(--surface);border:1px solid var(--border-active);border-radius:16px;padding:18px 18px 14px;box-shadow:0 0 32px rgba(124,92,252,.08)}.quiz-q{font-size:15px;color:var(--text);line-height:1.65;margin-bottom:13px;font-weight:300}.quiz-opts{display:flex;flex-direction:column;gap:6px}.quiz-opt{display:flex;align-items:flex-start;gap:10px;padding:10px 13px;background:var(--surface2);border:1px solid var(--border);border-radius:10px;cursor:pointer;text-align:left;font-family:inherit;font-size:14px;font-weight:300;color:var(--text-2);line-height:1.5;transition:border-color .15s,background .15s,color .15s;width:100%}.quiz-opt:hover{border-color:var(--accent);background:var(--accent-dim);color:var(--text)}.quiz-opt-key{font-size:10px;font-weight:600;letter-spacing:.08em;color:var(--accent);min-width:14px;padding-top:2px;flex-shrink:0}.lead-overlay{position:fixed;inset:0;background:rgba(7,9,26,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:20;animation:fadeIn .22s ease;padding:24px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lead-card{background:var(--surface);border:1px solid var(--border-active);border-radius:20px;padding:34px 30px 28px;max-width:400px;width:100%;box-shadow:0 0 80px rgba(124,92,252,.1)}.lead-eyebrow{font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:9px}.lead-headline{font-family:var(--font-serif);font-size:26px;font-style:italic;color:var(--text);line-height:1.25;margin-bottom:8px}.lead-sub{font-size:14px;color:var(--text-2);line-height:1.6;font-weight:300;margin-bottom:26px}.lead-field{margin-bottom:12px}.lead-field label{display:block;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin-bottom:6px}.lead-field input{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:11px 14px;font-family:inherit;font-size:15px;font-weight:300;color:var(--text);transition:border-color .2s}.lead-field input:focus{border-color:var(--border-active)}.lead-field input::placeholder{color:var(--text-3)}.lead-submit{width:100%;margin-top:8px;background:var(--accent);color:#fff;border:none;border-radius:10px;padding:13px;font-family:inherit;font-size:15px;font-weight:500;letter-spacing:.02em;cursor:pointer;transition:opacity .2s,transform .1s}.lead-submit:hover{opacity:.88}.lead-submit:active{transform:scale(.98)}.lead-skip{width:100%;margin-top:9px;background:transparent;border:none;color:var(--text-3);font-family:inherit;font-size:12px;cursor:pointer;padding:6px;transition:color .2s}.lead-skip:hover{color:var(--text-2)}.qr-wrap{padding:8px 24px 12px;display:flex;flex-wrap:wrap;gap:7px;flex-shrink:0}.qr{background:transparent;border:1px solid var(--border);color:var(--text-2);padding:6px 14px;border-radius:20px;font-family:inherit;font-size:13px;font-weight:300;cursor:pointer;transition:border-color .18s,color .18s,background .18s;white-space:nowrap}.qr:hover{border-color:var(--accent);color:var(--text);background:var(--accent-dim)}.input-wrap{padding:10px 24px 20px;border-top:1px solid var(--border);background:rgba(7,9,26,.97);flex-shrink:0}.input-row{display:flex;gap:8px;align-items:flex-end;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:9px 9px 9px 14px;transition:border-color .2s}.input-row:focus-within{border-color:var(--border-active)}.inp{flex:1 1;min-width:0;background:transparent;border:none;color:var(--text);font-family:inherit;font-size:15px;font-weight:300;resize:none;min-height:22px;max-height:120px;line-height:1.55;padding:0}.inp::placeholder{color:var(--text-3)}.inp:disabled{opacity:.35;cursor:not-allowed}.send{width:32px;height:32px;background:var(--accent);border:none;border-radius:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .2s,transform .1s}.send:hover{opacity:.85}.send:active{transform:scale(.94)}.send:disabled{opacity:.22;cursor:default}.send svg{width:13px;height:13px}.attach-btn{width:32px;height:32px;flex-shrink:0;background:transparent;border:1px solid var(--border);border-radius:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-3);transition:border-color .18s,background .18s,color .18s}.attach-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.attach-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5}.file-preview{display:flex;flex-wrap:wrap;gap:7px;padding:0 0 8px}.file-chip{display:flex;align-items:center;gap:7px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:5px 10px;font-size:13px;color:var(--text-2);font-weight:300;max-width:220px}.file-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-chip-remove{background:none;border:none;color:var(--text-3);cursor:pointer;font-size:14px;line-height:1;padding:0;flex-shrink:0;transition:color .15s}.file-chip-remove:hover{color:#ff6b6b}.footer-note{font-size:11.5px;color:var(--text-3);text-align:center;margin-top:9px;font-weight:300;letter-spacing:.02em}.footer-note a{color:var(--accent)}.cta,.footer-note a{text-decoration:none}.cta{display:inline-block;margin-top:12px;background:var(--accent);color:#fff;padding:8px 18px;border-radius:8px;font-size:14px;font-weight:500;font-family:inherit;border:none;cursor:pointer;transition:opacity .2s}.cta:hover{opacity:.85}.lead-badge{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-3);font-weight:300;flex-shrink:0}.lead-badge strong{color:var(--text-2);font-weight:500}