.xioleni-effect-panel {
        display: none;
        position: absolute;
        background-color: #333;
        padding: 12px;
        border-radius: 8px;
        z-index: 100;
        margin-top: 4px;
        box-shadow: 0 0 8px rgba(0,0,0,0.5);
        width: 200px;
        max-height: 80vh;
        overflow-y: auto;
    }

    .xioleni-sub-effect-panel {
        display: none;
        background-color: #ffffffb3;
        padding: 8px;
        border-radius: 4px;
        margin-top: 4px;
        width: 100%;
        box-sizing: border-box;
    }

    /* Estilos específicos para paneles de filtros de belleza con grid */
    .xioleni-sub-effect-panel[style*="display: grid"] {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 5px !important;
    }

    /* Asegurar que los botones en grid mantengan su estilo */
    .xioleni-sub-effect-panel[style*="display: grid"] .xioleni-effect-option {
        display: block !important;
        width: auto !important;
        margin-bottom: 0 !important;
    }

    /* Estilos específicos por ID para mayor especificidad - REMOVIDO para permitir control por JavaScript */

    #xioleni-brillo-facial-panel .xioleni-effect-option,
    #xioleni-suavizado-piel-panel .xioleni-effect-option,
    #xioleni-rejuvenecimiento-panel .xioleni-effect-option,
    #xioleni-presets-belleza-panel .xioleni-effect-option {
        display: block !important;
        width: auto !important;
        margin: 0 !important;
        padding: 8px 4px !important;
        font-size: 12px !important;
        box-sizing: border-box !important;
    }

    /* Botón que ocupa toda la fila (quinto botón) */
    #xioleni-brillo-facial-panel .xioleni-effect-option[style*="grid-column"],
    #xioleni-suavizado-piel-panel .xioleni-effect-option[style*="grid-column"],
    #xioleni-rejuvenecimiento-panel .xioleni-effect-option[style*="grid-column"],
    #xioleni-presets-belleza-panel .xioleni-effect-option[style*="grid-column"] {
        grid-column: 1 / -1 !important;
    }

    /* Media queries para todas las resoluciones */
    @media (min-width: 320px) {
        #xioleni-brillo-facial-panel,
        #xioleni-suavizado-piel-panel,
        #xioleni-rejuvenecimiento-panel,
        #xioleni-presets-belleza-panel {
            grid-template-columns: 1fr 1fr;
            gap: 5px;
        }
    }

    .xioleni-effect-panel h4 {
        color: #FFFFFF;
        margin-top: 0;
        margin-bottom: 8px;
        font-size: 0.8em;
    }

    .xioleni-effect-option {
        display: block;
        width: 100%;
        padding: 8px;
        margin-bottom: 4px;
        background-color: #692547;
        color: white;
        border: none;
        border-radius: 4px;
        text-align: left;
        cursor: pointer;
        font-weight: bold;
        font-size: 0.8em;
    }

    .xioleni-effect-option:hover {
        background-color: #951361;
    }

    .xioleni-sub-effect-panel .xioleni-effect-option {
        background-color: #333333;
    }

    .xioleni-sub-effect-panel .xioleni-effect-option:hover {
        background-color: #555555;
    }

    .xioleni-effect-option[onclick*="xioleniRemoveEffects"] {
        background-color: #009bb6b7 !important;
        color: white;
    }

    /* Media queries para tablets - mantener el mismo tamaño reducido */
    @media (min-width: 768px) and (max-width: 1024px) {
        .xioleni-effect-panel {
            width: 200px !important;
            padding: 12px !important;
            border-radius: 8px !important;
            margin-top: 4px !important;
            box-shadow: 0 0 8px rgba(0,0,0,0.5) !important;
        }
        
        .xioleni-sub-effect-panel {
            padding: 8px !important;
            border-radius: 4px !important;
            margin-top: 4px !important;
        }
        
        /* Asegurar que el grid funcione en tablet */
        .xioleni-sub-effect-panel[style*="display: grid"] {
            display: grid !important;
            grid-template-columns: 1fr 1fr !important;
            gap: 5px !important;
        }
        
        .xioleni-sub-effect-panel[style*="display: grid"] .xioleni-effect-option {
            width: auto !important;
            margin-bottom: 0 !important;
        }
        
        #xioleni-brillo-facial-panel,
        #xioleni-suavizado-piel-panel,
        #xioleni-rejuvenecimiento-panel,
        #xioleni-presets-belleza-panel {
            grid-template-columns: 1fr 1fr;
            gap: 5px;
        }
        
        .xioleni-effect-panel h4 {
            margin-bottom: 8px !important;
            font-size: 0.8em !important;
        }
        
        .xioleni-effect-option {
            padding: 8px !important;
            margin-bottom: 4px !important;
            border-radius: 4px !important;
            font-size: 0.8em !important;
        }
    }

    /* Media queries para desktop - asegurar que el grid funcione en PC */
    @media (min-width: 1025px) {
        .xioleni-sub-effect-panel[style*="display: grid"] {
            display: grid !important;
            grid-template-columns: 1fr 1fr !important;
            gap: 5px !important;
        }
        
        .xioleni-sub-effect-panel[style*="display: grid"] .xioleni-effect-option {
            width: auto !important;
            margin-bottom: 0 !important;
        }
        
        #xioleni-brillo-facial-panel,
        #xioleni-suavizado-piel-panel,
        #xioleni-rejuvenecimiento-panel,
        #xioleni-presets-belleza-panel {
            grid-template-columns: 1fr 1fr;
            gap: 5px;
        }
    }

    .xioleni-publish-btn {
        margin-top: 10px;
        background-color: #ff5c00;
        color: white;
        font-weight: bold;
        border: none;
        padding: 10px 20px;
        border-radius: 20px;
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    }

    .xioleni-publish-btn:hover {
        background-color: #ff7a33;
        transform: translateY(-1px);
    }

    .xioleni-publish-btn:active {
        background-color: #ff7a33;
        transform: translateY(0);
    }

    .xioleni-weight-panel,
    .xioleni-lineheight-panel,
    .xioleni-font-size-panel {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        background-color: #222;
        padding: 10px;
        border-radius: 10px;
        z-index: 100;
        box-shadow: 0 0 10px rgba(0,0,0,0.5);
        margin-top: 5px;
        width: 170px;
    }

    #xioleni-font-size-container {
        position: relative;
        display: inline-block;
    }

    /* Estilos adicionales para el panel organizador */
    .xioleni-organizer-panel {
        display: none;
        position: absolute;
        background-color: #333;
        padding: 15px;
        border-radius: 10px;
        z-index: 100;
        margin-top: 5px;
        box-shadow: 0 0 10px rgba(0,0,0,0.5);
        width: 200px;
    }

    .xioleni-organizer-option {
        background-color: #444;
        color: white;
        border: none;
        padding: 8px 12px;
        margin: 5px 0;
        border-radius: 5px;
        cursor: pointer;
        display: block;
        width: 100%;
        text-align: left;
        font-weight: bold;
    }

    .xioleni-organizer-option:hover {
        background-color: #555;
    }

    .xioleni-organizer-sub-panel {
        display: none;
        background-color: #444;
        padding: 10px;
        border-radius: 5px;
        margin-top: 5px;
    }

    .xioleni-organizer-btn {
        background-color: #444;
        color: white;
        border: none;
        /* padding: 8px 15px; - Comentado para permitir estilos inline */
        border-radius: 8px;
        cursor: pointer;
        margin: 5px;
        width: calc(100% - 10px);
        text-align: left;
        font-size: 14px;
        transition: background-color 0.2s;
    }

    .xioleni-organizer-btn:hover {
        background-color: #555;
    }

    .xioleni-organizer-title {
        color: white;
        font-size: 16px;
        margin-bottom: 10px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .xioleni-organizer-close {
        background: none;
        border: none;
        color: white;
        font-size: 18px;
        cursor: pointer;
    }

    .xioleni-font-size-option,
    .xioleni-weight-option,
    .xioleni-lineheight-option {
        display: block;
        width: 100%;
        padding: 8px;
        margin-bottom: 5px;
        background-color: #333;
            color: white;
            border: none;
            border-radius: 5px;
            text-align: left;
        cursor: pointer;
    }

    .xioleni-font-size-option:hover,
    .xioleni-weight-option:hover,
    .xioleni-lineheight-option:hover {
        background-color: #009cb61c;
        }

        .xioleni-text-left { text-align: left !important; }
        
        .xioleni-post-content .xioleni-text-left, 
        .xioleni-post-content [style*="text-align: left"] {
            text-align: left !important;
        }
        
        .xioleni-post-content .xioleni-text-center,
        .xioleni-post-content [style*="text-align: center"] {
            text-align: center !important;
        }
        
        .xioleni-post-content .xioleni-text-right,
        .xioleni-post-content [style*="text-align: right"] {
            text-align: right !important;
        }
        
        .xioleni-post-content .xioleni-text-justify,
        .xioleni-post-content [style*="text-align: justify"] {
            text-align: justify !important;
        }
        
        .xioleni-panel-close {
            position: absolute;
            top: 5px;
            right: 10px;
            background: transparent;
            color: #ff5c00;
            font-size: 20px;
            cursor: pointer;
            font-weight: bold;
            border: none;
            z-index: 101;
            padding: 0;
            line-height: 1;
        }

        /* Media queries para aumentar el tamaño de los botones de cerrar en móviles y tablets */
        @media (max-width: 1024px) {
            .xioleni-panel-close {
                font-size: 23px;
            }
        }

        /* Media queries específicas para teléfonos - aumentar 3px adicionales para paneles específicos */
        @media (max-width: 768px) {
            .xioleni-organizer-panel .xioleni-panel-close,
            .xioleni-color-btn .xioleni-panel-close,
            #panel-fuentes .xioleni-panel-close,
            #panel-tamanio .xioleni-panel-close,
            #panel-peso .xioleni-panel-close {
                font-size: 26px;
            }
            
            /* Asegurar ancho completo en pantallas de teléfono */
            .xioleni-editor-container {
                width: 100% !important;
                max-width: 100% !important;
                margin: 5px !important;
                padding: 10px !important;
                border-radius: 26px !important;
                box-sizing: border-box !important;
            }
            
            /* Mantener ancho completo cuando el toolbar está visible */
            body:has(.xioleni-toolbar.visible) .xioleni-editor-container {
                width: 100% !important;
                max-width: 100% !important;
                margin: 5px !important;
                padding: 10px !important;
                border-radius: 26px !important;
                box-sizing: border-box !important;
            }
        }

        @media (max-width: 600px) {
            .xioleni-editor-container {
                margin: 5px;
                padding: 10px;
                max-width: 100% !important;
                width: 100% !important;
                border-radius: 26px !important;
                box-sizing: border-box !important;
            }
            
            /* Mantener ancho completo cuando el toolbar está visible */
            body:has(.xioleni-toolbar.visible) .xioleni-editor-container {
                width: 100% !important;
                max-width: 100% !important;
                margin: 5px !important;
                padding: 10px !important;
                border-radius: 26px !important;
                box-sizing: border-box !important;
            }
            
            .xioleni-toolbar {
                gap: 5px;
                justify-content: center;
            }
            
            .xioleni-toolbar button,
            .xioleni-toolbar select {
                padding: 6px;
                font-size: 12px;
            }

            #xioleni-color-panel {
                max-width: 170px;
                left: 50%;
                transform: translateX(-50%);
            }
        }
        
        .xioleni-editor-alert {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background-color: #790847;
            color: white;
            padding: 15px 25px;
            border-radius: 10px;
            z-index: 100;
            box-shadow: 0 0 10px rgba(0,0,0,0.5);
            text-align: center;
            font-weight: bold;
            font-size: 16px;
            display: none;
        }
        
        .xioleni-dragover {
            background-color: #333 !important;
            border: 2px dashed #009cb61c !important;
        }
        
        /* Estilos para botones de interacción de post */
        .xioleni-post-actions {
            display: flex;
            justify-content: center;
            gap: 20px;
            margin-top: 15px;
            padding-top: 10px;
        }
        
        .xioleni-post-action-btn {
            background: none;
            border: none;
            color: #aaa;
            font-size: 14px;
            padding: 6px 12px;
            border-radius: 20px;
            display: flex;
            align-items: center;
            gap: 5px;
            cursor: pointer;
            transition: all 0.2s ease;
        }
        
        .xioleni-post-action-btn:hover {
            color: #fff;
            background: rgba(0, 156, 182, 0.2);
        }
        
        .xioleni-post-action-btn.active {
            color: #fff;
            background: linear-gradient(45deg, #009cb61c, #ff5c00);
        }
        
        .xioleni-post-action-icon {
            display: inline-block;
            width: 18px;
            height: 18px;
            background-position: center;
            background-repeat: no-repeat;
            background-size: contain;
        }
        
        .xioleni-like-count {
            font-size: 12px;
            color: #aaa;
        }

    /* Estilo para los botones de formato */
    .xioleni-font-size-btn,
    .xioleni-font-weight-btn,
    .xioleni-line-height-btn,
    .xioleni-color-btn,
    .xioleni-effects-btn {
        background-color: #29292e;
        color: white;
        border: none;
        padding: 8px 12px;
        border-radius: 5px;
        margin: 0 2px;
        cursor: pointer;
        font-size: 16px;
        transition: background-color 0.3s;
    }
    
    #xioleni-apply-size-btn {
        background-color: #29292e;
        margin-left: 5px;
    }

    .xioleni-font-size-btn:hover,
    .xioleni-font-weight-btn:hover,
    .xioleni-line-height-btn:hover,
    .xioleni-color-btn:hover,
    .xioleni-effects-btn:hover {
        background-color: #444;
    }

    .xioleni-btn-size {
        background-color: #546e7a;
        color: white;
        border: none;
        border-radius: 4px;
        padding: 5px 10px;
        cursor: pointer;
        margin-left: 5px;
    }

    .xioleni-btn-size:hover {
        background-color: #455a64;
    }

    .xioleni-font-size-select {
        padding: 5px;
        border-radius: 4px;
        border: 1px solid #ccc;
    }

        .xioleni-delete-panel {
            display: none;
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background-color: #222;
            padding: 20px;
            border-radius: 15px;
            width: 80%;
            max-width: 400px;
            z-index: 1001;
            text-align: center;
            color: white;
        }

        /* Estilos adicionales para el panel organizador */
        .xioleni-organizer-panel {
            display: none;
            position: absolute;
            background-color: #044869c7;
            padding: 15px;
            border-radius: 10px;
            z-index: 100;
            margin-top: 5px;
            box-shadow: 0 0 10px rgba(0,0,0,0.5);
            width: 200px;
        }

        .xioleni-organizer-option {
            background-color: #444;
            color: white;
            border: none;
            padding: 8px 12px;
            margin: 5px 0;
            border-radius: 5px;
            cursor: pointer;
            display: block;
            width: 100%;
            text-align: left;
            font-weight: bold;
        }

        .xioleni-organizer-option:hover {
            background-color: #555;
        }

        .xioleni-organizer-sub-panel {
            display: none;
            background-color: #444;
            padding: 10px;
            border-radius: 5px;
            margin-top: 5px;
        }

    
    /* ===== CORRECCIONES DEFINITIVAS PARA EL MURO ===== */
    .xioleni-post-content {
        font-family: inherit;
        color: inherit;
        line-height: normal;
        white-space: normal;
    }

    /* Contenedor universal para efectos */
    .xioleni-effect-container {
        display: inline-flex !important;
        position: relative;
        vertical-align: middle;
        white-space: nowrap;
        margin-right: 0.25em;
    }

    /* Balanceo suave - funciona como palpitar y girar sin causar saltos */
    .xioleni-text-bucle-swing {
        display: inline !important;
        vertical-align: baseline !important;
        line-height: inherit !important;
        animation: xioleniBalanceoSuave 2s ease-in-out infinite !important;
        transform-origin: center center !important;
    }

    @keyframes xioleniBalanceoSuave {
        0%, 100% { 
            transform: rotate(-3deg);
        }
        50% { 
            transform: rotate(3deg);
        }
    }

    /* Efectos de interacción */
    .xioleni-text-interaccion-zoom {
        transition: transform 0.3s !important;
    }
    .xioleni-text-interaccion-zoom:hover {
        transform: scale(1.1) !important;
    }

    .xioleni-text-interaccion-rotate {
        transition: transform 0.3s !important;
    }
    .xioleni-text-interaccion-rotate:hover {
        animation: xioleniSpin 2s linear infinite !important;
    }

    .xioleni-text-interaccion-pulse:hover {
        animation: xioleniPulse 1s infinite !important;
    }

    .xioleni-text-interaccion-shake:hover {
        animation: xioleniShake 0.5s infinite !important;
    }

    /* Efectos de entrada corregidos */
    .xioleni-text-entrada-slide-left,
    .xioleni-text-entrada-slide-right,
    .xioleni-text-entrada-slide-up,
    .xioleni-text-entrada-slide-down {
        display: inline !important;
        overflow: visible !important;
        vertical-align: baseline !important;
        line-height: inherit !important;
    }

    .xioleni-text-entrada-slide-left {
        animation: xioleniSlideLeft 1s forwards !important;
    }

    .xioleni-text-entrada-slide-right {
        animation: xioleniSlideRight 1s forwards !important;
    }

    .xioleni-text-entrada-slide-up {
        animation: xioleniSlideUp 1s forwards !important;
    }

    .xioleni-text-entrada-slide-down {
        animation: xioleniSlideDown 1s forwards !important;
    }

    /* Máquina de escribir corregida */
    .xioleni-tw-container {
        display: inline-flex !important;
        vertical-align: middle !important;
        margin: 0 0.15em !important;
    }
    .xioleni-tw-effect {
        margin-right: 0.3em !important;
    }

    /* ===== CORRECCIONES PARA EFECTOS EN EL MURO ===== */
    .xioleni-post-content [class*="xioleni-text-"] {
        display: inline !important;
        white-space: normal !important;
        vertical-align: baseline !important;
        line-height: inherit !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Corrección específica para balanceo (swing) */
    .xioleni-post-content .xioleni-text-bucle-swing {
        transform-origin: top center !important;
        display: inline-block !important;
        animation: xioleniSwing 3s ease-in-out infinite !important;
        vertical-align: middle !important;
    }

    /* Corrección para máquina de escribir */
    .xioleni-post-content .xioleni-tw-container {
        display: inline-flex !important;
        vertical-align: middle !important;
        margin: 0 0.15em !important;
    }

    /* Corrección para efectos de entrada */
    .xioleni-post-content .xioleni-text-entrada-slide-left,
    .xioleni-post-content .xioleni-text-entrada-slide-right,
    .xioleni-post-content .xioleni-text-entrada-slide-up,
    .xioleni-post-content .xioleni-text-entrada-slide-down {
        display: inline !important;
        overflow: visible !important;
        vertical-align: baseline !important;
        line-height: inherit !important;
    }

    /* Corrección para efectos de interacción */
    .xioleni-post-content .xioleni-text-interaccion-zoom:hover {
        transform: scale(1.1) !important;
    }

    .xioleni-post-content .xioleni-text-interaccion-shake:hover {
        animation: xioleniShake 0.5s infinite !important;
    }

    .xioleni-post-content .xioleni-text-interaccion-pulse:hover {
        animation: xioleniPulse 1s infinite !important;
    }

    .xioleni-post-content .xioleni-text-interaccion-rotate:hover {
        animation: xioleniSpin 2s linear infinite !important;
    }

    /* ===== SOLUCIÓN DEFINITIVA PARA EFECTOS POR CARÁCTER ===== */
    .xioleni-post-content .xioleni-char-effect-container {
        display: inline !important;
        position: relative;
        unicode-bidi: plaintext;
        letter-spacing: normal !important;
    }

    .xioleni-post-content .xioleni-char-effect-wrapper {
        display: inline-block !important;
        white-space: nowrap !important;
    }

    .xioleni-post-content .xioleni-char-effect {
        display: inline-block !important;
        position: relative;
        transform-origin: center center;
        backface-visibility: hidden;
        vertical-align: baseline !important;
        line-height: inherit !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: nowrap !important;
    }

    /* Corrección específica para mantener alineación */
    .xioleni-post-content [class*="xioleni-text-"] {
        display: inline !important;
        position: relative;
        unicode-bidi: plaintext;
    }

    /* Preservar espacios entre palabras */
    .xioleni-post-content .xioleni-char-effect.space-char {
        display: inline !important;
        width: 0.25em;
    }

    /* Contenedor universal para efectos */
    .xioleni-effect-container {
        display: inline-block !important;
        position: relative;
        vertical-align: baseline !important;
        white-space: nowrap;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Estilos adicionales para corregir la visualización del editor */
    #xioleni-editor span, 
    #xioleni-editor div {
        vertical-align: baseline !important;
    }

    #xioleni-editor span[class*="xioleni-char-effect"],
    #xioleni-editor span[class*="xioleni-text-"],
    #xioleni-editor span[class*="xioleni-efecto"] {
        display: inline-block !important;
        vertical-align: baseline !important;
        line-height: normal !important;
    }

    /* Asegurar que no hay saltos de línea no deseados */
    #xioleni-editor br {
        display: inline-block !important;
        content: ' ' !important;
        white-space: normal !important;
    }
    
    /* Corrección para anchura completa en el muro */
    .xioleni-post-content {
        width: 100% !important;
        display: block !important;
    }
    
    .xioleni-post {
        width: 100% !important;
    }
    
    /* Centrar imágenes en el muro automáticamente */
    .xioleni-post-content img:not(.xioleni-emoji-inline) {
        display: block !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    /* Ocultar botones de edición en el muro */
    .xioleni-post .xioleni-media-remove-btn,
    .xioleni-post .xioleni-image-select-box {
        display: none !important;
    }
    
    /* Corrección del sistema de alineación */
    #xioleni-editor[style*="text-align"] {
        display: block !important;
    }
    
    /* Asegurar que el cursor mantiene la alineación */
    #xioleni-editor div[style*="text-align"] {
        display: block !important;
        width: 100% !important;
    }

    /* Correcciones para el muro y editor */
    .xioleni-post {
        width: 100% !important;
        display: block !important;
        text-align: left !important;
        box-sizing: border-box !important;
        margin-bottom: 20px !important;
    }

    .xioleni-post-content {
        width: 100% !important;
        display: block !important;
        box-sizing: border-box !important;
    }

    /* Forzar efectos en línea en el editor */
    #xioleni-editor .xioleni-text-bucle-swing,
    #xioleni-editor .xioleni-text-bucle-wave,
    #xioleni-editor .xioleni-text-bucle-pulse,
    #xioleni-editor span.xioleni-efecto,
    #xioleni-editor .xioleni-char-effect {
        display: inline-block !important;
        vertical-align: baseline !important;
    }

    /* En el editor: Asegurar que alineaciones funcionen bien */
    #xioleni-editor [style*="text-align="] {
        display: block !important;
        width: 100% !important;
    }

    /* Asegurar comportamiento en el muro */
    .xioleni-post-content [class*='xioleni-text-'] {
        display: block !important;
        width: 100% !important;
    }

    /* Mejora para imágenes en el muro */
    .xioleni-post-content .xioleni-media-container {
        width: 100% !important;
        display: block !important;
        text-align: center !important;
        margin: 10px 0 !important;
    }

    .xioleni-post-content img:not(.xioleni-emoji-inline),
    .xioleni-post-content .xioleni-preview-img {
        display: block !important;
        margin: 0 auto !important;
        max-width: 100% !important;
    }

    /* Contenedores de alineación */
    .xioleni-alignment-container {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Asegurar posicionamiento correcto del cursor en bloques vacíos según alineación */
    #xioleni-editor div[style*="text-align: center"] {
        text-align-last: center !important;
    }
    
    #xioleni-editor div[style*="text-align: right"] {
        text-align-last: right !important;
    }
    
    #xioleni-editor div[style*="text-align: justify"] {
        text-align-last: justify !important;
    }
    
    #xioleni-editor div[style*="text-align: left"] {
        text-align-last: left !important;
    }
    
    /* Indicador visible del cursor para cada alineación */
    .xioleni-cursor-indicator {
        display: inline-block;
        color: #000;
        background-color: transparent;
        font-weight: normal;
        animation: blink 1s infinite;
        padding: 0;
        margin: 0;
        line-height: 1.2;
        font-size: inherit;
        font-family: monospace;
        letter-spacing: 0;
        white-space: pre;
        vertical-align: middle;
    }
    
    /* Animación del cursor */
    @keyframes blink {
        0%, 100% { opacity: 0.3; }
        50% { opacity: 1; }
    }

    /* Cursor visual actual */
    #xioleni-editor span[style*="text-align: left"] {
        text-align: left !important;
    }
    
    #xioleni-editor span[style*="text-align: center"] {
        text-align: center !important;
    }
    
    #xioleni-editor span[style*="text-align: right"] {
        text-align: right !important;
    }
    
    #xioleni-editor span[style*="text-align: justify"] {
        text-align: justify !important;
        text-align-last: left !important;
    }

    /* Clases de alineación de texto */
    .xioleni-text-left {
        text-align: left !important;
        text-align-last: left !important;
    }
    
    .xioleni-text-center {
        text-align: center !important;
        text-align-last: center !important;
    }
    
    .xioleni-text-right {
        text-align: right !important;
        text-align-last: right !important;
    }
    
    .xioleni-text-justify {
        text-align: justify !important;
        text-align-last: left !important;
    }

    /* Estilos para el marcador de posición */
    #xioleni-position-marker {
        margin-top: 5px;
        margin-bottom: 5px;
        padding: 3px 5px;
        border-radius: 3px;
        background-color: rgba(0, 0, 0, 0.05);
        font-size: 12px;
        font-weight: bold;
        font-family: sans-serif;
    }
    
    /* Animación del cursor */
    @keyframes blink {
        0%, 100% { opacity: 0.3; }
        50% { opacity: 1; }
    }

    /* Clases de alineación de texto */
    .xioleni-text-left {
        text-align: left !important;
        text-align-last: left !important;
    }
    
    .xioleni-text-center {
        text-align: center !important;
        text-align-last: center !important;
    }
    
    .xioleni-text-right {
        text-align: right !important;
        text-align-last: right !important;
    }
    
    .xioleni-text-justify {
        text-align: justify !important;
        text-align-last: left !important;
    }

    /* Estilos específicos para typewriter (asegurar que funcionen dentro del div de alineación) */
    /* Forzar posición visual del cursor */
    #xioleni-editor .xioleni-aligned-block {
        min-height: 1.2em; /* Asegurar altura mínima */
        caret-color: #fff; /* Color del cursor */
    }

    #xioleni-editor .xioleni-aligned-block:empty::before {
        content: "\200B"; /* Espacio de ancho cero */
        display: inline-block;
        width: 0;
        white-space: pre;
    }

    #xioleni-editor div[data-xioleni-align="center"] {
        text-align: center !important;
        text-align-last: center !important;
    }

    #xioleni-editor div[data-xioleni-align="right"] {
        text-align: right !important;
        text-align-last: right !important;
    }

    #xioleni-editor div[data-xioleni-align="justify"] {
        text-align: justify !important;
        text-align-last: justify !important;
    }

    #xioleni-editor div[data-xioleni-align="left"] {
        text-align: left !important;
        text-align-last: left !important;
    }

    /* ===== CORRECCIONES PARA EL CURSOR Y ALINEACIÓN ===== */
    #xioleni-editor div[style*="text-align: center"],
    #xioleni-editor div[style*="text-align: right"],
    #xioleni-editor div[style*="text-align: justify"] {
        text-align-last: var(--xioleni-align-last) !important;
    }

    #xioleni-editor div[style*="text-align: center"] {
        --xioleni-align-last: center;
    }

    #xioleni-editor div[style*="text-align: right"] {
        --xioleni-align-last: right;
    }

    #xioleni-editor div[style*="text-align: justify"] {
        --xioleni-align-last: justify;
    }

    #xioleni-editor div[style*="text-align: left"] {
        --xioleni-align-last: left;
    }

    /* Cursor visual para bloques vacíos */
    #xioleni-editor div[style*="text-align"]:empty::after,
    #xioleni-editor div[style*="text-align"]:has(br:only-child)::after {
        content: "";
        display: inline-block;
        width: 1px;
        height: 1.2em;
        background-color: #fff;
        animation: blink 1s infinite;
        vertical-align: middle;
    }

    /* Asegurar que los bloques alineados mantengan su comportamiento */
    #xioleni-editor div[style*="text-align"] {
        display: block !important;
        width: 100% !important;
        min-height: 1.2em; /* Altura mínima para el cursor */
        line-height: 1.2;
        user-select: text;
        -webkit-user-select: text;
    }

    /* Mejorar la selección de texto dentro del editor */
    #xioleni-editor *::selection {
        background-color: rgba(100, 100, 255, 0.3);
        color: #fff;
    }

    /* Estilos específicos para typewriter (asegurar que funcionen dentro del div de alineación) */
    /* Mejorar la selección de texto dentro del editor */
    #xioleni-editor *::selection {
        background-color: rgba(100, 100, 255, 0.3);
        color: #fff;
    }
    
    /* Estilos para efectos de caracteres - evitar saltos de línea no deseados */
    .xioleni-char-effect-container {
        display: inline-block !important;
        white-space: nowrap !important;
        vertical-align: baseline !important;
        max-width: 100% !important;
    }
    
    .xioleni-char-effect-wrapper {
        display: inline-block !important;
        white-space: nowrap !important;
        vertical-align: baseline !important;
    }
    
    .xioleni-char-effect {
        display: inline-block !important;
        white-space: nowrap !important;
        vertical-align: baseline !important;
    }
    
    /* Garantizar que los efectos también se muestren correctamente en posts publicados */
    .xioleni-post-content .xioleni-char-effect-container,
    .xioleni-editor-publicado .xioleni-char-effect-container {
        display: inline-block !important;
        white-space: nowrap !important;
        vertical-align: baseline !important;
    }
    
    .xioleni-post-content .xioleni-char-effect-wrapper,
    .xioleni-editor-publicado .xioleni-char-effect-wrapper {
        display: inline-block !important;
        white-space: nowrap !important;
        vertical-align: baseline !important;
    }
    
    .xioleni-post-content .xioleni-char-effect,
    .xioleni-editor-publicado .xioleni-char-effect {
        display: inline-block !important;
        white-space: nowrap !important;
        vertical-align: baseline !important;
    }

    /* Estilos específicos para typewriter (asegurar que funcionen dentro del div de alineación) */

    /* ===== EFECTO MÁQUINA DE ESCRIBIR CORREGIDO ===== */
    .xioleni-tw-master-container {
        display: inline !important;
        position: relative;
        unicode-bidi: plaintext;
        letter-spacing: normal !important;
        word-spacing: normal !important;
        white-space: nowrap !important;
        line-height: inherit !important;
    }

    .xioleni-tw-effect {
        display: inline-block !important;
        overflow: hidden;
        vertical-align: bottom !important;
        white-space: nowrap !important;
        max-width: 100% !important;
    }
