.ellis{position:relative}.ellis-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:start}.ellis-copy h2{font-size:var(--fs-h2-band);margin-top:18px;max-width:none;text-wrap:pretty}.ellis-copy h2 .ellis-nb{white-space:nowrap}.ellis-chat{display:flex;flex-direction:column;max-width:460px;width:100%}.ellis-chat>.ellis-msg{margin-bottom:52px}.ellis-stage{display:flex;align-items:flex-end;margin-bottom:14px}.ellis-msg{display:flex;align-items:flex-end;gap:12px}.ellis-av{flex:0 0 auto;width:44px;height:44px;border-radius:50%;overflow:hidden;border:1px solid var(--rule-dark);background:var(--char)}.ellis-av :is(img,svg){width:100%;height:100%;object-fit:cover;display:block}.ellis-av.sm{width:38px;height:38px}.ellis-bubble{background:var(--field);color:var(--ink);padding:13px 17px;border-radius:4px 16px 16px;font-size:15.5px;line-height:1.5;max-width:80%;box-shadow:0 2px 10px #32312b1a}.ellis-msg.out{flex-direction:row-reverse}.ellis-msg.out .ellis-bubble{background:var(--surface-2);color:var(--ink);border-radius:16px 4px 16px 16px}.ellis-chat .ellis-bubble{background:var(--card);border:1px solid var(--rule);box-shadow:0 2px 8px #32312b0f}.ellis-chat .ellis-msg.out .ellis-bubble{border:0;box-shadow:none}.ellis-anim .ellis-reveal{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.16,.84,.44,1),transform .8s cubic-bezier(.16,.84,.44,1)}.ellis-anim.in-view .ellis-reveal{opacity:1;transform:none}.ellis-anim.in-view .ellis-copy{transition-delay:0s}.ellis-anim.in-view [data-ellis-greeting]{transition-delay:.12s}.ellis-anim.in-view [data-ellis-form]{transition-delay:.26s}.ellis-chips{display:flex;flex-direction:column;align-items:flex-start;gap:9px;width:100%;visibility:hidden;transition:visibility 0s .3s}.ellis-chat.chips-open .ellis-chips{visibility:visible;transition:visibility 0s 0s}.ellis-chip{font:400 13.5px/1.3 var(--sans);color:var(--ink);cursor:pointer;background:var(--surface-2);border:0;border-radius:999px;padding:9px 16px;text-align:left;opacity:0;transform:translateY(8px);transition:background .2s ease,opacity .35s ease,transform .35s ease}.ellis-chat.chips-open .ellis-chip{opacity:1;transform:none}.ellis-chat.chips-open .ellis-chip:nth-child(1){transition-delay:.04s}.ellis-chat.chips-open .ellis-chip:nth-child(2){transition-delay:.1s}.ellis-chat.chips-open .ellis-chip:nth-child(3){transition-delay:.16s}.ellis-chat.chips-open .ellis-chip:nth-child(4){transition-delay:.22s}.ellis-chip:hover{background:var(--surface-2-hover)}.ellis-chip:focus-visible{outline:2px solid var(--accent-deep);outline-offset:2px}.ellis-form{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--rule);border-radius:999px;padding:4px 4px 4px 18px;box-shadow:0 6px 18px #32312b14}.ellis-input{flex:1;min-width:0;border:0;background:none;outline:none;font:400 16px/1.4 var(--sans);color:var(--ink);padding:5px 0}.ellis-input::placeholder{color:var(--ink);opacity:.42}.ellis-send{flex:0 0 auto;width:36px;height:36px;border-radius:50%;border:0;cursor:pointer;background:var(--char);color:var(--cod);display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease,transform .15s ease}.ellis-send:hover{background:var(--accent-deep)}.ellis-send:active{transform:scale(.94)}.ellis-send:focus-visible{outline:2px solid var(--tint);outline-offset:2px}.ellis-send[disabled]{opacity:.45;cursor:default;pointer-events:none}.ellis-sys{align-self:center;max-width:92%;text-align:center;font:400 12.5px/1.5 var(--sans);color:color-mix(in srgb,var(--ink) 52%,var(--field))}.ellis-retry{background:none;border:0;padding:0;cursor:pointer;font:inherit;color:var(--accent-deep);text-decoration:underline;text-underline-offset:2px}.ellis-retry:hover{color:var(--ink)}.ellis-launcher{position:fixed;right:24px;bottom:24px;z-index:200;width:60px;height:60px;border-radius:50%;border:0;padding:0;cursor:pointer;background:var(--char);overflow:hidden;box-shadow:inset 0 1px #ffffff2e,0 0 0 1px #ffffff24,0 12px 30px -6px #32312b57;transition:transform .2s cubic-bezier(.2,.7,.2,1),opacity .2s ease,box-shadow .18s ease}.ellis-launcher .ellis-av{width:100%;height:100%;border:0}.ellis-launcher:hover{transform:translateY(-2px) scale(1.04);box-shadow:inset 0 1px #ffffff42,0 0 0 1px #fff3,0 18px 42px -8px #32312b6b}.ellis-launcher.is-out{opacity:0;transform:scale(.6);pointer-events:none;transition:transform .16s cubic-bezier(.4,0,1,1),opacity .14s ease-in}.ellis-launcher:focus-visible{outline:2px solid var(--accent-deep);outline-offset:3px}.ellis-launcher[hidden]{display:none}.ellis-modal{position:fixed;inset:0;z-index:201;pointer-events:none}.ellis-modal[hidden]{display:none}.ellis-panel{pointer-events:auto;position:absolute;right:24px;bottom:24px;--ellis-head-h: 59px;width:min(390px,calc(100vw - 32px));height:600px;max-height:calc(100vh - 48px);background:var(--field);color:var(--ink);border:1px solid var(--rule);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:inset 0 1px #ffffff80,0 24px 60px -12px #32312b4d;transform:translateY(8px) scale(.95);opacity:0;transform-origin:calc(100% - 30px) calc(100% - 30px);transition:transform .15s cubic-bezier(.4,0,1,1),opacity .12s ease-in}.ellis-modal:not([hidden]) .ellis-panel{will-change:transform,opacity}.ellis-modal.open .ellis-panel{transform:none;opacity:1;transition:transform .2s cubic-bezier(0,0,.2,1),opacity .15s cubic-bezier(0,0,.2,1)}.ellis-phead{position:absolute;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;gap:8px;padding:12px 10px 12px 16px;border-bottom:1px solid var(--rule);background:var(--card);background:color-mix(in srgb,var(--card) 72%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.35);backdrop-filter:blur(12px) saturate(1.35)}.ellis-status{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--accent-deep);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-deep) 20%,transparent)}.ellis-ptitle{flex:1;min-width:0;font:600 14px/1.2 var(--sans);color:var(--ink);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ellis-hbtn{background:none;border:0;color:var(--ink);cursor:pointer;padding:5px;border-radius:6px;opacity:.5;flex:0 0 auto;transition:opacity .15s ease,background .15s ease}.ellis-hbtn:hover{opacity:1;background:#32312b0f}.ellis-hbtn:focus-visible{outline:2px solid var(--accent-deep);outline-offset:1px}.ellis-thread{flex:1;overflow-y:auto;padding:calc(var(--ellis-head-h) + 14px) 16px 18px;display:flex;flex-direction:column;gap:12px;background:var(--field);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 28px),transparent)}.ellis-thread .ellis-bubble{background:var(--card);color:var(--ink);border:0;box-shadow:0 2px 8px #32312b14}.ellis-thread .ellis-msg.out .ellis-bubble{background:var(--surface-2);box-shadow:none;color:var(--ink)}.ellis-form.in-modal{margin:0 12px 12px;border-radius:999px}.ellis-shimmer{font:inherit;background:linear-gradient(100deg,color-mix(in srgb,var(--ink) 38%,var(--card)) 0%,color-mix(in srgb,var(--ink) 38%,var(--card)) 38%,var(--ink) 50%,color-mix(in srgb,var(--ink) 38%,var(--card)) 62%,color-mix(in srgb,var(--ink) 38%,var(--card)) 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:ellisShimmer 1.5s linear infinite}@keyframes ellisShimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.ellis-link{color:var(--accent-deep);text-decoration:underline;text-underline-offset:2px;word-break:break-word}.ellis-link:hover{color:var(--ink)}.ellis-md>:first-child{margin-top:0}.ellis-md>:last-child{margin-bottom:0}.ellis-md .ellis-p{margin:0 0 8px}.ellis-md .ellis-ul,.ellis-md .ellis-ol{margin:6px 0;padding-left:20px}.ellis-md li{margin:2px 0}.ellis-md li::marker{color:var(--accent-deep)}.ellis-md .ellis-h{font:600 14.5px/1.3 var(--sans);letter-spacing:-.01em;margin:10px 0 4px}.ellis-md strong{font-weight:700}.ellis-md em{font-style:italic}.ellis-md code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;background:color-mix(in srgb,var(--ink) 8%,transparent);padding:1px 5px;border-radius:4px}.ellis-md .ellis-pre{margin:6px 0;padding:9px 11px;border-radius:8px;overflow-x:auto;background:color-mix(in srgb,var(--ink) 7%,transparent)}.ellis-md .ellis-pre code{background:none;padding:0;font-size:.85em}.ellis-md .ellis-bq{margin:6px 0;padding:2px 0 2px 11px;border-left:2px solid var(--rule);color:color-mix(in srgb,var(--ink) 70%,var(--field))}.ellis-contact{align-self:stretch;background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:14px;box-shadow:0 2px 10px #32312b0f}.ellis-contact form{display:flex;flex-direction:column;gap:8px}.ellis-clead{font:600 13.5px/1.35 var(--sans);color:var(--ink);margin:0 0 2px}.ellis-cinput{font:400 14px/1.3 var(--sans);color:var(--ink);background:var(--field);border:1px solid var(--rule);border-radius:8px;padding:9px 11px;outline:none}.ellis-cinput:focus{border-color:var(--accent-deep)}.ellis-cinput:disabled{opacity:.6}textarea.ellis-cinput{font-family:var(--sans);resize:vertical;min-height:62px}.ellis-cinput.bad{border-color:var(--bronze);background:color-mix(in srgb,var(--bronze) 6%,var(--field))}.ellis-consent{font:400 12px/1.45 var(--sans);margin:2px 0 0;color:color-mix(in srgb,var(--ink) 62%,var(--field))}.ellis-cbtn{align-self:flex-start;font:600 12.5px/1 var(--sans);cursor:pointer;background:var(--char);color:var(--cod);border:0;border-radius:999px;padding:10px 16px;transition:background .18s ease,opacity .18s ease}.ellis-cbtn:hover:not([disabled]){background:var(--accent-deep)}.ellis-cbtn[disabled]{opacity:.4;cursor:not-allowed}.ellis-cbtn:focus-visible{outline:2px solid var(--accent-deep);outline-offset:2px}.ellis-cstatus{font:400 12px/1.45 var(--sans);margin:2px 0 0;color:color-mix(in srgb,var(--ink) 60%,var(--field))}.ellis-cstatus:empty{display:none}.ellis-cstatus.ok{color:var(--accent-deep)}.ellis-cstatus.err{color:var(--ink)}.ellis-foot{font:400 11.5px/1.5 var(--sans);margin:10px 2px 0;color:color-mix(in srgb,var(--ink) 50%,var(--field))}.ellis-form.in-modal~.ellis-foot{margin:0 14px 10px}.ellis-clear,.ellis-foot a{background:none;border:0;padding:0;margin-left:6px;cursor:pointer;font:inherit;color:var(--accent-deep);text-decoration:underline;text-underline-offset:2px}.ellis-clear:hover,.ellis-foot a:hover{color:var(--ink)}.ellis-jump{position:absolute;left:50%;bottom:72px;z-index:3;width:34px;height:34px;border-radius:50%;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;background:var(--char);color:var(--cod);transform:translate(-50%);box-shadow:0 6px 18px -4px #32312b6b,inset 0 0 0 1px #ffffff1f;transition:background .18s ease,transform .15s ease}.ellis-jump:hover{background:var(--accent-deep);transform:translate(-50%) translateY(-1px)}.ellis-jump:focus-visible{outline:2px solid var(--accent-deep);outline-offset:2px}.ellis-jump[hidden]{display:none}.ellis-vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(max-width:860px){.ellis-grid{grid-template-columns:1fr;gap:30px}.ellis-copy h2,.ellis-chat{max-width:none}.ellis-chat>.ellis-msg{margin-bottom:40px}}@media(max-width:760px){.ellis-launcher{right:16px;bottom:88px;width:54px;height:54px}.ellis-panel{right:8px;left:8px;bottom:8px;width:auto;height:auto;max-height:calc(100vh - 80px)}}@media(prefers-reduced-motion:reduce){.ellis-panel,.ellis-launcher,.ellis-launcher.is-out,.ellis-modal.open .ellis-panel,.ellis-jump{transition:none}.ellis-shimmer{animation:none;color:var(--ink);-webkit-text-fill-color:var(--ink)}.ellis-chips,.ellis-chip{transition:none}}
