@property --orb-a{syntax:"<angle>";inherits:false;initial-value:0deg}.ai-orb{--orb-size:60px;--orb-c1:#4f8cff;--orb-c2:#a86bff;--orb-c3:#ff6fb1;--orb-c4:#4fe3ff;--orb-c5:#ffb86b;width:var(--orb-size);height:var(--orb-size);isolation:isolate;pointer-events:none;border-radius:50%;flex:none;display:inline-block;position:relative}.ai-orb__glow{z-index:-1;background:conic-gradient(from var(--orb-a),var(--orb-c1),var(--orb-c2),var(--orb-c3),var(--orb-c5),var(--orb-c4),var(--orb-c1));filter:blur(calc(var(--orb-size)*.3));opacity:.5;border-radius:50%;transition:opacity .5s;animation:9s linear infinite orb-spin,4.5s ease-in-out infinite orb-breathe;position:absolute;inset:-32%}.ai-orb__body{box-shadow:inset 0 0 calc(var(--orb-size)*.18)#ffffff47,inset 0 calc(var(--orb-size)*-.08)calc(var(--orb-size)*.2)#4f8cff59,0 calc(var(--orb-size)*.14)calc(var(--orb-size)*.4)calc(var(--orb-size)*-.1)#5840d28c;background:radial-gradient(circle at 50% 55%,#1b1650 0%,#0a0920 72%);border-radius:50%;animation:6s ease-in-out infinite orb-float;position:absolute;inset:0;overflow:hidden}.ai-orb__blob{mix-blend-mode:screen;width:88%;height:88%;filter:blur(calc(var(--orb-size)*.08));border-radius:42% 58% 63% 37%/41% 44% 56% 59%;animation:7s ease-in-out infinite orb-morph,10s linear infinite orb-rotate;position:absolute;top:6%;left:6%}.ai-orb__blob:first-child{background:radial-gradient(circle at 30% 30%,var(--orb-c1)0%,transparent 62%)}.ai-orb__blob:nth-child(2){background:radial-gradient(circle at 72% 38%,var(--orb-c2)0%,transparent 60%);animation-duration:6s,12s;animation-direction:alternate,reverse}.ai-orb__blob:nth-child(3){background:radial-gradient(circle at 50% 82%,var(--orb-c3)0%,transparent 58%);animation-duration:8s,14s}.ai-orb__blob:nth-child(4){background:radial-gradient(circle at 38% 62%,var(--orb-c4)0%,transparent 52%);animation-duration:5.5s,9s;animation-direction:alternate-reverse,reverse}.ai-orb__sheen{background:radial-gradient(circle at 32% 24%,#ffffffd9 0%,#fff0 26%),radial-gradient(circle at 68% 88%,#fff3 0%,#fff0 38%);border-radius:50%;position:absolute;inset:0}.ai-orb__ring{opacity:0;border:2px solid #a88cffb3;border-radius:50%;position:absolute;inset:0}.ai-orb[data-state=thinking] .ai-orb__glow{opacity:.95;animation-duration:1.8s,1.4s}.ai-orb[data-state=thinking] .ai-orb__blob{animation-duration:2.2s,3s}.ai-orb[data-state=thinking] .ai-orb__body{animation:1.1s ease-in-out infinite orb-think}.ai-orb[data-state=listening] .ai-orb__glow{opacity:.85;animation-duration:4s,1.2s}.ai-orb[data-state=listening] .ai-orb__ring{animation:1.6s cubic-bezier(.2,.6,.3,1) infinite orb-ring}.ai-orb[data-state=listening] .ai-orb__ring--late{animation-delay:.8s}.ai-orb[data-state=done] .ai-orb__body{animation:.7s cubic-bezier(.34,1.56,.64,1) orb-pop}.ai-orb[data-state=done] .ai-orb__ring{border-color:#78e6bed9;animation:.9s ease-out orb-ring}.ai-orb[data-state=done] .ai-orb__glow{opacity:.9}@keyframes orb-spin{to{--orb-a:360deg}}@keyframes orb-breathe{0%,to{transform:scale(.92)}50%{transform:scale(1.08)}}@keyframes orb-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3%)}}@keyframes orb-morph{0%,to{border-radius:42% 58% 63% 37%/41% 44% 56% 59%}33%{border-radius:63% 37% 45% 55%/55% 62% 38% 45%}66%{border-radius:38% 62% 36% 64%/62% 38%}}@keyframes orb-rotate{to{transform:rotate(360deg)}}@keyframes orb-think{0%,to{transform:scale(1)}50%{transform:scale(.93)}}@keyframes orb-pop{0%{transform:scale(1)}40%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes orb-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.75)}}@media (prefers-reduced-motion:reduce){.ai-orb *,.ai-orb[data-state] *{animation:none!important}}.ai-fab{z-index:45;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;place-items:center;width:64px;height:64px;padding:0;transition:transform .35s cubic-bezier(.34,1.56,.64,1);animation:.6s cubic-bezier(.34,1.56,.64,1) both ai-fab-in;display:grid;position:fixed;bottom:96px;right:20px}.ai-fab:hover{transform:scale(1.07)}.ai-fab:active{transform:scale(.93)}.ai-fab:focus-visible{outline-offset:4px;outline:2px solid #a86bff}.ai-fab__hint{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;background:#0f0c28eb;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:500;transition:opacity .2s,transform .2s;position:absolute;top:50%;right:calc(100% + 12px);transform:translate(6px,-50%)}.ai-fab:hover .ai-fab__hint,.ai-fab:focus-visible .ai-fab__hint{opacity:1;transform:translateY(-50%)}@keyframes ai-fab-in{0%{opacity:0;transform:scale(.3)translateY(20px)}}.ai-panel{z-index:46;isolation:isolate;transform-origin:100% 100%;flex-direction:column;width:400px;max-width:calc(100vw - 16px);max-height:min(640px,100dvh - 48px);display:flex;position:fixed;inset:auto 24px 24px auto}@media (max-width:640px){.ai-panel{width:auto;max-width:none;max-height:calc(100dvh - 16px);bottom:8px;left:8px;right:8px}}.ai-panel-border:before{content:"";z-index:-1;border-radius:inherit;background:conic-gradient(from var(--orb-a),#4f8cff,#a86bff,#ff6fb1,#ffb86b,#4fe3ff,#4f8cff);-webkit-mask-composite:xor;opacity:.8;padding:1px;animation:6s linear infinite orb-spin;position:absolute;inset:-1px;-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:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.ai-panel-border[data-busy=true]:before{opacity:1;animation-duration:1.6s}.ai-shimmer{background:linear-gradient(90deg,currentColor 0%,#a86bff 30%,#ff6fb1 50%,currentColor 70%) 0 0/200% 100%;color:#0000;-webkit-background-clip:text;background-clip:text;animation:1.6s linear infinite ai-shimmer}@keyframes ai-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (max-width:640px){.ai-fab{width:58px;height:58px;bottom:88px;right:16px}.ai-fab__hint{display:none}}@media (prefers-reduced-motion:reduce){.ai-fab,.ai-panel-border:before,.ai-shimmer{animation:none!important}}.ai-fab--hub{bottom:20px}@media (max-width:640px){.ai-fab--hub{bottom:16px}}.ai-fab__badge{color:#fff;min-width:20px;height:20px;font:700 11px/16px var(--ff-b,system-ui),system-ui,sans-serif;text-align:center;background:#e11d48;border:2px solid #fff;border-radius:999px;padding:0 5px;animation:.45s cubic-bezier(.34,1.56,.64,1) both hub-badge-pop;position:absolute;top:0;right:0;box-shadow:0 4px 12px #e11d4866}.dark .ai-fab__badge{border-color:#070b1f}.ai-fab--hub .ai-fab__hint{font-family:var(--ff-b)}.ai-hub{--ff-d:var(--font-bricolage),"Bricolage Grotesque",Georgia,serif;--ff-b:var(--font-hanken),"Hanken Grotesk",system-ui,sans-serif;--hub-ac:#2563eb;--hub-ac-strong:#1e40af;--hub-ink:#0b1533;--hub-mut:#4a5678;--hub-line:#0b15331a;--hub-line-strong:#0b153329;--hub-surf:#0b15330b;--hub-surf-h:#2563eb14;--hub-panel:#fafbffdb;--hub-card:#ffffffc7;--hub-inset:inset 0 1px 0 #ffffffe6;--hub-glow:radial-gradient(70% 45% at 100% 0%,#60a5fa33,transparent 70%),radial-gradient(60% 40% at 0% 100%,#a86bff1f,transparent 70%);height:min(640px,100dvh - 48px);color:var(--hub-ink);background:var(--hub-glow),var(--hub-panel);-webkit-backdrop-filter:blur(18px)saturate(150%);backdrop-filter:blur(18px)saturate(150%);box-shadow:var(--hub-inset),0 30px 60px -24px #1e3a8a73,0 8px 24px -12px #0b153333;font-family:var(--ff-b);border-radius:24px}.dark .ai-hub{--hub-ac:#60a5fa;--hub-ac-strong:#93c5fd;--hub-ink:#f4f6ff;--hub-mut:#aab5d6;--hub-line:#ffffff1a;--hub-line-strong:#ffffff29;--hub-surf:#ffffff0f;--hub-surf-h:#93c5fd1a;--hub-panel:#0c1126e0;--hub-card:#ffffff0d;--hub-inset:inset 0 1px 0 #ffffff12;--hub-glow:radial-gradient(70% 45% at 100% 0%,#2563eb42,transparent 70%),radial-gradient(60% 40% at 0% 100%,#a86bff29,transparent 70%);box-shadow:var(--hub-inset),0 30px 60px -24px #000000bf}@media (max-width:640px){.ai-hub{height:calc(100dvh - 16px)}}.ai-hub .hub-display{font-family:var(--ff-d);font-variation-settings:"opsz" 32;letter-spacing:-.01em;font-weight:650}.ai-hub .hub-mut{color:var(--hub-mut)}.ai-hub .hub-ac{color:var(--hub-ac)}.ai-hub .hub-eyebrow{color:var(--hub-mut);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.ai-hub ::placeholder{color:var(--hub-mut);opacity:.8}.ai-hub .hub-icon-btn{width:32px;height:32px;color:var(--hub-mut);border-radius:999px;place-items:center;transition:background .15s,color .15s;display:grid}.ai-hub .hub-icon-btn:hover{background:var(--hub-surf-h);color:var(--hub-ink)}.ai-hub .hub-tabs{background:var(--hub-surf);border:1px solid var(--hub-line);border-radius:999px;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;display:grid}.ai-hub .hub-tab{height:32px;color:var(--hub-mut);isolation:isolate;border-radius:999px;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:500;transition:color .2s;display:inline-flex;position:relative}.ai-hub .hub-tab:hover,.ai-hub .hub-tab[data-active=true]{color:var(--hub-ink)}.ai-hub .hub-tab[data-active=true] svg{color:var(--hub-ac)}.ai-hub .hub-tab:focus-visible{outline:2px solid var(--hub-ac);outline-offset:1px}.ai-hub .hub-tab__pill{z-index:-1;border-radius:inherit;background:var(--hub-card);box-shadow:var(--hub-inset),0 4px 12px -4px #1e3a8a4d;border:1px solid var(--hub-line);position:absolute;inset:0}.dark .ai-hub .hub-tab__pill{background:#ffffff1a}.ai-hub .hub-tab__badge{color:#fff;background:#e11d48;border-radius:999px;min-width:17px;height:17px;padding:0 4px;font-size:10px;font-weight:700;line-height:17px;animation:.45s cubic-bezier(.34,1.56,.64,1) both hub-badge-pop}.ai-hub .hub-bubble{background:var(--hub-card);border:1px solid var(--hub-line);box-shadow:var(--hub-inset)}.ai-hub .hub-bubble-me{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb 55%,#1e40af);box-shadow:0 6px 16px -8px #2563ebb3}.ai-hub .hub-bubble-error{background:#f43f5e0f;border:1px solid #f43f5e4d}.ai-hub .hub-avatar,.ai-hub .hub-team-badge{color:#1e40af;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:999px;flex:none;place-items:center;width:24px;height:24px;display:grid;position:relative}.ai-hub .hub-team-badge{width:38px;height:38px}.dark .ai-hub .hub-avatar,.dark .ai-hub .hub-team-badge{color:#bfdbfe;background:linear-gradient(135deg,#1e3a8a,#1e40af)}.ai-hub .hub-live-dot{border:2px solid var(--hub-panel);background:#10b981;border-radius:999px;width:10px;height:10px;animation:2s ease-in-out infinite hub-live;position:absolute;bottom:0;right:0}.ai-hub .hub-status-dot{background:#94a3b8;border-radius:999px;width:7px;height:7px}.ai-hub .hub-status-dot[data-live=true]{background:#10b981;animation:2s ease-in-out infinite hub-live}.ai-hub .hub-card{background:var(--hub-card);border:1px solid var(--hub-line);box-shadow:var(--hub-inset);border-radius:18px;padding:14px}.ai-hub .hub-typing{gap:4px;display:inline-flex}.ai-hub .hub-typing span{background:linear-gradient(135deg,#4f8cff,#ff6fb1);border-radius:999px;width:6px;height:6px;animation:.9s ease-in-out infinite hub-bounce}.ai-hub .hub-typing span:nth-child(2){animation-delay:.15s}.ai-hub .hub-typing span:nth-child(3){animation-delay:.3s}.ai-hub .hub-chip{border:1px solid var(--hub-line);background:var(--hub-card);box-shadow:var(--hub-inset);text-align:left;border-radius:999px;padding:6px 12px;font-size:12px;transition:border-color .15s,background .15s,transform .2s cubic-bezier(.2,.9,.25,1.2)}.ai-hub .hub-chip:hover{border-color:color-mix(in srgb,var(--hub-ac)45%,transparent);background:var(--hub-surf-h);transform:translateY(-1px)}.ai-hub .hub-link-chip{border:1px solid color-mix(in srgb,var(--hub-ac)40%,transparent);background:var(--hub-card);color:var(--hub-ac);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;transition:background .15s;display:inline-flex}.ai-hub .hub-link-chip:hover{background:var(--hub-surf-h)}.ai-hub .hub-text-btn{color:var(--hub-ac);text-underline-offset:2px;font-weight:600}.ai-hub .hub-text-btn:hover{text-decoration:underline}.ai-hub .hub-text-btn:disabled{opacity:.5}.ai-hub .hub-kbd{border:1px solid var(--hub-line-strong);background:var(--hub-surf);border-radius:4px;padding:0 4px;font-family:ui-monospace,monospace;font-size:11px}.ai-hub .hub-action{border:1px solid var(--hub-line);background:var(--hub-card);border-radius:14px}.ai-hub .hub-btn-primary,.ai-hub .hub-btn-ghost{border-radius:999px;align-items:center;gap:4px;padding:4px 12px;font-size:12px;font-weight:600;transition:opacity .15s,background .15s;display:inline-flex}.ai-hub .hub-btn-primary{color:#fff;background:linear-gradient(135deg,#3b82f6,#1e40af)}.ai-hub .hub-btn-primary:hover{opacity:.9}.ai-hub .hub-btn-ghost{border:1px solid var(--hub-line-strong)}.ai-hub .hub-btn-ghost:hover{background:var(--hub-surf-h)}.ai-hub .hub-composer{border:1px solid var(--hub-line-strong);background:var(--hub-card);box-shadow:var(--hub-inset);border-radius:18px;align-items:flex-end;gap:8px;padding:6px 6px 6px 12px;transition:border-color .15s,box-shadow .15s;display:flex}.ai-hub .hub-composer:focus-within{border-color:color-mix(in srgb,var(--hub-ac)60%,transparent);box-shadow:var(--hub-inset),0 0 0 3px color-mix(in srgb,var(--hub-ac)15%,transparent)}.ai-hub .hub-send{color:#fff;background:linear-gradient(135deg,#3b82f6,#1e40af);border-radius:999px;flex:none;place-items:center;width:36px;height:36px;transition:opacity .15s,transform .2s cubic-bezier(.2,.9,.25,1.2);display:grid;box-shadow:0 6px 14px -6px #2563ebcc}.ai-hub .hub-send--magic{background:linear-gradient(135deg,#4f8cff,#a86bff 55%,#ff6fb1);box-shadow:0 6px 14px -6px #a86bffd9}.ai-hub .hub-send:hover:not(:disabled){transform:scale(1.06)}.ai-hub .hub-send:disabled{opacity:.4}.ai-hub .hub-search{border:1px solid var(--hub-line-strong);background:var(--hub-card);height:40px;box-shadow:var(--hub-inset);border-radius:14px;align-items:center;gap:8px;padding:0 12px;display:flex}.ai-hub .hub-search:focus-within{border-color:color-mix(in srgb,var(--hub-ac)60%,transparent)}.ai-hub .hub-faq{border:1px solid var(--hub-line);background:var(--hub-card);box-shadow:var(--hub-inset);border-radius:14px;transition:border-color .15s}.ai-hub .hub-faq:hover,.ai-hub .hub-faq[data-open=true]{border-color:color-mix(in srgb,var(--hub-ac)35%,transparent)}.ai-hub .hub-cta{border:1px solid var(--hub-line);background:var(--hub-card);width:100%;box-shadow:var(--hub-inset);border-radius:16px;align-items:center;gap:12px;padding:10px 12px;transition:border-color .15s,transform .2s cubic-bezier(.2,.9,.25,1.2);display:flex}.ai-hub .hub-cta:hover{border-color:color-mix(in srgb,var(--hub-ac)40%,transparent);transform:translateY(-1px)}@keyframes hub-badge-pop{0%{transform:scale(0)}}@keyframes hub-live{0%,to{box-shadow:0 0 #10b98173}50%{box-shadow:0 0 0 5px #10b98100}}@keyframes hub-bounce{0%,to{opacity:.45;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.ai-fab__badge,.ai-hub .hub-tab__badge,.ai-hub .hub-live-dot,.ai-hub .hub-status-dot,.ai-hub .hub-typing span{animation:none!important}}