/* ALPHA05C2_PRIVATE_MESSAGE_SYNC */

.pm-new,
.pm-compose{
  display:grid;
  gap:8px
}

.pm-new{
  margin-bottom:18px
}

.pm-new select,
.pm-new textarea,
.pm-compose textarea{
  width:100%;
  box-sizing:border-box;
  background:#02090b;
  border:1px solid rgba(84,233,255,.14);
  color:#dffaff;
  padding:11px;
  outline:none;
  resize:vertical;
  font:12px "Segoe UI",sans-serif
}

.pm-toolbar,
.pm-chat-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px
}

.pm-toolbar>span{
  color:#628088;
  font-size:8px;
  letter-spacing:.14em
}

.pm-list{
  display:grid;
  gap:7px
}

.pm-conversation{
  width:100%;
  border:1px solid rgba(84,233,255,.09);
  background:rgba(84,233,255,.025);
  color:#d8e9eb;
  padding:12px;
  text-align:left;
  cursor:pointer
}

.pm-conversation:hover{
  border-color:rgba(84,233,255,.35);
  background:rgba(84,233,255,.05)
}

.pm-conversation-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px
}

.pm-conversation-head b{
  font:600 13px "Segoe UI",sans-serif
}

.pm-preview{
  display:block;
  margin-top:5px;
  color:#78959b;
  font:11px/1.4 "Segoe UI",sans-serif;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis
}

.pm-conversation small,
.pm-message small{
  display:block;
  margin-top:6px;
  color:#58777e;
  font:8px "Segoe UI",sans-serif
}

.pm-unread{
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#54e9ff;
  color:#001014;
  font:700 9px "Segoe UI",sans-serif
}

.pm-chat-head .section-title{
  margin:0 0 4px
}

.pm-thread{
  display:flex;
  flex-direction:column;
  gap:8px;
  max-height:calc(100vh - 330px);
  min-height:220px;
  overflow:auto;
  padding:8px 2px 14px
}

.pm-message{
  max-width:82%;
  padding:10px 12px;
  border:1px solid rgba(84,233,255,.10);
  font:12px/1.45 "Segoe UI",sans-serif
}

.pm-mine{
  align-self:flex-end;
  background:rgba(84,233,255,.08);
  border-color:rgba(84,233,255,.22)
}

.pm-theirs{
  align-self:flex-start;
  background:rgba(255,255,255,.025)
}

.pm-message-text{
  white-space:pre-wrap;
  overflow-wrap:anywhere
}

.pm-compose{
  margin-top:8px;
  padding-top:12px;
  border-top:1px solid rgba(84,233,255,.08)
}

/* ALPHA05D2_GROUP_CHAT_UI */

.pm-group-toggle{
  width:100%;
  margin:0 0 14px
}

.pm-group-box{
  display:grid;
  gap:9px;
  margin:0 0 18px;
  padding:13px;
  border:1px solid rgba(84,233,255,.13);
  background:rgba(84,233,255,.025)
}

.pm-group-box.hidden{
  display:none
}

.pm-group-box input[type="text"],
.pm-group-box input:not([type]),
.pm-group-box textarea{
  width:100%;
  box-sizing:border-box;
  background:#02090b;
  border:1px solid rgba(84,233,255,.14);
  color:#dffaff;
  padding:11px;
  outline:none;
  font:12px "Segoe UI",sans-serif
}

.pm-group-members{
  display:grid;
  gap:6px;
  max-height:180px;
  overflow:auto;
  padding:4px 0
}

.pm-group-member{
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px 10px;
  border:1px solid rgba(84,233,255,.08);
  background:rgba(255,255,255,.015);
  cursor:pointer
}

.pm-group-member:hover{
  border-color:rgba(84,233,255,.25)
}

.pm-group-member input{
  accent-color:#54e9ff
}

.pm-group-member span{
  color:#d8e9eb;
  font:12px "Segoe UI",sans-serif
}

/* ALPHA05D3_GROUP_DELETE_UI */

.pm-chat-actions{
  display:flex;
  align-items:center;
  gap:7px
}

.pm-danger{
  border-color:rgba(255,90,90,.35)!important;
  color:#ff8585!important;
  background:rgba(255,50,50,.045)!important
}

.pm-danger:hover{
  border-color:#ff6f6f!important;
  background:rgba(255,50,50,.09)!important
}


/* =========================================================
   JARVIS WEB EXE MESSAGE PARITY // PHASE 2
   ========================================================= */

