.dm-container{
  background:#fff;
  border-radius:.5rem;
  box-shadow:0 1px 3px rgba(0,0,0,.1);
  display:flex;
  height:calc(100vh - 180px);
  min-height:500px;
  overflow:hidden;
}
.dm-sidebar{
  border-right:1px solid #e5e7eb;
  display:flex;
  flex-direction:column;
  min-width:280px;
  width:320px;
}

.dm-sidebar-header{
  align-items:center;
  border-bottom:1px solid #e5e7eb;
  display:flex;
  justify-content:space-between;
  padding:1rem;
}

.dm-sidebar-header h2{
  color:#111827;
  font-size:1.125rem;
  font-weight:600;
  margin:0;
}

.dm-new-btn{
  background:#0f766e;
  border:none;
  border-radius:.375rem;
  color:#fff;
  cursor:pointer;
  font-size:.875rem;
  font-weight:500;
  padding:.5rem 1rem;
  transition:background .15s;
}

.dm-new-btn:hover{
  background:#115e59;
}
.dm-conversations{
  flex:1;
  overflow-y:auto;
}

.dm-conversation-item{
  align-items:center;
  border-bottom:1px solid #f3f4f6;
  cursor:pointer;
  display:flex;
  padding:.75rem 1rem;
  transition:background .15s;
}

.dm-conversation-item:hover{
  background:#f9fafb;
}

.dm-conversation-item.active{
  background:#f0fdfa;
  border-left:3px solid #14b8a6;
}

.dm-avatar{
  align-items:center;
  background:#e5e7eb;
  border-radius:50%;
  color:#6b7280;
  display:flex;
  flex-shrink:0;
  font-weight:600;
  height:48px;
  justify-content:center;
  overflow:hidden;
  width:48px;
}

.dm-avatar img{
  height:100%;
  object-fit:cover;
  width:100%;
}

.dm-conversation-info{
  flex:1;
  margin-left:.75rem;
  min-width:0;
}

