/* Soft Touches Direct v5 — referência visual de mensagens em tema escuro.
   Teclado virtual controla somente a altura útil, sem zoom ou expansão do documento. */
.dm-instagram{
 --dm-bg:#090c13;--dm-panel:#10131b;--dm-purple:#8539f7;
 color:#f8f7fb;background:#090c13;
}
.dm-instagram .dm-inbox-header{border-bottom:1px solid #242733}
.dm-instagram .dm-inbox-brand h2{font-size:26px;font-weight:760;letter-spacing:-.035em}
.dm-instagram .dm-filters button{border-radius:14px}
.dm-instagram .dm-filters button.active{color:#fff;background:#752df0;border-color:#8648f0}
.dm-instagram .dm-conversation{border-radius:0;transition:background .12s}
.dm-instagram .dm-conversation:hover,.dm-instagram .dm-conversation.chosen{background:#20232c}
.dm-instagram .dm-conversation:focus-visible{outline:2px solid #b08aff;outline-offset:-2px}
.dm-instagram .direct-chat-sidebar{background:#0a0d14}
.dm-instagram .direct-chat-room{background:#0a0d14;min-width:0}
.dm-instagram .direct-chat-room-head{
 background:#0c0f16;border-bottom:1px solid #272a35;
 box-shadow:0 3px 12px #0002;gap:12px;
}
.dm-instagram .dm-room-identity{min-width:0}
.dm-instagram .dm-room-identity strong{
 overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
 font-size:16px;font-weight:730;line-height:1.3
}
.dm-instagram .dm-room-identity small{font-size:12px;color:#a7aab7}
.dm-room-search-btn{width:42px;height:42px;flex:none;display:grid;place-items:center;
 border:0;border-radius:50%;color:#f1f2f6;background:transparent;cursor:pointer;font-size:28px}
.dm-room-search-btn:hover,.dm-room-search-btn:focus-visible{background:#282b36}
.dm-instagram .direct-room-messages{
 background:#0a0d14;scrollbar-color:#383947 transparent;
 scrollbar-width:thin;contain:layout style;
}
.dm-instagram .dm-date-divider span{background:#171b25;color:#afb1bc;font-size:12px}
.dm-instagram .dm-message-wrap{gap:2px}
.dm-instagram .dm-message-wrap.mine{align-self:flex-end}
.dm-instagram .dm-message-wrap.theirs{align-self:flex-start}
.dm-instagram .dm-message-wrap .chat-bubble{
 min-width:0;max-width:100%;background:#252830;padding:12px 15px;
 border:0;border-radius:19px 19px 19px 6px;box-shadow:none
}
.dm-instagram .dm-message-wrap.mine .chat-bubble{
 color:#fff;background:#7938ee;border-radius:19px 19px 6px 19px
}
.dm-instagram .chat-bubble p{font-size:15px;line-height:1.45;overflow-wrap:anywhere}
.dm-instagram .chat-bubble time{font-size:11px;opacity:.78}
.dm-instagram .dm-message-actions{opacity:.6;transition:opacity .15s}
.dm-instagram .dm-message-wrap:hover .dm-message-actions,.dm-instagram .dm-message-wrap:focus-within .dm-message-actions{opacity:1}
.dm-instagram .dm-message-actions button{color:#afb0bd}
.dm-instagram .direct-chat-compose{
 background:#0b0e15;border-top:1px solid #222632;
 padding:10px 14px 12px;min-width:0;
}
.dm-instagram .dm-compose-shell{
 min-width:0;width:100%;box-sizing:border-box;gap:8px;align-items:center;
 background:#23262e;border-color:#303540;
 padding:5px 6px 5px 10px;border-radius:26px;
}
.dm-instagram .dm-compose-shell:focus-within{border-color:#7056a8}
.dm-instagram .dm-compose-shell textarea{
 box-sizing:border-box;min-width:0;width:100%;flex:1 1 0;
 font-size:16px!important;line-height:22px!important;
 padding:8px 2px!important;min-height:38px!important;
 max-height:112px!important;border-radius:0!important;
 -webkit-text-size-adjust:100%;text-size-adjust:100%;
}
.dm-instagram .dm-compose-shell textarea::placeholder{color:#a6a8b4}
.dm-instagram .dm-attach-label{
 border:0;color:#f0f1f6;font-weight:600;width:36px;height:36px;font-size:29px
}
.dm-instagram .dm-send-btn{
 background:#7c35f4;border-radius:50%;width:39px;height:39px;flex:none;
 box-shadow:0 2px 12px #6c28eb33
}
.dm-instagram .dm-send-btn:disabled{opacity:.42}
.dm-instagram .dm-compose-notice{margin:5px 11px 0;font-size:10px;line-height:1.45}
.dm-instagram .dm-search input,.dm-instagram input[type=search],
.dm-instagram input[type=text]{font-size:16px!important}
.dm-instagram .dm-message-search{
 flex:none;margin:7px 13px;padding:0 12px;
 background:#25272f;border-color:#333640;
}
.dm-instagram .dm-message-search input{min-width:0}
.dm-instagram .direct-chat-room-head button{touch-action:manipulation}
.dm-instagram .direct-chat-compose button{touch-action:manipulation}
@media(max-width:820px){
 html:has(.dm-instagram.has-thread),body:has(.dm-instagram.has-thread){
  width:100%;max-width:100%;overflow:hidden!important;
  overscroll-behavior:none;-webkit-text-size-adjust:100%
 }
 .dm-instagram{margin:0!important;border:0!important;border-radius:0!important}
 .dm-instagram .direct-messenger-layout{min-height:0}
 .dm-instagram .direct-chat-sidebar{min-height:calc(100dvh - 110px)!important}
 .dm-instagram.has-thread .direct-chat-room{
  position:fixed!important;left:0!important;right:0!important;
  top:var(--dm-visible-top,0px)!important;
  bottom:auto!important;
  width:100%!important;max-width:100%!important;
  height:var(--dm-visible-height,100dvh)!important;
  max-height:var(--dm-visible-height,100dvh)!important;
  min-height:0!important;z-index:110!important;
  overflow:hidden!important;box-sizing:border-box;
  display:flex!important;flex-direction:column!important;
  border:0!important;border-radius:0!important
 }
 .dm-instagram.has-thread .direct-chat-room-head{
  position:relative!important;top:auto!important;z-index:1;flex:0 0 auto;
  min-height:69px;padding:9px 11px;
  padding-top:max(9px,env(safe-area-inset-top))
 }
 .dm-instagram.has-thread .direct-chat-room-head .direct-chat-avatar{
  width:44px;height:44px;flex:none
 }
 .dm-instagram.has-thread .dm-room-identity strong{font-size:16px}
 .dm-instagram.has-thread .dm-back-btn{width:29px;height:40px;font-size:35px}
 .dm-instagram.has-thread .dm-room-refresh,.dm-instagram.has-thread .dm-room-search-btn{
  width:37px;height:40px;flex:none
 }
 .dm-instagram.has-thread .direct-room-messages{
  flex:1 1 0!important;min-height:0!important;max-height:none!important;
  height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;
  overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;
  padding:16px 14px!important;scrollbar-gutter:auto
 }
 .dm-instagram.has-thread .dm-message-wrap{max-width:85%}
 .dm-instagram.has-thread .direct-chat-compose{
  position:relative!important;top:auto!important;bottom:auto!important;
  flex:0 0 auto!important;width:100%!important;box-sizing:border-box;
  min-height:0!important;padding:8px 10px var(--dm-safe-bottom,max(9px,env(safe-area-inset-bottom)))!important
 }
 .dm-instagram.has-thread .dm-compose-shell textarea{font-size:16px!important}
 .dm-instagram.has-thread .direct-chat-disclaimer{display:none}
 .dm-instagram.has-thread .dm-jump-latest{bottom:95px}
 .app-shell:has(.dm-instagram.has-thread)>.footer{display:none}
}
@media(max-width:390px){
 .dm-instagram.has-thread .direct-chat-room-head{gap:6px!important}
 .dm-instagram.has-thread .direct-chat-room-head .direct-chat-avatar{width:39px;height:39px}
 .dm-instagram.has-thread .dm-room-identity small{font-size:10px}
 .dm-instagram.has-thread .dm-message-wrap{max-width:91%}
 .dm-instagram.has-thread .dm-compose-notice{font-size:9px}
}