.pm-exe-layout{
  width:100%;
  max-width:none!important;
  height:100%;
  min-height:0;

  display:grid;
  grid-template-columns:
    minmax(255px,285px)
    minmax(0,1fr);

  gap:14px;
}

.pm-exe-sidebar,
.pm-exe-chat{
  min-height:0;

  border:
    1px solid rgba(110,232,247,.14);

  border-radius:22px;

  background:
    rgba(11,23,27,.88);

  overflow:hidden;
}

.pm-exe-sidebar{
  display:flex;
  flex-direction:column;

  padding:16px;
}

.pm-exe-sidebar-head{
  display:flex;
  align-items:center;
  justify-content:space-between;

  margin-bottom:14px;

  color:#64f4ff;

  font-size:9px;
  font-weight:700;
  letter-spacing:.18em;
}

.pm-exe-sidebar-head button{
  width:32px;
  height:32px;

  border:0;
  background:transparent;

  color:#64f4ff;

  font-size:22px;

  cursor:pointer;
}

.pm-exe-main-action{
  width:100%;

  margin-bottom:8px;
  padding:9px 12px;

  border:
    1px solid rgba(84,233,255,.28);

  border-radius:18px;

  background:transparent;

  color:#55edff;

  font-size:13px;

  cursor:pointer;
}

.pm-exe-main-action:hover{
  background:
    rgba(84,233,255,.055);
}

.pm-exe-inline-form{
  display:grid;

  gap:8px;

  margin:
    5px
    0
    12px;

  padding:10px;

  border:
    1px solid rgba(84,233,255,.10);

  border-radius:14px;

  background:
    rgba(4,12,15,.78);
}

.pm-exe-inline-form.hidden{
  display:none!important;
}

.pm-exe-inline-form input,
.pm-exe-inline-form select,
.pm-exe-inline-form textarea{
  width:100%;
  box-sizing:border-box;

  border:
    1px solid rgba(84,233,255,.14);

  border-radius:10px;

  background:#061013;

  color:#dce8ea;

  padding:9px 10px;
}

.pm-exe-list{
  min-height:0;
  overflow:auto;

  padding-top:4px;
}

.pm-exe-conversation{
  width:100%;

  display:flex!important;
  align-items:center;

  gap:11px;

  margin-bottom:8px;
  padding:11px!important;

  text-align:left;

  border:
    1px solid rgba(100,244,255,.07)!important;

  border-radius:18px!important;

  background:
    rgba(5,13,16,.55)!important;
}

.pm-exe-conversation:hover{
  border-color:
    rgba(100,244,255,.17)!important;

  background:
    rgba(11,27,32,.82)!important;
}

.pm-exe-conversation.active{
  border-color:
    rgba(100,244,255,.36)!important;

  background:
    rgba(18,48,55,.72)!important;
}

.pm-exe-conversation-avatar{
  flex:0 0 auto;
}

.pm-exe-conversation-copy{
  min-width:0;
  flex:1;

  display:flex;
  flex-direction:column;
}

.pm-exe-conversation-title{
  min-width:0;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:8px;
}

.pm-exe-conversation-title b{
  min-width:0;

  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;

  color:#e7eef0;

  font-size:13px;
  font-weight:600;
}

.pm-exe-conversation .pm-preview{
  margin-top:4px;

  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;

  color:#748a90;

  font-size:10px;
}

.pm-exe-empty-list{
  padding:18px 4px;

  color:#70858b;

  font-size:11px;
}

.pm-exe-chat{
  display:grid;

  grid-template-rows:
    auto
    minmax(0,1fr)
    auto;
}

.pm-exe-chat-head{
  min-height:72px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:16px;

  padding:
    13px
    20px;

  border-bottom:
    1px solid rgba(84,233,255,.08);
}

.pm-exe-chat-identity{
  min-width:0;

  display:flex;
  align-items:center;

  gap:12px;
}

.pm-exe-chat-identity > div{
  min-width:0;

  display:flex;
  flex-direction:column;
}

.pm-exe-chat-identity strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;

  color:#f0f5f6;

  font-size:15px;
}

.pm-exe-chat-identity span{
  margin-top:3px;

  color:#71868c;

  font-size:9px;

  letter-spacing:.12em;
}

.pm-exe-group-manage{
  width:46px;
  height:46px;

  display:flex;
  align-items:center;
  justify-content:center;

  flex:0 0 auto;

  border:0;

  background:transparent;

  cursor:pointer;
}

.pm-exe-group-manage svg{
  width:25px;
  height:25px;

  fill:none;
  stroke:#64f4ff;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.pm-thread{
  min-height:0;

  overflow:auto;

  padding:
    20px;

  display:flex;
  flex-direction:column;

  gap:10px;
}