.dm-conversation-name{
  color:#111827;
  font-weight:500;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.dm-conversation-time{
  color:#9ca3af;
  font-size:.75rem;
}

.dm-unread-badge{
  background:#0f766e;
  border-radius:9999px;
  color:#fff;
  font-size:.75rem;
  font-weight:600;
  min-width:20px;
  padding:.125rem .5rem;
  text-align:center;
}
.dm-main{
  display:flex;
  flex:1;
  flex-direction:column;
  min-width:0;
}

.dm-main-header{
  align-items:center;
  border-bottom:1px solid #e5e7eb;
  display:flex;
  gap:.75rem;
  padding:1rem;
}

.dm-main-header-info h3{
  color:#111827;
  font-size:1rem;
  font-weight:600;
  margin:0;
}

.dm-encrypted-badge{
  align-items:center;
  background:#d1fae5;
  border-radius:9999px;
  color:#059669;
  display:inline-flex;
  font-size:.75rem;
  gap:.25rem;
  padding:.125rem .5rem;
}
.dm-messages{
  flex:1;
  gap:.75rem;
  overflow-y:auto;
  padding:1rem;
}

.dm-message,.dm-messages{
  display:flex;
  flex-direction:column;
}

.dm-message{
  max-width:70%;
}

.dm-message.sent{
  align-self:flex-end;
}

.dm-message.received{
  align-self:flex-start;
}

.dm-message-bubble{
  border-radius:1rem;
  padding:.75rem 1rem;
  word-wrap:break-word;
}

.dm-message.sent .dm-message-bubble{
  background:#0f766e;
  border-bottom-right-radius:.25rem;
  color:#fff;
}

.dm-message.received .dm-message-bubble{
  background:#f3f4f6;
  border-bottom-left-radius:.25rem;
  color:#111827;
}

.dm-message-meta{
  align-items:center;
  color:#9ca3af;
  display:flex;
  font-size:.75rem;
  gap:.5rem;
  margin-top:.25rem;
}

.dm-message.sent .dm-message-meta{
  justify-content:flex-end;
}

.dm-message-encrypted{
  color:#059669;
}
.dm-input-area{
  align-items:flex-end;
  border-top:1px solid #e5e7eb;
  display:flex;
  gap:.75rem;
  padding:1rem;
}

.dm-input-wrapper{
  flex:1;
}

.dm-input{
  border:1px solid #e5e7eb;
  border-radius:1.5rem;
  font-size:.875rem;
  line-height:1.5;
  outline:none;
  padding:.75rem 1rem;
  resize:none;
  transition:border-color .15s;
  width:100%;
}

.dm-input:focus{
  border-color:#14b8a6;
}

.dm-send-btn{
  background:#0f766e;
  border:none;
  border-radius:1.5rem;
  color:#fff;
  cursor:pointer;
  font-weight:500;
  padding:.75rem 1.5rem;
  transition:background .15s;
}

.dm-send-btn:hover:not(:disabled){
  background:#115e59;
}

.dm-send-btn:disabled{
  cursor:not-allowed;
  opacity:.5;
}
.dm-empty{
  align-items:center;
  color:#6b7280;
  display:flex;
  flex:1;
  flex-direction:column;
  justify-content:center;
  padding:2rem;
  text-align:center;
}

.dm-empty-icon{
  font-size:4rem;
  margin-bottom:1rem;
}

.dm-empty h3{
  color:#374151;
  font-size:1.125rem;
  font-weight:600;
  margin:0 0 .5rem;
}

.dm-empty p{
  font-size:.875rem;
  margin:0;
}
.dm-user-picker{
  align-items:center;
  background:rgba(0,0,0,.5);
  display:flex;
  inset:0;
  justify-content:center;
  position:fixed;
  z-index:50;
}

.dm-user-picker-content{
  background:#fff;
  border-radius:.5rem;
  box-shadow:0 25px 50px -12px rgba(0,0,0,.25);
  display:flex;
  flex-direction:column;
  max-height:80vh;
  max-width:400px;
  width:100%;
}

.dm-user-picker-header{
  align-items:center;
  border-bottom:1px solid #e5e7eb;
  display:flex;
  justify-content:space-between;
  padding:1rem;
}

.dm-user-picker-header h3{
  font-size:1.125rem;
  font-weight:600;
  margin:0;
}

.dm-user-picker-close{
  background:none;
  border:none;
  color:#6b7280;
  cursor:pointer;
  font-size:1.5rem;
  line-height:1;
  padding:0;
}

.dm-user-picker-search{
  border-bottom:1px solid #e5e7eb;
  padding:1rem;
}

.dm-user-picker-search input{
  border:1px solid #e5e7eb;
  border-radius:.375rem;
  font-size:.875rem;
  padding:.5rem .75rem;
  width:100%;
}

.dm-user-picker-list{
  flex:1;
  overflow-y:auto;
}

.dm-user-item{
  align-items:center;
  cursor:pointer;
  display:flex;
  padding:.75rem 1rem;
  transition:background .15s;
}

.dm-user-item:hover{
  background:#f9fafb;
}

.dm-user-info{
  flex:1;
  margin-left:.75rem;
}

.dm-user-name{
  color:#111827;
  font-weight:500;
}

.dm-user-email{
  color:#6b7280;
  font-size:.75rem;
}

.dm-online-indicator{
  background:#d1d5db;
  border-radius:50%;
  height:10px;
  width:10px;
}

.dm-online-indicator.online{
  background:#10b981;
}
.dm-loading{
  align-items:center;
  color:#6b7280;
  display:flex;
  justify-content:center;
  padding:2rem;
}
.dm-error{
  background:#fef2f2;
  color:#dc2626;
  font-size:.875rem;
  padding:1rem;
  text-align:center;
}
@media (max-width:768px){
  .dm-container{
    flex-direction:column;
    height:calc(100vh - 140px);
  }

  .dm-sidebar{
    border-bottom:1px solid #e5e7eb;
    border-right:none;
    height:auto;
    max-height:40%;
    width:100%;
  }

  .dm-main.hidden,.dm-sidebar.hidden{
    display:none;
  }

  .dm-message{
    max-width:85%;
  }
}

/*# sourceMappingURL=dm.min.css.map */