@charset "utf-8";

/** Код синхронизирован с js/jScrollPane.min.js */

.jspContainer {
	overflow: hidden;
	position: relative
}
.jspPane {
	position: absolute
}
.jspVerticalBar {
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	width: 16px
}
.jspHorizontalBar {
	bottom: 0;
	height: 16px;
	left: 0;
	position: absolute;
	width: 100%
}
.jspCap {
	display: none
}
.jspHorizontalBar .jspCap {
	float: left
}
.jspTrack {
	background: #dde;
	position: relative
}
.jspDrag {
	background: #bbd;
	cursor: pointer;
	left: 0;
	position: relative;
	top: 0
}
.jspHorizontalBar .jspTrack, .jspHorizontalBar .jspDrag {
	float: left;
	height: 100%
}
.jspArrow {
	background: #50506d;
	cursor: pointer;
	direction: ltr;
	display: block;
	margin: 0;
	padding: 0;
	text-indent: -20000px
}
.jspDisabled {
	background: #80808d;
	cursor: default
}
.jspVerticalBar .jspArrow {
	height: 16px
}
.jspHorizontalBar .jspArrow {
	float: left;
	height: 100%;
	width: 16px
}
.jspVerticalBar .jspArrow:focus {
	border: 1px solid red;
	outline: none
}
.jspCorner {
	background: #eeeef4;
	float: left;
	height: 100%
}
* html .jspCorner {
	margin: 0 -3px 0 0
}
/** чат стили */