.pm-exe-message-row{
  display:flex;
  align-items:flex-end;

  gap:8px;
}

.pm-exe-message-row.mine{
  justify-content:flex-end;
}

.pm-exe-message-row.theirs{
  justify-content:flex-start;
}

.pm-exe-message-row .pm-message{
  max-width:min(520px,76%);

  margin:0!important;
}

.pm-exe-no-messages{
  margin:auto;

  color:#6d8187;

  font-size:11px;
}

.pm-exe-compose{
  display:grid;

  grid-template-columns:
    46px
    minmax(0,1fr)
    50px;

  gap:10px;

  padding:12px 14px;

  border-top:
    1px solid rgba(84,233,255,.07);
}

.pm-exe-emoji,
.pm-exe-compose button{
  height:46px;

  display:flex;
  align-items:center;
  justify-content:center;

  border:0;
  border-radius:50%;

  background:
    #122d34;

  color:#55efff;

  font-size:19px;
}

.pm-exe-compose textarea{
  resize:none;

  box-sizing:border-box;
  width:100%;
  height:46px;

  padding:
    13px
    16px;

  border:
    1px solid rgba(84,233,255,.12);

  border-radius:17px;

  background:#050d10;

  color:#dce9eb;

  font:13px "Segoe UI",sans-serif;

  outline:none;
}

.pm-exe-compose textarea:focus{
  border-color:
    rgba(84,233,255,.38);
}

.pm-exe-compose button{
  cursor:pointer;
}

.pm-exe-empty-chat{
  grid-row:1 / -1;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  padding:30px;

  text-align:center;
}

.pm-exe-empty-icon{
  width:70px;
  height:70px;

  display:flex;
  align-items:center;
  justify-content:center;

  margin-bottom:20px;

  border:
    1px solid rgba(84,233,255,.24);

  border-radius:50%;

  background:
    #112d34;

  color:#57f0ff;

  font-size:34px;
}

.pm-exe-empty-chat h3{
  margin:0;

  color:#eff5f6;

  font-size:23px;
}

.pm-exe-empty-chat p{
  margin:
    10px
    0
    18px;

  color:#71878d;

  font-size:12px;
}

.pm-exe-empty-action{
  padding:
    8px
    20px;

  border:
    1px solid #e5f5f7;

  border-radius:20px;

  background:transparent;

  color:#56efff;

  cursor:pointer;
}

.pm-group-manage-backdrop{
  position:fixed;
  z-index:9999;

  inset:0;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:30px;

  background:
    rgba(0,4,6,.72);

  backdrop-filter:
    blur(8px);
}

.pm-group-manage-dialog{
  width:min(720px,94vw);
  max-height:min(680px,90vh);

  display:grid;

  grid-template-rows:
    auto
    auto
    auto
    minmax(0,1fr)
    auto;

  overflow:hidden;

  border:
    1px solid rgba(100,244,255,.20);

  border-radius:24px;

  background:
    #0d181c;

  box-shadow:
    0 30px 100px rgba(0,0,0,.55);
}

.pm-group-manage-head{
  display:flex;
  align-items:center;
  justify-content:space-between;

  padding:
    22px
    24px
    14px;
}

.pm-group-manage-head > div{
  display:flex;
  align-items:center;

  gap:10px;
}

.pm-group-manage-head span{
  color:#64f4ff;
}

.pm-group-manage-head h3{
  margin:0;

  color:#f0f5f6;

  font-size:24px;
}

.pm-group-manage-head > button{
  border:0;
  background:transparent;

  color:#81979d;

  font-size:26px;

  cursor:pointer;
}

.pm-group-current-role{
  margin:
    0
    24px
    12px;

  padding:
    12px
    14px;

  display:flex;
  align-items:center;
  justify-content:space-between;

  border:
    1px solid rgba(84,233,255,.10);

  border-radius:14px;

  background:
    rgba(6,17,20,.62);
}

.pm-group-current-role span{
  color:#788d92;

  font-size:9px;
  letter-spacing:.14em;
}

.pm-group-current-role b{
  color:#64f4ff;

  font-size:11px;
}

.pm-group-manage-tools{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:12px;

  padding:
    0
    24px
    10px;

  color:#899ca1;

  font-size:11px;
}

.pm-group-add-row{
  display:flex;
  align-items:center;

  gap:8px;
}

.pm-group-add-row select{
  max-width:220px;

  padding:8px 10px;

  border:
    1px solid rgba(84,233,255,.12);

  border-radius:10px;

  background:#081216;

  color:#d7e4e6;
}

