/* Empire Desk — visible social interactions */
.campus-office .character.life-conversation .bubble,
.campus-office .character.life-team-meeting .bubble,
.campus-office .character.life-manager-check .bubble{
 display:block!important;
 opacity:1!important;
 white-space:normal!important;
 min-width:116px!important;
 max-width:176px!important;
 text-align:center;
 line-height:1.25;
 background:#fffbea!important;
 border-color:#85947f!important;
 box-shadow:0 4px 12px #17392d2b!important;
 animation:socialBubbleIn .2s ease-out both;
 zoom:var(--office-ui-scale,1);
 transform-origin:50% 100%;
}
.campus-office .character.life-team-meeting .bubble{background:#eef5df!important;border-color:#758b66!important}
.campus-office .character.life-manager-check .bubble{background:#e8f3ee!important;border-color:#6f9384!important}
.campus-office .character.life-conversation:not(.is-walking) svg{animation:socialTalk 1.25s ease-in-out infinite}
.campus-office .character.life-team-meeting:not(.is-walking) svg{animation:meetingNod 1.5s ease-in-out infinite}
.campus-office .character.life-manager-check:not(.is-walking) svg{animation:managerCheck 1.35s ease-in-out infinite}
.campus-office .character.life-conversation:not(.is-walking)::before,
.campus-office .character.life-team-meeting:not(.is-walking)::before{
 content:"";
 position:absolute;
 width:4px;height:4px;border-radius:50%;
 background:#8aa07f;
 top:-3px;right:5px;
 box-shadow:7px -4px 0 #a7b69c;
 pointer-events:none;
}
@keyframes socialBubbleIn{from{opacity:0;transform:translateY(4px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes socialTalk{0%,100%{transform:translateY(0) rotate(0)}45%{transform:translateY(-1px) rotate(-1deg)}70%{transform:translateY(0) rotate(1deg)}}
@keyframes meetingNod{0%,100%{transform:translateY(0)}50%{transform:translateY(1px) rotate(.7deg)}}
@keyframes managerCheck{0%,100%{transform:translateX(0)}45%{transform:translateX(1px)}70%{transform:translateX(-1px)}}
@media(prefers-reduced-motion:reduce){
 .campus-office .character.life-conversation svg,
 .campus-office .character.life-team-meeting svg,
 .campus-office .character.life-manager-check svg{animation:none!important}
 .campus-office .character.life-conversation .bubble,
 .campus-office .character.life-team-meeting .bubble,
 .campus-office .character.life-manager-check .bubble{animation:none!important}
}

@media(max-width:700px){
 .campus-office .character.life-conversation .bubble,
 .campus-office .character.life-team-meeting .bubble,
 .campus-office .character.life-manager-check .bubble{
  min-width:138px!important;
  max-width:205px!important;
  padding:7px 9px!important;
  font-size:11px!important;
  line-height:1.28!important;
  border-radius:8px!important;
 }
}
