.gchat-block{overflow:hidden}.gchat-header{gap:10px}.gchat-subtitle{font-size:12px;opacity:.72;margin-top:3px}.gchat-actions{display:flex;gap:6px}.gchat-small-btn{border:0;border-radius:10px;background:rgba(255,255,255,.08);color:inherit;width:34px;height:34px;cursor:pointer}.gchat-small-btn:hover{background:rgba(255,255,255,.14)}.gchat-list-wrap{position:relative}.gchat-list{height:430px;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;scroll-behavior:auto}.gchat-down{position:absolute;left:50%;bottom:14px;transform:translateX(-50%) translateY(10px);width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;font-size:24px;line-height:42px;cursor:pointer;opacity:0;pointer-events:none;transition:.18s;z-index:5}.gchat-down.show{opacity:.72;pointer-events:auto;transform:translateX(-50%) translateY(0)}.gchat-down:hover{opacity:1}.gchat-highlight{outline:2px solid rgba(255,255,255,.25)}.gchat-loading,.gchat-empty,.gchat-auth-needed{padding:18px;text-align:center;opacity:.75}.gchat-msg{display:flex;gap:10px;padding:10px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06);position:relative}.gchat-msg:hover{background:rgba(255,255,255,.07)}.gchat-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:0 0 38px}.gchat-body{min-width:0;flex:1}.gchat-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gchat-name{font-weight:700}.gchat-name:hover{text-decoration:none}.gchat-role{font-size:11px;padding:2px 7px;border-radius:8px;background:rgba(255,255,255,.09)}.gchat-date{font-size:11px;opacity:.6;margin-left:auto}.gchat-text{margin-top:5px;line-height:1.45;word-break:break-word}.gchat-text a{word-break:break-all}.gchat-replied{margin:6px 0 4px;padding:6px 8px;border-left:3px solid rgba(74,144,226,.8);border-radius:8px;background:rgba(74,144,226,.09);font-size:12px;opacity:.9}.gchat-tools{display:flex;gap:8px;margin-top:7px;opacity:.72}.gchat-tool{border:0;background:transparent;color:inherit;font-size:12px;padding:0;cursor:pointer}.gchat-tool:hover{text-decoration:underline;opacity:1}.gchat-edited{font-size:11px;opacity:.55;margin-left:5px}.gchat-form{display:flex;gap:8px;padding:10px 12px 0}.gchat-input-wrap{position:relative;flex:1}.gchat-form textarea{width:100%;resize:none;min-height:42px;max-height:120px;border-radius:13px;border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.16);color:inherit;padding:11px 12px;outline:none}.gchat-form textarea:focus{border-color:rgba(74,144,226,.75)}.gchat-send{width:46px;height:42px;border:0;border-radius:13px;cursor:pointer;background:#2f80ed;color:#fff;font-size:22px;display:flex;align-items:center;justify-content:center}.gchat-send:disabled{opacity:.55;cursor:default}.gchat-hint{font-size:11px;opacity:.55;padding:6px 14px 12px}.gchat-reply{margin:10px 12px 0;padding:8px 10px;border-radius:12px;background:rgba(74,144,226,.10);border:1px solid rgba(74,144,226,.22);display:flex;align-items:center;justify-content:space-between;gap:10px}.gchat-reply span{display:block;font-size:12px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}.gchat-reply button{border:0;background:transparent;color:inherit;font-size:22px;cursor:pointer}.gchat-own{background:rgba(47,128,237,.08);border-color:rgba(47,128,237,.16)}.gchat-mention{color:#58a6ff;font-weight:700}.gchat-new-divider{text-align:center;font-size:12px;opacity:.65;margin:4px 0}.gchat-toast{position:fixed;right:18px;bottom:18px;background:#20242b;color:#fff;border-radius:12px;padding:12px 14px;z-index:99999;box-shadow:0 8px 30px rgba(0,0,0,.28)}@media(max-width:768px){.gchat-list{height:390px;padding:9px}.gchat-msg{padding:9px}.gchat-avatar{width:34px;height:34px;flex-basis:34px}.gchat-date{width:100%;margin-left:0}.gchat-form{padding:8px 9px 0}.gchat-hint{display:none}.gchat-reply span{max-width:230px}}
.bc-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;padding:12px}.bc-admin-stats>div{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px;text-align:center}.bc-admin-stats b{display:block;font-size:24px;line-height:1.1}.bc-admin-stats span{display:block;margin-top:5px;opacity:.75}@media(max-width:768px){.bc-admin-stats{grid-template-columns:repeat(2,1fr)}}