.pm-group-add-row button{
  padding:8px 10px;

  border:0;
  background:transparent;

  color:#64f4ff;

  cursor:pointer;
}

.pm-group-manage-members{
  min-height:0;

  overflow:auto;

  padding:
    0
    24px
    14px;
}

.pm-group-manage-member{
  min-height:54px;

  display:flex;
  align-items:center;

  gap:10px;

  margin-bottom:7px;
  padding:
    8px
    11px;

  border:
    1px solid rgba(84,233,255,.06);

  border-radius:14px;

  background:
    rgba(5,14,17,.65);
}

.pm-group-member-copy{
  min-width:0;
  flex:1;
}

.pm-group-member-copy strong{
  color:#e6eef0;

  font-size:13px;
}

.pm-group-member-copy em{
  margin-left:6px;

  color:#66ffd1;

  font-size:8px;
  font-style:normal;
}

.pm-group-role{
  padding:
    5px
    9px;

  border-radius:18px;

  font-size:8px;
  font-weight:700;
}

.pm-role-owner{
  background:
    rgba(102,255,209,.09);

  color:#66ffd1;
}

.pm-role-admin{
  background:
    rgba(255,177,107,.10);

  color:#ffb16b;
}

.pm-role-member{
  background:
    rgba(84,233,255,.08);

  color:#9edce4;
}

.pm-group-role-toggle,
.pm-group-member-remove,
.pm-group-owner-transfer{
  border:
    1px solid rgba(84,233,255,.10);

  border-radius:9px;

  background:
    transparent;

  color:#73dfea;

  padding:
    6px
    8px;

  font-size:8px;

  cursor:pointer;
}

.pm-group-member-remove{
  color:#ff7d87;
}

.pm-group-owner-transfer{
  color:#ffb16b;
}

.pm-group-manage-footer{
  min-height:68px;

  display:flex;
  align-items:center;
  justify-content:flex-end;

  gap:10px;

  padding:
    12px
    20px;

  border-top:
    1px solid rgba(84,233,255,.08);
}

.pm-group-manage-footer button{
  border:0;

  background:transparent;

  color:#64f4ff;

  padding:8px 10px;

  cursor:pointer;
}

.pm-group-manage-footer .pm-group-danger{
  color:#ff7d87;
}

.pm-owner-hint{
  margin-right:auto;

  color:#8b7474;

  font-size:9px;
}

@media(max-width:900px){
  .pm-exe-layout{
    grid-template-columns:1fr;
    height:auto;
  }

  .pm-exe-sidebar{
    max-height:340px;
  }

  .pm-exe-chat{
    min-height:600px;
  }

  .pm-group-manage-member{
    flex-wrap:wrap;
  }
}


/* JARVIS 2C2 GROUP AVATAR WEB */

.pm-group-avatar-create{
  display:flex;
  align-items:center;
  gap:12px;
  padding:11px 12px;
  border:1px solid rgba(100,244,255,.11);
  border-radius:14px;
  background:rgba(6,16,20,.52);
}

.pm-group-avatar-create-icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(100,244,255,.20);
  background:rgba(100,244,255,.06);
  color:#64f4ff;
  font-size:18px;
}

.pm-group-avatar-create-copy{
  min-width:0;
  flex:1;
  display:grid;
  gap:4px;
}

.pm-group-avatar-create-copy strong,
.pm-group-avatar-card-copy strong{
  color:#e8f1f2;
  font-size:13px;
}

.pm-group-avatar-create-copy span,
.pm-group-avatar-card-copy span{
  color:#71878c;
  font-size:11px;
}

.pm-group-avatar-create-copy span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.pm-group-avatar-button,
.pm-group-avatar-actions button{
  min-height:36px;
  padding:0 13px;
  border:1px solid rgba(100,244,255,.20);
  border-radius:10px;
  background:rgba(100,244,255,.055);
  color:#acf9ff;
  font:inherit;
  font-size:10px;
  font-weight:800;
  letter-spacing:.07em;
  cursor:pointer;
}

.pm-group-avatar-button:hover,
.pm-group-avatar-actions button:hover{
  border-color:rgba(100,244,255,.45);
  background:rgba(100,244,255,.10);
}

.pm-group-avatar-card{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px;
  border:1px solid rgba(100,244,255,.11);
  border-radius:16px;
  background:
    linear-gradient(
      135deg,
      rgba(100,244,255,.055),
      rgba(6,15,18,.45)
    );
}

.pm-group-avatar-preview{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}