#chatContainer {
width:100%;
position:relative;
text-align:left
}
#chatLineHolder {
    height:500px; /* высота стандартного чата */
    max-height:2024px;
	width:100%;
	margin-bottom:10px
}
.bl_chat > #chatLineHolder {
	height:320px; /* высота блока чата */
}
.chat {
	min-height: 36px;
	border: 1px solid transparent;
	padding: 1px 2px 1px 2px;
	position: relative;
	margin: 0 6px 2px 0;
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	align-items: center
}
.chat:last-child {
	margin-bottom:0
}
.chat .time, .is_replied {
	font-size:10pt;
	-moz-border-radius:11px;
	-webkit-border-radius:11px;
	border-radius:11px;
	font-weight: lighter;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none
}
.chat .time:hover, .is_replied {
	cursor: help
}
.chat .author, .chat .is_avatar {
	margin-right:6px
}
.chat:has(.chat-replies) .author, .chat .is_avatar {
	margin-top: auto
}
.chat .is_avatar img {
	width: 40px;
	border-radius: 14px
}
#chatBottomBar{
	position:relative;
	padding: 3px 3px 2px 3px
}
.jspVerticalBar{
	background:none;
	width:20px
}
.jspTrack{
	width:3px;
	right:-10px
}
.jspDrag {
	background:url('../pic/chat/slider.png') no-repeat;
	width:20px;
	left:-9px;
	height:20px !important;
	margin-top:-5px
}
#chatErrorMessage {
	width:100%;
	z-index: 100000;
	top:0;
	left:0;
	position:fixed;
	background-color:#ab0909;
	border-bottom:1px solid #d32a2a;
	font-size:23px;
	padding:16px;
	text-align:center;
	color:#fff;
	text-shadow:1px 1px 0 #940f0f
}
#chatErrorMessage > table {
	width: 80%;
	text-align: center;
	color: white
}
#chatErrorMessage > table tr.colhead > td {
	background-color: #f44e4e;
	color: white;
}
#chatErrorMessage span {
	color: white !important;
}
.chat.view {
	margin: 0;
	padding-right: 0
}
#submitForm {
	margin: 0
}
.chat_btns {
	margin: 0;
	display: flex
}
.chat_btns > input {
	margin: 0 2px
}
p.noChats {
	padding: 7px;
	margin-top: 5px;
	margin-bottom: 5px;
	line-height: 1.6;
	text-align: center
}
.chat .msg_del, .tab:hover .is_private_close, .chat-rcancel, .file-cancel {
	right: 3px;
	top: 8px;
	cursor: pointer;
	transition: text-decoration 0.3s ease, opacity 0.3s ease
}
.chat .msg_del:after, .tab:hover .is_private_close:after, .chat-rcancel:after, .file-cancel:after {
	content: "\00d7";
	font-size: 13pt;
	color: red;
	transition: font-size .5s ease-in-out
}
.chat .msg_del:hover:after, .chat-rnotice {
	font-size: 16pt
}
.tab.h_replied:has(.is_private_close) .count-bubble.unread_bubble {
	opacity: 1;
	max-width: auto;
	margin-left: 5px;
	padding: 0 4px;
	overflow: hidden;
	white-space: nowrap;
	transition: opacity 0.3s ease, max-width 0.3s ease, margin-left 0.3s ease, padding 0.3s ease;
}
.tab.h_replied:hover:has(.is_private_close) .count-bubble.unread_bubble {
	opacity: 0;
	max-width: 0;
	margin-left: 0;
	padding: 0;
}
.chat.rounded:has(.msg_del:hover), .ul_help_spoiler ul li:hover, .chat-rcancel:hover, .file-cancel:hover {
	opacity: 0.7;
	border: 1px solid #dce5e5;
	border-radius: 10px
}
.chat .msg_del:active, .tab:hover .is_private_close:active, .chat-rcancel:active, .file-cancel:active {
	animation: spin_unlim 1s linear infinite
}
.tab:hover .is_private_close:after {
	font-size: unset
}
span.chat-rcancel {
	right: 15px;
	top: 18%;
	position: absolute
}
.chat-rcancel, .file-cancel {
	display: inline-block;
	margin-left: 5px
}
.tab:hover .is_private_close {
	font-size: unset;
	display: inline;
	cursor: pointer;
	align-items: baseline;
	margin: 0 0 0 3px;
	opacity: 0.8;
	border-radius: 10px
}
.tab.archive:hover .is_private_close {
	float: left;
	margin: 0 3px 0 0;
}
.tab:hover div {
	/*margin-left: 5px*/
}
.chat.msg_quoted, .cquote.quoted {
	border-radius: 10px
}
.cquote.quoted {
	color: green;
	text-shadow: 0 0 4px rgba(76, 175, 80, 0.7);
	transform: scale(1.1);
	transition: all 0.3s ease
}
div.cquote::before {
	content: "+"; /* изменённый символ, когда есть класс quoted */
}
div.cquote.quoted::before {
	content: "↶"; /* или ↩ или ⤶ */
}
div.cquote {
	font-size: 1pt;
	color: red;
	opacity: 0;
	width: 0;
	cursor: pointer;
	overflow: hidden;
	transform: translateX(10px);
	transition: width 0.3s ease, font-size 0.3s ease, opacity 0.3s ease, border 0.3s ease, border-radius 0.3s ease, transform 0.3s ease
}
.chat.rounded:hover div.cquote, .cquote.quoted {
	width: auto;
	font-size: 17pt;
	opacity: 1;
	border: 1px solid #dce5e5;
	border-radius: 10px;
	transform: translateX(0); /* возвращаем в норму */
}
.chat-rnotices, .filelists {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 8px
}
.chat-rnotice, .fileList {
	background: #e6f4ea;
	border: 1px solid #4caf50;
	border-radius: 20px;
	padding: 4px 10px;
	font-size: 12px;
	color: #2e7d32;
	display: inline-block;
	min-width: 100px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis
}
.chat-rnotice, .fileList {
	cursor: pointer
}
.chat-rnotice:hover , .fileList:hover {
	background: #d6ecd6
}
.chat-div {
	display: flex;
	float: right;
	flex-direction: row;
	align-items: stretch;
	justify-content: flex-end;
	min-height: 2.5em
}
.chat .text {
	flex: 1;
	justify-content: left;
	overflow: hidden;
	vertical-align: middle;
	word-wrap: break-word;
	padding-right: 33px; /* ← всегда держим запас для .cquote */
}
.chat.rounded:hover .text {
	padding-right: 0
}
.chat .text:has(img) {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	white-space: pre-wrap
}
.chat .text a.is_q {
	padding-right: 0.5%;
}
.chat-div > div {
	white-space: nowrap;
	margin-right: 2px;
	align-content: center
}
.chat-div * .reaction_btn, div.cquote, .is_replied {
	background-color: #eaeaea;
	/*height: unset*/
}
div.cquote, .is_replied {
	padding: 1px 7px 1px 7px;
	height: unset
}
.chat-div * .reaction {
	font-size: 11pt
}
hr.style-chat {
	border: 0;
	height: 1px;
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgb(0 0 0 / 27%), rgba(0, 0, 0, 0));
}
hr.style-chat.rider_online {
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0), #d800ff, rgba(0, 0, 0, 0));
	animation: dotted_bounce 2.5s infinite;
}
.chat_shake_is {
	animation: shake-fade-animation 0.5s ease-in-out
}
.chat_btn {
	cursor: pointer;
	color: white;
	margin: 0 2px
}
.chat_btn, .chat_btn svg {
	width: 40px;
	/*height: 24px;*/
}
.chat_btn:active{
	-webkit-transform: translateY(1px);
	transform: translateY(1px)
}
.chat_btn--record.chat_btn--active, .chat_btn--play.chat_btn--active {
	animation: blinkColor 1.5s infinite
}
div.chat_btn--disabled {
	opacity: 0;
	transform: scale(0.95);
	pointer-events: none;
	cursor: not-allowed;
	transition: opacity 0.8s ease, transform 0.8s ease;
	position: absolute
}
.chat_btn--play, .chat_btn--reset {
	opacity: 1;
	transform: scale(1);
	pointer-events: auto;
	cursor: pointer
}
#submitForm .chat_btns {
	align-items: center
}
.audio-player {
	display: flex;
	align-items: center;
	background-color: #eef4f6;
	border-radius: 5px;
	padding: 5px;
	width: 100%;
	max-width: 200px;
	border: 1px solid transparent
}
.audio-playing .song-title {
	opacity: 1
}
.progress-ch_container {
	flex-grow: 1;
	cursor: pointer;
	position: relative;
	height: 24px;
	overflow: hidden
}
.progress-wrapper {
	position: relative;
	height: 100%;
	background-color: #eee;
	border-radius: 4px;
	overflow: hidden
}
.song-title {
	position: absolute;
	top: 5px;
	left: unset;
	white-space: nowrap;
	font-size: 12px;
	color: #333;
	padding: 0 10px;
	z-index: 2;
	pointer-events: none
}
.audio-playing .song-title, .audio-player:hover .song-title {
	left: 100%;
	animation: scroll-title 15s linear infinite
}
.progress-bar {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 100%;
	width: 0%;
	background-color: #007bff;
	border-radius: 2px;
	transition: width 0.1s linear;
	z-index: 1
}
.play_contain {
	display: flex;
	align-items: center;
	gap: 6px
}
.play_btn {
	width: 22px;
	height: 22px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative
}
.play_contain {
	display: flex;
	align-items: center;
	gap: 6px;
	width: auto;
	height: 24px;
	position: relative;
	margin-right: 10px
}
.audio-playing {
	border: 1px dotted #007bff;
	border-radius: 10px
}
.play_contain {
	display: flex;
	align-items: center;
	gap: 6px;
	width: auto;
	height: 24px;
	position: relative;
	margin-right: 10px
}
.play_btn {
	background-color: transparent;
	width: 24px;
	height: 24px;
	cursor: pointer;
	position: relative;
	flex-shrink: 0
}
.play_btn span {
	background-color: #007bff;
	width: 100%;
	height: 2px;
	position: absolute;
	transform-origin: 0% 0%;
	transition: .25s
}
.play_btn span:nth-child(1) {
	top: 25%;
	left: 50%;
	transform: rotate(30deg) translate(-50%, -50%)
}
.play_btn span:nth-child(2) {
	top: 50%;
	left: 5%;
	transform: rotate(90deg) translate(-50%, -50%)
}
.play_btn span:nth-child(3) {
	top: 75%;
	left: 50%;
	transform: rotate(-30deg) translate(-50%, -50%)
}
.trigger .play_btn span:nth-child(1), .trigger .play_btn span:nth-child(3) {
	top: 50%;
	left: 70%;
	transform: rotate(90deg) translate(-50%, -50%)
}
.trigger .play_btn span:nth-child(2) {
	left: 30%
}
.chat.rounded:hover div.cquote, .cquote.quoted, .audio-player, .chat .daGallery, .chat .btn_s {
	margin-right: 5px
}
.audio-playing {
	border: 1px dotted #007bff;
	border-radius: 10px
}
#submitForm div.chat_btns {
	display: flex;
	flex-wrap: wrap
}
#chatContainer input.sharelnk, #chatContainer textarea.sharelnk {
	flex-grow: 1;
	width: unset
}
.is_chats #loading, #tabs.is_chats span.tab-text {
	text-overflow: ellipsis;
	overflow: hidden;
	font-size: 0.7em;
	width: 100%;
	display: inline-flex;
	align-items: center;
	border: unset !important;
	max-height: 30px;
}
.chat .time > .dot {
	width: 5px;
	height: 5px;
	margin: 0 5px;
	background-color: #333;
	border-radius: 50%;
	animation: dotted_bounce 2.5s infinite;
	position: relative
}
.chat .time > .dot::before, .chat .time > .dot::after {
	content: '';
	width: 5px;
	height: 5px;
	background-color: #333;
	border-radius: 50%;
	position: absolute;
	top: 0
}
.chat .time > .dot::before {
	left: -7px;
	animation: dotted_bounce 2.5s infinite 0.2s
}
.chat .time > .dot::after {
	left: 7px;
	animation: dotted_bounce 2.5s infinite 0.4s
}
.btn_s.bt_block_enable {
	mask: url('data:image/svg+xml;utf8,	<svg width="24" height="24" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M5.74996 3C4.24019 3 2.99996 4.24023 2.99996 5.75V8.75C2.99605 9.01953 3.13863 9.27148 3.37105 9.4082C3.60543 9.54492 3.89449 9.54492 4.12886 9.4082C4.36128 9.27148 4.50386 9.01953 4.49996 8.75V5.75C4.49996 5.05078 5.05074 4.5 5.74996 4.5H8.74996C9.01949 4.50391 9.27144 4.36133 9.40816 4.12891C9.54488 3.89453 9.54488 3.60547 9.40816 3.37109C9.27144 3.13867 9.01949 2.99609 8.74996 3H5.74996ZM15.25 3C14.9804 2.99609 14.7285 3.13867 14.5918 3.37109C14.455 3.60547 14.455 3.89453 14.5918 4.12891C14.7285 4.36133 14.9804 4.50391 15.25 4.5H18.25C18.9492 4.5 19.5 5.05078 19.5 5.75V8.75C19.496 9.01953 19.6386 9.27148 19.871 9.4082C20.1054 9.54492 20.3945 9.54492 20.6289 9.4082C20.8613 9.27148 21.0039 9.01953 21 8.75V5.75C21 4.24023 19.7597 3 18.25 3H15.25ZM3.73824 14.4902C3.32418 14.4961 2.9941 14.8359 2.99996 15.25V18.25C2.99996 19.7598 4.24019 21 5.74996 21H8.74996C9.01949 21.0039 9.27144 20.8613 9.40816 20.6289C9.54488 20.3945 9.54488 20.1055 9.40816 19.8711C9.27144 19.6387 9.01949 19.4961 8.74996 19.5H5.74996C5.05074 19.5 4.49996 18.9492 4.49996 18.25V15.25C4.50191 15.0469 4.42378 14.8516 4.27925 14.709C4.13668 14.5645 3.94136 14.4863 3.73824 14.4902ZM20.2382 14.4902C19.8242 14.4961 19.4941 14.8359 19.5 15.25V18.25C19.5 18.9492 18.9492 19.5 18.25 19.5H15.25C14.9804 19.4961 14.7285 19.6387 14.5918 19.8711C14.455 20.1055 14.455 20.3945 14.5918 20.6289C14.7285 20.8613 14.9804 21.0039 15.25 21H18.25C19.7597 21 21 19.7598 21 18.25V15.25C21.0019 15.0469 20.9238 14.8516 20.7793 14.709C20.6367 14.5645 20.4414 14.4863 20.2382 14.4902Z"/><path d="M11.9735 7.0011C11.7993 7.01075 11.6338 7.08086 11.5057 7.19934L8.25573 10.1993C8.1804 10.2653 8.11906 10.3458 8.07532 10.4359C8.03157 10.526 8.00632 10.6239 8.00104 10.7239C7.99576 10.824 8.01057 10.924 8.04459 11.0182C8.07861 11.1124 8.13114 11.1989 8.1991 11.2724C8.26707 11.346 8.34907 11.4052 8.44029 11.4466C8.5315 11.4879 8.63008 11.5106 8.7302 11.5133C8.83032 11.5159 8.92996 11.4985 9.02324 11.462C9.11651 11.4256 9.20154 11.3708 9.27331 11.3009L11.2645 9.46301V16.2501C11.2631 16.3495 11.2815 16.4482 11.3185 16.5404C11.3556 16.6326 11.4106 16.7166 11.4804 16.7873C11.5502 16.8581 11.6333 16.9143 11.725 16.9527C11.8167 16.991 11.9151 17.0108 12.0145 17.0108C12.1139 17.0108 12.2123 16.991 12.304 16.9527C12.3957 16.9143 12.4789 16.8581 12.5486 16.7873C12.6184 16.7166 12.6734 16.6326 12.7105 16.5404C12.7476 16.4482 12.7659 16.3495 12.7645 16.2501V9.46301L14.7557 11.3009C14.8275 11.3708 14.9125 11.4256 15.0058 11.462C15.0991 11.4985 15.1987 11.5159 15.2988 11.5133C15.399 11.5106 15.4975 11.4879 15.5887 11.4466C15.68 11.4052 15.762 11.346 15.8299 11.2724C15.8979 11.1989 15.9504 11.1124 15.9844 11.0182C16.0185 10.924 16.0333 10.824 16.028 10.7239C16.0227 10.6239 15.9975 10.526 15.9537 10.4359C15.91 10.3458 15.8486 10.2653 15.7733 10.1993L12.5233 7.19934C12.4496 7.13118 12.3629 7.07852 12.2685 7.04447C12.1741 7.01041 12.0737 6.99566 11.9735 7.0011Z" /></svg>') no-repeat center !important;
	-webkit-mask: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M5.74996 3C4.24019 3 2.99996 4.24023 2.99996 5.75V8.75C2.99605 9.01953 3.13863 9.27148 3.37105 9.4082C3.60543 9.54492 3.89449 9.54492 4.12886 9.4082C4.36128 9.27148 4.50386 9.01953 4.49996 8.75V5.75C4.49996 5.05078 5.05074 4.5 5.74996 4.5H8.74996C9.01949 4.50391 9.27144 4.36133 9.40816 4.12891C9.54488 3.89453 9.54488 3.60547 9.40816 3.37109C9.27144 3.13867 9.01949 2.99609 8.74996 3H5.74996ZM15.25 3C14.9804 2.99609 14.7285 3.13867 14.5918 3.37109C14.455 3.60547 14.455 3.89453 14.5918 4.12891C14.7285 4.36133 14.9804 4.50391 15.25 4.5H18.25C18.9492 4.5 19.5 5.05078 19.5 5.75V8.75C19.496 9.01953 19.6386 9.27148 19.871 9.4082C20.1054 9.54492 20.3945 9.54492 20.6289 9.4082C20.8613 9.27148 21.0039 9.01953 21 8.75V5.75C21 4.24023 19.7597 3 18.25 3H15.25ZM3.73824 14.4902C3.32418 14.4961 2.9941 14.8359 2.99996 15.25V18.25C2.99996 19.7598 4.24019 21 5.74996 21H8.74996C9.01949 21.0039 9.27144 20.8613 9.40816 20.6289C9.54488 20.3945 9.54488 20.1055 9.40816 19.8711C9.27144 19.6387 9.01949 19.4961 8.74996 19.5H5.74996C5.05074 19.5 4.49996 18.9492 4.49996 18.25V15.25C4.50191 15.0469 4.42378 14.8516 4.27925 14.709C4.13668 14.5645 3.94136 14.4863 3.73824 14.4902ZM20.2382 14.4902C19.8242 14.4961 19.4941 14.8359 19.5 15.25V18.25C19.5 18.9492 18.9492 19.5 18.25 19.5H15.25C14.9804 19.4961 14.7285 19.6387 14.5918 19.8711C14.455 20.1055 14.455 20.3945 14.5918 20.6289C14.7285 20.8613 14.9804 21.0039 15.25 21H18.25C19.7597 21 21 19.7598 21 18.25V15.25C21.0019 15.0469 20.9238 14.8516 20.7793 14.709C20.6367 14.5645 20.4414 14.4863 20.2382 14.4902Z"/><path d="M11.9735 7.0011C11.7993 7.01075 11.6338 7.08086 11.5057 7.19934L8.25573 10.1993C8.1804 10.2653 8.11906 10.3458 8.07532 10.4359C8.03157 10.526 8.00632 10.6239 8.00104 10.7239C7.99576 10.824 8.01057 10.924 8.04459 11.0182C8.07861 11.1124 8.13114 11.1989 8.1991 11.2724C8.26707 11.346 8.34907 11.4052 8.44029 11.4466C8.5315 11.4879 8.63008 11.5106 8.7302 11.5133C8.83032 11.5159 8.92996 11.4985 9.02324 11.462C9.11651 11.4256 9.20154 11.3708 9.27331 11.3009L11.2645 9.46301V16.2501C11.2631 16.3495 11.2815 16.4482 11.3185 16.5404C11.3556 16.6326 11.4106 16.7166 11.4804 16.7873C11.5502 16.8581 11.6333 16.9143 11.725 16.9527C11.8167 16.991 11.9151 17.0108 12.0145 17.0108C12.1139 17.0108 12.2123 16.991 12.304 16.9527C12.3957 16.9143 12.4789 16.8581 12.5486 16.7873C12.6184 16.7166 12.6734 16.6326 12.7105 16.5404C12.7476 16.4482 12.7659 16.3495 12.7645 16.2501V9.46301L14.7557 11.3009C14.8275 11.3708 14.9125 11.4256 15.0058 11.462C15.0991 11.4985 15.1987 11.5159 15.2988 11.5133C15.399 11.5106 15.4975 11.4879 15.5887 11.4466C15.68 11.4052 15.762 11.346 15.8299 11.2724C15.8979 11.1989 15.9504 11.1124 15.9844 11.0182C16.0185 10.924 16.0333 10.824 16.028 10.7239C16.0227 10.6239 15.9975 10.526 15.9537 10.4359C15.91 10.3458 15.8486 10.2653 15.7733 10.1993L12.5233 7.19934C12.4496 7.13118 12.3629 7.07852 12.2685 7.04447C12.1741 7.01041 12.0737 6.99566 11.9735 7.0011Z" /></svg>') no-repeat center !important;
	mask-size: 20px;
	vertical-align: middle;
	animation: breathe2 2s infinite;
	background-color: red !important;
	padding: 7px 2px 0 3px
}