/* v1.5: mute box */
.gchat-mute-box{
  margin: 10px 12px;
  padding: 12px 14px;
  border-radius: 10px;
  background: rgba(120,120,120,.12);
  border: 1px solid rgba(255,255,255,.08);
  color: #ddd;
  text-align: center;
  font-size: 14px;
}


/* @mention search */
.gchat-mentions-box{position:absolute;left:0;right:0;bottom:calc(100% + 2px);z-index:20;background:#20242b;border:1px solid rgba(255,255,255,.10);border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.35);overflow:hidden;max-height:240px;overflow-y:auto}
.gchat-mention-item{display:flex;align-items:center;gap:9px;width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:9px 11px;cursor:pointer}
.gchat-mention-item:hover,.gchat-mention-item.active{background:rgba(255,255,255,.08)}
.gchat-mention-item img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:0 0 28px}
.gchat-mention-item span{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gchat-mentions-empty{padding:10px 12px;font-size:12px;opacity:.65}

/* Global Chat: compact message action buttons */
.gchat-msg{
    position:relative;
    padding-bottom:22px;
}
.gchat-body{
    padding-bottom:0;
}
.gchat-tools{
    position:absolute;
    right:12px;
    bottom:6px;
    display:flex;
    gap:8px;
    margin:0;
    opacity:.55;
    line-height:1;
}
.gchat-msg:hover .gchat-tools{
    opacity:.85;
}
.gchat-tool{
    font-size:11px;
    line-height:1;
    padding:0;
}
@media(max-width:768px){
    .gchat-msg{
        padding-bottom:21px;
    }
    .gchat-tools{
        right:10px;
        bottom:6px;
        gap:7px;
    }
}


/* Global Chat: media preview inside reply quote */
.gchat-replied-content{
    display:inline-flex;
    align-items:center;
    gap:5px;
    vertical-align:middle;
}
.gchat-replied .bcm-media-msg,
.gchat-replied .bcm-media-gif{
    max-width:54px !important;
    max-height:54px !important;
    object-fit:contain;
    border-radius:8px;
    margin:2px 0 0;
    vertical-align:middle;
}
.gchat-replied .bcm-media-smile{
    max-width:28px !important;
    max-height:28px !important;
    vertical-align:middle;
}
.gchat-reply .bcm-media-msg,
.gchat-reply .bcm-media-gif{
    max-width:42px !important;
    max-height:42px !important;
    object-fit:contain;
    border-radius:7px;
    margin:0;
    vertical-align:middle;
}
.gchat-reply .bcm-media-smile{
    max-width:24px !important;
    max-height:24px !important;
    vertical-align:middle;
}

/* Global Chat: VK/Telegram-style message reactions */
.gchat-reactions{
    position:relative;
    margin-top:6px;
    min-height:0;
}
.gchat-react-popover{
    position:absolute;
    left:0;
    bottom:calc(100% + 2px);
    display:block;
    padding:5px 6px;
    border-radius:16px;
    background:#20242b;
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 8px 24px rgba(0,0,0,.34);
    opacity:0;
    transform:translateY(6px) scale(.96);
    transform-origin:left bottom;
    pointer-events:none;
    transition:opacity .14s ease, transform .14s ease;
    z-index:30;
    white-space:nowrap;
}
.gchat-react-popover:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-8px;
    height:8px;
    background:transparent;
}
.gchat-msg:hover .gchat-react-popover,
.gchat-msg.reactions-open .gchat-react-popover{
    opacity:1;
    transform:translateY(0) scale(1);
    pointer-events:auto;
}
.gchat-react-quick{
    display:flex;
    align-items:center;
    gap:3px;
}
.gchat-react-choice,
.gchat-react-more{
    width:19px;
    height:19px;
    border:0;
    border-radius:50%;
    background:transparent;
    color:#fff;
    font-size:15px;
    line-height:19px;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0;
    transition:transform .12s ease, background .12s ease;
}
.gchat-react-choice:hover,
.gchat-react-more:hover{
    transform:translateY(-2px) scale(1.12);
    background:rgba(255,255,255,.10);
}
.gchat-react-more{
    margin-left:2px;
    font-size:15px;
    color:rgba(255,255,255,.78);
    background:rgba(255,255,255,.07);
}
.gchat-react-all{
    display:none;
    position:absolute;
    left:0;
    top:calc(100% + 6px);
    width:220px;
    max-height:150px;
    overflow:auto;
    padding:7px;
    border-radius:14px;
    background:#20242b;
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 12px 34px rgba(0,0,0,.42);
    grid-template-columns:repeat(8, 1fr);
    gap:4px;
}
.gchat-react-popover.all-open .gchat-react-all{
    display:grid;
}
.gchat-react-choice-all{
    width:23px;
    height:23px;
    font-size:16px;
    line-height:23px;
}
.gchat-reaction-img{
    width:18px;
    height:18px;
    object-fit:contain;
    display:block;
    pointer-events:none;
}
.gchat-react-choice-all .gchat-reaction-img{
    width:20px;
    height:20px;
}
.gchat-react-counts{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}
.gchat-react-count{
    border:1px solid rgba(255,255,255,.08);
    border-radius:14px;
    background:rgba(255,255,255,.055);
    color:inherit;
    height:23px;
    padding:0 8px;
    display:inline-flex;
    align-items:center;
    gap:4px;
    cursor:pointer;
    font-size:12px;
    line-height:1;
}
.gchat-react-count:hover,
.gchat-react-count.active{
    background:rgba(47,128,237,.18);
    border-color:rgba(47,128,237,.35);
}
.gchat-react-count span{font-size:15px;line-height:1;display:inline-flex;align-items:center}
.gchat-react-count span .gchat-reaction-img{width:17px;height:17px}
.gchat-react-count b{font-weight:700;font-size:11px;line-height:1}
@media(hover:none){
    .gchat-msg:hover .gchat-react-popover{opacity:0;pointer-events:none;transform:translateY(6px) scale(.96)}
    .gchat-msg.reactions-open .gchat-react-popover{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
}
@media(max-width:768px){
    .gchat-react-popover{left:50%;bottom:calc(100% + 2px);transform:translateX(-50%) translateY(6px) scale(.96);transform-origin:center bottom}
    .gchat-msg.reactions-open .gchat-react-popover{transform:translateX(-50%) translateY(0) scale(1)}
    .gchat-msg:hover .gchat-react-popover{transform:translateX(-50%) translateY(6px) scale(.96)}
    .gchat-react-popover.all-open{transform:translateX(-50%) translateY(0) scale(1)}
    .gchat-react-all{left:50%;transform:translateX(-50%);width:210px;max-height:145px}
}

/* Global Chat: safe compact layout v2
   Только аккуратная визуальная уплотняющая правка без изменения логики чата. */
.gchat-list{
    gap:8px;
    padding:10px 12px;
}
.gchat-msg{
    gap:8px;
    padding:8px 10px 24px;
    border-radius:12px;
    max-width:96%;
    box-sizing:border-box;
}
.gchat-avatar{
    width:34px;
    height:34px;
    flex:0 0 34px;
}
.gchat-top{
    min-height:18px;
    gap:6px;
    flex-wrap:nowrap;
}
.gchat-name{
    font-size:13px;
    line-height:18px;
}
.gchat-role{
    font-size:10px;
    line-height:14px;
    padding:1px 6px;
}
.gchat-date{
    font-size:11px;
    line-height:18px;
    white-space:nowrap;
}
.gchat-text{
    margin-top:3px;
    line-height:1.35;
}
.gchat-replied{
    margin:4px 0 3px;
    padding:5px 8px;
    border-radius:7px;
    font-size:12px;
    line-height:1.25;
}
.gchat-reactions{
    margin-top:4px;
}
.gchat-react-count{
    height:21px;
    padding:0 7px;
}
.gchat-tools{
    right:10px;
    bottom:7px;
    gap:7px;
    opacity:.38;
}
.gchat-msg:hover .gchat-tools{
    opacity:.78;
}
.gchat-tool{
    font-size:11px;
}
.gchat-replied .bcm-media-msg,
.gchat-replied .bcm-media-gif{
    max-width:48px !important;
    max-height:48px !important;
}
.gchat-reply{
    margin:8px 12px 0;
    padding:7px 9px;
    border-radius:10px;
}
.gchat-form{
    padding:8px 12px 0;
}

@media(max-width:768px){
    .gchat-list{
        gap:7px;
        padding:8px;
    }
    .gchat-msg{
        max-width:100%;
        gap:7px;
        padding:8px 9px 23px;
    }
    .gchat-avatar{
        width:32px;
        height:32px;
        flex:0 0 32px;
    }
    .gchat-top{
        flex-wrap:wrap;
    }
    .gchat-date{
        width:auto;
        margin-left:auto;
    }
}

/* Global Chat: reaction popup above whole message card */
.gchat-msg .gchat-reactions{
    position:static !important;
}
.gchat-msg .gchat-react-popover{
    left:50px !important;
    top:-36px !important;
    bottom:auto !important;
    transform:translateY(7px) scale(.96) !important;
    transform-origin:left bottom !important;
    z-index:80 !important;
}
.gchat-msg:hover .gchat-react-popover,
.gchat-msg.reactions-open .gchat-react-popover{
    transform:translateY(0) scale(1) !important;
}
.gchat-msg .gchat-react-popover.all-open{
    transform:translateY(0) scale(1) !important;
}
@media(hover:none){
    .gchat-msg:hover .gchat-react-popover{
        transform:translateY(7px) scale(.96) !important;
    }
    .gchat-msg.reactions-open .gchat-react-popover{
        transform:translateY(0) scale(1) !important;
    }
}
@media(max-width:768px){
    .gchat-msg .gchat-react-popover{
        left:50% !important;
        top:-38px !important;
        bottom:auto !important;
        transform:translateX(-50%) translateY(7px) scale(.96) !important;
        transform-origin:center bottom !important;
    }
    .gchat-msg.reactions-open .gchat-react-popover,
    .gchat-msg .gchat-react-popover.all-open{
        transform:translateX(-50%) translateY(0) scale(1) !important;
    }
    .gchat-msg:hover .gchat-react-popover{
        transform:translateX(-50%) translateY(7px) scale(.96) !important;
    }
}


/* Global Chat: edit message mode */
.gchat-edit-box{
    margin:8px 12px 0;
    padding:7px 9px;
    border-radius:10px;
    background:rgba(255,193,7,.10);
    border:1px solid rgba(255,193,7,.25);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}
.gchat-edit-box span{
    display:block;
    font-size:12px;
    opacity:.8;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    max-width:420px;
}
.gchat-edit-box button{
    border:0;
    background:transparent;
    color:inherit;
    font-size:22px;
    cursor:pointer;
}
.gchat-form.gchat-editing textarea{
    border-color:rgba(255,193,7,.65);
}
@media(max-width:768px){
    .gchat-edit-box span{max-width:230px;}
}


/* Global Chat: edited mark under message text */
.gchat-text{
    display:inline-block;
    width:auto;
    max-width:100%;
    vertical-align:top;
}
.gchat-text .gchat-edited,
.gchat-edited{
    display:block !important;
    width:max-content !important;
    max-width:max-content !important;
    clear:both;
    font-size:11px;
    line-height:1.2;
    opacity:.55;
    margin:4px 0 0 0 !important;
    padding:0;
}
