/**
 * InnoTextTruncate - COMPLETELY REWRITTEN CSS
 * For DOM-scanning approach with true inline text flow
 * 
 * @package InnoTextTruncate
 * @since 1.5.4
 */

/* NEW DOM-BASED INLINE TRUNCATION */

/* Desktop: Show all content, hide controls */
@media (min-width: 769px) {
    .innotext-inline-wrapper .innotext-read-more,
    .innotext-inline-wrapper .innotext-read-less {
        display: none !important;
    }
    
    .innotext-inline-wrapper .innotext-hidden-text {
        display: inline !important;
    }
}

/* Mobile: Show truncation controls */
@media (max-width: 768px) {
    /* Read More link - visible by default, perfectly inline */
    .innotext-read-more {
        color: #1F5FFF !important;
        text-decoration: underline !important;
        cursor: pointer !important;
        font-size: inherit !important;
        font-weight: inherit !important;
        line-height: inherit !important;
        font-family: inherit !important;
        background: none !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
        display: inline !important;
        vertical-align: baseline !important;
        white-space: nowrap !important;
    }
    
    /* Read Less link - perfectly inline within text */
    .innotext-read-less {
        color: #1F5FFF !important;
        text-decoration: underline !important;
        cursor: pointer !important;
        font-size: inherit !important;
        font-weight: inherit !important;
        line-height: inherit !important;
        font-family: inherit !important;
        background: none !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
        display: inline !important;
        vertical-align: baseline !important;
        white-space: nowrap !important;
    }
    
    .innotext-read-more:hover,
    .innotext-read-less:hover {
        color: #0056b3 !important;
        text-decoration: underline !important;
        background: none !important;
    }
    
    /* Hidden text - flows naturally when shown */
    .innotext-hidden-text {
        display: none !important;
        font-size: inherit !important;
        font-weight: inherit !important;
        line-height: inherit !important;
        font-family: inherit !important;
    }
    
    /* When mobile and visible, hidden text shows inline */
    .innotext-hidden-text.visible {
        display: inline !important;
    }
}

/* Ensure no layout shifts */
.innotext-inline-wrapper {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
}

.innotext-visible-text {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .innotext-hidden-text {
        transition: none !important;
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .innotext-read-more,
    .innotext-read-less {
        font-weight: bold !important;
        text-decoration: underline !important;
    }
}