/* Site assistant — bottom-left robot launcher and help chat panel in NavGo colors. */
.navgo-bot{--bot-navy:#000070;--bot-blue:#2977e2;--bot-ink:#171717;--bot-muted:#64676d;--bot-line:#e5e9f1;--bot-soft:#f3f6fb;position:fixed;left:24px;bottom:24px;z-index:150;font-family:Urbanist,sans-serif;color:var(--bot-ink)}
.navgo-bot *,.navgo-bot *::before,.navgo-bot *::after{box-sizing:border-box}

/* Robot face: two aligned frames, the closed-eye frame fades in for a blink. */
.navgo-bot-face{position:relative;display:block;aspect-ratio:320/262}
.navgo-bot-face img{position:absolute;inset:0;width:100%;height:100%;display:block;user-select:none;-webkit-user-drag:none}
.navgo-bot-face .navgo-bot-blink{opacity:0;transition:opacity 60ms linear}
.navgo-bot.is-blinking .navgo-bot-blink{opacity:1}

.navgo-bot-launcher{position:relative;display:grid;place-items:center;width:76px;height:76px;padding:0;border:1px solid var(--bot-line);border-radius:50%;background:#fff;box-shadow:0 10px 34px #00004024;cursor:pointer;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease}
.navgo-bot-launcher:hover{transform:translateY(-2px);box-shadow:0 14px 40px #0000402e}
.navgo-bot-launcher:focus-visible{outline:2px solid var(--bot-blue);outline-offset:4px}
.navgo-bot-launcher-face{width:58px;animation:navgo-bot-float 4.8s ease-in-out infinite}
.navgo-bot-launcher::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:2px solid var(--bot-blue);opacity:0;animation:navgo-bot-ring 2.6s ease-out 1.2s 2}
.navgo-bot.is-open .navgo-bot-launcher::after{animation:none}
@keyframes navgo-bot-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-2.5px)}}
@keyframes navgo-bot-ring{0%{opacity:.55;transform:scale(1)}100%{opacity:0;transform:scale(1.35)}}

