.cws-numa{--numa-ink:#2e4739;--numa-line:#c7d2bd;--numa-paper:#faf7ee;--numa-sage:#dce7d4;font:15px/1.5 'DM Sans',Arial,sans-serif;color:var(--numa-ink);position:relative;z-index:10010}
.cws-numa *{box-sizing:border-box}
.cws-numa-launcher{position:fixed;right:24px;bottom:23px;display:flex;align-items:center;gap:11px;border:1px solid #bacbad;border-radius:27px 27px 10px 27px;background:#eef2e6;color:#2e4739;box-shadow:0 7px 25px #2d49371e;padding:9px 15px 9px 9px;cursor:pointer;text-align:left;font:500 14px/1.25 'DM Sans',Arial,sans-serif;transition:background .2s ease,transform .2s ease}
.cws-numa-launcher:hover{background:#e0ead6;transform:translateY(-2px)}
.cws-numa-launcher>span>small{display:block;font-size:10px;margin-top:3px;color:#65795e}
.cws-numa-orb{position:relative;display:grid;place-items:center;flex:0 0 39px;width:39px;height:39px;border-radius:50%;background:radial-gradient(circle at 32% 23%,#a6bb95,#587761 75%);color:#fffaf0;box-shadow:inset 0 0 0 1px #f6f3e73d}
.cws-numa-orb>b{font:650 22px/1 'Bricolage Grotesque','DM Sans',sans-serif}
.cws-numa-orb>i{position:absolute;width:5px;height:5px;right:5px;top:5px;border-radius:50%;background:#f4edd9}
.cws-numa-launch-arrow{font-size:20px;margin-left:1px}
.cws-numa-panel{position:fixed;right:23px;bottom:22px;display:flex;flex-direction:column;width:412px;max-width:calc(100vw - 30px);max-height:calc(100dvh - 36px);overflow:hidden;border:1px solid #becdb1;border-radius:27px 27px 11px 27px;background:var(--numa-paper);box-shadow:0 18px 70px #243e362b,0 4px 14px #243e3612;transform-origin:bottom right}
.cws-numa-panel[hidden],.cws-numa-launcher[hidden]{display:none!important}
.cws-numa-header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:18px 18px 14px 21px;background:#f5f1e6;border-bottom:1px solid #d9dfce}
.cws-numa-header small{font-size:9px;letter-spacing:.085em;color:#728069}
.cws-numa-header h2{margin:5px 0 0;font:600 23px/1.15 'Bricolage Grotesque','DM Sans',sans-serif;letter-spacing:-.045em;color:#2e4739}
.cws-numa-window-controls{display:flex;gap:5px;align-items:center}
.cws-numa-window-controls button{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid #d5ddca;border-radius:12px;background:#edf1e5;color:#496443;font:22px/1 Arial;cursor:pointer}
.cws-numa-reception{position:relative;display:grid;grid-template-columns:169px 1fr;min-height:199px;padding:16px 16px 0 7px;background:linear-gradient(125deg,#e7eddf,#dce7d5);border-bottom:1px solid #c1d0b6;overflow:hidden;flex-shrink:0}
.cws-numa-character{align-self:end;position:relative;height:182px;width:169px}
.cws-numa-character>img{position:absolute;bottom:20px;left:-10px;height:179px;width:190px;object-fit:contain;object-position:bottom;opacity:0;transform:translateY(19px) rotate(-1deg)}
.cws-numa-desk{position:absolute;left:4px;right:4px;bottom:0;height:45px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #b9c9ac;border-bottom:0;border-radius:18px 18px 0 0;background:linear-gradient(#f3ecd9 0 6px,#d8dbc6 6px);box-shadow:0 -2px 4px #5263480d,inset 0 8px #fbf4e24d;transform:translateY(8px);opacity:0}
.cws-numa-desk>b{font:650 14px/1 'Bricolage Grotesque',sans-serif;letter-spacing:.16em;margin-top:5px;color:#566947}
.cws-numa-desk>small{font-size:8px;letter-spacing:.035em;margin-top:3px;color:#71825e}
.cws-numa-intro{padding-top:17px;opacity:0;transform:translateY(7px)}
.cws-numa-intro>span{font-size:11px;color:#64805b}
.cws-numa-intro h3{font:600 24px/1.12 'Bricolage Grotesque',sans-serif;letter-spacing:-.045em;margin:9px 0 10px;color:#304d37}
.cws-numa-intro p{font-size:12px;line-height:1.5;color:#65785a;margin:0 0 10px;max-width:175px}
.cws-numa-panel.is-open .cws-numa-character>img{animation:cws-numa-welcome .6s .11s cubic-bezier(.2,.75,.25,1) both}
.cws-numa-panel.is-open .cws-numa-desk{animation:cws-numa-desk .4s .19s ease-out both}
.cws-numa-panel.is-open .cws-numa-intro{animation:cws-numa-intro .4s .28s ease-out both}
@keyframes cws-numa-welcome{0%{opacity:0;transform:translateY(19px) rotate(-1deg)}70%{opacity:1;transform:translateY(-2px) rotate(.4deg)}100%{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes cws-numa-desk{to{opacity:1;transform:translateY(0)}}
@keyframes cws-numa-intro{to{opacity:1;transform:translateY(0)}}
.cws-numa-conversation{padding:15px 17px 0;overflow:auto;max-height:200px;overscroll-behavior:contain;min-height:0}
.cws-numa-message{margin:0 18px 9px 0;padding:12px 14px;border:1px solid #e0e3d4;border-radius:17px 17px 17px 5px;background:#eeefe2;color:#4b6043;font-size:14px;line-height:1.5}
.cws-numa-message.is-user{margin:0 0 9px 22px;background:#dfe9d6;border-color:#c9d7be;border-radius:17px 17px 5px 17px;color:#314d37}
.cws-numa-shortcuts{display:flex;flex-wrap:wrap;gap:7px;padding:4px 17px 14px}
.cws-numa-shortcuts a{display:flex;align-items:center;gap:13px;min-height:44px;padding:8px 11px;border:1px solid #cbd8be;border-radius:14px 14px 14px 5px;background:#f6f5e9;color:#41643e;text-decoration:none;font:500 12px/1.3 'DM Sans',Arial,sans-serif}
.cws-numa-shortcuts a:hover{background:#e4eddc}
.cws-numa-composer{display:flex;gap:8px;align-items:center;padding:13px 16px;border-top:1px solid #d9e0cf;background:#f6f3e9}
.cws-numa-composer input{width:100%;min-width:0;height:43px;border:1px solid #c6d1b9;border-radius:14px;padding:10px 12px;background:#fffdf6;color:#344e3b;font:14px 'DM Sans',Arial,sans-serif}
.cws-numa-composer input:disabled{background:#eeeee1;color:#7d896e;opacity:1}
.cws-numa-composer button{display:grid;place-items:center;flex:0 0 43px;width:43px;height:43px;border:1px solid #637f59;border-radius:14px 14px 14px 5px;background:#5e7b56;color:#fffdf2;font:23px/1 Arial;cursor:pointer}
.cws-numa-composer button:disabled{background:#cdd9c0;border-color:#c4d0b8;color:#7c9070;cursor:default}
.cws-numa-preview-note{font-size:11px;line-height:1.4;margin:0;padding:0 18px 13px;color:#78836b;background:#f6f3e9}
.cws-numa-message{white-space:pre-wrap;overflow-wrap:anywhere}
.cws-numa-disclosure{margin:0;padding:10px 17px 0;font-size:10px;line-height:1.45;color:#66755b;background:#f6f3e9}
.cws-numa-disclosure a{color:#426542;text-decoration:underline}
.cws-numa-status{margin:0;padding:0 17px 9px;font-size:11px;line-height:1.4;color:#62775a;background:#f6f3e9}
.cws-numa-status:empty{display:none}
.cws-numa-voice{padding:12px 16px 10px;background:#e7eddf;border-top:1px solid #ccd8bf;flex-shrink:0}
.cws-numa-voice-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.cws-numa-voice-row button,.cws-numa-voice-row select{min-height:44px;padding:9px 12px;border:1px solid #91a77c;border-radius:15px 15px 15px 6px;font:500 13px/1.2 'DM Sans',Arial,sans-serif;cursor:pointer}
.cws-numa-voice-row button{background:#5f7d59;color:#fffdf5;flex:1}
.cws-numa-voice-row button[data-numa-voice-stop]{background:#f4efe0;color:#536647}
.cws-numa-voice-row button[data-numa-voice-mute]{background:#dce6d0;color:#3e5e37}
.cws-numa-voice-row select{background:#f8f7ec;color:#365638;max-width:128px}
.cws-numa-voice-row button:disabled{opacity:.65;cursor:wait}
.cws-numa-voice [hidden]{display:none!important}
.cws-numa-voice p{margin:7px 0 0;font-size:11px;line-height:1.4;color:#65775a}
.cws-numa.is-voice-active .cws-numa-shortcuts{display:none}
.cws-numa.is-numa-speaking .cws-numa-desk{box-shadow:0 0 0 3px #8da37a66,0 0 20px #8da37a55}
.cws-numa-panel .cws-numa-conversation{flex:1 1 auto;min-height:65px}
@media(max-height:720px){.cws-numa-reception{min-height:142px}.cws-numa-character{height:136px}.cws-numa-character>img{height:140px}.cws-numa-intro{padding-top:6px}.cws-numa-intro h3{font-size:21px;margin:6px 0}.cws-numa-intro p{display:none}.cws-numa-header{padding-top:9px;padding-bottom:9px}.cws-numa-shortcuts{padding-bottom:8px}.cws-numa-voice{padding-top:8px;padding-bottom:8px}.cws-numa-voice p{font-size:10px}.cws-numa-disclosure{padding-top:6px}.cws-numa-composer{padding-top:9px;padding-bottom:9px}}
.cws-numa-results{display:grid;gap:7px;margin:0 4px 12px 0}
.cws-numa-result{display:block;padding:10px 12px;min-height:44px;background:#f9f7ed;border:1px solid #cad7bd;border-radius:13px 13px 13px 4px;color:#365738;text-decoration:none}
.cws-numa-result:hover{background:#e6eddd}
.cws-numa-result b{display:block;font-size:13px}
.cws-numa-result small{display:block;font-size:11px;line-height:1.4;margin-top:3px;color:#6e7b61}
.cws-numa-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.cws-numa a:focus-visible,.cws-numa button:focus-visible,.cws-numa input:focus-visible{outline:3px solid #7d9b6c;outline-offset:3px}
@media(max-width:600px){.cws-numa-launcher{right:14px;bottom:16px;padding:8px 12px 8px 8px}.cws-numa-panel{right:12px;bottom:12px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.cws-numa-reception{grid-template-columns:145px 1fr;min-height:184px;padding-left:3px;padding-right:13px}.cws-numa-character{width:145px;height:169px}.cws-numa-character>img{width:167px;height:169px;left:-12px}.cws-numa-intro{padding-top:15px}.cws-numa-intro h3{font-size:23px}.cws-numa-intro p{font-size:12px}.cws-numa-header h2{font-size:22px}.cws-numa-header{padding:15px 14px 12px 17px}.cws-numa-window-controls button{width:44px;height:44px}.cws-numa-shortcuts a{min-height:44px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.cws-numa *, .cws-numa *:before,.cws-numa *:after{animation:none!important;transition:none!important}.cws-numa-panel.is-open .cws-numa-character>img,.cws-numa-panel.is-open .cws-numa-desk,.cws-numa-panel.is-open .cws-numa-intro{opacity:1;transform:none}}

/* Keep the welcome on arrival; give the conversation room once the visitor starts. */
.cws-numa-tab,.cws-numa-disclosure-compact{display:none}
.cws-numa-header,.cws-numa-composer,.cws-numa-disclosure,.cws-numa-status,.cws-numa-shortcuts{flex-shrink:0}
@media(max-width:600px){
 .cws-numa-panel{bottom:calc(12px + var(--numa-viewport-bottom,0px));max-height:calc(var(--numa-viewport-height,100dvh) - 24px)}
 .cws-numa-reception{height:184px;transition:height .32s ease,min-height .32s ease,padding .32s ease,opacity .22s ease,transform .32s ease,visibility .32s}
 .cws-numa.is-engaged .cws-numa-panel{height:min(720px,calc(var(--numa-viewport-height,100dvh) - 24px))}
 .cws-numa.is-engaged .cws-numa-header{padding:5px 10px 5px 17px}
 .cws-numa.is-engaged .cws-numa-header small,.cws-numa.is-engaged .cws-numa-welcome{display:none}
 .cws-numa.is-engaged .cws-numa-tab{display:inline;font-size:19px}
 .cws-numa.is-engaged .cws-numa-header h2{margin:0}
 .cws-numa.is-engaged .cws-numa-reception{height:0;min-height:0;padding-top:0;padding-bottom:0;border-bottom-width:0;opacity:0;transform:translateY(-18px);visibility:hidden;pointer-events:none}
 .cws-numa.is-engaged .cws-numa-shortcuts,.cws-numa.is-engaged .cws-numa-conversation>.is-welcome,.cws-numa.is-engaged [data-numa-voice-hint],.cws-numa.is-engaged .cws-numa-disclosure-full{display:none}
 .cws-numa.is-engaged .cws-numa-conversation{max-height:none;padding-top:12px}
 .cws-numa.is-engaged .cws-numa-voice{padding:8px 12px}
 .cws-numa.is-engaged .cws-numa-disclosure{padding:5px 14px 0}
 .cws-numa.is-engaged .cws-numa-disclosure-compact{display:inline}
 .cws-numa.is-engaged .cws-numa-composer{padding:9px 12px}
}

/* Smaller phones must also reach the composer before their first interaction. */
@media(max-width:600px) and (max-height:740px){
 .cws-numa-header{padding:8px 12px 8px 15px}
 .cws-numa-header h2{font-size:20px}
 .cws-numa-reception{grid-template-columns:108px 1fr;height:110px;min-height:110px;padding-top:4px}
 .cws-numa-character{height:106px;width:108px}
 .cws-numa-character>img{height:110px;width:128px;left:-10px;bottom:9px}
 .cws-numa-desk{height:28px;left:1px;right:1px;border-radius:12px 12px 0 0}
 .cws-numa-desk>b{font-size:11px;margin-top:3px}
 .cws-numa-desk>small{display:none}
 .cws-numa-intro{padding-top:4px}
 .cws-numa-intro h3{font-size:20px;margin:5px 0}
 .cws-numa-intro p,.cws-numa-shortcuts{display:none}
}
@media(max-width:600px) and (max-height:480px){
 .cws-numa-reception{display:none}
 .cws-numa-header small,.cws-numa-welcome,[data-numa-voice-hint],.cws-numa-disclosure-full{display:none}
 .cws-numa-tab,.cws-numa-disclosure-compact{display:inline}
 .cws-numa-header h2{margin:0}
 .cws-numa-panel .cws-numa-conversation{min-height:45px}
}