.chat iframe {
	border: 1px solid #C3CBD1;
	opacity: 0.6;
	transition: all 0.8s ease;
	height: 20px;
	display: inline;
	border-radius: 10px
}
.chat iframe:hover {
	border: 1px solid transparent;
	height: revert-layer;
	opacity: 1;
	border-radius: 0
}
.chat-coms {
    max-height: 800px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
	position: absolute;
	display: none;
	z-index: 110;
	background: #fff;
	border: 1px solid #ccc;
	padding: 5px;
	box-shadow: 0 4px 8px rgba(0,0,0,0.1);
	border-radius: 6px;
    touch-action: pan-y
}
.ul_help_spoiler ul {
	padding-left: 2px;
	width: 100%;
	box-sizing: border-box
}
.ul_help_spoiler ul li div {
	font-weight: bolder
}
.ul_help_spoiler ul li span {
	font-size: 9.5pt;
	color: grey
}
.ul_help_spoiler ul li {
	width: fit-content;
	cursor: pointer;
	list-style-type: none;
	text-align: left;
	font-size: 10pt;
	border: 1px solid transparent;
	padding: 5px
}
.chat.is_pressed {
	position: relative;
	animation: goldenPulse 8.0s ease-out forwards;
	border-radius: 2px;
	z-index: 1
}
.chat-rgroup {
	border-left: 3px solid #58a6ff;
	background: #eef4f6;
	padding: 6px 10px;
	margin-bottom: 6px;
	border-radius: 6px;
	display: flex;
	flex-direction: column;
	gap: 4px;
	max-width: 100%;
	box-sizing: border-box;
	flex-wrap: wrap;
	align-items: baseline;
	transition: all 0.3s ease;
}
.chat-rgroup.notxt-rgroup {
	margin-bottom: unset;
}
.chat-rquote {
	display: flex;
	align-items: center;
	gap: 5px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	border-radius: 5px;
	padding: 5px;
	border: 1px solid transparent
}
.chat-rquote:hover {
	cursor: pointer;
	border: 1px solid #ccc;
	box-shadow: 0 4px 8px rgba(0,0,0,0.1)
}
.chat-qauth {
	/*font-weight: 600;*/
	color: #2a8cd6;
	flex-shrink: 0
}
.chat-qtext {
	color: #555;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	flex: 1;
	max-width: 500px
}
.chat-replies {
	display: inline-block
}
.is_q, .chat-rnotice strong {
	cursor: copy !important
}
.is_replied {
	align-items: center;
	animation: fancyFadeIn 0.5s cubic-bezier(0.22, 1, 0.36, 1)
}
.is_replied::before {
	content: "@";
	display: inline-block;
	font-weight: bold;
	color: #f420ff
}
.is_replied.pulsing {
	animation: sync_blinking 2.5s ease-in-out 5
}
.bot_btn_help {
	padding: 1px;
	cursor: pointer;
	background-color: red;
	color: white;
	border-radius: 12px;
	text-align: center;
	justify-self: center;
	width: 145px
}
.welcome_help {
	position: relative;
	text-align: center;
	max-height: 1000px;
	overflow: auto
}
.welcome_help::before {
	content: "\26A0";
	position: absolute;
	left: 16px;
	top: 50%;
	transform: translateY(-50%)
}
.chat span.daGallery a img {
	border-radius: 22px;
	width: 40px;
	height: 40px;
	max-width: unset
}
.chat span.daGallery a.is_video img {
	width: 40px;
	height: 60px;
	max-width: unset;
	border-radius: 10px;
	object-fit: cover
}
.chat span.galPicList {
	display: flex;
	align-items: center
}
.chat span.galPicList .daGallery span {
display: flex;
flex-wrap: nowrap;
gap: 10px
}
.chat:hover span.daGallery a img {
border-radius: 15px;
transition: border-radius 1.0s, opacity 1.0s
}
.chat span.daGallery a img:hover {
border-radius: 5px
}
.chat.rounded:hover div.cquote, .cquote.quoted, .audio-player, .chat .daGallery, .chat .btn_s {
margin-right: 5px
}
.fileList.is_errorsize {
background: #ffdddd;
border-left: 4px solid #ff4d4d
}
.filelist_totals {
display: none;
line-height: 1.5;
margin-top: 8px;
background: #fafafa;
border: 1px solid #ccc;
padding: 3px 4px;
border-radius: 6px;
margin-bottom: 10px
}
.filelist_totals .total_sized {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
display: inline-flex;
align-items: center;
gap: 12px
}
.out_cont > div {
white-space: normal
}
.out_cont > div span {
font-weight: 600
}
.audio-player {
position: relative
}
.audio-download-btn {
position: absolute;
right: 5px;
top: 50%;
transform: translateY(-50%);
background-color: #f0f0f0;
color: #007bff;
padding: 0px 8px;
font-size: 18px;
border-radius: 18px;
text-decoration: none;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
opacity: 0;
pointer-events: none;
transition: opacity 0.25s ease;
z-index: 3
}
.audio-player:not(.audio-playing):hover .audio-download-btn {
opacity: 1;
pointer-events: auto
}
.audio-download-btn:hover {
background-color: #5bbf00;
color: #fff
}
.chat .is_empty::before {
opacity: 0.8;
transition: opacity 1.0s ease;
font-style: italic;
content: attr(data-alt)
}
.chat:hover .is_empty::before {
opacity: 1
}
#chatText.dragover {
height: 40px;
position: relative;
border-radius: 5px;
background-image: linear-gradient(45deg, rgba(74, 144, 226, 0.1) 25%, transparent 25%), linear-gradient(-45deg, rgba(74, 144, 226, 0.1) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, rgba(74, 144, 226, 0.1) 75%), linear-gradient(-45deg, transparent 75%, rgba(74, 144, 226, 0.1) 75%);
background-size: 20px 20px;
background-position: 0 0, 0 10px, 10px -10px, -10px 0px;
border: 1px dashed #4A90E2;
z-index: 1;
transition: background 0.3s, border 0.3s, height 0.7s, border-radius 0.7s
}

