#ovk-public-chat{font-family:Arial,Helvetica,sans-serif;color:#033b6e;font-size:14px;line-height:1.5;position:fixed;right:24px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:1040}
#ovk-public-chat *{box-sizing:border-box}
#ovk-public-chat [hidden]{display:none!important}
#ovk-public-chat button{cursor:pointer;font-family:inherit}
#ovk-public-chat button:focus-visible,#ovk-public-chat [tabindex]:focus-visible{outline:3px solid #0078ce;outline-offset:3px}
#ovk-public-chat .ovk-chat-launcher{position:relative;width:84px;height:84px;border:4px solid #0059a9;border-radius:50%;background:#fff;box-shadow:0 5px 16px #033b6e30,inset 0 2px 2px #fff;display:flex;align-items:center;justify-content:center;color:#0059a9;padding:4px}
#ovk-public-chat .ovk-chat-launcher:hover{box-shadow:0 6px 20px #033b6e50}
#ovk-public-chat .ovk-chat-logo{display:block;width:68px;height:30px;overflow:hidden;flex-shrink:0}
#ovk-public-chat .ovk-chat-logo img{display:block;width:68px;max-width:none;height:auto}
#ovk-public-chat .ovk-chat-launcher svg{position:absolute;right:-7px;bottom:-5px;width:34px;height:34px;border:3px solid #fff;border-radius:50%;padding:4px;background:#0059a9;color:#fff;box-shadow:0 2px 5px #033b6e30;fill:#fff}
#ovk-public-chat .ovk-chat-launcher svg path{fill:#fff;stroke:#fff}
#ovk-public-chat .ovk-chat-launcher svg circle{fill:#0059a9}
#ovk-chat-panel{position:absolute;right:0;bottom:98px;width:390px;height:min(610px,calc(100dvh - 136px - env(safe-area-inset-bottom,0px)));max-height:calc(100vh - 136px - env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;background:#fff;border:1px solid #d5e2ee;border-radius:18px;box-shadow:0 10px 42px #033b6e38;overflow:hidden;text-align:left}
#ovk-public-chat .ovk-chat-header{display:flex;align-items:center;justify-content:space-between;background:#0059a9;color:white;padding:8px 18px}
#ovk-public-chat .ovk-chat-header strong{display:block;font-size:18px;color:#fff}
#ovk-public-chat .ovk-chat-close{background:none;border:0;color:white;font-size:30px;line-height:1;width:40px;height:40px}
#ovk-public-chat .ovk-chat-notice{font-size:12px;background:#edf4fa;color:#455c70;padding:10px 18px;margin:0}
#ovk-public-chat .ovk-chat-messages{flex:1;min-height:0;overflow:auto;padding:18px;background:#f8fafc;overscroll-behavior:contain}
#ovk-public-chat .ovk-chat-message{padding:11px 13px;border-radius:12px;margin:0 24px 12px 0;background:#fff;border:1px solid #dfe8f0;color:#253e53;overflow-wrap:anywhere;white-space:pre-wrap}
#ovk-public-chat .ovk-chat-message.assistant{white-space:normal}
#ovk-public-chat .ovk-chat-message.user{margin:0 0 12px 24px;background:#0059a9;border-color:#0059a9;color:#fff}
#ovk-public-chat .ovk-chat-message p{margin:0 0 10px;color:inherit;font-size:14px;line-height:1.5}
#ovk-public-chat .ovk-chat-message p:last-child{margin-bottom:0}
#ovk-public-chat .ovk-chat-message ul{margin:8px 0;padding-left:20px;list-style:disc}
#ovk-public-chat .ovk-chat-message li{list-style:disc;margin:4px 0}
#ovk-public-chat .ovk-chat-form{padding:12px 16px;background:#fff;border-top:1px solid #dfe8f0;margin:0}
#ovk-public-chat .ovk-chat-compose{display:flex;align-items:stretch;gap:0;border:1px solid #a9bfd2;border-radius:8px;background:white}
#ovk-public-chat textarea{display:block;margin:0;height:auto;box-shadow:none;outline:none;resize:none;flex:1;min-width:0;width:100%;border:0;border-radius:7px 0 0 7px;padding:9px;font:14px/1.4 Arial;color:#253e53;background:white}
#ovk-public-chat button[type=submit]{display:flex;align-items:center;justify-content:center;align-self:stretch;height:auto;margin:0;flex-shrink:0;border:0;border-radius:0 7px 7px 0;background:#0059a9;color:white;padding:0 14px}
#ovk-public-chat button:disabled{opacity:.55;cursor:wait}
#ovk-public-chat .ovk-chat-reset{display:block;width:100%;min-height:42px;border:1px solid #0059a9;border-radius:8px;background:#0059a9;color:#fff;text-decoration:none;font-size:14px;font-weight:600;padding:10px 14px;margin-top:10px}
@media(max-width:480px){#ovk-public-chat{right:12px;bottom:calc(20px + env(safe-area-inset-bottom,0px))}#ovk-chat-panel{width:calc(100vw - 24px);bottom:98px;max-height:calc(100vh - 136px - env(safe-area-inset-bottom,0px));height:calc(100dvh - 136px - env(safe-area-inset-bottom,0px))}#ovk-public-chat .ovk-chat-launcher{position:relative;width:84px;height:84px;border:4px solid #0059a9;border-radius:50%;background:#fff;box-shadow:0 5px 16px #033b6e30,inset 0 2px 2px #fff;display:flex;align-items:center;justify-content:center;color:#0059a9;padding:4px}}

#ovk-public-chat .ovk-chat-typing{display:flex;align-items:center;gap:5px;width:fit-content;padding:15px 17px;border-radius:18px}
#ovk-public-chat .ovk-chat-typing span{display:block;width:7px;height:7px;border-radius:50%;background:#0059a9;animation:ovk-chat-dot 1.2s ease-in-out infinite}
#ovk-public-chat .ovk-chat-typing span:nth-child(2){animation-delay:.16s}
#ovk-public-chat .ovk-chat-typing span:nth-child(3){animation-delay:.32s}
@keyframes ovk-chat-dot{0%,60%,100%{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){#ovk-public-chat .ovk-chat-typing span{animation:none;opacity:.65}}
#ovk-public-chat textarea:focus,#ovk-public-chat textarea:focus-visible{outline:none;box-shadow:none;border:0}
