/*
* WP Involve Impressions System Front-end CSS
*/
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap');
.wp-involve-buttons-container, .wp-involve-impressions-container {
    width: 100%;
    clear: both;
    padding: 20px 0;
}
.wp-involve-impressions-container {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
#wp-involveAjaxResponse {
    display: none;
}
.wp-involve-btn-container {
    display: inline-block;
    width: 48%;
    margin: 0 1%;
}
.wp-involve-impression-icon-box {
    display: inline-block;
    width: 27px;
    height: 27px;
    text-align: center;
    font-size: 23px;
    line-height: 27px;
    margin: 0 3px;
    border: 2px solid #ededed;
    border-radius: 50%;
    transition: all 0.3s ease;
    vertical-align: top;
}
.emoji-impressions .wp-involve-impression-icon-box {
    border: none;
    width: 21px;
    height: 21px;
    margin-right: 8px;
}
.emoji-impressions .wp-involve-impression-icon-box .wp-involve-impression-icon {
    width: 100%;
    height: 100%;
    display: inline-block;
    position: relative;
    z-index: 99;
}

/* Visual feedback when limit is reached */
.wp-involve-impression-icon-box.wp-involve-limit-reached {
    animation: wp-involve-shake 0.5s ease-in-out;
    border-color: #ff6b6b;
    background-color: rgba(255, 107, 107, 0.1);
}

@keyframes wp-involve-shake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    75% { transform: translateX(5px); }
}
.emoji-impressions .wp-involve-impression-icon-box .wp-involve-impression-icon img {
    max-width: 100%;
}
.wp-involve-impression {
    display: inline-block;
    width: auto;
    height: 100%;
    position: relative;
    color: #666666;
    transition: 0.3s all;
}
.colorful-impressions .wp-involve-impression {
    color: #ffffff;
}

