.chat-launcher{position:fixed;right:24px;bottom:24px;z-index:80;display:flex;align-items:center;gap:9px;border:1px solid var(--ink);border-radius:999px;background:var(--ink);color:#fff9f0;padding:13px 18px 13px 14px;font-size:12px;letter-spacing:.02em;box-shadow:0 12px 30px #20231f2b;transition:transform .25s cubic-bezier(.16,1,.3,1),background .2s,box-shadow .2s}.chat-launcher:hover{background:var(--blue);border-color:var(--blue);transform:translateY(-3px);box-shadow:0 16px 34px #294bb344}.chat-launcher:focus-visible,.chat-close:focus-visible,.chat-form input:focus-visible,.chat-form button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.chat-launcher-icon{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#f1cf69;color:var(--ink)}.chat-launcher-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.chat-panel{position:fixed;z-index:79;right:24px;bottom:84px;width:min(420px,calc(100vw - 32px));max-height:min(680px,calc(100dvh - 110px));margin:0;padding:0;border:1px solid #20231f22;border-radius:18px;background:var(--paper);box-shadow:0 22px 65px #20231f30;overflow:hidden}.chat-panel[hidden]{display:none}.chat-shell{display:flex;flex-direction:column;min-height:360px;max-height:min(680px,calc(100dvh - 110px))}.chat-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding:23px 22px 19px;background:#e5e9dd;border-bottom:1px solid #20231f18}.chat-kicker{display:block;color:var(--blue);font-size:9px;letter-spacing:.16em;margin-bottom:8px}.chat-head h2{font-family:var(--serif);font-size:30px;font-weight:500;line-height:1.05}.chat-head p{margin-top:9px;color:#5d6459;font-size:11px}.chat-close{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;flex:none}.chat-close:hover{background:#ffffffa8}.chat-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.chat-messages{display:flex;flex-direction:column;gap:12px;overflow:auto;min-height:188px;max-height:390px;padding:18px 16px 16px;scroll-behavior:smooth}.chat-message{max-width:86%;font-size:12px;line-height:1.65;word-break:keep-all}.chat-message p{margin:0;white-space:pre-line}.chat-product-link{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;font-weight:600}.chat-product-link:hover{color:var(--red)}.chat-message.assistant{align-self:flex-start;padding:11px 13px;border-radius:4px 14px 14px 14px;background:#edf0e7;color:#30352f}.chat-message.user{align-self:flex-end;padding:11px 13px;border-radius:14px 4px 14px 14px;background:var(--ink);color:#fff9f0}.chat-message.error{color:#a52f24;background:#f6e6df}.chat-message.typing{display:flex;gap:4px;align-items:center;padding:14px 15px}.chat-message.typing i{width:5px;height:5px;border-radius:50%;background:#71766d;animation:chat-bounce 1s infinite ease-in-out}.chat-message.typing i:nth-child(2){animation-delay:.12s}.chat-message.typing i:nth-child(3){animation-delay:.24s}@keyframes chat-bounce{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}.chat-form{display:flex;align-items:center;gap:8px;margin:0 16px;padding:8px 8px 8px 13px;border:1px solid #20231f2e;border-radius:12px;background:#fffdf8}.chat-form input{border:0;outline:0;min-width:0;flex:1;background:transparent;font:inherit;font-size:12px;color:var(--ink)}.chat-form input::placeholder{color:#969b91}.chat-form button{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:var(--blue);color:white;flex:none;transition:background .2s,transform .2s}.chat-form button:hover{background:#1c3895;transform:translateX(2px)}.chat-form button:disabled{opacity:.45;transform:none}.chat-form button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.chat-disclaimer{padding:11px 17px 15px;color:#969b91;font-size:9px}.chat-launcher[aria-expanded="true"]{background:var(--blue);border-color:var(--blue)}@media(max-width:700px){.chat-launcher{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));padding:12px 15px 12px 12px}.chat-panel{right:12px;bottom:calc(72px + env(safe-area-inset-bottom,0px));width:calc(100vw - 24px);max-height:calc(100dvh - 100px)}.chat-shell{max-height:calc(100dvh - 100px)}.chat-head{padding:20px 18px 16px}.chat-head h2{font-size:27px}.chat-messages{max-height:calc(100dvh - 320px)}}
@media(prefers-reduced-motion:reduce){.chat-launcher,.chat-form button{transition:none}.chat-message.typing i{animation:none}}
