#callback-fab{position:fixed;right:20px;bottom:20px;width:56px;height:56px;border-radius:9999px;display:flex;align-items:center;justify-content:flex-start;gap:0;padding:0;background:var(--color-primary-600,#dc2626);color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.25);z-index:60;overflow:hidden;transition:transform .15s ease,width .25s ease,padding .25s ease}
#callback-fab.is-expanded{width:192px;padding:0}
#callback-fab:active{transform:scale(.96)}
#callback-fab:focus{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}

#callback-fab .callback-fab-text{display:block;flex:1 1 auto;min-width:0;white-space:nowrap;max-width:0;opacity:0;transform:translateX(8px);font-size:14px;line-height:1;text-align:right;padding-right:26px;color:inherit;text-decoration:none;transition:max-width .25s ease,opacity .2s ease,transform .25s ease}
#callback-fab.is-expanded .callback-fab-text{max-width:1000px;opacity:1;transform:translateX(0)}

#callback-fab .callback-fab-text{padding-right:62px}

#callback-fab .callback-fab-icon{position:absolute;right:0;top:0;width:56px;height:56px;border:0;padding:0;margin:0;background:transparent;color:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:9999px;outline:none;box-shadow:none}
#callback-fab.is-expanded .callback-fab-icon{box-shadow:0 2px 10px rgba(0,0,0,.25)}
#callback-fab .callback-fab-icon:focus{outline:none}
#callback-fab .callback-fab-icon:focus-visible{outline:none}

#callback-fab .callback-fab-icon-phone{display:block;transform:scaleX(-1);transition:opacity .15s ease,transform .2s ease}
#callback-fab .callback-fab-icon-close{display:block;position:absolute;opacity:0;width:30px;height:30px;transform:scale(.85);transition:opacity .15s ease,transform .2s ease}

#callback-fab.is-expanded .callback-fab-icon-phone{opacity:0;transform:scaleX(-1) scale(.85)}
#callback-fab.is-expanded .callback-fab-icon-close{opacity:1;transform:scale(1)}

#callback-modal-fab{position:fixed;right:20px;bottom:92px;width:56px;height:56px;border-radius:9999px;display:flex;align-items:center;justify-content:center;background:var(--color-primary-600,#dc2626);color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.25);z-index:60;transition:transform .15s ease}
#callback-modal-fab:active{transform:scale(.96)}
#callback-modal-fab:focus{outline:2px solid rgba(255,255,255,.9);outline-offset:2px}

#callback-modal{z-index:70}
#callback-modal .callback-modal-panel{width:min(640px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;border-radius:16px}
@media (max-width:767px){#callback-modal .callback-modal-panel{border-radius:0;width:100vw;max-height:100vh}}