.chat-qtext .plsresizeme {
	border-radius: 8px;
	max-height: 40px;
}

@media screen and (max-width: 900px) {
	.chat {
		flex-wrap: balance;
		white-space: break-spaces;
	}
	.chat .is_empty::before {
		content: unset;
	}

	.chat-qtext {
		white-space: normal;
		max-width: 144px
	}
	.chat:hover .reaction_btn .reaction_avatars {
		/*display: flex !important;*/
	}

	#tabs.is_chats > span.tab.archive { display: none !important; }
}

#chatContainer.bl_chat .chat .audio-player {
	max-width: 60px
}
.btn_s.bt_download.is_deleted {
	-webkit-mask: unset;
	mask: unset;
	background-color: transparent !important;
	position: relative;
	cursor: not-allowed
}
.is_deleted::before {
	content: '🚫';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: red;
}
#tabs > span.tab.is_stream:not(.is_typing)::before, #tabs > span.tab.selfdj:not(.is_typing)::before {
	content: "";
	display: inline-block;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	margin-right: 6px;
}
#tabs > span.tab.is_stream:not(.is_typing)::before {
	background: #ff0000;
	animation: pulseDot 2s infinite;
}
#tabs > span.tab.selfdj:not(.is_typing)::before {
	background: #7989a49c;
}
.is_stream .count-bubble.unread_bubble {
	margin: 0 4px 0 4px;
}

