.chat{z-index:100;visibility:hidden;background:#07080c;flex-direction:column;transition:transform .65s cubic-bezier(.7,0,.15,1);display:flex;position:fixed;inset:0;transform:translateY(100%)}.chat.open{visibility:visible;transform:translateY(0)}body.chat-open{overflow:hidden}.chat__aurora{pointer-events:none;position:absolute;inset:0;overflow:hidden}.chat__aurora:before,.chat__aurora:after{content:"";filter:blur(90px);opacity:.35;mix-blend-mode:screen;border-radius:50%;width:70vmax;height:70vmax;position:absolute}.chat__aurora:before{background:radial-gradient(circle, var(--violet-3,#7c3aed), transparent 60%);animation:16s ease-in-out infinite alternate auroraA;top:-20%;left:-10%}.chat__aurora:after{background:radial-gradient(circle, var(--teal), transparent 60%);animation:20s ease-in-out infinite alternate auroraB;bottom:-25%;right:-10%}@keyframes auroraA{to{transform:translate(20%,15%)scale(1.2)}}@keyframes auroraB{to{transform:translate(-15%,-10%)scale(1.15)}}.chat__grain{pointer-events:none;opacity:.04;background-image:radial-gradient(#fff9 .5px,#0000 .5px);background-size:3px 3px;position:absolute;inset:0}.chat__header{z-index:2;backdrop-filter:blur(8px);border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;padding:1rem clamp(1rem,4vw,2.4rem);display:flex;position:relative}.chat__id{align-items:center;gap:.8rem;display:flex}.chat__avatar{background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--teal) 40%, transparent), transparent 70%);border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:relative}.chat__avatar img{object-fit:contain;width:40px;height:40px}.chat__avatar:after{content:"";background:conic-gradient(var(--cyan), var(--violet-3,#7c3aed), var(--coral), var(--cyan)) border-box;-webkit-mask-composite:xor;border:1.5px solid #0000;border-radius:50%;animation:6s linear infinite spin;position:absolute;inset:-3px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:padding-box,border-box;-webkit-mask-origin:padding-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}@keyframes spin{to{transform:rotate(360deg)}}.chat__id b{font-size:1rem;display:block}.chat__id small{color:var(--teal);font-size:.75rem;font-family:var(--font-mono);align-items:center;gap:.4rem;display:flex}.chat__id small:before{content:"";background:var(--teal);width:7px;height:7px;box-shadow:0 0 8px var(--teal);border-radius:50%;animation:1.6s ease-in-out infinite blink}@keyframes blink{50%{opacity:.35}}.chat__close{width:42px;height:42px;color:var(--text);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff26;border-radius:50%;font-size:1.1rem;transition:all .2s}.chat__close:hover{background:color-mix(in srgb, var(--coral) 25%, transparent);border-color:var(--coral);transform:rotate(90deg)}.chat__thread{z-index:2;overscroll-behavior:contain;flex:1;padding:2rem clamp(1rem,4vw,2rem);position:relative;overflow-y:auto}.chat__thread-inner{flex-direction:column;gap:1.4rem;max-width:760px;margin:0 auto;display:flex}.msg{max-width:100%;animation:msgIn .4s var(--ease) both;gap:.8rem;display:flex}@keyframes msgIn{0%{opacity:0;transform:translateY(12px)}}.msg__av{background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--teal) 35%, transparent), transparent 70%);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;display:grid}.msg__av img{object-fit:contain;width:30px;height:30px}.msg__bubble{border-radius:16px;padding:.85rem 1.1rem;font-size:1rem;line-height:1.55}.msg--bot .msg__bubble{background:color-mix(in srgb, var(--graphite) 55%, transparent);color:var(--text);border:1px solid #ffffff12;border-top-left-radius:4px}.msg--user{flex-direction:row-reverse}.msg--user .msg__bubble{background:linear-gradient(120deg, var(--coral-soft), var(--coral-deep));color:#fff;border-top-right-radius:4px;max-width:78%}.msg--user .msg__av{display:none}.typing{gap:4px;padding:.9rem 1.1rem;display:inline-flex}.typing span{background:var(--text-soft);border-radius:50%;width:7px;height:7px;animation:1.2s infinite bounce}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}.chat__chips{z-index:2;flex-wrap:wrap;gap:.6rem;width:100%;max-width:760px;margin:0 auto;padding:0 clamp(1rem,4vw,2rem);display:flex;position:relative}.chip{cursor:pointer;color:var(--text-soft);background:#ffffff08;border:1px solid #ffffff24;border-radius:999px;padding:.5rem .9rem;font-size:.85rem;transition:all .2s}.chip:hover{border-color:var(--cyan);color:var(--text);background:color-mix(in srgb, var(--cyan) 12%, transparent)}.chat__bar{z-index:2;gap:.6rem;width:100%;max-width:760px;margin:1rem auto 0;padding:0 clamp(1rem,4vw,2rem) clamp(1.2rem,4vh,2rem);display:flex;position:relative}.chat__bar input{font-size:1rem;font-family:var(--font-ui);color:var(--text);background:#ffffff0d;border:1px solid #ffffff1f;border-radius:16px;outline:none;flex:1;padding:1rem 1.2rem;transition:border-color .2s,box-shadow .2s}.chat__bar input::placeholder{color:var(--text-muted)}.chat__bar input:focus{border-color:color-mix(in srgb, var(--cyan) 60%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--cyan) 15%, transparent)}.chat__send{cursor:pointer;color:#fff;background:linear-gradient(120deg, var(--cyan), var(--violet-3,#7c3aed));border:none;border-radius:16px;width:54px;font-size:1.3rem;transition:transform .15s,filter .2s}.chat__send:hover{filter:brightness(1.1);transform:translateY(-1px)}.chat__send:disabled{opacity:.4;cursor:default}@media (prefers-reduced-motion:reduce){.chat{transition:none}.chat__aurora:before,.chat__aurora:after,.chat__avatar:after{animation:none}}
