.ers-main-display,.ers-emoji-option,.ers-tab,.ers-modal-close,.ers-total-count.clickable{cursor:pointer;background:none;border:none;outline:none!important;box-shadow:none!important;transition:all .2s ease}
.ers-rating-container{position:relative;display:inline-block}
.ers-main-display{display:flex;align-items:center}
.ers-heart-button{display:flex;align-items:center;gap:6px}
.ers-heart-svg{width:20px;height:19px;fill:var(--es-color-secondary);transition:stroke .2s ease}
.ers-heart-button:hover .ers-heart-svg{fill:var(--es-color-primary)}
.ers-user-emoji-button{display:flex;align-items:center;gap:6px}
.ers-user-emoji-button .ers-emoji{font-size:16px}
.ers-user-emoji-button .ers-emoji,.ers-user-emoji-button .ers-emoji-svg{transition:transform .2s ease}
.ers-user-emoji-button:hover .ers-emoji,.ers-user-emoji-button:hover .ers-emoji-svg{transform:scale(1.1)}
.ers-emoji-svg{width:35px;height:35px;display:block;transition:transform .2s ease}
.ers-user-emoji-button .ers-emoji-svg{width:20px;height:20px}
.ers-emoji-option[data-emoji="🔥"] .ers-emoji-svg,.ers-user-emoji-button[data-user-emoji="🔥"] .ers-emoji-svg{fill:#ff6b35}
.ers-count{font-size:15px;font-weight:500;line-height:0;color:var(--es-color-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}
.ers-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);margin-bottom:8px;z-index:99999!important;opacity:0;visibility:hidden;transition:all .2s ease;pointer-events:none;overflow:visible!important;display:none!important;background:var(--es-layout-background);border:1px solid var(--es-color-border);border-radius:12px;padding:12px;box-shadow:0 4px 20px rgba(var(--es-color-box-shadow-rgb,0,0,0),.15);min-width:300px;max-width:400px}
.ers-tooltip.show{opacity:1;visibility:visible;display:block!important;pointer-events:all}
.ers-tooltip::before {
content: '';
position: absolute;
top: 100%;
left: 50%;
transform: translateX(-50%);
width: 100px;
height: 12px;
background: transparent;
}
.ers-tooltip-content {
background: var(--es-layout-background);
border-radius: var(--es-layout-elements-border-radius);
box-shadow: 0 4px 20px rgba(var(--es-color-box-shadow-rgb, 0, 0, 0), 0.15);
padding: 12px;
min-width: 320px;
max-width: 400px;
border: 1px solid var(--es-color-border);
}
.ers-emoji-options {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 4px;
margin-bottom: 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--es-color-border);
overflow: visible !important;
position: relative !important;
}
.ers-emoji-option {
padding: 0;
border-radius: var(--es-border-radius, 8px);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-width: 44px;
min-height: 44px;
position: relative;
font-size: 20px;
user-select: none;
-webkit-touch-callout: none;
-webkit-tap-highlight-color: transparent;
flex-shrink: 0;
}
.ers-emoji-option:hover,
.ers-emoji-option:focus,
.ers-emoji-option:focus-visible,
.ers-emoji-option:focus:not(:focus-visible),
.ers-emoji-option:active,
.ers-emoji-option:visited {
outline: none !important;
box-shadow: none !important;
border: none !important;
}
.ers-emoji-option .ers-name {
display: none !important;
}
.ers-emoji-tooltip {
position: absolute !important;
background: var(--es-layout-background) !important;
color: var(--es-color-primary) !important;
padding: 8px 12px !important;
border-radius: 12px !important;
font-size: 16px !important;
font-weight: 400 !important;
white-space: nowrap !important;
z-index: 9999999 !important;
box-shadow: 0 4px 12px rgba(var(--es-color-box-shadow-rgb, 0, 0, 0), 0.15) !important;
border: 1px solid var(--es-color-border) !important;
pointer-events: none !important;
opacity: 0 !important;
transition: none !important;
line-height: 1.4 !important;
}
.ers-emoji-tooltip.show {
opacity: 1 !important;
}
.ers-emoji-tooltip::after {
content: '' !important;
position: absolute !important;
bottom: -5px !important;
left: 50% !important;
transform: translateX(-50%) !important;
border-left: 5px solid transparent !important;
border-right: 5px solid transparent !important;
border-top: 5px solid var(--es-layout-background) !important;
}
@media (max-width: 1024px) {
.ers-tooltip.tooltip-left {
left: -10px !important;
}
.ers-tooltip.tooltip-left .ers-tooltip-triangle {
left: 70px !important; 
}
.ers-tooltip.tooltip-right .ers-tooltip-triangle {
right: 70px !important; 
}
.ers-tooltip.tooltip-center .ers-tooltip-triangle {
left: 50% !important;
}
}
@media (max-width: 768px) {
.ers-tooltip {
min-width: 280px;
max-width: calc(100vw - 32px);
width: auto;
padding: 10px;
font-size: 14px;
}
.ers-emoji-options {
grid-template-columns: repeat(6, 1fr);
gap: 3px;
padding: 8px 6px;
}
.ers-emoji-option {
padding: 6px 2px;
font-size: 11px;
}
.ers-emoji-option .ers-emoji {
font-size: 18px;
}
.ers-tooltip-triangle {
border-width: 10px !important;
display: block !important;
opacity: 1 !important;
visibility: visible !important;
position: absolute !important;
z-index: 9999 !important;
pointer-events: none !important;
}
.ers-tooltip.tooltip-top .ers-tooltip-triangle {
bottom: -10px !important;
top: auto !important;
left: 50% !important;
transform: translateX(-50%) !important;
border-top: 10px solid var(--es-layout-background) !important;
border-left: 10px solid transparent !important;
border-right: 10px solid transparent !important;
border-bottom: none !important;
}
.ers-tooltip.tooltip-bottom .ers-tooltip-triangle {
top: -10px !important;
bottom: auto !important;
left: 50% !important;
transform: translateX(-50%) !important;
border-bottom: 10px solid var(--es-layout-background) !important;
border-left: 10px solid transparent !important;
border-right: 10px solid transparent !important;
border-top: none !important;
}
.ers-tooltip.tooltip-left .ers-tooltip-triangle {
bottom: -10px !important;
top: auto !important;
left: 20px !important;
transform: none !important;
border-top: 10px solid var(--es-layout-background) !important;
border-left: 10px solid transparent !important;
border-right: 10px solid transparent !important;
border-bottom: none !important;
}
.ers-tooltip.tooltip-right .ers-tooltip-triangle {
bottom: -10px !important;
top: auto !important;
right: 20px !important;
left: auto !important;
transform: none !important;
border-top: 10px solid var(--es-layout-background) !important;
border-left: 10px solid transparent !important;
border-right: 10px solid transparent !important;
border-bottom: none !important;
}
.ers-tooltip.tooltip-center .ers-tooltip-triangle {
bottom: -10px !important;
top: auto !important;
left: 40% !important;
transform: translateX(-100%) !important;
border-top: 10px solid var(--es-layout-background) !important;
border-left: 10px solid transparent !important;
border-right: 10px solid transparent !important;
border-bottom: none !important;
}
.ers-users-grid {
grid-template-columns: repeat(3, 1fr);
gap: 12px;
}
.ers-user-avatar {
width: 80px !important;
height: 80px !important;
}
.ers-user-name {
font-size: 11px;
}
.ers-user-emoji-overlay {
width: 26px !important;
height: 26px !important;
font-size: 10px;
}
.ers-user-emoji-overlay .ers-user-emoji-svg {
width: 20px;
height: 20px;
}
.ers-user-avatar-wrapper .ers-user-emoji-overlay {
width: 24px !important;
height: 24px !important;
bottom: 2px !important;
right: -2px !important;
}
.ers-user-avatar-wrapper .ers-user-emoji-overlay .ers-user-emoji-svg {
width: 20px !important;
height: 20px !important;
}
}
.ers-tooltip.tooltip-top {
bottom: calc(100% + 10px);
top: auto;
}
.ers-tooltip.tooltip-top .ers-tooltip-triangle {
bottom: -12px;
top: auto;
left: 50%;
transform: translateX(-50%);
border-left: 12px solid transparent;
border-right: 12px solid transparent;
border-top: 12px solid var(--es-layout-background);
border-bottom: none;
opacity: 1 !important;
visibility: visible !important;
}
.ers-tooltip.tooltip-top::after {
display: none;
}
.ers-tooltip.tooltip-bottom {
top: calc(100% + 10px);
bottom: auto;
}
.ers-tooltip.tooltip-bottom .ers-tooltip-triangle {
top: -12px;
bottom: auto;
left: 50%;
transform: translateX(-50%);
border-left: 12px solid transparent;
border-right: 12px solid transparent;
border-bottom: 12px solid var(--es-layout-background);
border-top: none;
opacity: 1 !important;
visibility: visible !important;
}
.ers-tooltip.tooltip-bottom::after {
display: none;
}
.ers-tooltip.tooltip-left {
left: -10px !important;
right: auto;
transform: none;
}
.ers-tooltip.tooltip-left .ers-tooltip-triangle {
opacity: 1 !important;
visibility: visible !important;
}
.ers-tooltip.tooltip-center {
left: 100%;
right: auto;
transform: translateX(-50%);
}
.ers-tooltip.tooltip-center .ers-tooltip-triangle {
opacity: 1 !important;
visibility: visible !important;
}
.ers-tooltip.tooltip-right {
left: auto;
right: 0;
transform: none;
}
.ers-tooltip.tooltip-right .ers-tooltip-triangle {
opacity: 1 !important;
visibility: visible !important;
}
.ers-tooltip-triangle {
position: absolute;
width: 0;
height: 0;
border-style: solid;
z-index: 9999;
opacity: 1 !important;
visibility: visible !important;
pointer-events: none;
display: block !important;
}
.ers-modal-content {
overflow: visible;
}
.ers-tab-pane {
overflow: visible;
}
.ers-emoji-option .ers-emoji {
font-size: 20px;
margin-bottom: 2px;
display: block;
}
.ers-emoji-option .ers-name {
font-size: 10px;
font-weight: 500;
}
.ers-recent-block {
display: flex;
align-items: center;
justify-content: start;
gap: 20px;
height: 20px;
}
.ers-recent-ratings {
display: flex;
align-items: center;
justify-content: space-between;
}
.ers-recent-users {
display: flex;
align-items: center;
gap: -8px;
}
.ers-recent-user {
position: relative;
margin-left: -8px;
z-index: 1;
}
.ers-recent-user:first-child {
margin-left: 0;
z-index: 3;
}
.ers-recent-user:nth-child(2) {
z-index: 2;
}
.ers-recent-user:last-child {
z-index: 1;
}
.ers-user-emoji-overlay {
position: absolute;
bottom: -2px;
right: -2px;
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
}
.ers-user-emoji-overlay .ers-user-emoji-svg {
width: 16px;
height: 16px;
}
.ers-user-link {
display: flex;
flex-direction: column;
align-items: center;
text-decoration: none;
color: inherit;
position: relative;
width: 100%;
}
.ers-recent-user .ers-user-emoji-overlay .ers-user-emoji-svg {
display: none;
}
.ers-avatar {
width: 30px;
height: 30px;
border-radius: var(--es-avatar-border-radius, 50%);
border: 2px solid var(--es-layout-background);
transition: transform 0.2s ease;
}
.ers-user-link:hover .ers-avatar {
transform: scale(1.05);
}
.ers-total-info {
display: flex;
flex-direction: column;
align-items: flex-end;
}
.ers-total-count.clickable {
color: var(--es-color-accent);
font-weight: 400;
font-size: 15px;
text-decoration: none;
}
.ers-total-count.clickable:hover {
text-decoration: underline;
}
.ers-total-label {
font-size: 12px;
color: var(--es-color-secondary);
font-weight: 500;
}
.ers-modal-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(var(--es-color-overlay-background-rgb, 0, 0, 0), 0.5);
z-index: 2000;
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
visibility: hidden;
transition: none;
}
.ers-modal-overlay.show {
opacity: 1;
visibility: visible;
}
.ers-modal {
background: var(--es-layout-background);
border-radius: 14px;
width: 90%;
max-width: 500px;
max-height: 80vh;
overflow: hidden;
transform: scale(1);
transition: none;
border: 1px solid var(--es-color-border);
}
.ers-modal-overlay.show .ers-modal {
transform: scale(1);
}
.ers-modal-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 10px 20px;
border-bottom: 1px solid var(--es-color-border);
position: relative;
z-index: 5;
pointer-events: auto;
}
.ers-modal-header h3 {
margin: 0;
font-size: 20px;
font-weight: 400;
color: var(--es-color-primary);
}
.ers-modal-close {
font-size: 26px;
color: var(--es-color-secondary);
padding: 0;   
display: flex;
align-items: center;
justify-content: center;
font-weight: 400;
line-height: 1;
position: relative;
z-index: 10;
pointer-events: auto;
}
.ers-modal-close:hover {
color: var(--es-color-primary);
}
.ers-modal-content {
max-height: calc(80vh - 80px);
overflow-y: auto;
}
.ers-tabs {
display: flex;
border-bottom: 1px solid var(--es-alert-bg-primary);
padding: 0 20px;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
scrollbar-width: none; 
-ms-overflow-style: none;
scroll-behavior: smooth;
cursor: grab;
pointer-events: auto;
}
.ers-tabs:active {
cursor: grabbing;
}
.ers-tabs.ers-tabs-dragging {
cursor: grabbing;
scroll-behavior: auto; 
user-select: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
}
.ers-tabs.ers-tabs-dragging .ers-tab {
pointer-events: none;
}
.ers-tabs::-webkit-scrollbar {
display: none;
width: 0;
height: 0;
}
@media (max-width: 768px) {
.ers-tabs {
scroll-snap-type: x mandatory;
-webkit-scroll-snap-type: x mandatory;
touch-action: pan-x;
user-select: none;
-webkit-user-select: none;
}
.ers-tab {
scroll-snap-align: start;
-webkit-scroll-snap-align: start;
}
}
@media (min-width: 769px) {
.ers-tabs {
pointer-events: all;
-webkit-user-select: text; 
user-select: text;
}
.ers-tab {
pointer-events: all;
}
}
.ers-tab {
padding: 10px 16px;
color: var(--es-color-secondary);
font-weight: 400;
font-size: 15px;
border-bottom: 2px solid transparent;
transition: none;
white-space: nowrap;
display: flex;
align-items: center;
gap: 4px;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-webkit-tap-highlight-color: transparent;
border-radius: 0;
flex-shrink: 0;
}
.ers-tab.active {
color: var(--es-color-secondary);
border-bottom-color: var(--es-color-primary);
}
.ers-tab.active .ers-tab-count {
color: var(--es-color-primary);
}
.ers-tab:hover {
opacity: .84 !important;
color: var(--es-color-secondary);
}
.ers-tab-emoji {
font-size: 14px;
}
.ers-tab-emoji-svg {
width: 22px;
height: 22px;
display: inline-block;
vertical-align: middle;
}
.ers-tab-count {
font-size: 14px;
font-weight: 400;
color: var(--es-color-secondary);
padding: 3px 0px 0px 4px;
}
.ers-tab-content {
padding: 0 20px;
max-height: 400px;
overflow-y: auto;
overflow-x: hidden;
-webkit-overflow-scrolling: touch;
scrollbar-width: thin;
scrollbar-color: var(--es-color-contrast-100) transparent;
}
.ers-tab-content:hover {
scrollbar-color: var(--es-color-contrast-100) transparent;
}
.ers-tab-content::-webkit-scrollbar {
width: 6px;
}
.ers-tab-content::-webkit-scrollbar-track {
background: transparent;
}
.ers-tab-content::-webkit-scrollbar-thumb {
background: var(--es-color-contrast-100);
border-radius: 3px;
}
.ers-tab-content::-webkit-scrollbar-thumb:hover {
background: var(--es-color-contrast-100);
}
.ers-tab-pane {
display: none;
}
.ers-tab-pane.active {
display: block;
}
.ers-users-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 16px;
padding: 16px 0;
}
.ers-user-item {
display: flex;
flex-direction: column;
align-items: center;
padding: 10px;
border-radius: 12px;
transition: background 0.2s ease;
text-align: center;
position: relative;
}
.ers-user-item:hover {
background: var(--es-color-highlight-background);
}
.ers-user-avatar {
max-width: 80px;
width: 100%;
height: auto;
aspect-ratio: 1;
border-radius: var(--es-avatar-border-radius, 50%);
margin-bottom: 5px;
object-fit: cover;
border: 1px solid var(--es-color-border, transparent);
position: relative;
}
.ers-user-avatar-wrapper {
position: relative;
display: inline-block;
}
.ers-user-avatar-wrapper .ers-user-emoji-overlay {
position: absolute;
bottom: 2px;
right: -2px;
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
background: var(--es-layout-background);
border-radius: 50%;
border: 1px solid var(--es-color-border);
padding: 1px;
z-index: 2;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.ers-user-avatar-wrapper .ers-user-emoji-overlay .ers-user-emoji-svg {
width: 18px;
height: 18px;
}
.ers-user-name {
font-size: 10px;
font-weight: 500;
color: var(--es-color-primary);
text-align: center;
margin-bottom: 4px;
line-height: 1.4;
word-break: break-word;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
line-clamp: 2;
-webkit-box-orient: vertical;
letter-spacing: 0.009em;
}
.ers-loading,
.ers-empty,
.ers-error {
color: var(--es-color-secondary);
font-size: 15px;
height: 20px;
display: flex;
align-items: center;
justify-content: start;
}
.ers-tab-content .ers-loading,
.ers-tab-content .ers-empty,
.ers-tab-content .ers-error {
color: var(--es-color-secondary);
font-size: 15px;
height: 151px;
display: flex;
align-items: center;
justify-content: center;
}
.ers-toast {
position: fixed;
bottom: 20px;
left: 50%;
transform: translateX(-50%) translateY(100px);
background: var(--es-layout-background);
padding: 12px 20px;
border-radius: var(--es-button-border-radius, 8px);
box-shadow: 0 4px 20px rgba(var(--es-color-box-shadow-rgb, 0, 0, 0), 0.15);
z-index: 3000;
opacity: 0;
visibility: hidden;
transition: all 0.3s ease;
font-size: 14px;
font-weight: 500;
color: var(--es-color-primary);
border: 1px solid var(--es-color-border);
}
.ers-toast.show {
transform: translateX(-50%) translateY(0);
opacity: 1;
visibility: visible;
}
.ers-toast.error {
background: var(--es-color-accent);
color: var(--es-color-button-contrast);
border-color: var(--es-color-accent);
}
.ers-heart-button.loading,
.ers-user-emoji-button.loading {
opacity: 0.6;
pointer-events: none;
}
.ers-heart-button.loading .ers-heart-svg,
.ers-user-emoji-button.loading .ers-emoji,
.ers-user-emoji-button.loading .ers-emoji-svg,
.ers-emoji-option.loading .ers-emoji,
.ers-emoji-option.loading .ers-emoji-svg {
animation: none;
}
.ers-emoji-option.animate-active {
transform: scale(1.2);
background: #f0f2f5;
}
.ers-emoji-option.loading {
opacity: 0.6;
pointer-events: none;
outline: none;
border: none;
box-shadow: none;
}
@keyframes pulse {
0%, 100% { transform: scale(1); }
50% { transform: scale(1.1); }
}
.ers-heart-button.animate-active {
animation: heartBeat 0.6s ease;
}
.ers-user-emoji-button.animate-active {
animation: emojiBounce 0.6s ease;
}
.ers-heart-button.animate-inactive,
.ers-user-emoji-button.animate-inactive {
animation: fadeOut 0.4s ease;
}
@keyframes heartBeat {
0%, 100% { transform: scale(1); }
25% { transform: scale(1.2); }
50% { transform: scale(0.95); }
75% { transform: scale(1.1); }
}
@keyframes emojiBounce {
0%, 100% { transform: scale(1); }
25% { transform: scale(1.3) rotate(-5deg); }
50% { transform: scale(0.9) rotate(5deg); }
75% { transform: scale(1.1) rotate(-2deg); }
}
@keyframes fadeOut {
0% { opacity: 1; transform: scale(1); }
100% { opacity: 0.8; transform: scale(0.95); }
}
@media (max-width: 480px) {
.ers-users-grid {
grid-template-columns: repeat(2, 1fr);
}
.ers-heart-button,
.ers-user-emoji-button {
font-size: 15px;
}
.ers-user-avatar-wrapper .ers-user-emoji-overlay {
width: 28px !important;
height: 28px !important;
bottom: 2px !important;
right: -2px !important;
}
.ers-user-avatar-wrapper .ers-user-emoji-overlay .ers-user-emoji-svg {
width: 24px !important;
height: 24px !important;
}
}
@media (min-width: 1025px) {
.ers-user-avatar-wrapper .ers-user-emoji-overlay {
width: 24px !important;
height: 24px !important;
bottom: 2px !important;
right: -2px !important;
}
.ers-user-avatar-wrapper .ers-user-emoji-overlay .ers-user-emoji-svg {
width: 20px !important;
height: 20px !important;
}
}