.pm-group-avatar-card-copy{
  min-width:0;
  flex:1;
  display:grid;
  gap:4px;
}

.pm-group-avatar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
}

.pm-group-avatar-actions .pm-group-avatar-remove{
  border-color:rgba(255,112,112,.22);
  background:rgba(255,80,80,.045);
  color:#ff9d9d;
}

.pm-group-avatar-actions .pm-group-avatar-remove:hover{
  border-color:rgba(255,112,112,.45);
  background:rgba(255,80,80,.09);
}

@media (max-width:760px){
  .pm-group-avatar-create,
  .pm-group-avatar-card{
    align-items:flex-start;
    flex-wrap:wrap;
  }

  .pm-group-avatar-create-copy,
  .pm-group-avatar-card-copy{
    flex:1 1 calc(100% - 60px);
  }

  .pm-group-avatar-button,
  .pm-group-avatar-actions{
    margin-left:56px;
  }
}

/* JARVIS MESSAGE BUBBLE ROUND LONG */

.pm-exe-message-row .pm-message{
  box-sizing:border-box;

  min-width:180px;
  max-width:min(560px,78%);

  padding:
    12px
    16px;

  border-radius:17px;

  box-shadow:
    0 8px 24px rgba(0,0,0,.10);
}

.pm-exe-message-row.mine .pm-message{
  border-radius:
    17px
    17px
    6px
    17px;

  background:
    rgba(84,233,255,.075);
}

.pm-exe-message-row.theirs .pm-message{
  border-radius:
    17px
    17px
    17px
    6px;

  background:
    rgba(255,255,255,.035);
}

.pm-exe-message-row .pm-message-text{
  min-height:18px;
}

.pm-exe-message-row .pm-message small{
  margin-top:8px;
}

@media(max-width:760px){
  .pm-exe-message-row .pm-message{
    min-width:145px;
    max-width:84%;
    padding:
      11px
      14px;
    border-radius:15px;
  }

  .pm-exe-message-row.mine .pm-message{
    border-radius:
      15px
      15px
      5px
      15px;
  }

  .pm-exe-message-row.theirs .pm-message{
    border-radius:
      15px
      15px
      15px
      5px;
  }
}

/* JARVIS MESSAGE BUBBLE COMPACT */

.pm-exe-message-row .pm-message{
  min-width:180px;
  min-height:0!important;

  padding:
    7px
    15px;

  border-radius:14px;
}

.pm-exe-message-row.mine .pm-message{
  border-radius:
    14px
    14px
    5px
    14px;
}

.pm-exe-message-row.theirs .pm-message{
  border-radius:
    14px
    14px
    14px
    5px;
}

.pm-exe-message-row .pm-message-text{
  min-height:0;
  line-height:1.35;
}

.pm-exe-message-row .pm-message small{
  margin-top:3px;
  line-height:1.15;
}

@media(max-width:760px){
  .pm-exe-message-row .pm-message{
    min-width:145px;

    padding:
      7px
      13px;

    border-radius:13px;
  }

  .pm-exe-message-row.mine .pm-message{
    border-radius:
      13px
      13px
      5px
      13px;
  }

  .pm-exe-message-row.theirs .pm-message{
    border-radius:
      13px
      13px
      13px
      5px;
  }
}

/* JARVIS MESSAGE BUBBLE COMPACT AUTOGROW */

.pm-exe-message-row .pm-message{
  box-sizing:border-box;

  min-width:180px;
  max-width:min(560px,78%);

  min-height:56px;
  height:auto;

  padding:
    8px
    15px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  border-radius:16px;
}

.pm-exe-message-row.mine .pm-message{
  border-radius:
    16px
    16px
    6px
    16px;
}

.pm-exe-message-row.theirs .pm-message{
  border-radius:
    16px
    16px
    16px
    6px;
}

.pm-exe-message-row .pm-message-text{
  min-height:0;
  height:auto;

  white-space:pre-wrap;
  overflow-wrap:anywhere;
  word-break:break-word;

  line-height:1.35;
}

.pm-exe-message-row .pm-message small{
  margin-top:4px;
  line-height:1.1;
}

@media(max-width:760px){
  .pm-exe-message-row .pm-message{
    min-width:145px;
    max-width:84%;

    min-height:52px;
    height:auto;

    padding:
      7px
      13px;

    border-radius:14px;
  }

  .pm-exe-message-row.mine .pm-message{
    border-radius:
      14px
      14px
      5px
      14px;
  }

  .pm-exe-message-row.theirs .pm-message{
    border-radius:
      14px
      14px
      14px
      5px;
  }
}
