/* TALKCHAT_R19C12R9R8_DESKTOP_ROOMS_MODAL
   Strictly desktop-only. Mobile <=767px keeps the current right-side room panel.
*/
.desktop-rooms-modal-head{display:none}

@media (min-width:768px){
  .ref-shell .right-panel.desktop-rooms-modal{
    position:fixed!important;
    left:50%!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    z-index:14020!important;
    width:min(760px,calc(100vw - 80px))!important;
    min-width:0!important;
    height:auto!important;
    max-height:min(720px,calc(100dvh - 80px))!important;
    transform:translate(-50%,-50%)!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border:1px solid var(--tc-border,#2b3745)!important;
    border-radius:8px!important;
    background:var(--tc-panel,#151f2b)!important;
    box-shadow:0 26px 70px rgba(0,0,0,.46)!important;
    transition:none!important;
  }
  .ref-shell .right-panel.desktop-rooms-modal:not(.open){
    display:none!important;
    pointer-events:none!important;
  }
  .ref-shell .right-panel.desktop-rooms-modal.open{
    pointer-events:auto!important;
  }

  .ref-shell .panel-backdrop.desktop-rooms-backdrop.open{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    z-index:14010!important;
    background:rgba(0,0,0,.66)!important;
    backdrop-filter:blur(1px);
  }

  .right-panel.desktop-rooms-modal .desktop-rooms-modal-head{
    min-height:58px;
    flex:0 0 58px;
    display:flex!important;
    align-items:center;
    gap:10px;
    padding:0 16px;
    border-bottom:1px solid var(--tc-border,#2b3745);
    background:var(--tc-elevated,#1c2733);
  }
  .right-panel.desktop-rooms-modal .desktop-rooms-modal-head button{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:7px;
    background:transparent;
    color:var(--tc-muted,#a9b6c5);
    cursor:pointer;
  }
  .right-panel.desktop-rooms-modal .desktop-rooms-modal-head button:hover{
    background:var(--tc-hover,#24313e);
    color:var(--tc-text,#f1f5f9);
  }
  .right-panel.desktop-rooms-modal .desktop-rooms-modal-head .material-symbols-outlined{
    font-size:21px;
  }
  .right-panel.desktop-rooms-modal .desktop-rooms-modal-head strong{
    color:var(--tc-text,#f1f5f9);
    font-size:15px;
    font-weight:800;
  }

  .right-panel.desktop-rooms-modal .panel-tabs{
    flex:0 0 auto;
    display:flex;
    padding:8px 12px 0;
    gap:4px;
    background:var(--tc-panel,#151f2b);
  }
  .right-panel.desktop-rooms-modal .panel-tabs button{
    flex:0 0 auto;
    padding:8px 12px;
    border-radius:7px;
    background:transparent!important;
    color:var(--tc-muted,#a9b6c5)!important;
    font-size:12px;
    font-weight:700;
    border:1px solid transparent!important;
  }
  .right-panel.desktop-rooms-modal .panel-tabs button:hover{
    background:var(--tc-hover,#24313e)!important;
  }
  .right-panel.desktop-rooms-modal .panel-tabs button.selected{
    background:var(--tc-elevated,#1c2733)!important;
    color:#38a7ff!important;
    border-color:var(--tc-border,#2b3745)!important;
  }

  .right-panel.desktop-rooms-modal .panel-search{
    flex:0 0 auto;
    padding:10px 12px 12px!important;
    border-bottom:1px solid var(--tc-border,#2b3745)!important;
    background:var(--tc-panel,#151f2b)!important;
  }
  .right-panel.desktop-rooms-modal .panel-search input{
    min-height:38px;
    padding:9px 12px!important;
    border:1px solid var(--tc-border,#2b3745)!important;
    border-radius:7px!important;
    background:var(--tc-elevated,#1c2733)!important;
    color:var(--tc-text,#f1f5f9)!important;
    outline:none;
  }
  .right-panel.desktop-rooms-modal .panel-search input:focus{
    border-color:#268fd8!important;
  }

  .right-panel.desktop-rooms-modal .panel-content{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:14px 12px 18px!important;
    background:var(--tc-panel,#151f2b)!important;
    scrollbar-width:thin;
    scrollbar-color:var(--tc-scroll-thumb,#364656) transparent;
  }
  .right-panel.desktop-rooms-modal .panel-content::-webkit-scrollbar{width:8px}
  .right-panel.desktop-rooms-modal .panel-content::-webkit-scrollbar-track{background:transparent}
  .right-panel.desktop-rooms-modal .panel-content::-webkit-scrollbar-thumb{
    background:var(--tc-scroll-thumb,#364656);
    border-radius:999px;
  }

  .desktop-room-group + .desktop-room-group{margin-top:18px}
  .desktop-room-group>h3{
    margin:0 0 8px 6px;
    color:#36a8ff;
    font-size:12px;
    font-weight:800;
  }
  .desktop-room-group>h3 span{
    color:inherit;
    font-weight:700;
  }
  .desktop-room-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }

  .right-panel.desktop-rooms-modal .room-card.desktop-room-card{
    position:relative!important;
    width:100%!important;
    min-height:62px!important;
    margin:0!important;
    padding:9px 56px 9px 12px!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    text-align:left!important;
    border:1px solid var(--tc-borderHi,#3a4a5b)!important;
    border-left-width:3px!important;
    border-radius:5px!important;
    background:var(--tc-elevated,#1c2733)!important;
    color:var(--tc-text,#f1f5f9)!important;
    overflow:hidden!important;
  }
  .right-panel.desktop-rooms-modal .room-card.desktop-room-card:hover{
    background:var(--tc-hover,#24313e)!important;
    border-color:#3e566d!important;
  }
  .right-panel.desktop-rooms-modal .room-card.desktop-room-card.current{
    border-left-color:#268fd8!important;
    background:#17283a!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .rs-body{
    min-width:0;
    flex:1 1 auto;
    line-height:1.25;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .rs-body>b{
    display:block;
    max-width:100%;
    color:var(--tc-text,#f1f5f9)!important;
    font-size:15px!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .rs-body small{
    display:block;
    margin-top:2px;
    color:var(--tc-muted,#a9b6c5)!important;
    font-size:11px!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .rs-body small strong{
    color:var(--tc-text,#f1f5f9)!important;
    font-weight:800;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .rs-body small em{
    color:#39d3a2!important;
    font-style:normal!important;
    font-weight:700!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .desktop-current-room{
    color:#d9e6f3!important;
  }

  .right-panel.desktop-rooms-modal .desktop-room-card .room-favorite{
    position:absolute!important;
    z-index:5!important;
    right:34px!important;
    top:8px!important;
    width:26px!important;
    height:26px!important;
    margin:0!important;
    color:#9eacbb!important;
    border-radius:6px!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .room-favorite:hover,
  .right-panel.desktop-rooms-modal .desktop-room-card .room-favorite.active{
    color:#38a7ff!important;
    background:#268fd814!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .room-favorite .material-symbols-outlined{
    font-size:18px!important;
  }

  .right-panel.desktop-rooms-modal .desktop-room-card .rs-angle{
    position:absolute!important;
    right:0!important;
    top:0!important;
    bottom:0!important;
    width:45px!important;
    background:#173b56!important;
    clip-path:polygon(20px 0,100% 0,100% 100%,0 100%)!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card.current .rs-angle{
    background:#168de0!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .rs-arrow{
    position:absolute!important;
    z-index:4!important;
    right:0!important;
    top:0!important;
    bottom:0!important;
    width:30px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#38a7ff!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card.current .rs-arrow{
    color:#fff!important;
  }
  .right-panel.desktop-rooms-modal .desktop-room-card .rs-arrow .material-symbols-outlined{
    font-size:18px!important;
  }
}

/* Explicit mobile safety: no new desktop modal presentation below 768px. */
@media (max-width:767px){
  .desktop-rooms-modal-head{display:none!important}
}