#tabs > span.tab.is_stream::after {
	content: " ( Идет вещание потока )";
	animation: blinkLive 4.0s infinite;
	margin-left: 5px;
}
#tabs > span.tab.is_quiz:not(.is_typing)::before {
	content: "?";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 15px;
	height: 15px;
	background: linear-gradient(135deg, #FF9800, #F57C00);
	color: white;
	border-radius: 50%;
	margin-right: 6px;
	font-size: 14px;
	animation: rotateQuiz 3s infinite;
}

#tabs.is_chats {
	display: flex !important; /* ранее было inline-block */
	align-items: stretch;
	flex-direction: row;
	gap: 2px;
	overflow: hidden;
	white-space: normal
}
#tabs.is_chats > span.tab {
	order: 0;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	min-height: 100%
}

#tabs.is_chats > span.tab.archive.active {
	opacity: 0.9;
	background: #e8e8e8;
	border-top: 3px solid #909090 !important;
	/*max-height: 34px;*/
}

#tabs.is_chats > span.tab.archive:not(.active) nobr {
	display: none;
}
#tabs.is_chats > span.tab.archive.active, #tabs.is_chats > span.tab.archive:hover {
	opacity: 2;
	width: auto;
}
#tabs.is_chats > span.tab.archive:hover::before {
	display: none;
}
#tabs.is_chats > span.tab.archive:hover nobr {
	display: block;
}
#tabs.is_chats > span.tab.archive {
	order: 2;
	opacity: 0.5;
	width: 20px;
	transition: all 0.6s ease;
	overflow-x: hidden;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
