.nw-chatbot{--chat-text:#19343b;--chat-muted:#667776;--chat-gold:#f59d1a;position:fixed;right:24px;bottom:84px;z-index:1050;color:var(--chat-text);font-family:"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5}
.nw-chatbot *{box-sizing:border-box}
.nw-chatbot [hidden]{display:none!important}
.nw-chatbot button,.nw-chatbot textarea{font:inherit}
.nw-chatbot button{cursor:pointer}
.nw-chatbot button:focus-visible,.nw-chatbot a:focus-visible{outline:3px solid #f59d1a;outline-offset:3px}
.nw-chatbot-toggle{display:flex;align-items:center;gap:12px;border:1px solid #254852;border-radius:40px;padding:8px 9px 8px 20px;background:#06232f;color:#fff;box-shadow:0 8px 28px #06232f30;transition:transform .2s}
.nw-chatbot-toggle:hover{transform:translateY(-3px)}
.nw-chatbot-toggle-label{font-size:13px;font-weight:600;letter-spacing:.2px}
.nw-chatbot-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f59d1a;color:#06232f}
.nw-chatbot-panel{padding:0;margin:0;min-height:0;position:absolute;right:0;bottom:76px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(400px,calc(100vw - 32px));height:min(650px,calc(100dvh - 184px));border:1px solid #dbe3df;border-radius:24px;background:#fffaf2;box-shadow:0 24px 80px #06232f30;overflow:hidden;visibility:hidden;opacity:0;transform:translateY(12px);transition:opacity .2s,transform .2s,visibility .2s}
.nw-chatbot.is-open .nw-chatbot-panel{visibility:visible;opacity:1;transform:translateY(0)}
.nw-chatbot-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px;background:#06232f;color:#fff}
.nw-chatbot-identity{display:flex;align-items:center;gap:11px;min-width:0}
.nw-chatbot-logo{flex-shrink:0;width:48px;height:48px;object-fit:contain;background:#fffaf2;border-radius:14px;padding:4px}
.nw-chatbot-identity strong{display:block;font-size:17px;letter-spacing:.1px}
.nw-chatbot-identity span{display:block;color:#c6d7d5;font-size:11px;margin-top:3px}
.nw-chatbot-identity i{display:inline-block;width:6px;height:6px;margin-right:4px;border-radius:50%;background:#a7cf76}
.nw-chatbot-actions{flex-shrink:0;display:flex;gap:4px}
.nw-chatbot-icon{padding:0;flex-shrink:0;line-height:1;display:grid;place-items:center;width:34px;height:36px;border:0;border-radius:10px;background:transparent;color:#fff;font-size:25px!important}
.nw-chatbot-icon:hover{background:#ffffff18}
.nw-chatbot-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 20px;scrollbar-width:thin;scrollbar-color:#becbc3 transparent}
.nw-chatbot-intro{padding:0 0 22px}
.nw-chatbot-eyebrow{font-size:9px;font-weight:700;letter-spacing:2px;color:#687e66}
.nw-chatbot-intro h2{font-family:Georgia,serif;font-size:32px;line-height:1.12;font-weight:400;letter-spacing:-.8px;color:#133c3e;margin:12px 0}
.nw-chatbot-intro p{color:var(--chat-muted);font-size:13px;line-height:1.6;margin:0 0 18px;max-width:285px}
.nw-chatbot-suggestions{display:flex;flex-wrap:wrap;gap:7px}
.nw-chatbot-suggestions button{display:flex;align-items:center;gap:13px;padding:9px 12px;border:1px solid #dce2d5;border-radius:10px;background:#fffefa;color:#294b43;font-size:12px}
.nw-chatbot-suggestions button:hover{background:#eef2e8;border-color:#9cab8e}
.nw-chatbot-suggestions span{color:#8b702f}
.nw-chatbot-messages{display:flex;flex-direction:column;gap:18px}
.nw-chatbot-message{display:grid;gap:6px;max-width:90%;align-self:flex-start}
.nw-chatbot-message.user{align-self:flex-end}
.nw-chatbot-bubble{padding:12px 14px;border:1px solid #e4e7df;border-radius:16px 16px 16px 4px;background:#fff;color:var(--chat-text);font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.nw-chatbot-message.user .nw-chatbot-bubble{background:#123c43;border-color:#123c43;border-radius:16px 16px 4px 16px;color:#fff}
.nw-chatbot-bubble p{margin:0 0 8px}.nw-chatbot-bubble p:last-child{margin:0}
.nw-chatbot-bubble a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.nw-chatbot-bubble pre{overflow-x:auto;white-space:pre-wrap}.nw-chatbot-bubble code{background:#82977b20;border-radius:4px;padding:2px 4px}
.nw-chatbot-meta{display:flex;align-items:center;gap:8px;color:var(--chat-muted);font-size:10px;padding:0 3px}
.nw-chatbot-message.user .nw-chatbot-meta{justify-content:flex-end}
.nw-chatbot-copy{border:0;padding:2px;background:transparent;color:var(--chat-muted);font-size:10px!important}
.nw-chatbot-footer{padding:12px 16px 13px;background:#fff;border-top:1px solid #e8ece5}
.nw-chatbot-form{margin:0;border:1px solid #dce3dc;border-radius:15px;padding:4px;background:#fff}
.nw-chatbot-form:focus-within{border-color:#739277;box-shadow:0 0 0 3px #73927715}
.nw-chatbot-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.nw-chatbot-form textarea{display:block;width:100%;min-height:44px;max-height:126px;resize:none;border:0;outline:none;background:transparent;color:#19343b;padding:10px;font-size:13px;line-height:1.5;box-shadow:none}
.nw-chatbot-form textarea::placeholder{color:#768580}
.nw-chatbot-form-row{display:flex;align-items:center;gap:8px;padding:0 4px 4px 10px;color:#748079;font-size:10px}
.nw-chatbot-secondary{margin-left:auto;border:0;background:transparent;color:#65756d;padding:8px;font-size:11px!important}
.nw-chatbot-send{padding:0;flex-shrink:0;line-height:1;display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:11px;background:#f59d1a;color:#06232f}
.nw-chatbot-send:hover{background:#ffb641}
.nw-chatbot button:disabled{opacity:.45;cursor:not-allowed}
.nw-chatbot-note{text-align:center;color:#78857e;font-size:9px;margin:10px 0 0;line-height:1.5}
.nw-chatbot-typing:not([hidden]){display:flex;align-items:center;gap:4px;font-size:11px;color:#65756d;padding:0 4px 10px}
.nw-chatbot-typing span{width:5px;height:5px;border-radius:50%;background:#739277;animation:nwChatTyping 1s infinite}
.nw-chatbot-typing span:nth-child(2){animation-delay:.15s}.nw-chatbot-typing span:nth-child(3){animation-delay:.3s;margin-right:5px}
@keyframes nwChatTyping{50%{opacity:.3;transform:translateY(-3px)}}
@media(max-width:640px){.nw-chatbot{right:16px;bottom:76px}.nw-chatbot-toggle{padding:6px}.nw-chatbot-toggle-label{display:none}.nw-chatbot-panel{position:fixed;left:12px;right:12px;bottom:142px;width:auto;height:min(640px,calc(100dvh - 158px));border-radius:20px}.nw-chatbot-body{padding:18px 16px}.nw-chatbot-header{padding:14px}.nw-chatbot-form textarea{font-size:16px}.nw-chatbot-intro h2{font-size:29px}}
@media(max-height:560px){.nw-chatbot-panel{position:fixed;top:12px;bottom:12px;height:auto}.nw-chatbot-intro{padding-bottom:12px}.nw-chatbot-intro h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.nw-chatbot *{animation:none!important;transition:none!important}}

/* Keep widget icons independent of the site's icon fonts and SVG rules. */
.nw-chatbot button svg { display:block; flex-shrink:0; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; }
.nw-chatbot-avatar svg { width:24px; height:24px; }
.nw-chatbot-icon svg, .nw-chatbot-send svg { width:20px; height:20px; }
.nw-chatbot-toggle-close { display:none !important; }
.nw-chatbot.is-open .nw-chatbot-toggle-chat { display:none; }
.nw-chatbot.is-open .nw-chatbot-toggle-close { display:block !important; }
.nw-chatbot.is-open .nw-chatbot-toggle-label { display:none; }
.nw-chatbot.is-open .nw-chatbot-toggle { padding:8px; }
@media (max-width:380px) {
  .nw-chatbot-header { gap:6px; padding:12px; }
  .nw-chatbot-logo { width:38px; height:38px; border-radius:10px; }
  .nw-chatbot-identity { gap:8px; }
  .nw-chatbot-identity strong { font-size:15px; }
  .nw-chatbot-identity span { font-size:10px; }
  .nw-chatbot-actions { gap:0; }
  .nw-chatbot-icon { width:30px; }
}
