/* Johnny chat widget styles for aod.tech. External file because the aod.tech CSP is style-src 'self' (no inline <style>). */
.jw-btn{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:9998;display:flex;align-items:center;gap:8px;background:#006c60;color:#fff;border:0;border-radius:999px;padding:12px 18px;font:600 15px/1.2 inherit;font-family:inherit;box-shadow:0 8px 24px rgba(16,49,59,.25);cursor:pointer}
.jw-btn:hover{background:#00574d}
.jw-btn:focus-visible{outline:3px solid #ee886a;outline-offset:2px}
.jw-dot{width:9px;height:9px;border-radius:50%;background:#d6eee1;box-shadow:0 0 0 3px rgba(214,238,225,.35)}
.jw-panel{position:fixed;right:18px;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:9999;width:370px;max-width:calc(100vw - 24px);height:560px;max-height:calc(100vh - 110px);display:none;flex-direction:column;background:#faf9f5;border:1px solid #dce3df;border-radius:18px;box-shadow:0 18px 50px rgba(16,49,59,.28);overflow:hidden;font-family:inherit;color:#152d39}
.jw-panel.open{display:flex}
.jw-head{background:#152d39;color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px}
.jw-head b{display:block;font-size:16px}
.jw-head small{display:block;color:#b5c4c9;font-size:12.5px;margin-top:2px}
.jw-x{min-width:44px;min-height:44px;margin-left:auto;background:transparent;border:0;color:#fff;font-size:22px;line-height:1;cursor:pointer;padding:4px 6px;border-radius:8px}
.jw-x:focus-visible{outline:2px solid #ee886a}
.jw-log{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}
.jw-m{max-width:86%;padding:10px 13px;border-radius:14px;font-size:14.5px;line-height:1.45;white-space:pre-wrap;word-wrap:break-word}
.jw-a{background:#fff;border:1px solid #dce3df;align-self:flex-start;border-bottom-left-radius:4px}
.jw-u{background:#006c60;color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.jw-a a{color:#006c60;text-decoration:underline;word-break:break-all}
.jw-typing{color:#5e7079;font-size:13px;align-self:flex-start;padding:2px 4px}
.jw-form{display:flex;gap:8px;padding:10px;border-top:1px solid #dce3df;background:#fff}
.jw-in{min-width:0;flex:1;resize:none;border:1px solid #dce3df;border-radius:12px;padding:10px 12px;font-size:16px;line-height:1.4;font-family:inherit;color:#152d39;max-height:110px}
.jw-in:focus{outline:2px solid #006c60;border-color:transparent}
.jw-send{background:#006c60;color:#fff;border:0;border-radius:12px;padding:0 16px;font:600 14px inherit;font-family:inherit;cursor:pointer}
.jw-send:disabled{opacity:.5;cursor:default}
.jw-note{font-size:11.5px;color:#5e7079;padding:0 12px 10px;background:#fff}
@media (max-width:520px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
.jw-btn{position:static;bottom:auto;right:auto;margin:12px 12px 0 auto;max-width:calc(100% - 24px)}
.jw-panel{left:8px;right:8px;width:auto;max-width:none;bottom:calc(8px + env(safe-area-inset-bottom,0px));height:75vh;height:min(75dvh,var(--jw-vh,75dvh));max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);border-radius:16px}
.jw-head{padding:10px 14px}
.jw-note{font-size:11px;padding:0 10px 8px}
.jw-m{font-size:15px}
.jw-btn.hide{display:none}
}
