/* === V3P clean realtime popup/badge/status === */
#ttm-v3p-stack{
  position:fixed;
  right:22px;
  bottom:22px;
  width:365px;
  max-width:calc(100vw - 32px);
  display:flex;
  flex-direction:column;
  gap:12px;
  z-index:2147483000;
  pointer-events:none;
}
.ttm-v3p-popup{
  pointer-events:auto;
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(17,30,55,.98),rgba(8,17,34,.98));
  border:1px solid rgba(120,150,210,.28);
  color:#fff;
  box-shadow:0 18px 54px rgba(0,0,0,.45);
  animation:ttmV3pIn .22s ease both, ttmV3pShake .62s ease .08s both;
}
@keyframes ttmV3pIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@keyframes ttmV3pShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(2px)}}
.ttm-v3p-head{display:flex;align-items:center;gap:12px;padding:14px;cursor:pointer}
.ttm-v3p-avatar{
  width:44px;height:44px;border-radius:999px;object-fit:cover;display:grid;place-items:center;
  background:linear-gradient(135deg,#2f6df6,#66e6ff);font-weight:900;color:#fff;flex:0 0 auto;
}
.ttm-v3p-body{min-width:0;flex:1}
.ttm-v3p-name{font-size:14px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ttm-v3p-text{margin-top:4px;font-size:13px;line-height:1.35;color:#c4d0e3;max-height:40px;overflow:hidden}
.ttm-v3p-x{width:28px;height:28px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.2);color:#fff;cursor:pointer;font-weight:900}
.ttm-v3p-actions{display:flex;gap:8px;padding:0 14px 14px 70px}
.ttm-v3p-btn{border:0;border-radius:999px;background:#2f6df6;color:#fff;font-size:12px;font-weight:900;padding:8px 12px;cursor:pointer}
.ttm-v3p-btn.secondary{background:rgba(255,255,255,.12)}
.ttm-v3p-badge{
  display:none!important;
  min-width:19px;height:19px;padding:0 6px;margin-left:8px;border-radius:999px;
  background:#ff2448!important;color:#fff!important;font-size:11px!important;font-weight:900!important;
  line-height:19px!important;text-align:center!important;box-shadow:0 0 0 2px rgba(255,255,255,.18),0 8px 18px rgba(255,36,72,.35)!important;
}
.ttm-v3p-badge.show{display:inline-block!important}
#teamMessengerApp .ttm-v3p-dot{
  width:11px!important;height:11px!important;min-width:11px!important;min-height:11px!important;
  display:inline-block!important;border-radius:999px!important;margin-left:8px!important;vertical-align:middle!important;
  border:2px solid #0f1b31!important;background:#9aa4b2!important;box-shadow:0 0 0 3px rgba(154,164,178,.16)!important;
}
#teamMessengerApp .ttm-v3p-dot.online{background:#18e07c!important;box-shadow:0 0 0 3px rgba(24,224,124,.16),0 0 15px rgba(24,224,124,.75)!important}
#teamMessengerApp .ttm-v3p-dot.offline{background:#ff4058!important;box-shadow:0 0 0 3px rgba(255,64,88,.16),0 0 14px rgba(255,64,88,.58)!important}
@media(max-width:640px){#ttm-v3p-stack{right:12px;bottom:12px;width:calc(100vw - 24px)}}





/* === V5A real notification close only START === */

/*
 * Real active notification close is .ttm-v3p-x.
 * Do not use text glyph. Draw the X with two centered lines.
 */
#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close{
  position:relative !important;
  width:32px !important;
  height:32px !important;
  min-width:32px !important;
  min-height:32px !important;
  max-width:32px !important;
  max-height:32px !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.075) !important;
  color:transparent !important;
  display:block !important;
  cursor:pointer !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  line-height:0 !important;
  font-size:0 !important;
  text-indent:-9999px !important;
  transform:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}

#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close::before,
#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close::after{
  content:"" !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:10px !important;
  height:2px !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:999px !important;
  background:#ffffff !important;
  display:block !important;
  opacity:1 !important;
  pointer-events:none !important;
  transform-origin:center center !important;
}

#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close::before{
  transform:translate(-50%, -50%) rotate(45deg) !important;
}

#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close::after{
  transform:translate(-50%, -50%) rotate(-45deg) !important;
}

#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close:hover{
  background:rgba(255,255,255,.16) !important;
  transform:none !important;
}

#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close span,
#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close i,
#ttm-v3p-stack .ttm-v3p-popup .ttm-v3p-x.ttm-v5a-real-close svg{
  display:none !important;
}

/* === V5A real notification close only END === */


/* === V5E single badge owner START === */

/* Single badge owner is the original V3P nav badge. Keep count centered and stable. */
.ttm-v3p-badge{
  display:none !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:24px !important;
  height:22px !important;
  padding:0 7px !important;
  margin-left:8px !important;
  border-radius:999px !important;
  background:#ef476f !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  vertical-align:middle !important;
  box-sizing:border-box !important;
  transform:none !important;
  animation:none !important;
  transition:none !important;
  box-shadow:0 0 0 2px rgba(255,255,255,.18),0 8px 18px rgba(255,36,72,.35) !important;
}

.ttm-v3p-badge.show{
  display:inline-flex !important;
}

.ttm-v3p-badge[data-count="0"],
.ttm-v3p-badge:empty{
  display:none !important;
}

/* Remove duplicate badge classes/elements from previous patches if any remain in DOM after cache refresh. */
.ttm-v4t-nav-badge,
.ttm-v5c-authoritative-badge:not(.ttm-v3p-badge){
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* === V5E single badge owner END === */
