.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}}.diag{z-index:100;visibility:hidden;overscroll-behavior:contain;background:#07080c;transition:transform .65s cubic-bezier(.7,0,.15,1);position:fixed;inset:0;overflow-y:auto;transform:translateY(-100%)}.diag.open{visibility:visible;transform:translateY(0)}body.diag-open{overflow:hidden}.diag__aurora{pointer-events:none;position:fixed;inset:0;overflow:hidden}.diag__aurora:before,.diag__aurora:after{content:"";filter:blur(90px);opacity:.3;mix-blend-mode:screen;border-radius:50%;width:65vmax;height:65vmax;position:absolute}.diag__aurora:before{background:radial-gradient(circle, var(--cyan), transparent 60%);animation:18s ease-in-out infinite alternate auroraA;top:-25%;right:-12%}.diag__aurora:after{background:radial-gradient(circle, var(--coral), transparent 60%);animation:22s ease-in-out infinite alternate auroraB;bottom:-28%;left:-12%}.diag__grain{pointer-events:none;opacity:.04;background-image:radial-gradient(#fff9 .5px,#0000 .5px);background-size:3px 3px;position:fixed;inset:0}.diag__header{z-index:3;-webkit-backdrop-filter:blur(8px);background:#07080c8c;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;padding:1.1rem clamp(1rem,5vw,3rem);display:flex;position:sticky;top:0}.diag__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}.diag__close:hover{background:color-mix(in srgb, var(--coral) 25%, transparent);border-color:var(--coral);transform:rotate(90deg)}.diag__body{z-index:2;width:100%;max-width:1100px;margin:0 auto;padding:clamp(2rem,6vh,4rem) clamp(1.2rem,5vw,3rem) clamp(3rem,8vh,5rem);position:relative}.diag__intro{text-align:center;max-width:640px;margin:0 auto clamp(2rem,5vh,3.2rem)}.diag__title{margin-bottom:.8rem;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.05}.diag__lede{color:var(--text-soft);font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.5}.diag__grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.diag__card{background:#12141a73;border:1px solid #ffffff14;border-radius:16px;padding:1.6rem;transition:border-color .25s,transform .25s,background .25s,box-shadow .25s}.diag__ico{width:46px;height:46px;color:var(--cyan);background:color-mix(in srgb, var(--cyan) 12%, transparent);border:1px solid color-mix(in srgb, var(--cyan) 25%, transparent);border-radius:12px;place-items:center;margin-bottom:1rem;display:inline-grid}.diag__ico svg{width:24px;height:24px;display:block}.diag__card:nth-child(3n-1) .diag__ico{color:var(--coral);background:color-mix(in srgb, var(--coral) 12%, transparent);border-color:color-mix(in srgb, var(--coral) 25%, transparent)}.diag__card h3{margin-bottom:.4rem;font-size:1.06rem}.diag__card p{color:var(--text-soft);font-size:.92rem;line-height:1.5}a.diag__card{color:inherit;flex-direction:column;text-decoration:none;display:flex}a.diag__card p{flex:1}.diag__more{font-family:var(--font-mono);color:var(--cyan);margin-top:1rem;font-size:.82rem;transition:color .2s}.diag__card:nth-child(3n-1) .diag__more{color:var(--coral)}a.diag__card:hover .diag__more{filter:brightness(1.25)}.diag__cta{text-align:center;flex-direction:column;align-items:center;gap:1.1rem;margin-top:clamp(2rem,5vh,3rem);display:flex}.diag__cta-txt{color:var(--text-soft);max-width:520px;line-height:1.5}.diag__back{color:var(--text-muted);font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;border-radius:999px;margin-top:.2rem;padding:.5rem .8rem;font-size:.9rem;transition:color .2s,background .2s}.diag__back:hover{color:var(--text);background:#ffffff0d}.diag.open .diag__card{transform-origin:top;animation:.6s cubic-bezier(.34,1.4,.5,1) backwards diagCardIn}.diag.open .diag__card:first-child{animation-delay:.22s}.diag.open .diag__card:nth-child(2){animation-delay:.29s}.diag.open .diag__card:nth-child(3){animation-delay:.36s}.diag.open .diag__card:nth-child(4){animation-delay:.43s}.diag.open .diag__card:nth-child(5){animation-delay:.5s}.diag.open .diag__card:nth-child(6){animation-delay:.57s}@keyframes diagCardIn{0%{opacity:0;transform:perspective(1000px)rotateX(-72deg)}}.diag.open .diag__card:hover{border-color:color-mix(in srgb, var(--cyan) 45%, transparent);background:#12141ab8;transform:translateY(-4px);box-shadow:0 16px 40px #00000059}@media (width<=560px){.diag__grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.diag{transition:none}.diag__aurora:before,.diag__aurora:after,.diag.open .diag__card{animation:none}}
