/* QingyuChat v1.0.116 — polished official menu interaction */
.qy-composer-keyboard-mode,
.qy-composer-menu-mode{overflow:visible!important;position:relative!important;}
.qy-official-menu-mode-row,
.qy-composer-keyboard-mode .composer{
  transition:opacity .18s ease,transform .2s cubic-bezier(.22,.68,.2,1)!important;
  will-change:opacity,transform;
}
.official-menu-toggle{touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;}
.official-menu-toggle:active{transform:translateY(1px) scale(.94)!important;color:#52647d!important;}
.qy-official-menu-items>button,
.qy-official-menu-popover button{
  touch-action:manipulation!important;-webkit-tap-highlight-color:transparent!important;
  transition:background-color .14s ease,color .14s ease,transform .12s ease,box-shadow .12s ease!important;
}
.qy-official-menu-items>button:active,
.qy-official-menu-popover button:active{
  transform:translateY(1px) scale(.975)!important;
  background:#eaf0fb!important;color:#315fc5!important;
  box-shadow:inset 0 1px 3px #233c641c!important;
}
.qy-official-menu-indicator,.qy-official-menu-child-indicator{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:#9aa5b4;}
.qy-menu-indicator-icon{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.qy-official-menu-indicator.is-expanded .qy-menu-indicator-icon{transform:rotate(180deg);}
.qy-official-menu-popover{width:min(205px,calc(100vw - 34px))!important;left:auto;right:auto;max-height:min(54vh,330px);overflow:auto;overscroll-behavior:contain;transform-origin:bottom center;animation:qy-official-submenu-in .17s cubic-bezier(.2,.7,.2,1) both;}
.qy-official-menu-popover.anchor-left{left:0!important;right:auto!important;}
.qy-official-menu-popover.anchor-center{left:50%!important;right:auto!important;transform:translateX(-50%);}
.qy-official-menu-popover.anchor-right{right:0!important;left:auto!important;}
.qy-official-menu-popover button{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-height:44px!important;padding:11px 14px!important;text-align:left!important;white-space:normal!important;}
.qy-official-menu-child-title{min-width:0;flex:1 1 auto;}
.qy-official-menu-child-indicator{margin-left:auto;}
.qy-official-menu-popover.anchor-left:after,
.qy-official-menu-popover.anchor-center:after,
.qy-official-menu-popover.anchor-right:after{content:"";position:absolute;bottom:-6px;width:10px;height:10px;background:#fff;border-right:1px solid #e3e8f0;border-bottom:1px solid #e3e8f0;transform:rotate(45deg);}
.qy-official-menu-popover.anchor-left:after{left:23px;}
.qy-official-menu-popover.anchor-center:after{left:calc(50% - 5px);}
.qy-official-menu-popover.anchor-right:after{right:23px;}
@keyframes qy-official-submenu-in{from{opacity:0;translate:0 5px;scale:.985}to{opacity:1;translate:0 0;scale:1}}
@media(min-width:761px){
  .qy-composer-keyboard-mode{padding-top:19px!important;padding-bottom:24px!important;}
  .qy-composer-menu-mode{padding-top:19px!important;padding-bottom:24px!important;}
  .qy-official-menu-mode-row{height:96.3px!important;min-height:96.3px!important;align-items:center!important;}
  .qy-official-menu-mode-row>.official-menu-toggle.menu-mode-toggle{height:96.3px!important;align-self:stretch!important;}
  .qy-official-menu-items{height:96.3px!important;}
  .qy-official-menu-items>button{height:96.3px!important;}
  .qy-official-menu-popover{bottom:calc(100% + 8px)!important;}
}
@media(max-width:760px){
  .composer-wrap.qy-composer-keyboard-mode,
  .composer-wrap.qy-composer-menu-mode{
    padding:7px 10px calc(7px + env(safe-area-inset-bottom))!important;
    min-height:calc(55px + env(safe-area-inset-bottom))!important;
    box-sizing:border-box!important;
  }
  .qy-composer-keyboard-mode .composer{
    display:flex!important;flex-wrap:nowrap!important;align-items:center!important;
    width:100%!important;height:40px!important;min-height:40px!important;
    gap:0!important;padding:0!important;border:0!important;box-shadow:none!important;
  }
  .qy-composer-keyboard-mode .composer textarea{
    flex:1 1 auto!important;min-width:0!important;width:auto!important;
    height:40px!important;min-height:40px!important;max-height:40px!important;
    align-self:center!important;margin:0!important;
  }
  .qy-composer-keyboard-mode .composer-actions{
    display:flex!important;flex:0 0 auto!important;align-self:center!important;
    height:40px!important;min-height:40px!important;margin:0 0 0 5px!important;
    align-items:center!important;gap:1px!important;
  }
  .qy-composer-keyboard-mode .send-btn{height:34px!important;width:34px!important;}
  .qy-official-menu-mode-row{height:40px!important;min-height:40px!important;align-items:center!important;}
  .qy-official-menu-mode-row>.official-menu-toggle.menu-mode-toggle{
    flex:0 0 35px!important;width:35px!important;height:40px!important;
    margin:0 5px 0 0!important;padding-right:7px!important;align-self:stretch!important;
  }
  .qy-official-menu-mode-row>.official-menu-toggle.menu-mode-toggle:after{height:25px!important;}
  .qy-official-menu-items{height:40px!important;}
  .qy-official-menu-items>button{height:40px!important;font-size:12px!important;padding:4px 3px!important;}
  .qy-official-menu-popover{bottom:calc(100% + 8px)!important;width:min(190px,calc(100vw - 28px))!important;}
}
@media(prefers-reduced-motion:reduce){
 .qy-official-menu-mode-row,.qy-composer-keyboard-mode .composer,.qy-official-menu-items>button,.qy-official-menu-popover button{transition:none!important;animation:none!important;}
}
/* Keep the keyboard glyph outlined; the filled square styling belongs only to the list glyph. */
.official-menu-toggle .qy-menu-toggle-icon.is-menu rect{fill:currentColor!important;stroke:none!important;}
.official-menu-toggle .qy-menu-toggle-icon.is-keyboard{stroke-width:1.65!important;}
.official-menu-toggle .qy-menu-toggle-icon.is-keyboard rect{fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;}
.official-menu-toggle .qy-menu-toggle-icon.is-keyboard circle{fill:currentColor!important;stroke:none!important;}
.official-menu-toggle .qy-menu-toggle-icon.is-keyboard path{fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;}
