/* Desktop invitation: finite emphasis, accessible hover and keyboard states. */
.vnc-contact-invite{position:relative;padding:13px 36px 13px 17px;border:1px solid #d3e0ed;border-radius:13px;background:#fff;color:#40566d;box-shadow:0 6px 24px #082f5b18}
.vnc-contact-invite p{margin:0;font-size:13px;line-height:1.6}
.vnc-contact-invite strong{color:#082f5b;font-size:14px}
.vnc-contact-invite[hidden]{display:none}
.vnc-invite-close{position:absolute;right:3px;top:3px;width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#52677a;font-size:23px;cursor:pointer}
.vnc-invite-close:hover{background:#edf4fa}
@media(min-width:681px){
 .vnc-floating-actions{width:300px;right:20px;bottom:22px;gap:10px}
 .vnc-floating-actions .vnc-contact-button{grid-template-columns:46px minmax(0,1fr) 16px;gap:11px;min-height:76px;padding:12px;border-radius:17px;transition:background-color .18s,border-color .18s,box-shadow .18s}
 .vnc-floating-actions .vnc-contact-button__icon{width:46px;height:46px;border-radius:14px;animation:none}
 .vnc-floating-actions .vnc-contact-button__copy strong{font-size:16px;letter-spacing:0;white-space:normal;line-height:1.25}
 .vnc-floating-actions .vnc-contact-button__copy small{font-size:11px;white-space:normal;line-height:1.4;margin-top:5px;color:#fff}
 .vnc-floating-actions .vnc-consult-launch{background:linear-gradient(115deg,#13325e,#21477c);border-color:#91b8e7}
 .vnc-floating-actions .vnc-consult-launch .vnc-contact-button__icon{background:#ffda78;color:#16365f;border-color:#ffe8ac}
 .vnc-floating-actions .vnc-consult-launch strong,.vnc-floating-actions .vnc-consult-launch .vnc-contact-arrow{color:#ffdf87}
 .vnc-floating-actions .vnc-zalo{background:linear-gradient(115deg,#0766ba,#1778ce)}
 .vnc-floating-actions .vnc-call{background:linear-gradient(115deg,#b95208,#cc650c)}
 .vnc-contact-arrow{font-size:22px;font-weight:400;color:#fff}
 .vnc-floating-actions .vnc-contact-button:hover{border-color:#fff;box-shadow:0 10px 25px #082f5b40,0 0 0 3px #7fb2e62b}
 .vnc-floating-actions .vnc-consult-launch:hover{background:#244f86}
 .vnc-floating-actions .vnc-zalo:hover{background:#075ba6}
 .vnc-floating-actions .vnc-call:hover{background:#a84605}
 .vnc-floating-actions .vnc-contact-button:focus-visible,.vnc-invite-close:focus-visible{outline:3px solid #ffd56d;outline-offset:3px}
}
@media(min-width:681px) and (max-width:1100px){.vnc-floating-actions{width:270px;right:12px;bottom:16px}.vnc-floating-actions .vnc-contact-button__copy strong{font-size:14px}.vnc-floating-actions .vnc-contact-button{gap:9px;min-height:70px}}
@media(min-width:681px) and (max-height:650px){.vnc-contact-invite{display:none}.vnc-floating-actions .vnc-contact-button{min-height:60px;padding:8px 12px}}
@media(min-width:681px) and (prefers-reduced-motion:no-preference){
 .vnc-floating-actions .vnc-contact-button.vnc-attention{animation:vnc-attention-glow 1.5s ease-in-out 1}
 .vnc-floating-actions .vnc-attention .vnc-contact-button__icon{animation:vnc-attention-wiggle 1.5s ease-in-out 1}
}
@keyframes vnc-attention-glow{0%,100%{box-shadow:0 7px 22px #082f5b30}45%{box-shadow:0 8px 26px #082f5b45,0 0 0 6px #f5bc4a70;border-color:#ffe2a0}}
@keyframes vnc-attention-wiggle{0%,20%,70%,100%{transform:rotate(0)}32%,52%{transform:rotate(-8deg)}42%,62%{transform:rotate(8deg)}}
@media(prefers-reduced-motion:reduce){.vnc-floating-actions .vnc-contact-button,.vnc-floating-actions .vnc-contact-button__icon{animation:none!important;transition:none!important}}