#tabs.is_chats > span.tab.archive::before {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V6h5.17l2 2H20v10z'/%3E%3C/svg%3E") center/contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V6h5.17l2 2H20v10z'/%3E%3C/svg%3E") center/contain no-repeat;
}

#tabs.is_chats > span.tab.is_fly {
	/*animation: unset;*/
	animation: shake-fade-animation 0.5s ease-in-out
}

.private_channels .tab .is_private_close {
	transition: all 0.5s ease-out;
	/*transition-timing-function: cubic-bezier(0.29, 1.01, 1, -0.68);*/
}

@keyframes rotateQuiz {
	0%, 100% {
		transform: rotate(0deg);
	}
	25% {
		transform: rotate(-15deg);
	}
	75% {
		transform: rotate(15deg);
	}
}

@keyframes blinkLive {
	0%, 50% { opacity: 1; }
	51%, 100% { opacity: 0.5; }
}

@keyframes dotted_bounce {
0%, 80%, 100% { transform: scale(0) }
40% { transform: scale(1) }
}
@keyframes blinkColor {
0% { color: red }
50% { color: white }
100% { color: red
}
}
@keyframes shake-fade-animation {
0% { opacity: 0; transform: translateX(0); }
25% { opacity: 0.5; transform: translateX(-2px); }
50% { opacity: 1; transform: translateX(2px); }
75% { transform: translateX(-1px); }
100% { transform: translateX(0); }
}
@keyframes spin_unlim {
from { transform: rotate(0deg) }
to { transform: rotate(360deg) }
}
@keyframes sync_blinking {
0%, 100% { 	opacity: 1; box-shadow: none }
25%, 75% { opacity: 0.4; box-shadow: 0 0 6px rgba(129, 230, 255, 0.6) }
50% { opacity: 0.7; box-shadow: 0 0 10px rgba(129, 230, 255, 0.9) }
}
@keyframes scroll-title {
from { left: 100% }
to { left: -100%; }
}
@keyframes goldenPulse {
	0% {
		opacity: 0; background-color: rgba(0, 122, 255, 0.3); box-shadow: 0 0 3px rgba(225, 1, 0, 0.6);
	}
	50% {
		opacity: 1; background-color: rgba(0, 122, 255, 0.15); box-shadow: 0 0 5px rgba(0, 122, 255, 0.8);
	}
	100% {
		background-color: rgba(0, 122, 255, 0.15); box-shadow: 0 0 5px rgba(0, 122, 255, 0.8);
	}
}
@keyframes pulseDot {
	0%, 100% {
		transform: scale(1); box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.7);
	}
	50% {
		transform: scale(1.2); box-shadow: 0 0 0 4px rgba(255, 0, 0, 0);
	}
}
