
.fab-container{pointer-events:auto;z-index:50;flex-direction:column;align-items:flex-end;gap:0;margin:0;padding:0;display:flex;position:fixed}.fab-mobile-guest{padding-bottom:env(safe-area-inset-bottom,0px);padding-right:env(safe-area-inset-right,0px);position:fixed;bottom:24px;right:24px}.fab-mobile-auth{bottom:calc(136px + env(safe-area-inset-bottom,0px));padding-right:env(safe-area-inset-right,0px);z-index:55;position:fixed;right:24px}.fab-button{cursor:pointer;z-index:51;border-radius:9999px;justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;box-shadow:0 4px 12px #00000026}.fab-button:hover{transform:scale(1.05);box-shadow:0 8px 16px #0003}.fab-menu{pointer-events:none;flex-direction:column;align-items:flex-end;gap:12px;min-width:200px;margin-bottom:16px;display:flex;position:absolute;bottom:100%;right:0}.fab-menu>*{pointer-events:auto}.fab-label{background-color:hsl(var(--popover));color:hsl(var(--popover-foreground));white-space:nowrap;opacity:0;pointer-events:none;border-radius:8px;padding:6px 12px;font-size:.875rem;font-weight:500;transition:opacity .2s;box-shadow:0 4px 12px #0000001a}.group:hover .fab-label,.fab-is-open .fab-label{opacity:1}.fab-has-selection>.fab-button:not(.bg-destructive){box-shadow:0 0 0 3px hsl(var(--primary) / .35), 0 4px 14px #0000002e}.fab-quote-mode>.fab-button:not(.bg-destructive){animation:1.6s ease-in-out infinite fab-quote-pulse}@keyframes fab-quote-pulse{0%,to{box-shadow:0 0 0 0 hsl(var(--primary) / .45)}50%{box-shadow:0 0 0 8px hsl(var(--primary) / 0)}}.fab-article-column{pointer-events:none;z-index:55}.fab-article-column>.fab-button,.fab-article-column .fab-menu>*{pointer-events:auto}.fab-desktop-fixed{padding-bottom:env(safe-area-inset-bottom,0px);padding-right:env(safe-area-inset-right,0px);z-index:100;position:fixed;bottom:32px;right:24px}@media (min-width:1024px){.fab-button{width:56px;height:56px}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