/* Panel */
.navgo-bot-panel{position:absolute;left:0;bottom:92px;width:388px;height:min(620px,calc(100svh - 140px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--bot-line);border-radius:24px;box-shadow:0 18px 64px #00004030;overflow:hidden;transform-origin:30px calc(100% + 60px);animation:navgo-bot-in .32s cubic-bezier(.22,1,.36,1) both}
.navgo-bot-panel[hidden]{display:none}
@keyframes navgo-bot-in{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}

.navgo-bot-header{display:flex;align-items:center;gap:12px;padding:16px 16px 16px 18px;background:var(--bot-navy);color:#fff}
.navgo-bot-avatar{flex-shrink:0;width:46px;padding:5px 4px 3px;background:#ffffff14;border-radius:14px;box-sizing:content-box}
.navgo-bot.is-thinking .navgo-bot-avatar img{animation:navgo-bot-nod 1.1s ease-in-out infinite}
@keyframes navgo-bot-nod{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.navgo-bot-heading{flex:1;min-width:0}
.navgo-bot-heading h2{margin:0;font-size:17px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:#fff}
.navgo-bot-heading p{display:flex;align-items:center;gap:7px;margin:2px 0 0;font-size:12.5px;line-height:1.4;color:#ffffffb8;white-space:nowrap}
.navgo-bot-heading p span:last-child{overflow:hidden;text-overflow:ellipsis}
.navgo-bot-online{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 3px #34d39933;flex-shrink:0}
.navgo-bot-close{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border:0;border-radius:50%;background:#ffffff14;color:#fff;cursor:pointer;transition:background .2s ease}
.navgo-bot-close:hover{background:#ffffff2b}
.navgo-bot-close:focus-visible{outline:2px solid #fff;outline-offset:2px}

/* Conversation */
.navgo-bot-log{position:relative;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:20px 16px 12px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}
.navgo-bot-msg{max-width:88%;padding:11px 15px;border-radius:18px;font-size:15px;line-height:1.55;overflow-wrap:anywhere;animation:navgo-bot-pop .28s cubic-bezier(.22,1,.36,1) both}
.navgo-bot-msg.is-bot{align-self:flex-start;background:var(--bot-soft);border-bottom-left-radius:6px}
.navgo-bot-msg.is-user{align-self:flex-end;background:var(--bot-navy);color:#fff;border-bottom-right-radius:6px}
@keyframes navgo-bot-pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.navgo-bot-caret{display:inline-block;width:2px;height:1.05em;margin-left:2px;vertical-align:-2px;background:var(--bot-blue);animation:navgo-bot-caret .8s steps(2) infinite}
@keyframes navgo-bot-caret{50%{opacity:0}}

.navgo-bot-typing{display:inline-flex;align-items:center;gap:5px;padding:14px 16px}
.navgo-bot-typing span{width:7px;height:7px;border-radius:50%;background:#9aa6bd;animation:navgo-bot-dot 1.2s ease-in-out infinite}
.navgo-bot-typing span:nth-child(2){animation-delay:.15s}.navgo-bot-typing span:nth-child(3){animation-delay:.3s}
@keyframes navgo-bot-dot{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}

/* Answers: article cards and topic chips */
.navgo-bot-results{display:flex;flex-direction:column;gap:8px;align-self:stretch}
.navgo-bot-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--bot-line);border-radius:16px;background:#fff;color:inherit;text-decoration:none;opacity:0;transform:translateY(6px);transition:border-color .2s ease,box-shadow .2s ease,opacity .3s ease,transform .3s cubic-bezier(.22,1,.36,1)}
.navgo-bot-card.is-shown{opacity:1;transform:none}
.navgo-bot-card:hover{border-color:#c9d6ee;box-shadow:0 6px 20px #00004010}
.navgo-bot-card:focus-visible{outline:2px solid var(--bot-blue);outline-offset:2px}
.navgo-bot-card-text{flex:1;min-width:0}
.navgo-bot-card small{display:block;margin-bottom:2px;font-size:12px;font-weight:600;line-height:1.4;color:var(--bot-blue)}
.navgo-bot-card strong{display:block;font-size:14.5px;font-weight:600;line-height:1.4;color:var(--bot-navy)}
.navgo-bot-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:3px 0 0;font-size:13px;line-height:1.5;color:var(--bot-muted)}
.navgo-bot-card svg{flex-shrink:0;color:var(--bot-navy);transition:transform .2s ease}
.navgo-bot-card:hover svg{transform:translateX(3px)}
.navgo-bot-more{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:2px;font-size:13.5px;font-weight:600;color:var(--bot-blue);text-decoration:none;opacity:0;transition:opacity .3s ease}
.navgo-bot-more.is-shown{opacity:1}
.navgo-bot-more:hover{text-decoration:underline}

.navgo-bot-chips{display:flex;flex-wrap:wrap;gap:8px;align-self:stretch}
.navgo-bot-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid #d7deea;border-radius:100px;background:#fff;color:var(--bot-navy);font:600 13.5px/1.3 Urbanist,sans-serif;cursor:pointer;opacity:0;transform:translateY(6px);transition:background .2s ease,border-color .2s ease,color .2s ease,opacity .3s ease,transform .3s cubic-bezier(.22,1,.36,1)}
.navgo-bot-chip.is-shown{opacity:1;transform:none}
.navgo-bot-chip:hover{background:var(--bot-navy);border-color:var(--bot-navy);color:#fff}
.navgo-bot-chip:focus-visible{outline:2px solid var(--bot-blue);outline-offset:2px}
.navgo-bot-chip em{font-style:normal;font-weight:500;opacity:.6}
.navgo-bot-chip:disabled{cursor:default}

.navgo-bot-answer{align-self:stretch;max-width:100%;padding:14px 16px 12px;border:1px solid var(--bot-line);border-radius:6px 18px 18px 18px;background:#fff;font-size:14.5px;line-height:1.6;animation:navgo-bot-pop .28s cubic-bezier(.22,1,.36,1) both}
.navgo-bot-answer-title{display:block;margin-bottom:6px;font-size:15px;font-weight:600;line-height:1.4;color:var(--bot-navy)}
.navgo-bot-answer p{margin:0 0 8px}
.navgo-bot-answer ol{margin:4px 0 10px;padding:0;list-style:none;counter-reset:bot-step}
.navgo-bot-answer li{position:relative;min-height:24px;padding:2px 0 6px 34px;counter-increment:bot-step}
.navgo-bot-answer li::before{content:counter(bot-step);position:absolute;left:0;top:1px;display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#eaf1fd;color:var(--bot-blue);font-size:12px;font-weight:700}
.navgo-bot-answer-note{padding:9px 12px;border-left:3px solid var(--bot-blue);border-radius:0 10px 10px 0;background:var(--bot-soft);color:#3c4250;font-size:13.5px}
.navgo-bot-source{display:flex;align-items:center;gap:6px;margin-top:6px;padding-top:10px;border-top:1px solid var(--bot-line);font-size:13px;color:var(--bot-muted);text-decoration:none;opacity:0;transition:opacity .3s ease}
.navgo-bot-source.is-shown{opacity:1}
.navgo-bot-source strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;color:var(--bot-blue)}
.navgo-bot-source svg{flex-shrink:0;color:var(--bot-blue);transition:transform .2s ease}
.navgo-bot-source:hover strong{text-decoration:underline}
.navgo-bot-source:hover svg{transform:translateX(3px)}
.navgo-bot-related{margin:4px 2px -4px;font-size:13px;font-weight:600;color:var(--bot-muted);opacity:0;transition:opacity .3s ease}
.navgo-bot-related.is-shown{opacity:1}

.navgo-bot-chip.is-support{background:var(--bot-navy);border-color:var(--bot-navy);color:#fff}
.navgo-bot-chip.is-support:hover{background:var(--bot-blue);border-color:var(--bot-blue)}
.navgo-bot-chip svg{flex-shrink:0}
.navgo-bot-privacy{align-self:flex-start;max-width:88%;margin:-4px 0 0 4px;font-size:12px;line-height:1.5;color:var(--bot-muted)}
.navgo-bot-privacy a{color:var(--bot-blue);font-weight:600}
.navgo-bot-captcha{align-self:flex-start;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:10px;border:1px solid var(--bot-line);border-radius:6px 18px 18px 18px;background:#fff;animation:navgo-bot-pop .28s cubic-bezier(.22,1,.36,1) both}
.navgo-bot-captcha img{display:block;width:240px;max-width:100%;height:auto;border-radius:10px;background:var(--bot-soft)}
.navgo-bot-captcha-refresh{display:inline-flex;align-items:center;gap:6px;padding:4px 6px;border:0;background:none;color:var(--bot-blue);font:600 13px/1.3 Urbanist,sans-serif;cursor:pointer}
.navgo-bot-captcha-refresh::before{content:"↻";font-size:15px}
.navgo-bot-captcha-refresh:hover{text-decoration:underline}

/* Composer */
.navgo-bot-form{display:flex;align-items:center;gap:8px;margin:0 14px 14px;padding:6px 6px 6px 18px;border:1px solid #dfe5ef;border-radius:100px;background:#fff;box-shadow:0 5px 24px #00004008}
.navgo-bot-form:focus-within{border-color:var(--bot-blue);box-shadow:0 0 0 3px #2977e21f}
.navgo-bot-form input{flex:1;min-width:0;padding:9px 0;border:0;outline:none;background:none;color:var(--bot-ink);font:400 15px/22px Urbanist,sans-serif}
.navgo-bot-form input::placeholder{color:#939baa}
.navgo-bot-form button{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border:0;border-radius:50%;background:var(--bot-navy);color:#fff;cursor:pointer;transition:background .2s ease,opacity .2s ease}
.navgo-bot-form button:hover{background:var(--bot-blue)}
.navgo-bot-form button:disabled{opacity:.45;cursor:default;background:var(--bot-navy)}

@media (max-width:560px){
 .navgo-bot{left:16px;bottom:16px}
 .navgo-bot-launcher{width:64px;height:64px}
 .navgo-bot-launcher-face{width:48px}
 .navgo-bot-form input{font-size:16px}
 .navgo-bot.is-open{left:0;right:0;bottom:0}
 .navgo-bot.is-open .navgo-bot-launcher{display:none}
 .navgo-bot-panel{position:fixed;left:8px;right:8px;bottom:8px;width:auto;height:min(680px,calc(100svh - 16px));border-radius:22px}
}
@media (prefers-reduced-motion:reduce){
 .navgo-bot *,.navgo-bot *::after{animation:none!important;transition:none!important}
 .navgo-bot-card,.navgo-bot-chip,.navgo-bot-more,.navgo-bot-source,.navgo-bot-related{opacity:1;transform:none}
}
@media print{.navgo-bot{display:none}}

/* Pairs with the inline .navgo-bot{visibility:hidden} in the layout while this sheet loads. */
.navgo-bot{visibility:visible}