.colorful-impressions .wp-involve-like-impression {background: #0181d6; border-color: #0181d6}
.colorful-impressions .wp-involve-love-impression {background: #e20422; border-color: #e20422;}
.colorful-impressions .wp-involve-laugh-impression {background: #e99f00; border-color: #e99f00;}
.colorful-impressions .wp-involve-amazed-impression {background: #02101a; border-color: #02101a;}
.colorful-impressions .wp-involve-sad-impression {background: #7e7e7e; border-color: #7e7e7e;}
.colorful-impressions .wp-involve-angry-impression {background: #eb5701; border-color: #eb5701;}

/* Estilos para reação ativa */
.wp-involve-impression-active {
    background: #0073aa !important;
    color: #ffffff !important;
    transform: scale(1.1) !important;
    box-shadow: 0 2px 8px rgba(0, 115, 170, 0.3) !important;
}

.font-impressions .wp-involve-impression-icon-box:has(.wp-involve-impression-active) {
    border-color: #0073aa !important;
    background: #f0f8ff !important;
}

.emoji-impressions .wp-involve-impression-icon-box:has(.wp-involve-impression-active) {
    background: #0073aa !important;
    border: 2px solid #0073aa !important;
    transform: scale(1.05) !important;
    box-shadow: 0 2px 8px rgba(0, 115, 170, 0.3) !important;
}

/* Fallback para navegadores que não suportam :has() */
.wp-involve-impression-icon-box.wp-involve-active {
    border-color: #0073aa !important;
    background: #f0f8ff !important;
    transform: scale(1.05) !important;
    box-shadow: 0 2px 8px rgba(0, 115, 170, 0.3) !important;
}

.wp-involve-impression-icon-box:hover .wp-involve-impression {
    transform: scale(1.1,1.1);
}
.wp-involve-impression-tooltip {
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -40px;
    width: 80px;
    height: 25px;
    background: #111111;
    color: #ffffff;
    font-size: 12px;
    border-radius: 5px;
    line-height: 25px;
    display: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: "Roboto", sans-serif;
}
.wp-involve-impression-tooltip::after {
    content: "";
    position: absolute;
    bottom: -9px;
    left: 50%;
    margin-left: -7px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 8px 0 8px;
    border-color: #111111 transparent transparent transparent;
}
.wp-involve-impression:hover .wp-involve-impression-tooltip {
    display: inline-block;
}
.wp-involve-impression-count {
    font-size: 8px;
    padding: 0;
    min-height: 16px;
    min-width: 16px;
    border-radius: 50%;
    background: #ffffff;
    color: #444444;
    position: absolute;
    top: -10px;
    right: -6px;
    line-height: 16px;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    text-align: center;
    border: 2px solid #ededed;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}
.emoji-impressions .wp-involve-impression-count {
    top: -12px;
    right: -8px;
    z-index: 10;
    background: #ffffff;
    border: 2px solid #ededed;
    min-height: 14px;
    min-width: 14px;
    font-size: 7px;
    line-height: 14px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}
.colorful-impressions .wp-involve-impression .wp-involve-impression-count {
    background: #ffffff;
}
.wp-involve-btn {
    display: flex;
    background: #f8f8f8;
    text-align: center;
    text-transform: uppercase;
    color: #444444;
    transition: 0.5s all;
    font-family: "Roboto", serif;
    position: relative;
    font-weight: bold;
}
.wp-involve-btn-medium {
    display: inline-block;
    width: 48%;
    max-width: 190px;
    padding: 10px;
    font-size: 14px;
    margin: 0 1%;
    background: #f8f8f8;
    text-align: left;
    text-transform: uppercase;
    color: #444444;
    transition: 0.5s all;
    font-family: "Roboto", serif;
    position: relative;
    font-weight: bold;
}
.wp-involve-btn:hover {
    text-decoration: none;
    color: inherit;
}
.wp-involve-flat-btn .wp-involve-btn-icon {
    padding: 10px 30px;
    font-size: 20px;
    float: left;
    height: 100%;
}
.wp-involve-flat-btn .wp-involve-btn-label {
    margin-left: 5px;
    padding: 10px 20px;
    font-size: 20px;
    float: left;
    height: 100%;
    text-align: center;
    flex: 1;
    font-family: "Roboto", sans-serif;
}
.wp-involve-btn-medium .wp-involve-btn-icon {
    padding: 10px;
}
.wp-involve-btn-medium .wp-involve-btn-label {
    margin-left: 35px;
}
.wp-involve-flat-btn.wp-involve-like-btn .wp-involve-btn-icon {
    background: rgb(15, 122, 69);
    position: relative;
}
.wp-involve-flat-btn.wp-involve-dislike-btn .wp-involve-btn-icon {
    background-color: #ce504c;
    position: relative;
}
.wp-involve-flat-btn.wp-involve-like-btn .wp-involve-btn-icon #wp-involveLikeCount, .wp-involve-flat-btn.wp-involve-dislike-btn .wp-involve-btn-icon #wp-involveDislikeCount {
    font-size: 14px;
    width: 36px;
    height: 36px;
    line-height: 38px;
    text-align: center;
    color: #333333;
    background: #ffffff;
    border-radius: 50%;
    display: inline-block;
    position: absolute;
    top: 50%;
    margin-top: -18px;
    right: -18px;
    font-family: "Roboto", sans-serif;
    text-transform: lowercase;
}
.wp-involve-like-btn, .wp-involve-dislike-btn {
    color: #ffffff !important;
    font-family: "Roboto", sans-serif;
}
.wp-involve-like-btn {
    background-color: rgba(45, 143, 88, 0.8);
}
.wp-involve-dislike-btn {
    background-color: rgb(252, 90, 81);
}
.wp-involve-like-btn:hover {
    background-color: rgba(45, 143, 88, 1);
}
.wp-involve-dislike-btn:hover {
    background-color: rgb(224, 77, 69);
}
.wp-involve-ajax-response span {
    display: inline-block;
    margin: 10px;
    text-align: center;
    padding: 5px;
    width: 100%;
    font-size: 16px;
    font-family: "Roboto", sans-serif;
}
.wp-involve-count-stats {
    padding: 5px;
    margin-bottom: 10px;
    text-align: center;
}
.wp-involve-count-stats p {
    margin-bottom: 0;
    font-size: 16px;
    font-family: "Roboto", sans-serif;
}
.wp-involve-like-count-message {
    margin: 20px 1% 0 1%;
    font-size: 22px;
    text-align: center;
    width: 98%;
    display: inline-block;
    padding: 10px;
    border: 1px solid #cccccc;
    font-family: "Roboto", sans-serif;
}
.wp-involve-vs-bar-container {
    width: 100%;
    clear: both;
    display: flex;
    padding: 0 5px;
    align-items: center;
    margin-bottom: 1em;
}
.wp-involve-vs-bar-container > div {
    text-align: center;
    color: #ffffff;
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    height: 26px;
    line-height: 26px;
    padding: 0 20px;
}
.wp-involve-vs-bar-container #wp-involve-vsBar-likes {
    background-color: #75af05;
    z-index: 1;
    position: relative;
}
.wp-involve-vs-bar-container #wp-involve-vsBar-dislikes {
    background-color: #dc3e19;
    z-index: 1;
    position: relative;
}
.wp-involve-vs-bar-container .wp-involve-bar-vs-badge {
    width: 40px;
    height: 40px;
    background-color: #333333;
    color: #ffffff;
    font-size: 15px;
    text-align: center;
    line-height: 36px;
    position: absolute;
    right: -20px;
    top: -8px;
    border-radius: 50%;
    z-index: 5 !important;
    border:3px solid #ffffff;
}
/*--------------------------------
* WP Involve Widgets CSS
--------------------------------*/
.wp-involve-widget-title {
    font-size: 22px;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1;
    border-bottom: 3px solid #333333;
    color: #ffffff;
}
.wp-involve-widget-content {
    padding: 10px;
    background-color: #ffffff;
    padding-top: 1em;
}
.wp-involve-widget-title span{
    padding: 15px 20px 10px 20px;
    background-color: #333333;
    display: inline-block;
}
.wp-involve-widget-posts-row {
    display: flex;
    align-items: center;
    margin-bottom: 1em;
    padding-left: 10px;
}
.wp-involve-widget-post-thumb {
    position: relative;
    min-width: 70px;
    max-width: 70px;
}
.wp-involve-widget-post-thumb img {
    width: 100%;
}
.wp-involve-post-thumb-badge {
    position: absolute;
    left: -10px;
    top: 5px;
    display: inline-block;
    width: 25px;
    height: 25px;
    font-size: 14px;
    text-align: center;
    line-height: 25px;
    background: #333333;
    color: #ffffff;
    z-index: 1;
    border-radius: 2px;
}
.wp-involve-post-thumb-badge.badge-1 { background: #73a517;}
.wp-involve-post-thumb-badge.badge-2 { background: #83a515;}
.wp-involve-post-thumb-badge.badge-3 { background: #a1a410;}
.wp-involve-post-thumb-badge.badge-4 { background: #d0a008;}
.wp-involve-post-thumb-badge.badge-5 { background: #f19702;}
.wp-involve-post-thumb-badge.badge-6 { background: #ff8d00;}
.wp-involve-post-thumb-badge.badge-7 { background: #ff7800;}
.wp-involve-post-thumb-badge.badge-8 { background: #ff6200;}
.wp-involve-post-thumb-badge.badge-9 { background: #ff4400;}
.wp-involve-post-thumb-badge.badge-10 { background: #ff2c00;}

.wp-involve-widget-post-title {
    margin-left: 10px;
    line-height: 1;
}
.wp-involve-widget-post-title h3 {
    font-size: 18px;
    font-family: "Roboto", sans-serif;
    line-height: 1.2;
    margin: 0;
    font-weight: 500;
}
.wp-involve-widget-post-title h3 a {
    color: #222222;
    transition: 0.5s all;
}
.wp-involve-widget-post-title h3 a:hover {
    text-decoration: none;
    color: royalblue;
}
.wp-involve-widget-liked-count {
    font-size: 12px;
    font-family: "Roboto", sans-serif;
    font-weight: 500;
    color: #666666;
}
/*--------------------------------
* WP Involve Social Bar CSS
--------------------------------*/
.wp-involve-social-bar {
    display: flex;
    position: fixed;
    z-index: 100;
    top: auto;
    transition: all 0.3s ease;
}

/* Correção específica para Firefox - prevenir alargamento da página */
@-moz-document url-prefix() {
    body {
        overflow-x: hidden !important;
    }
    
    .wp-involve-social-bar {
        max-width: 100vw;
        box-sizing: border-box;
    }
    
    .wp-involve-social-bar.mobile-right,
    .wp-involve-social-bar.desktop-right {
        right: 0 !important;
        left: auto !important;
    }
}

/* Correções gerais para prevenir overflow horizontal */
html {
    overflow-x: hidden;
}

body.wp-involve-mobile-bottom-active,
body.wp-involve-mobile-hidden {
    overflow-x: hidden !important;
}

/* Verificação de opção de desabilitar - sempre ocultar se desabilitado */
body.wp-involve-sharing-disabled .wp-involve-social-bar {
    display: none !important;
}

/* Ocultar em mobile quando opção "Hide on mobile" estiver ativa */
@media screen and (max-width: 768px) {
    body.wp-involve-mobile-hidden .wp-involve-social-bar {
        display: none !important;
    }
    
    body.wp-involve-mobile-hidden .wp-involve-social-bar-toggle {
        display: none !important;
    }
}

.wp-involve-social-bar .wp-involve-share-icon {
    padding: 8px 15px;
    font-size: 18px;
    color: #ffffff;
    background-color: #333333;
    text-align: center;
    position: relative;
    transition: all 0.2s ease;
    text-decoration: none;
}
.wp-involve-social-bar .wp-involve-share-icon:hover {
    position: relative;
    text-decoration: none;
    color: #ffffff;
}
.wp-involve-social-bar .wp-involve-share-icon.fb {background-color: #3B5998;}
.wp-involve-social-bar .wp-involve-share-icon.tw {background-color: #2EA6DE;}
.wp-involve-social-bar .wp-involve-share-icon.wa {background-color: #57BB63;}
.wp-involve-social-bar .wp-involve-share-icon.ig {background-color: #E4405F;}
.wp-involve-social-bar .wp-involve-share-icon.bs {background-color: #00A8E8;}
.wp-involve-social-bar .wp-involve-share-icon.li {background-color: #0077B5;}
.wp-involve-social-bar .wp-involve-share-icon.ma {background-color: #6364FF;}
.wp-involve-social-bar .wp-involve-share-icon.em {background-color: #DA4636;}

/* Desktop Styles */
@media screen and (min-width: 769px){
    .wp-involve-social-bar.desktop-left, .wp-involve-social-bar.desktop-right {
        flex-direction: column;
        top: 50%;
        height: auto;
        max-height: 300px;
        margin-top: -150px;
        width: auto;
    }
    .wp-involve-social-bar.desktop-left {
        left: 0;
    }
    .wp-involve-social-bar.desktop-right {
        right: 0;
        max-width: calc(100vw - 10px);
    }
    .wp-involve-social-bar.desktop-bottom {
        bottom: 0;
        top: auto;
        left: 50%;
        width: auto;
        max-width: 350px;
        margin-left: -175px;
        flex-direction: row;
        height: auto;
        border-radius: 8px 8px 0 0;
        overflow: hidden;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
    }
    .wp-involve-social-bar.desktop-left .wp-involve-share-icon:hover  {
        border-left: 3px solid;
        padding-left: 12px;
    }
    .wp-involve-social-bar.desktop-right .wp-involve-share-icon:hover  {
        border-right: 3px solid;
        padding-right: 12px;
    }
    .wp-involve-social-bar.desktop-bottom .wp-involve-share-icon:hover  {
        border-bottom: 3px solid;
        padding-bottom: 5px;
    }
    
    /* Esconder em mobile quando configurado para desktop */
    .wp-involve-social-bar.desktop-left,
    .wp-involve-social-bar.desktop-right,
    .wp-involve-social-bar.desktop-bottom {
        display: flex;
    }
}

/* Mobile Styles */
@media screen and (max-width: 768px){
    /* Configuração para barras laterais em mobile - inicialmente escondidas */
    .wp-involve-social-bar.mobile-left, 
    .wp-involve-social-bar.mobile-right {
        flex-direction: column !important;
        top: 50% !important;
        height: auto !important;
        max-height: 300px !important;
        margin-top: -150px !important;
        width: auto !important;
        z-index: 98 !important;
        /* Inicialmente escondida mas pode ser mostrada via toggle */
        transform: translateX(-100%) !important;
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }
    
    .wp-involve-social-bar.mobile-left {
        left: 0 !important;
        max-width: calc(100vw - 10px) !important;
    }
    
    .wp-involve-social-bar.mobile-right {
        right: 0 !important;
        transform: translateX(100%) !important;
        max-width: calc(100vw - 10px) !important;
    }
    
    /* Mostrar quando não está na classe hidden - com !important para sobrescrever outros estilos */
    .wp-involve-social-bar.mobile-left:not(.hidden) {
        transform: translateX(0) !important;
    }
    
    .wp-involve-social-bar.mobile-right:not(.hidden) {
        transform: translateX(0) !important;
    }
    
    /* Forçar esconder quando classe hidden está presente */
    .wp-involve-social-bar.mobile-left.hidden {
        transform: translateX(-100%) !important;
    }
    
    .wp-involve-social-bar.mobile-right.hidden {
        transform: translateX(100%) !important;
    }
    
    /* Estilo dos ícones nas barras laterais mobile */
    .wp-involve-social-bar.mobile-left .wp-involve-share-icon,
    .wp-involve-social-bar.mobile-right .wp-involve-share-icon {
        padding: 12px 15px;
        font-size: 18px;
        display: block;
        width: 50px;
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    
    .wp-involve-social-bar.mobile-left .wp-involve-share-icon:last-child,
    .wp-involve-social-bar.mobile-right .wp-involve-share-icon:last-child {
        border-bottom: none;
    }
    
    /* Configuração correta para mobile-bottom */
    .wp-involve-social-bar.mobile-bottom {
        bottom: 0 !important;
        top: auto !important;
        left: 0 !important;
        right: 0 !important;
        margin: 0 !important;
        width: 100% !important;
        flex-direction: row !important;
        height: 50px !important;
        max-height: 50px !important;
        background: rgba(255,255,255,0.95);
        backdrop-filter: blur(10px);
        border-top: 1px solid #e0e0e0;
        box-shadow: 0 -2px 10px rgba(0,0,0,0.1);
        z-index: 99;
    }
    
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon {
        flex: 1 !important;
        margin: 0 !important;
        padding: 12px 8px !important;
        font-size: 16px !important;
        border-right: 1px solid rgba(255,255,255,0.2);
        background-color: transparent !important;
        color: #333 !important;
    }
    
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon:last-child {
        border-right: none;
    }
    
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon:hover {
        background-color: #f0f0f0 !important;
        color: #000 !important;
        transform: translateY(-2px);
    }
    
    /* Ícones coloridos específicos para mobile bottom */
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon.fb:hover {color: #3B5998 !important;}
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon.wa:hover {color: #57BB63 !important;}
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon.ig:hover {color: #E4405F !important;}
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon.bs:hover {color: #00A8E8 !important;}
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon.li:hover {color: #0077B5 !important;}
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon.ma:hover {color: #6364FF !important;}
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon.em:hover {color: #DA4636 !important;}
    
    /* Ajustar margens do conteúdo principal quando barra está ativa */
    body.wp-involve-mobile-bottom-active {
        margin-bottom: 50px !important;
    }
    
    body.wp-involve-mobile-bottom-active .site-footer,
    body.wp-involve-mobile-bottom-active footer {
        margin-bottom: 50px;
    }
}

/* Estilos para pequenos dispositivos */
@media screen and (max-width: 480px){
    .wp-involve-social-bar.mobile-bottom {
        height: 45px !important;
    }
    
    .wp-involve-social-bar.mobile-bottom .wp-involve-share-icon {
        padding: 10px 6px !important;
        font-size: 14px !important;
    }
    
    body.wp-involve-mobile-bottom-active {
        margin-bottom: 45px !important;
    }
}

/* Botão de toggle para esconder/mostrar a barra em mobile */
button.wp-involve-social-bar-toggle {
    display: none !important;
    position: fixed !important;
    bottom: 15px !important;
    right: 15px !important;
    width: 50px !important;
    height: 50px !important;
    background: rgba(51, 51, 51, 0.9) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50% !important;
    font-size: 18px !important;
    cursor: pointer !important;
    z-index: 999999 !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
    transition: all 0.3s ease !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    outline: none !important;
    margin: 0 !important;
    padding: 0 !important;
    /* Garantir que não saia da área visível */
    max-width: calc(100vw - 30px) !important;
    max-height: calc(100vh - 30px) !important;
}

button.wp-involve-social-bar-toggle i {
    font-size: 18px !important;
    color: #fff !important;
    line-height: 1 !important;
    display: block !important;
}

/* Força exibição em mobile */
@media screen and (max-width: 768px) {
    button.wp-involve-social-bar-toggle {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    
    .wp-involve-social-bar-toggle:hover {
        background: rgba(85, 85, 85, 0.9);
        transform: scale(1.1);
    }
    
    .wp-involve-social-bar-toggle:active {
        transform: scale(0.95);
    }
    
    /* Ajustar posição do botão quando há barra bottom */
    body.wp-involve-mobile-bottom-active .wp-involve-social-bar-toggle {
        bottom: 70px;
    }
    
    /* Estados escondidos das barras */
    .wp-involve-social-bar.mobile-bottom.hidden {
        transform: translateY(100%);
    }
    
    .wp-involve-social-bar.mobile-left.hidden {
        transform: translateX(-100%);
    }
    
    .wp-involve-social-bar.mobile-right.hidden {
        transform: translateX(100%);
    }
    
    /* Ajuste de margem quando barra bottom está escondida */
    body.wp-involve-mobile-bottom-active.wp-involve-bar-hidden {
        margin-bottom: 0 !important;
    }
    
    /* Animações mais suaves */
    .wp-involve-social-bar {
        transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }
}


/*--------------------------------
* WP Involve Responsive CSS
--------------------------------*/
@media all and (max-width: 768px){
    .wp-involve-btn-container {
        width: 100%;
        text-align: center;
        margin-bottom: 10px;
    }
    .wp-involve-impression-icon-box {
        width: 20px;
        height: 20px;
        line-height: 20px;
        margin: 0 2px;
        font-size: 18px;
        position: relative;
    }
    .emoji-impressions .wp-involve-impression-icon-box {
        width: 16px;
        height: 16px;
    }
    .emoji-impressions .wp-involve-impression-count {
        top: -14px; /* Subiu 4px (aproximadamente 3mm no mobile) */
        right: -6px;
        min-height: 12px;
        min-width: 12px;
        font-size: 6px;
        line-height: 12px;
    }
    
    /* Contadores para ícones de fonte no mobile */
    .font-impressions .wp-involve-impression-count,
    .wp-involve-impression-count {
        top: -14px; /* Subir também para ícones de fonte */
        right: -8px;
        min-height: 14px;
        min-width: 14px;
        font-size: 7px;
        line-height: 14px;
    }
    
    /* Reduzir espaços excessivos entre componentes no mobile - modo completo */
    .wp-involve-complete-system .wp-involve-vs-section {
        margin: 5px 0 !important; /* Reduzido de 10px para 5px */
    }
    
    .wp-involve-complete-system .wp-involve-share-section {
        margin-top: 8px !important; /* Reduzido de 15px para 8px */
    }
    
    .wp-involve-complete-system .wp-involve-vs-bar-container {
        padding: 5px 0 !important; /* Reduzido de 10px para 5px */
        min-height: 40px !important; /* Reduzido de 50px para 40px */
    }
    
    .wp-involve-complete-system .wp-involve-vs-bar-container > div {
        margin: 8px 0 !important; /* Reduzido de 12px para 8px */
    }
    
    .wp-involve-complete-system .wp-involve-buttons-line {
        margin-bottom: 5px !important; /* Reduzido de 10px para 5px */
    }
    
    /* Reduzir padding do wrapper de impressões no mobile */
    .wp-involve-impressions-wrapper.wp-involve-impressions-visible {
        margin: 5px 0 !important; /* Reduzido de 10px para 5px */
        padding-top: 15px !important; /* Reduzido de 20px para 15px */
        padding-bottom: 5px !important; /* Mantido pequeno */
    }
    
    /* Ajustar container principal no mobile */
    .wp-involve-complete-system.wp-involve-impressions-container {
        padding-top: 20px !important; /* Reduzido de 25px para 20px */
        padding-bottom: 10px !important; /* Reduzido de 15px para 10px */
    }
    
    /* Melhorar exibição de tooltips em mobile */
    .wp-involve-impression-tooltip {
        position: fixed !important;
        top: auto !important;
        bottom: 60px !important;
        left: 50% !important;
        margin-left: -50px !important;
        width: 100px !important;
        height: auto !important;
        padding: 8px !important;
        background: rgba(0, 0, 0, 0.9) !important;
        color: #ffffff !important;
        font-size: 12px !important;
        border-radius: 8px !important;
        line-height: 1.2 !important;
        display: none !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-family: "Roboto", sans-serif !important;
        z-index: 9999 !important;
        box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
        backdrop-filter: blur(10px) !important;
    }
    
    .wp-involve-impression-tooltip::after {
        content: "" !important;
        position: absolute !important;
        top: 100% !important;
        left: 50% !important;
        margin-left: -7px !important;
        width: 0 !important;
        height: 0 !important;
        border-style: solid !important;
        border-width: 7px 7px 0 7px !important;
        border-color: rgba(0, 0, 0, 0.9) transparent transparent transparent !important;
    }
    
    /* Mostrar tooltip em mobile ao tocar/clicar */
    .wp-involve-impression-icon-box.mobile-label-visible .wp-involve-impression-tooltip {
        display: inline-block !important;
    }
    
    /* Adicionar classe para mostrar labels permanentemente em mobile se configurado */
    body.wp-involve-mobile-labels-always .wp-involve-impression-tooltip {
        display: inline-block !important;
        position: absolute !important;
        top: -35px !important;
        bottom: auto !important;
        left: 50% !important;
        margin-left: -50px !important;
        width: 100px !important;
        font-size: 10px !important;
        padding: 4px 6px !important;
    }
    
    body.wp-involve-mobile-labels-always .wp-involve-impression-tooltip::after {
        top: auto !important;
        bottom: -7px !important;
        border-width: 7px 7px 0 7px !important;
        border-color: rgba(0, 0, 0, 0.9) transparent transparent transparent !important;
    }
}

/*--------------------------------
* CSS para as novas reações
--------------------------------*/
.wp-involve-star-impression {
    position: relative;
}
.wp-involve-star-impression.wp-involve-active {
    background-color: #FFD700;
    border-color: #FFD700;
    transform: scale(1.1);
}
.wp-involve-star-impression .wp-involve-impression-icon {
    color: #FFD700;
}
.wp-involve-star-impression.wp-involve-active .wp-involve-impression-icon {
    color: #ffffff;
}

.wp-involve-thinking-impression {
    position: relative;
}
.wp-involve-thinking-impression.wp-involve-active {
    background-color: #FF9500;
    border-color: #FF9500;
    transform: scale(1.1);
}
.wp-involve-thinking-impression .wp-involve-impression-icon {
    color: #FF9500;
}
.wp-involve-thinking-impression.wp-involve-active .wp-involve-impression-icon {
    color: #ffffff;
}

.wp-involve-hug-impression {
    position: relative;
}
.wp-involve-hug-impression.wp-involve-active {
    background-color: #4CAF50;
    border-color: #4CAF50;
    transform: scale(1.1);
}
.wp-involve-hug-impression .wp-involve-impression-icon {
    color: #4CAF50;
}
.wp-involve-hug-impression.wp-involve-active .wp-involve-impression-icon {
    color: #ffffff;
}

/*--------------------------------
* CSS para o botão de compartilhamento minimalista
--------------------------------*/
.wp-involve-share-container {
    display: inline-block;
    margin-left: 10px;
    vertical-align: middle;
}

.wp-involve-share-dropdown {
    position: relative;
    display: inline-block;
}

.wp-involve-share-btn {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: #ffffff;
    padding: 3px 5px;
    border-radius: 8px;
    font-size: 7px;
    font-weight: 500;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 2px;
    box-shadow: 0 1px 4px rgba(102, 126, 234, 0.3);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    min-width: 33px;
    height: 15px;
    justify-content: center;
    position: relative;
    overflow: hidden;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.wp-involve-share-btn:before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s;
}

.wp-involve-share-btn:hover:before {
    left: 100%;
}

.wp-involve-share-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(102, 126, 234, 0.4);
    background: linear-gradient(135deg, #764ba2 0%, #667eea 100%);
    text-decoration: none;
    color: #ffffff;
}

.wp-involve-share-btn:active {
    transform: translateY(0);
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.3);
}

.wp-involve-share-btn .wp-involve-btn-icon {
    background: none;
    padding: 0;
    margin: 0;
    width: auto;
    height: auto;
    border-radius: 0;
    position: relative;
    z-index: 1;
}

.wp-involve-share-btn .wp-involve-btn-icon i {
    font-size: 6px;
    color: #ffffff;
}

.wp-involve-share-btn .wp-involve-btn-label {
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 1;
}

.wp-involve-share-count {
    font-size: 5px;
    padding: 1px 3px;
    background: rgba(255,255,255,0.9);
    border-radius: 6px;
    margin-left: 3px;
    color: #667eea;
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(0,0,0,0.1);
    display: inline-block;
}

/* Integração com reações */
.wp-involve-impressions-container .wp-involve-share-container {
    margin-left: 15px;
    margin-top: 0;
    display: flex;
    align-items: center;
}

/* Integração com botões like/dislike */
.wp-involve-buttons-container .wp-involve-share-container {
    width: auto;
    margin: 15px auto 0;
    text-align: center;
    display: block;
}

/* Responsividade */
@media (max-width: 768px) {
    .wp-involve-share-btn {
        padding: 6px 12px;
        font-size: 11px;
        min-width: 75px;
        gap: 5px;
    }
    
    .wp-involve-share-btn .wp-involve-btn-icon i {
        font-size: 11px;
    }
    
    .wp-involve-share-count {
        font-size: 8px;
        padding: 2px 4px;
        margin-left: 4px;
    }
    
    .wp-involve-share-container {
        margin-left: 8px;
    }
}

/* Variação ainda mais minimalista (opcional) */
.wp-involve-share-btn.wp-involve-minimal {
    background: #f8f9fa;
    color: #495057;
    border: 1px solid #e9ecef;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.wp-involve-share-btn.wp-involve-minimal:hover {
    background: #e9ecef;
    color: #212529;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.wp-involve-share-btn.wp-involve-minimal .wp-involve-btn-icon i {
    color: #6c757d;
}

.wp-involve-share-btn.wp-involve-minimal:hover .wp-involve-btn-icon i {
    color: #495057;
}

/* Variação com ícone colorido */
.wp-involve-share-btn.wp-involve-icon-colored .wp-involve-btn-icon i {
    color: #1DA1F2;
}

.wp-involve-share-btn.wp-involve-icon-colored:hover .wp-involve-btn-icon i {
    color: #ffffff;
}

/*--------------------------------
* Menu dropdown de compartilhamento
--------------------------------*/
.wp-involve-share-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    z-index: 1000;
    min-width: 140px;
    margin-top: 4px;
}

.wp-involve-share-menu.show {
    display: block;
}

.wp-involve-share-option {
    display: block;
    padding: 8px 12px;
    color: #333;
    text-decoration: none;
    font-size: 11px;
    border-bottom: 1px solid #f0f0f0;
    transition: background-color 0.2s ease;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.wp-involve-share-option:last-child {
    border-bottom: none;
}

.wp-involve-share-option:hover {
    background-color: #f8f9fa;
    text-decoration: none;
    color: #333;
}

.wp-involve-share-option i {
    margin-right: 8px;
    width: 14px;
    text-align: center;
}

.wp-involve-share-option[data-share-type="facebook"]:hover { background-color: #e7f3ff; }
.wp-involve-share-option[data-share-type="whatsapp"]:hover { background-color: #e7f9e7; }
.wp-involve-share-option[data-share-type="instagram"]:hover { background-color: #ffe7f5; }
.wp-involve-share-option[data-share-type="bluesky"]:hover { background-color: #e7f5ff; }
.wp-involve-share-option[data-share-type="linkedin"]:hover { background-color: #e7f0ff; }
.wp-involve-share-option[data-share-type="mastodon"]:hover { background-color: #f0e7ff; }
.wp-involve-share-option[data-share-type="email"]:hover { background-color: #fff7e6; }
.wp-involve-share-option[data-share-type="copy"]:hover { background-color: #f0f0f0; }

/*--------------------------------
* CSS para forçar quebras de linha nos 3 modos
--------------------------------*/

/* Seção de compartilhamento sempre em linha própria e centralizada */
.wp-involve-share-section {
    display: block;
    width: 100%;
    clear: both;
    margin-top: 15px;
    text-align: center;
}

.wp-involve-share-section .wp-involve-share-container {
    display: inline-block;
    margin: 0 auto;
    text-align: center;
}

/* Modo Reações: Linha 1: botões, Linha 2: barra VS, Linha 3: compartilhar */
.wp-involve-buttons-container {
    display: block;
    width: 100%;
    clear: both;
}

/* Correção específica para barra VS no modo reações */
.wp-involve-buttons-container + .wp-involve-vs-bar-container {
    display: flex !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    overflow: visible !important;
    min-height: 50px !important;
    box-sizing: border-box;
    position: relative !important;
    padding: 10px 0 !important;
}

.wp-involve-buttons-container + .wp-involve-vs-bar-container > div {
    flex: 1 1 0 !important;
    min-width: 60px !important;
    max-width: 50% !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: ellipsis !important;
    box-sizing: border-box !important;
    z-index: 1 !important;
    position: relative !important;
    height: 26px !important;
    margin: 12px 0 !important;
}

.wp-involve-buttons-container + .wp-involve-vs-bar-container .wp-involve-bar-vs-badge {
    z-index: 10 !important;
    position: absolute !important;
}

.wp-involve-buttons-container + .wp-involve-vs-bar-container #wp-involve-vsBar-dislikes {
    z-index: 0 !important;
    position: relative !important;
}

/* Regra geral para a barra VS com menor especificidade */
.wp-involve-vs-bar-container {
    clear: both;
    margin-top: 10px;
    margin-bottom: 5px;
}

/* Modo Impressões: Linha 1: impressões, Linha 2: compartilhar */
.wp-involve-impressions-container {
    display: flex;
    width: 100%;
    clear: both;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

/* Modo Completo: Linha 1: botões todos juntos, Linha 2: barra VS, Linha 3: compartilhar */
.wp-involve-complete-system .wp-involve-buttons-line {
    display: flex;
    width: 100%;
    clear: both;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
}

.wp-involve-complete-system .wp-involve-vs-section {
    display: block;
    width: 100%;
    clear: both;
    margin: 10px 0;
}

.wp-involve-complete-system .wp-involve-vs-bar-container {
    display: flex !important;
    width: 100% !important;
    flex-wrap: nowrap !important;
    overflow: visible !important;
    min-height: 50px !important;
    box-sizing: border-box;
    position: relative !important;
    padding: 10px 0 !important;
}

.wp-involve-complete-system .wp-involve-vs-bar-container > div {
    flex: 1 1 0 !important;
    min-width: 60px !important;
    max-width: 50% !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: ellipsis !important;
    box-sizing: border-box !important;
    z-index: 1 !important;
    position: relative !important;
    height: 26px !important;
    margin: 12px 0 !important;
}

.wp-involve-complete-system .wp-involve-vs-bar-container .wp-involve-bar-vs-badge {
    z-index: 10 !important;
    position: absolute !important;
}

.wp-involve-complete-system .wp-involve-vs-bar-container #wp-involve-vsBar-dislikes {
    z-index: 0 !important;
    position: relative !important;
}

.wp-involve-complete-system .wp-involve-share-section {
    display: block;
    width: 100%;
    clear: both;
    margin-top: 15px;
    text-align: center;
}

/* Garantir que o botão compartilhar nunca fique inline com outros elementos */
.wp-involve-share-container {
    display: inline-block;
    margin: 0 auto;
}

/* Responsividade: manter quebras mesmo em telas grandes */
@media (min-width: 1200px) {
    .wp-involve-share-section,
    .wp-involve-vs-bar-container,
    .wp-involve-complete-system .wp-involve-vs-section,
    .wp-involve-complete-system .wp-involve-share-section {
        display: block !important;
        width: 100% !important;
        clear: both !important;
    }
}

/* Força z-index do círculo VS em todos os contextos - Forçar cache refresh */
span.wp-involve-bar-vs-badge,
.wp-involve-bar-vs-badge {
    z-index: 999 !important;
    position: absolute !important;
    background-color: #333333 !important;
}

/* Força z-index das barras em todos os contextos */
#wp-involve-vsBar-likes,
#wp-involve-vsBar-dislikes {
    z-index: 1 !important;
    position: relative !important;
}

/* Correção específica para a barra vermelha */
#wp-involve-vsBar-dislikes {
    background-color: #dc3e19 !important;
    position: relative !important;
}

/* Forçar transições suaves na atualização da barra VS */
#wp-involve-vsBar-likes,
#wp-involve-vsBar-dislikes {
    transition: width 0.3s ease-in-out !important;
}

/* Garantir que as barras sejam exibidas corretamente quando atualizadas */
.wp-involve-vs-bar-container > div {
    min-width: 10px !important; /* Garantir largura mínima mesmo quando 0% */
    max-width: 100% !important;
}

/* Indicador visual de atualização da barra VS */
.wp-involve-vs-bar-container.wp-involve-vs-updated {
    box-shadow: 0 0 10px rgba(0,123,255,0.5);
    border-radius: 4px;
    transition: box-shadow 0.3s ease;
}

/*--------------------------------
* Nova Arquitetura Unificada - CSS
--------------------------------*/

/* Wrapper para impressões com controle de visibilidade */
.wp-involve-impressions-wrapper {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: visible; /* Permitir que contadores apareçam fora do container */
    padding-top: 20px; /* Espaço para contadores que ficam acima */
    padding-bottom: 10px; /* Espaço adicional */
}

/* Garantir que container principal também permita overflow */
.wp-involve-complete-system.wp-involve-impressions-container {
    overflow: visible !important;
    padding-top: 25px; /* Espaço adicional no modo completo */
    padding-bottom: 15px;
}

.wp-involve-complete-system .wp-involve-impression-icon-box {
    margin-bottom: 10px; /* Espaço para contadores ficarem visíveis */
    position: relative; /* Garantir contexto para posicionamento dos contadores */
    overflow: visible; /* Permitir que contadores saiam da caixa */
}

/* Forçar contadores a ficarem visíveis no modo completo */
.wp-involve-complete-system .wp-involve-impression-count,
.wp-involve-complete-system .wp-involve-impression-icon-box .wp-involve-impression-count {
    z-index: 1000 !important; /* Z-index muito alto para ficar acima de tudo */
    position: absolute !important;
    background: #ffffff !important;
    border: 2px solid #ededed !important;
    box-shadow: 0 3px 6px rgba(0,0,0,0.15) !important; /* Sombra mais pronunciada */
    overflow: visible !important;
}

/* Garantir que todos os containers no modo completo permitam overflow */
.wp-involve-complete-system,
.wp-involve-complete-system .wp-involve-buttons-line,
.wp-involve-complete-system > div,
.wp-involve-complete-system * {
    overflow: visible !important;
}

/* Exceção para elementos que devem manter overflow hidden quando necessário */
.wp-involve-impressions-wrapper.wp-involve-impressions-hidden,
.wp-involve-dislike-feedback.wp-involve-message-hidden {
    overflow: hidden !important;
}

/* Posicionamento dinâmico das reações em telas largas */
@media screen and (min-width: 769px) {
    /* Quando NÃO há like - centralizar reações sozinhas */
    .wp-involve-complete-system .wp-involve-buttons-line.wp-involve-no-like {
        justify-content: center;
    }
    
    .wp-involve-complete-system .wp-involve-reactions-container.wp-involve-no-like {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    /* Quando HÁ like - reações + impressões lado a lado centralizadas */
    .wp-involve-complete-system .wp-involve-buttons-line.wp-involve-has-like {
        justify-content: center;
        align-items: center; /* Centralizar verticalmente ambas as barras */
        gap: 20px; /* Espaço entre reações e impressões */
    }
    
    .wp-involve-complete-system .wp-involve-reactions-container.wp-involve-has-like {
        flex: 0 0 auto; /* Não crescer, tamanho automático */
        display: flex;
        justify-content: flex-end;
        align-items: center;
        align-self: center; /* Garantir alinhamento vertical */
        padding: 0 !important; /* Consistência com impressões */
        margin: 0 !important; /* Consistência com impressões */
    }
    
    .wp-involve-complete-system .wp-involve-impressions-wrapper.wp-involve-has-like {
        flex: 0 0 auto; /* Não crescer, tamanho automático */
        display: flex;
        justify-content: flex-start;
        align-items: center;
        align-self: center; /* Garantir alinhamento vertical */
        padding: 0 !important; /* Remover todos os paddings que podem desalinhar */
        margin: 0 !important; /* Remover todas as margins que podem desalinhar */
    }
    
    /* Específico para o container interno das impressões */
    .wp-involve-complete-system .wp-involve-impressions-wrapper.wp-involve-has-like .wp-involve-impressions-container {
        margin: 0 !important;
        padding: 0 !important;
        align-items: center;
    }
    
    /* Ocultar impressões completamente quando não há like */
    .wp-involve-complete-system .wp-involve-impressions-wrapper.wp-involve-no-like {
        display: none;
    }
}

/* Título dinâmico do sistema completo */
.wp-involve-system-title {
    text-align: center;
    margin-bottom: 20px;
    font-size: 16px;
    font-weight: 600;
    color: #333;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    line-height: 1.4;
}

.wp-involve-reactions-title,
.wp-involve-impressions-title {
    transition: all 0.3s ease;
}

/* Controle de exibição do título baseado no estado */

/* Por padrão, mostrar título das reações */
.wp-involve-system-title .wp-involve-reactions-title {
    display: block;
}

.wp-involve-system-title .wp-involve-impressions-title {
    display: none;
}

/* Quando há like, mostrar título das impressões */
.wp-involve-system-title.wp-involve-has-like .wp-involve-reactions-title {
    display: none;
}

.wp-involve-system-title.wp-involve-has-like .wp-involve-impressions-title {
    display: block;
}

/* Ajustes para mobile */
@media screen and (max-width: 768px) {
    .wp-involve-system-title {
        font-size: 15px;
        margin-bottom: 15px;
    }
}

.wp-involve-impressions-wrapper.wp-involve-impressions-hidden {
    opacity: 0;
    max-height: 0;
    margin: 0;
    padding: 0;
    transform: translateY(-10px);
    overflow: hidden; /* Ocultar completamente quando escondido */
}

.wp-involve-impressions-wrapper.wp-involve-impressions-visible {
    opacity: 1;
    max-height: 150px; /* Aumentado para acomodar contadores */
    margin: 10px 0;
    transform: translateY(0);
    overflow: visible; /* Permitir que contadores apareçam */
}

/* Mensagem de feedback para dislike */
.wp-involve-dislike-feedback {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
    margin-top: 10px;
}

.wp-involve-dislike-feedback.wp-involve-message-hidden {
    opacity: 0;
    max-height: 0;
    margin: 0;
    padding: 0;
}

.wp-involve-dislike-feedback.wp-involve-message-visible {
    opacity: 1;
    max-height: 80px;
    margin: 10px 0;
}

.wp-involve-dislike-feedback p {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-left: 4px solid #dc3545;
    padding: 12px 15px;
    margin: 0;
    border-radius: 4px;
    font-size: 14px;
    color: #495057;
    font-family: "Roboto", sans-serif;
}

/* Estilo para modo reações unificado */
.wp-involve-reactions-only {
    justify-content: center;
}

.wp-involve-reactions-only .wp-involve-impression-icon-box {
    margin: 0 15px;
}

/* Cores específicas para like/dislike unificados */
.wp-involve-like-impression.wp-involve-impression-active {
    background: #28a745 !important;
    color: #ffffff !important;
}

.wp-involve-dislike-impression.wp-involve-impression-active {
    background: #dc3545 !important;
    color: #ffffff !important;
}

.font-impressions .wp-involve-like-impression .wp-involve-impression-icon {
    color: #28a745;
}

.font-impressions .wp-involve-dislike-impression .wp-involve-impression-icon {
    color: #dc3545;
}

.font-impressions .wp-involve-like-impression.wp-involve-impression-active .wp-involve-impression-icon,
.font-impressions .wp-involve-dislike-impression.wp-involve-impression-active .wp-involve-impression-icon {
    color: #ffffff !important;
}

/* Corrigir contadores em branco - força cores corretas */
.wp-involve-reactions-only .wp-involve-impression-count,
.wp-involve-complete-system .wp-involve-impression-count,
.wp-involve-impression-count,
#wpInvolveLikeCount,
#wpInvolveDislikeCount {
    background: #ffffff !important;
    color: #444444 !important;
    border: 2px solid #ededed !important;
    font-weight: bold !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 8px !important;
    min-height: 16px !important;
    min-width: 16px !important;
    z-index: 10 !important;
}

/* Bordas dos ícones unificados */
.wp-involve-reactions-only .wp-involve-impression-icon-box {
    border: 2px solid #ededed;
    border-radius: 50%;
}

.wp-involve-reactions-only .wp-involve-impression-icon-box.wp-involve-like-impression {
    border-color: #28a745;
}

.wp-involve-reactions-only .wp-involve-impression-icon-box.wp-involve-dislike-impression {
    border-color: #dc3545;
}

.wp-involve-reactions-only .wp-involve-impression-icon-box.wp-involve-impression-active {
    transform: scale(1.1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/*--------------------------------
* TTS (Text-to-Speech) Enhanced CSS
--------------------------------*/
.wp-involve-tts-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #dee2e6;
}

.wp-involve-tts-header h4 {
    margin: 0;
    color: #495057;
    font-size: 16px;
    font-weight: 600;
}

.wp-involve-tts-provider {
    font-size: 12px;
    color: #6c757d;
    background: #e9ecef;
    padding: 3px 8px;
    border-radius: 12px;
    font-weight: 500;
}

.wp-involve-tts-setting-group {
    display: inline-block;
    margin-right: 15px;
    margin-bottom: 8px;
}

.wp-involve-tts-setting-group label {
    display: inline-block;
    margin-right: 5px;
    font-size: 12px;
    font-weight: 500;
    color: #495057;
}

.wp-involve-tts-quality-info {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #28a745;
    font-size: 11px;
    font-weight: 500;
    margin-top: 5px;
}

.wp-involve-tts-quality-info i {
    color: #17a2b8;
}

.wp-involve-tts-chars-info {
    margin-top: 5px;
    font-size: 11px;
    color: #6c757d;
}

.wp-involve-tts-char-count {
    font-weight: bold;
    color: #495057;
}

/* Animação melhorada para indicador de qualidade */
@keyframes quality-pulse {
    0%, 100% { opacity: 0.7; }
    50% { opacity: 1; }
}

.wp-involve-tts-quality-info {
    animation: quality-pulse 2s ease-in-out infinite;
}

/*--------------------------------
* TTS (Text-to-Speech) CSS Base
--------------------------------*/
.wp-involve-tts-container {
    width: 100%;
    clear: both;
    margin: 15px 0;
    padding: 10px;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border: 1px solid #dee2e6;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.wp-involve-tts-controls {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
}

.wp-involve-tts-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 8px 12px;
    border: 1px solid #ced4da;
    border-radius: 6px;
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    color: #495057;
    font-size: 13px;
    font-weight: 500;
    font-family: "Roboto", sans-serif;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.wp-involve-tts-btn:hover {
    background: linear-gradient(135deg, #e9ecef 0%, #dee2e6 100%);
    border-color: #adb5bd;
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0,0,0,0.15);
    color: #495057;
    text-decoration: none;
}

.wp-involve-tts-btn:active {
    transform: translateY(0);
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.wp-involve-tts-btn i {
    font-size: 14px;
}

.wp-involve-tts-play {
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
    color: #ffffff;
    border-color: #28a745;
}

.wp-involve-tts-play:hover {
    background: linear-gradient(135deg, #218838 0%, #1e7e34 100%);
    border-color: #1e7e34;
    color: #ffffff;
}

.wp-involve-tts-pause {
    background: linear-gradient(135deg, #ffc107 0%, #fd7e14 100%);
    color: #212529;
    border-color: #ffc107;
}

.wp-involve-tts-pause:hover {
    background: linear-gradient(135deg, #e0a800 0%, #dc7a07 100%);
    border-color: #dc7a07;
    color: #212529;
}

.wp-involve-tts-stop {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    color: #ffffff;
    border-color: #dc3545;
}

.wp-involve-tts-stop:hover {
    background: linear-gradient(135deg, #c82333 0%, #a71e2a 100%);
    border-color: #a71e2a;
    color: #ffffff;
}

.wp-involve-tts-settings-toggle {
    background: linear-gradient(135deg, #6c757d 0%, #5a6268 100%);
    color: #ffffff;
    border-color: #6c757d;
    padding: 8px;
    min-width: 36px;
    justify-content: center;
}

.wp-involve-tts-settings-toggle:hover {
    background: linear-gradient(135deg, #5a6268 0%, #495057 100%);
    border-color: #495057;
    color: #ffffff;
}

.wp-involve-tts-settings {
    margin-top: 10px;
    padding: 10px;
    background: rgba(255,255,255,0.8);
    border-radius: 6px;
    border: 1px solid #dee2e6;
    display: none;
}

.wp-involve-tts-settings label {
    font-size: 12px;
    font-weight: 500;
    margin-right: 5px;
    color: #495057;
    font-family: "Roboto", sans-serif;
}

.wp-involve-tts-settings select {
    font-size: 11px;
    padding: 4px 6px;
    border: 1px solid #ced4da;
    border-radius: 4px;
    background: #ffffff;
    color: #495057;
    margin-right: 10px;
    font-family: "Roboto", sans-serif;
}

.wp-involve-tts-progress {
    margin-top: 10px;
    padding: 8px;
    background: rgba(255,255,255,0.9);
    border-radius: 6px;
    border: 1px solid #dee2e6;
    text-align: center;
}

.wp-involve-tts-progress-bar {
    width: 100%;
    height: 4px;
    background: #e9ecef;
    border-radius: 2px;
    overflow: hidden;
    margin-bottom: 5px;
    position: relative;
}

.wp-involve-tts-progress-bar::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 30%;
    height: 100%;
    background: linear-gradient(90deg, #007bff, #0056b3);
    border-radius: 2px;
    animation: tts-progress 2s ease-in-out infinite;
}

@keyframes tts-progress {
    0% { left: -30%; }
    100% { left: 100%; }
}

.wp-involve-tts-status {
    font-size: 11px;
    color: #6c757d;
    font-family: "Roboto", sans-serif;
    font-weight: 500;
}

/* Responsividade para TTS */
@media (max-width: 768px) {
    .wp-involve-tts-container {
        margin: 10px 0;
        padding: 8px;
    }

    .wp-involve-tts-controls {
        gap: 5px;
    }

    .wp-involve-tts-btn {
        padding: 6px 10px;
        font-size: 12px;
    }

    .wp-involve-tts-btn span {
        display: none;
    }

    .wp-involve-tts-btn i {
        font-size: 16px;
    }

    .wp-involve-tts-settings {
        margin-top: 8px;
        padding: 8px;
    }

    .wp-involve-tts-settings label {
        font-size: 11px;
        display: block;
        margin-bottom: 3px;
    }

    .wp-involve-tts-settings select {
        font-size: 10px;
        width: 100%;
        margin-bottom: 5px;
    }
}

/* Integração com outros componentes e posicionamento */
.wp-involve-impressions-container .wp-involve-tts-container {
    margin-top: 20px;
}

.wp-involve-buttons-container + .wp-involve-tts-container {
    margin-top: 15px;
}

/* Posicionamento específico baseado na configuração */
.wp-involve-tts-container.tts-top-content {
    order: -1;
    margin-bottom: 20px;
    margin-top: 0;
}

.wp-involve-tts-container.tts-bottom-content {
    margin-top: 20px;
    margin-bottom: 0;
}

.wp-involve-tts-container.tts-before-reactions {
    margin-bottom: 15px;
}

.wp-involve-tts-container.tts-after-reactions {
    margin-top: 15px;
}

/* Estados de carregamento */
.wp-involve-tts-container.loading {
    opacity: 0.7;
    pointer-events: none;
}

.wp-involve-tts-container.loading .wp-involve-tts-btn {
    cursor: not-allowed;
}

/* Animação de pulse para botão ativo */
.wp-involve-tts-btn.active {
    animation: tts-pulse 1.5s ease-in-out infinite;
}

@keyframes tts-pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}