.assistant-launch{position:fixed;right:20px;bottom:20px;z-index:26;display:flex;align-items:center;gap:8px;background:#006b47;color:#fff;border:2px solid #fff;border-radius:30px;padding:10px 16px;font-size:13px;font-weight:700;box-shadow:0 4px 18px #0003}.assistant-launch img{border-radius:8px}.whatsapp-button{bottom:84px}
.assistant-dialog{position:fixed;inset:auto 20px 20px auto;width:min(390px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 32px);padding:0;margin:0;border:1px solid #bad6c6;border-radius:16px;background:#f3f9ef;color:#173e34;box-shadow:0 14px 50px #0004;font-family:Arial,sans-serif}.assistant-dialog::backdrop{background:#001e2438}.assistant-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#006b47;color:#fff;padding:14px 16px;border-bottom:3px solid #35b5e5}.assistant-heading h2{font-family:inherit;font-size:18px;letter-spacing:0;margin:0;color:inherit}.assistant-close{border:0;background:transparent;color:#fff;font-size:28px;line-height:1;padding:4px 8px}.assistant-toolbar{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:11px}.assistant-toolbar select{max-width:110px;padding:5px;border:1px solid #bad6c6;background:#fff;border-radius:5px}.assistant-clear{margin-left:auto;border:0;background:transparent;color:#006b47;font-size:11px;text-decoration:underline}.assistant-intro{font-size:11px;line-height:1.5;margin:0;padding:0 14px 10px}.assistant-messages{height:min(260px,32dvh);overflow-y:auto;overscroll-behavior:contain;padding:8px 14px;display:flex;flex-direction:column;gap:10px}.assistant-message{background:#fff;border:1px solid #d9e7d2;border-radius:10px;padding:9px 11px;max-width:95%;align-self:flex-start;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.assistant-message p{margin:0;white-space:pre-wrap}.assistant-message a{display:block;color:#006b47;text-decoration:underline;margin-top:6px}.assistant-user{background:#e0f1fa;align-self:flex-end}.assistant-topics{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px}.assistant-topics button{background:#fff;border:1px solid #a8ceba;color:#006b47;border-radius:16px;padding:6px 9px;font-size:11px}.assistant-form{padding:10px 14px 14px;border-top:1px solid #d9e7d2}.assistant-form label{display:block;font-size:11px;margin-bottom:5px}.assistant-form>div{display:flex;gap:7px}.assistant-form input{min-width:0;flex:1;padding:9px;border:1px solid #bad6c6;border-radius:7px;font-size:13px}.assistant-form button{background:#006b47;color:#fff;border:0;border-radius:7px;padding:8px 12px;font-size:12px}.assistant-form button:disabled{opacity:.6}.assistant-dialog :focus-visible,.assistant-launch:focus-visible{outline:3px solid #35b5e5;outline-offset:2px}@media(max-width:520px){.assistant-launch{right:12px;bottom:12px;font-size:12px}.whatsapp-button{bottom:74px}.assistant-dialog{right:12px;bottom:12px}}

/* Compact contact controls; native details supports keyboard and touch. */
body .floating-contact{box-sizing:border-box;display:flex;align-items:center;justify-content:flex-start;gap:0;width:48px;height:48px;padding:9px;border:2px solid #fff;border-radius:26px;background:#006b47;color:#fff;box-shadow:0 4px 18px #0003;overflow:hidden;text-decoration:none;cursor:pointer;transition:width .2s ease;white-space:nowrap;font:700 12px Arial,sans-serif}
body .floating-contact>img{width:26px;height:26px;flex:0 0 26px}
body .floating-contact-label{display:block;max-width:0;opacity:0;overflow:hidden;transition:opacity .2s ease,max-width .2s ease;margin-left:0}
body .floating-contact:hover,body .floating-contact:focus-visible,body .floating-social[open]>summary{width:min(270px,calc(100vw - 32px));gap:9px}
body .floating-contact:hover>.floating-contact-label,body .floating-contact:focus-visible>.floating-contact-label,body .floating-social[open]>summary>.floating-contact-label{max-width:230px;opacity:1}
body .assistant-launch{right:20px;bottom:20px;z-index:28}
body .whatsapp-button{right:20px;bottom:78px;z-index:28}
.floating-social{position:fixed;right:20px;bottom:136px;z-index:28}
.floating-social>summary{list-style:none;margin-left:auto}
.floating-social>summary::-webkit-details-marker{display:none}
.floating-social-panel{position:absolute;right:0;bottom:100%;width:220px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 210px);overflow:auto;padding:10px;background:white;border:1px solid #cce9df;border-radius:12px;box-shadow:0 8px 24px #0003;display:grid;gap:4px}
.floating-social:not([open])>.floating-social-panel{display:none}
.floating-social-panel .social-profile-link{display:flex;align-items:center;gap:10px;width:auto;height:auto;padding:8px;color:#173e34;background:#fff;border-radius:6px;text-decoration:none;font-size:13px}
.floating-social-panel .social-profile-label{display:inline!important;position:static;width:auto;height:auto;clip:auto;overflow:visible}
.floating-social-panel .social-profile-link:hover{background:#e6f7ef}
.floating-contact:focus-visible,.floating-social-panel a:focus-visible{outline:3px solid #35b5e5;outline-offset:2px}
@media(max-width:520px){body .assistant-launch{right:12px;bottom:12px}body .whatsapp-button{right:12px;bottom:70px}.floating-social{right:12px;bottom:128px}}
@media(prefers-reduced-motion:reduce){body .floating-contact,body .floating-contact-label{transition:none}}

/* Social links unfold inside one control, close to the other contact buttons. */
body .whatsapp-button{bottom:74px}
body .floating-social{bottom:128px;width:max-content;max-width:calc(100vw - 32px)}
body .floating-social[open]{width:220px;padding-bottom:46px;box-sizing:border-box;border:2px solid #fff;border-radius:24px;background:#006b47;box-shadow:0 4px 18px #0003;overflow:hidden}
body .floating-social[open]>summary{position:absolute;left:0;right:0;bottom:0;width:100%;height:46px;margin:0;border:0;border-radius:0;box-shadow:none;background:transparent}
body .floating-social[open]>.floating-social-panel{position:static;display:grid;width:100%;max-width:none;max-height:calc(100dvh - 208px);margin:0;padding:8px 8px 4px;border:0;border-bottom:1px solid #ffffff40;border-radius:0;box-shadow:none;background:transparent;box-sizing:border-box;gap:2px;overflow-y:auto;overscroll-behavior:contain}
body .floating-social-panel .social-profile-link{min-height:36px;padding:6px 9px;color:#fff;background:transparent;font-size:12px}
body .floating-social-panel .social-profile-link>img{padding:2px;background:#fff;border-radius:50%;box-sizing:content-box;width:18px;height:18px;flex-shrink:0}
body .floating-social-panel .social-profile-link:hover,body .floating-social-panel .social-profile-link:focus-visible{background:#ffffff20;color:#fff}
@media(max-width:520px){body .whatsapp-button{bottom:66px}body .floating-social{bottom:120px}}

body .floating-social-panel .social-profile-link>img{display:block;width:22px;height:22px;flex:0 0 22px;padding:0;background:transparent;border:0;border-radius:0;box-sizing:border-box;object-fit:contain}body .floating-social-panel .social-profile-link{gap:10px;align-items:center}

/* Unified ZSSF blue with transparent, high-contrast white control icons. */
body .assistant-launch.floating-contact,
body .whatsapp-button.floating-contact,
body .floating-social>summary.floating-contact,
body .floating-social[open],
body .floating-social[open]>summary{background:#075b88;color:#fff}
body .floating-contact>img{filter:brightness(0) invert(1);object-fit:contain;border-radius:0;opacity:1}
body .floating-contact:hover{box-shadow:0 5px 20px #06304455}
