/* TMC widget guard v2 — mobile safety + emergency compact mode. */
#tmc-fab,#tmc-close,#tmc-panel a,#tmc-panel button{
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
#tmc-fab{
  min-width:44px;
  min-height:44px;
  max-width:calc(100vw - 20px);
  box-sizing:border-box;
}
#tmc-fab *,#tmc-panel,#tmc-panel *{box-sizing:border-box;}
#tmc-panel{max-width:100vw;overscroll-behavior:contain;}
#tmc-panel .tmc-card{max-width:calc(100vw - 20px);}
#tmc-panel .tmc-close{
  z-index:2147483646!important;
  min-width:44px!important;
  min-height:44px!important;
  pointer-events:auto!important;
  opacity:1!important;
  visibility:visible!important;
}
#tmc-panel .tmc-item-main,#tmc-panel .tmc-items,#tmc-panel .tmc-sales-grid,#tmc-panel .tmc-social-grid{min-width:0;max-width:100%;}
#tmc-panel .tmc-sales-phone,#tmc-panel a.tmc-item,#tmc-panel .tmc-social-item{touch-action:manipulation;}

/* If a theme/plugin squeezes a text FAB, JS switches it to a safe icon button. */
#tmc-fab.tmc-fab-compact{
  width:56px!important;
  min-width:56px!important;
  max-width:56px!important;
  height:56px!important;
  min-height:56px!important;
  padding:0!important;
  gap:0!important;
  border-radius:999px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#tmc-fab.tmc-fab-compact .tmc-fab-text,
#tmc-fab.tmc-fab-compact .tmc-fab-status,
#tmc-fab.tmc-fab-compact .tmc-fab-dot{display:none!important;}
#tmc-fab.tmc-fab-compact::after{display:none!important;content:none!important;}
#tmc-fab.tmc-fab-compact .tmc-fab-mark{
  width:56px!important;height:56px!important;min-width:56px!important;flex:0 0 56px!important;
  margin:0!important;padding:0!important;border-radius:999px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
#tmc-fab.tmc-fab-compact svg{width:23px!important;height:23px!important;display:block!important;}

@media (max-width:640px){
  html.tmc-open,html.tmc-open body{overflow:hidden!important;overscroll-behavior:none!important;}
  html.tmc-open #tmc-fab{opacity:0!important;visibility:hidden!important;pointer-events:none!important;}
  #tmc-panel{
    position:fixed!important;inset:0!important;width:100vw!important;max-width:100vw!important;
    height:100vh!important;height:100dvh!important;z-index:2147483000!important;
    overflow:hidden!important;padding:0!important;margin:0!important;
  }
  #tmc-panel:before{position:fixed!important;inset:0!important;}
  #tmc-panel .tmc-card{
    position:fixed!important;top:auto!important;
    right:max(8px,env(safe-area-inset-right,0px))!important;
    left:max(8px,env(safe-area-inset-left,0px))!important;
    bottom:max(8px,env(safe-area-inset-bottom,0px))!important;
    width:auto!important;max-width:none!important;
    max-height:calc(100vh - 24px)!important;
    max-height:calc(100dvh - max(16px,env(safe-area-inset-top,0px)) - max(16px,env(safe-area-inset-bottom,0px)))!important;
    transform:none!important;overflow-y:auto!important;overflow-x:hidden!important;
    overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;scroll-behavior:smooth;
  }
  #tmc-panel .tmc-close{
    position:sticky!important;top:8px!important;left:8px!important;float:left!important;
    width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
    padding:0!important;margin:8px 0 -54px 8px!important;display:flex!important;
    align-items:center!important;justify-content:center!important;line-height:1!important;font-size:26px!important;
  }
  #tmc-panel .tmc-title{min-width:0;overflow-wrap:anywhere;}
  #tmc-panel .tmc-items{clear:both;}
  #tmc-panel .tmc-sales-grid{grid-template-columns:1fr!important;}
  #tmc-panel .tmc-sales-phone,#tmc-panel a.tmc-item,#tmc-panel .tmc-social-item{min-height:44px;}
  #tmc-panel .tmc-num{font-size:clamp(14px,4.35vw,18px)!important;max-width:100%;direction:ltr!important;unicode-bidi:isolate!important;}
  #tmc-fab{bottom:max(14px,env(safe-area-inset-bottom,0px))!important;}
}
@media (max-width:360px){
  #tmc-panel .tmc-card{right:6px!important;left:6px!important;bottom:max(6px,env(safe-area-inset-bottom,0px))!important;}
  #tmc-panel .tmc-close{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;}
  #tmc-panel .tmc-item{max-width:100%;}
  #tmc-panel .tmc-social-grid{gap:6px!important;}
}
@media (prefers-reduced-motion:reduce){#tmc-panel *,#tmc-fab{animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

/* v7.6.8: instant-open compositor guard */
#tmc-panel[aria-hidden="true"]{visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
html.tmc-open #tmc-panel,#tmc-panel[aria-hidden="false"]{visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
#tmc-panel,#tmc-panel:before,#tmc-panel .tmc-card{transition:none!important;animation-delay:0s!important;}
#tmc-panel .tmc-card{will-change:transform,opacity;backface-visibility:hidden;}
#tmc-fab{touch-action:manipulation!important;}
