.contact-shortcuts{position:fixed;right:24px;bottom:24px;z-index:999;display:flex;align-items:stretch;gap:4px;max-width:calc(100vw - 24px);padding:6px;border:1px solid #343b48;border-radius:16px;background:#151a23;box-shadow:0 8px 28px #0005;box-sizing:border-box;font-family:Inter,Arial,sans-serif}
.contact-shortcuts .contact-shortcut{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:#d9e1ed;font:inherit;font-size:12px;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;box-sizing:border-box;transition:background .15s}
.contact-shortcuts .contact-shortcut svg{flex-shrink:0}
.contact-shortcuts .contact-shortcut-whatsapp{color:#79e7a1;background:#22c55e10}
.contact-shortcuts .contact-shortcut-whatsapp:hover{background:#22c55e24}
.contact-shortcuts .contact-shortcut-email{color:#a6c9ff}
.contact-shortcuts .contact-shortcut-email:hover,.contact-shortcuts .contact-shortcut-telegram:hover{background:#3b82f624}
.contact-shortcuts .contact-shortcut-ticket{color:#ffc18d}
.contact-shortcuts .contact-shortcut-ticket:hover{background:#f9731624}
.contact-shortcuts .contact-shortcut-telegram{color:#91d5ff}
.contact-shortcuts .contact-shortcut:focus-visible{outline:2px solid #f9b57b;outline-offset:2px}
.contact-ticket-badge{position:absolute;top:0;right:0;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 3px;border-radius:20px;background:#ef4444;color:#fff;font-size:10px;box-sizing:border-box}
#ticketPanel{bottom:96px!important;max-width:calc(100vw - 24px);max-height:calc(100dvh - 120px)!important}
.feedback-invite{bottom:104px}
body:has(>.contact-shortcuts){padding-bottom:96px}
@media(max-width:600px){
 .contact-shortcuts{right:12px;bottom:max(12px,env(safe-area-inset-bottom));gap:2px;padding:5px;border-radius:14px}
 .contact-shortcuts .contact-shortcut{flex-direction:column;gap:5px;min-width:76px;min-height:58px;padding:8px 10px;font-size:10px}
 #ticketPanel{right:12px!important;bottom:calc(94px + env(safe-area-inset-bottom))!important;width:380px!important;max-height:calc(100dvh - 118px - env(safe-area-inset-bottom))!important}
 #ticketListView,#ticketCreateView,#ticketDetailView{min-height:0;max-height:calc(100dvh - 190px - env(safe-area-inset-bottom))!important}
 .feedback-invite{bottom:calc(100px + env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){.contact-shortcuts .contact-shortcut{transition:none}}

/* Compact icon shortcuts; full names remain in accessible labels and tooltips. */
.contact-shortcuts{right:16px;bottom:16px;gap:2px;padding:4px;border-radius:14px}
.contact-shortcuts .contact-shortcut{width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;gap:0;flex-direction:row}
.contact-shortcuts .contact-shortcut svg{width:19px;height:19px}
.contact-shortcuts .contact-shortcut>span:not(.contact-ticket-badge){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#ticketPanel{bottom:84px!important;max-height:calc(100dvh - 108px)!important}
.feedback-invite{bottom:88px}
body:has(>.contact-shortcuts){padding-bottom:80px}
@media(max-width:600px){
 .contact-shortcuts{right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:4px}
 #ticketPanel{bottom:calc(80px + env(safe-area-inset-bottom))!important;max-height:calc(100dvh - 104px - env(safe-area-inset-bottom))!important}
 #ticketListView,#ticketCreateView,#ticketDetailView{max-height:calc(100dvh - 176px - env(safe-area-inset-bottom))!important}
 .feedback-invite{bottom:calc(84px + env(safe-area-inset-bottom))}
}
