.menu-toggle[data-v-a837c0c2]{align-items:center;background:transparent;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);cursor:pointer;display:none;height:44px;justify-content:center;overflow:hidden;position:relative;transition:background .18s ease,border-color .18s ease,transform .2s ease;width:44px}.menu-toggle[data-v-a837c0c2]:hover{background:var(--paper-2);border-color:var(--ink-3)}.menu-toggle[data-v-a837c0c2]:active{transform:scale(.96)}.menu-toggle[data-v-a837c0c2]:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.menu-toggle.is-open[data-v-a837c0c2]{background:var(--ink);border-color:var(--ink);color:#fff}.menu-svg[data-v-a837c0c2]{height:22px;width:22px}.bar[data-v-a837c0c2]{transform-box:fill-box;transform-origin:center;transition:transform .4s cubic-bezier(.6,-.28,.4,1.4),opacity .2s ease,stroke .18s ease}.menu-toggle:hover .bar-top[data-v-a837c0c2]{transform:translate(2px)}.menu-toggle:hover .bar-bot[data-v-a837c0c2]{transform:translate(-2px)}.menu-toggle.is-open .bar-top[data-v-a837c0c2]{transform:translateY(5px) rotate(45deg)}.menu-toggle.is-open .bar-mid[data-v-a837c0c2]{opacity:0;transform:scaleX(.2)}.menu-toggle.is-open .bar-bot[data-v-a837c0c2]{transform:translateY(-5px) rotate(-45deg)}.nav-link[data-v-a837c0c2]{align-items:center;color:var(--ink-2);display:inline-flex;font-size:.95rem;font-weight:500;padding:6px 0;position:relative;text-decoration:none;transition:color .2s ease}.nav-link[data-v-a837c0c2]:after{background:var(--brand);bottom:-2px;content:"";height:2px;left:0;position:absolute;right:0;transform:scaleX(0);transform-origin:left center;transition:transform .32s cubic-bezier(.65,0,.35,1)}.nav-link[data-v-a837c0c2]:hover{color:var(--brand);text-decoration:none}.nav-link.router-link-active[data-v-a837c0c2]:after,.nav-link[data-v-a837c0c2]:hover:after{transform:scaleX(1)}.nav-link.router-link-active[data-v-a837c0c2]{color:var(--brand)}.nav-arrow[data-v-a837c0c2],.nav-num[data-v-a837c0c2]{display:none}@media(max-width:900px){.menu-toggle[data-v-a837c0c2]{display:inline-flex}.nav-links[data-v-a837c0c2]{align-items:stretch;background:#fff;border-top:1px solid var(--line);box-shadow:0 24px 60px #0d12241f;display:flex;flex-direction:column;gap:0;height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));left:0;list-style:none;margin:0;opacity:0;overflow-y:auto;padding:12px 24px 32px;pointer-events:none;position:fixed;right:0;top:var(--header-h);transform:translateY(-8px);transition:opacity .28s ease,transform .32s cubic-bezier(.65,0,.35,1),visibility 0s linear .32s;visibility:hidden}.site-header.is-open .nav-links[data-v-a837c0c2]{opacity:1;pointer-events:auto;transform:translateY(0);transition:opacity .28s ease,transform .32s cubic-bezier(.65,0,.35,1),visibility 0s linear;visibility:visible}.nav-cta[data-v-a837c0c2],.nav-item[data-v-a837c0c2]{border-bottom:1px solid var(--line);opacity:0;transform:translateY(8px);transition:opacity .45s ease,transform .45s cubic-bezier(.34,1.4,.64,1);transition-delay:0s}.site-header.is-open .nav-cta[data-v-a837c0c2],.site-header.is-open .nav-item[data-v-a837c0c2]{opacity:1;transform:translateY(0);transition-delay:calc(.08s + var(--i, 0)*.06s)}.nav-cta[data-v-a837c0c2]{border-bottom:0;margin-top:8px;padding-top:18px}.nav-cta a.btn-primary[data-v-a837c0c2]{justify-content:center;width:100%}.nav-link[data-v-a837c0c2]{align-items:center;color:var(--ink);display:grid;font-size:1.4rem;font-weight:600;gap:18px;grid-template-columns:auto 1fr auto;letter-spacing:-.01em;padding:20px 4px}.nav-link[data-v-a837c0c2]:after{display:none}.nav-link.router-link-active[data-v-a837c0c2],.nav-link[data-v-a837c0c2]:hover{color:var(--brand)}.nav-num[data-v-a837c0c2]{color:var(--muted);display:inline-block;font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:.72rem;font-weight:500;letter-spacing:.12em;transition:color .2s ease,transform .3s ease}.nav-link.router-link-active .nav-num[data-v-a837c0c2],.nav-link:hover .nav-num[data-v-a837c0c2]{color:var(--brand);transform:translate(-2px)}.nav-label[data-v-a837c0c2]{overflow:hidden;position:relative}.nav-label[data-v-a837c0c2]:before{background:var(--brand);bottom:6px;content:"";height:1px;left:0;position:absolute;transform:scaleX(0);transform-origin:left center;transition:transform .32s cubic-bezier(.65,0,.35,1);width:100%}.nav-link.router-link-active .nav-label[data-v-a837c0c2]:before,.nav-link:hover .nav-label[data-v-a837c0c2]:before{transform:scaleX(1)}.nav-arrow[data-v-a837c0c2]{align-items:center;color:var(--muted);display:inline-flex;justify-content:center;opacity:0;transform:translate(-6px);transition:opacity .25s ease,transform .3s ease,color .2s ease}.nav-link.router-link-active .nav-arrow[data-v-a837c0c2],.nav-link:hover .nav-arrow[data-v-a837c0c2]{color:var(--brand);opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.bar[data-v-a837c0c2],.nav-arrow[data-v-a837c0c2],.nav-cta[data-v-a837c0c2],.nav-item[data-v-a837c0c2],.nav-label[data-v-a837c0c2]:before,.nav-link[data-v-a837c0c2]:after,.nav-num[data-v-a837c0c2]{transition:none!important}}.subscribe-form[data-v-1492dd0c]{width:100%}.row[data-v-1492dd0c]{display:flex;gap:8px}.row input[data-v-1492dd0c]{background:#1c2138;border:1px solid #353c5e;border-radius:var(--radius);color:#fff;flex:1;font:inherit;padding:12px 14px}.row input[data-v-1492dd0c]::-moz-placeholder{color:#7e85a3}.row input[data-v-1492dd0c]::placeholder{color:#7e85a3}.row input[data-v-1492dd0c]:focus{border-color:var(--brand);box-shadow:0 0 0 3px #3078fb40;outline:none}.row .btn[data-v-1492dd0c]{white-space:nowrap}.msg[data-v-1492dd0c]{border-radius:6px;font-size:.85rem;margin-top:10px;padding:8px 10px}.msg.success[data-v-1492dd0c]{background:#1f3a23;color:#a4d8b4}.msg.error[data-v-1492dd0c]{background:#3a1f1f;color:#f0a9a9}.visually-hidden[data-v-1492dd0c]{position:absolute;clip:rect(0 0 0 0);height:1px;overflow:hidden;width:1px}.chat-widget[data-v-aa2e028c]{bottom:20px;font-family:inherit;position:fixed;right:20px;z-index:60}.chat-launcher[data-v-aa2e028c]{background:linear-gradient(135deg,var(--brand) 0,var(--brand-dark) 100%);border:none;border-radius:999px;box-shadow:0 12px 28px #3078fb59;color:#fff;cursor:pointer;display:grid;height:56px;isolation:isolate;place-items:center;position:relative;transition:transform .2s ease,box-shadow .2s ease;width:56px}.chat-launcher[data-v-aa2e028c]:hover{box-shadow:0 18px 36px #3078fb73;transform:translateY(-2px)}.chat-launcher[data-v-aa2e028c]:focus-visible{outline:3px solid var(--brand-soft);outline-offset:2px}.chat-launcher.is-open[data-v-aa2e028c]{background:var(--ink);box-shadow:0 12px 28px #0d122459}.launcher-icon[data-v-aa2e028c]{color:#fff;display:grid;height:28px;place-items:center;position:relative;width:28px;z-index:2}.launcher-svg[data-v-aa2e028c]{height:100%;overflow:visible;width:100%}.bubble-path[data-v-aa2e028c]{animation:bubble-draw-aa2e028c .7s ease-out .2s forwards,bubble-pulse-aa2e028c 3.6s ease-in-out 1.2s infinite;stroke-dasharray:78;stroke-dashoffset:78;transform-box:fill-box;transform-origin:center}@keyframes bubble-draw-aa2e028c{to{stroke-dashoffset:0}}@keyframes bubble-pulse-aa2e028c{0%,to{opacity:1;transform:scale(1)}50%{opacity:.92;transform:scale(1.04)}}.dot[data-v-aa2e028c]{animation:dot-wave-aa2e028c 1.4s ease-in-out infinite;fill:currentColor;opacity:0;transform-box:fill-box;transform-origin:center}.d1[data-v-aa2e028c]{animation-delay:.7s}.d2[data-v-aa2e028c]{animation-delay:.85s}.d3[data-v-aa2e028c]{animation-delay:1s}@keyframes dot-wave-aa2e028c{0%{opacity:.55;transform:translateY(0)}20%{opacity:1;transform:translateY(-1.6px)}40%,to{opacity:.55;transform:translateY(0)}}.spark[data-v-aa2e028c]{animation:spark-pop-aa2e028c .5s ease-out 1.4s forwards,spark-twinkle-aa2e028c 2.4s ease-in-out 1.9s infinite;fill:#ffd66e;opacity:0;transform-box:fill-box;transform-origin:center}@keyframes spark-pop-aa2e028c{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes spark-twinkle-aa2e028c{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.55)}}.chat-launcher.is-pending .dot[data-v-aa2e028c]{animation-duration:.6s}.chat-launcher.is-pending .bubble-path[data-v-aa2e028c]{animation:bubble-pulse-aa2e028c 1s ease-in-out infinite;stroke-dashoffset:0}.chat-launcher.is-pending .spark[data-v-aa2e028c]{animation:spark-twinkle-aa2e028c .7s ease-in-out infinite;opacity:1}.halo[data-v-aa2e028c]{animation:halo-breathe-aa2e028c 2.6s ease-out infinite;background:var(--brand);border-radius:999px;inset:0;opacity:0;pointer-events:none;position:absolute;z-index:1}.halo-2[data-v-aa2e028c]{animation-delay:1.3s}.chat-launcher.is-open .halo[data-v-aa2e028c]{animation:none;opacity:0}.chat-launcher.is-pending .halo[data-v-aa2e028c]{animation-duration:1.2s}@keyframes halo-breathe-aa2e028c{0%{opacity:.45;transform:scale(1)}70%{opacity:0;transform:scale(1.7)}to{opacity:0;transform:scale(1.7)}}.chat-launcher.is-pending[data-v-aa2e028c]{animation:launcher-thinking-aa2e028c 1.6s ease-in-out infinite}@keyframes launcher-thinking-aa2e028c{0%,to{box-shadow:0 12px 28px #3078fb59}50%{box-shadow:0 12px 36px #3078fbb3}}.chat-dot[data-v-aa2e028c]{animation:dot-pop-aa2e028c .4s cubic-bezier(.34,1.56,.64,1) backwards;background:#ff5b6f;border-radius:999px;box-shadow:0 0 0 2px var(--brand);height:10px;position:absolute;right:8px;top:8px;width:10px;z-index:3}@keyframes dot-pop-aa2e028c{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.launcher-pop-enter-active[data-v-aa2e028c]{transition:transform .45s cubic-bezier(.34,1.56,.64,1),opacity .3s ease}.launcher-pop-leave-active[data-v-aa2e028c]{transition:transform .2s ease,opacity .2s ease}.launcher-pop-enter-from[data-v-aa2e028c]{opacity:0;transform:scale(.4) translateY(12px)}.launcher-pop-leave-to[data-v-aa2e028c]{opacity:0;transform:scale(.85)}.icon-swap-enter-active[data-v-aa2e028c],.icon-swap-leave-active[data-v-aa2e028c]{position:absolute;transition:transform .22s ease,opacity .22s ease}.icon-swap-enter-from[data-v-aa2e028c]{opacity:0;transform:rotate(-90deg) scale(.7)}.icon-swap-leave-to[data-v-aa2e028c]{opacity:0;transform:rotate(90deg) scale(.7)}.chat-panel[data-v-aa2e028c]{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);bottom:72px;box-shadow:0 24px 60px #0d12242e;display:flex;flex-direction:column;height:min(560px,calc(100vh - 120px));overflow:hidden;position:absolute;right:0;transform-origin:bottom right;width:min(380px,calc(100vw - 32px))}.chat-head[data-v-aa2e028c]{background:linear-gradient(135deg,var(--brand) 0,var(--brand-dark) 100%);color:#fff;justify-content:space-between;padding:14px 16px}.chat-head[data-v-aa2e028c],.chat-head-id[data-v-aa2e028c]{align-items:center;display:flex;gap:12px}.chat-avatar[data-v-aa2e028c]{background:#ffffff2e;border-radius:999px;display:grid;height:36px;place-items:center;transition:background .2s ease;width:36px}.chat-avatar.is-active[data-v-aa2e028c]{animation:avatar-glow-aa2e028c 1.4s ease-in-out infinite;background:#ffffff52}@keyframes avatar-glow-aa2e028c{0%,to{box-shadow:0 0 #fff0}50%{box-shadow:0 0 0 6px #ffffff2e}}.chat-title[data-v-aa2e028c]{font-size:.98rem;font-weight:700;line-height:1.1}.chat-sub[data-v-aa2e028c]{font-size:.78rem;margin-top:2px;opacity:.82}.chat-close[data-v-aa2e028c]{background:#ffffff24;border:none;border-radius:999px;color:#fff;cursor:pointer;display:grid;height:30px;place-items:center;width:30px}.chat-close[data-v-aa2e028c]:hover{background:#ffffff3d}.chat-log[data-v-aa2e028c]{background:#f9fafc;flex:1;flex-direction:column;gap:10px;overflow-y:auto;padding:16px}.chat-log[data-v-aa2e028c],.chat-msg[data-v-aa2e028c]{display:flex}.chat-msg.user[data-v-aa2e028c]{justify-content:flex-end}.chat-msg.assistant[data-v-aa2e028c]{justify-content:flex-start}.chat-bubble[data-v-aa2e028c]{background:#fff;border:1px solid var(--line);border-radius:14px;color:var(--ink);font-size:.94rem;line-height:1.5;max-width:86%;padding:10px 14px;white-space:normal;word-wrap:break-word}.chat-msg.user .chat-bubble[data-v-aa2e028c]{background:var(--brand);border-bottom-right-radius:4px;border-color:transparent;color:#fff}.chat-msg.assistant .chat-bubble[data-v-aa2e028c]{border-bottom-left-radius:4px}.chat-bubble.is-streaming[data-v-aa2e028c]{white-space:pre-wrap}.chat-bubble[data-v-aa2e028c] a{color:inherit;text-decoration:underline}.chat-msg.assistant .chat-bubble[data-v-aa2e028c] a{color:var(--brand-dark)}.chat-bubble[data-v-aa2e028c] code{background:#0d12240f;border-radius:4px;font-family:JetBrains Mono,monospace;font-size:.86em;padding:1px 6px}.chat-seg[data-v-aa2e028c]{animation:chat-seg-in-aa2e028c .34s ease forwards;filter:blur(3px);opacity:0}@keyframes chat-seg-in-aa2e028c{to{filter:blur(0);opacity:1}}.chat-caret[data-v-aa2e028c]{animation:chat-caret-aa2e028c .9s steps(2) infinite;background:currentColor;border-radius:1px;display:inline-block;height:1em;margin-left:2px;opacity:.6;vertical-align:text-bottom;width:6px}@keyframes chat-caret-aa2e028c{50%{opacity:0}}.chat-typing[data-v-aa2e028c]{display:flex;gap:4px;padding:14px}.chat-typing span[data-v-aa2e028c]{animation:chat-bounce-aa2e028c 1.2s ease-in-out infinite;background:#aab1c8;border-radius:999px;height:6px;width:6px}.chat-typing span[data-v-aa2e028c]:nth-child(2){animation-delay:.15s}.chat-typing span[data-v-aa2e028c]:nth-child(3){animation-delay:.3s}@keyframes chat-bounce-aa2e028c{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chat-error[data-v-aa2e028c]{background:#fff1f2;border-color:#ffc9ce;color:#b3253a}.chat-handoff[data-v-aa2e028c]{background:#fff;border-top:1px solid var(--line);padding:14px 16px}.chat-handoff-lead[data-v-aa2e028c]{color:var(--ink-3);font-size:.88rem;margin:0 0 10px}.chat-row[data-v-aa2e028c]{display:grid;gap:8px;grid-template-columns:1fr 1fr}.chat-handoff input[data-v-aa2e028c]{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);font:inherit;padding:9px 12px;width:100%}.chat-handoff input[data-v-aa2e028c]:focus{border-color:var(--brand);outline:2px solid var(--brand-soft)}.chat-handoff input[aria-invalid=true][data-v-aa2e028c]{border-color:#ff8693}.chat-field-err[data-v-aa2e028c]{color:#b3253a;font-size:.8rem;margin:4px 0 0}.chat-handoff-actions[data-v-aa2e028c]{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}.chat-btn-ghost[data-v-aa2e028c],.chat-btn-primary[data-v-aa2e028c]{border:1px solid transparent;border-radius:8px;cursor:pointer;font:inherit;font-size:.86rem;font-weight:600;padding:8px 14px}.chat-btn-primary[data-v-aa2e028c]{background:var(--brand);color:#fff}.chat-btn-primary[data-v-aa2e028c]:hover:not(:disabled){background:var(--brand-dark)}.chat-btn-primary[data-v-aa2e028c]:disabled{cursor:not-allowed;opacity:.6}.chat-btn-ghost[data-v-aa2e028c]{background:transparent;border-color:var(--line);color:var(--ink-3)}.chat-btn-ghost[data-v-aa2e028c]:hover:not(:disabled){background:#f4f5f9}.chat-handoff-done[data-v-aa2e028c]{align-items:center;color:#167a4a;display:flex;font-size:.9rem;gap:8px}.chat-input[data-v-aa2e028c]{align-items:flex-end;background:#fff;border-top:1px solid var(--line);display:flex;gap:8px;padding:12px}.chat-input textarea[data-v-aa2e028c]{background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--ink);flex:1;font:inherit;font-size:.94rem;line-height:1.4;max-height:140px;padding:10px 12px;resize:none}.chat-input textarea[data-v-aa2e028c]:focus{border-color:var(--brand);outline:2px solid var(--brand-soft)}.chat-send[data-v-aa2e028c]{background:var(--brand);border:none;border-radius:999px;color:#fff;cursor:pointer;display:grid;flex-shrink:0;height:38px;place-items:center;transition:transform .15s ease,background .15s ease;width:38px}.chat-send[data-v-aa2e028c]:hover:not(:disabled){background:var(--brand-dark);transform:translateY(-1px)}.chat-send[data-v-aa2e028c]:disabled{cursor:not-allowed;opacity:.5}.chat-foot[data-v-aa2e028c]{align-items:center;background:#fff;border-top:1px solid var(--line);color:#8a91ad;display:flex;font-size:.72rem;gap:8px;justify-content:space-between;padding:8px 12px 10px}.chat-foot-link[data-v-aa2e028c]{background:none;border:none;color:var(--brand-dark);cursor:pointer;font:inherit;padding:0}.chat-foot-link[data-v-aa2e028c]:hover{text-decoration:underline}.honeypot[data-v-aa2e028c]{height:1px;left:-9999px;overflow:hidden;position:absolute;width:1px}.chat-panel-enter-active[data-v-aa2e028c]{transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .22s ease}.chat-panel-leave-active[data-v-aa2e028c]{transition:transform .18s ease,opacity .18s ease}.chat-panel-enter-from[data-v-aa2e028c]{opacity:0;transform:translateY(12px) scale(.94)}.chat-panel-leave-to[data-v-aa2e028c]{opacity:0;transform:translateY(8px) scale(.96)}@media(max-width:480px){.chat-widget[data-v-aa2e028c]{bottom:12px;right:12px}.chat-panel[data-v-aa2e028c]{bottom:70px;height:min(540px,calc(100vh - 96px));right:0;width:calc(100vw - 24px)}}@media(prefers-reduced-motion:reduce){.bubble-path[data-v-aa2e028c],.chat-avatar.is-active[data-v-aa2e028c],.chat-caret[data-v-aa2e028c],.chat-launcher.is-pending[data-v-aa2e028c],.chat-panel-enter-active[data-v-aa2e028c],.chat-panel-leave-active[data-v-aa2e028c],.chat-seg[data-v-aa2e028c],.dot[data-v-aa2e028c],.halo[data-v-aa2e028c],.icon-swap-enter-active[data-v-aa2e028c],.icon-swap-leave-active[data-v-aa2e028c],.launcher-pop-enter-active[data-v-aa2e028c],.launcher-pop-leave-active[data-v-aa2e028c],.spark[data-v-aa2e028c]{animation:none!important;transition:none!important}.chat-seg[data-v-aa2e028c]{filter:none;opacity:1}.bubble-path[data-v-aa2e028c]{stroke-dashoffset:0}.dot[data-v-aa2e028c],.spark[data-v-aa2e028c]{opacity:1}}
