/**
 * Shared Rich Text Styles
 * Comprehensive typography system for WYSIWYG content across all blocks
 * 
 * @package Salient
 * @since 1.0
 */

/* ==========================================================================
   SHARED RICH TEXT CLASS
   ========================================================================== */

.shared-rich-text {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5em !important;
}

/* ==========================================================================
   TYPOGRAPHY SYSTEM - COMPREHENSIVE
   ========================================================================== */

/* Headings */
.shared-rich-text h1,
.shared-rich-text h2,
.shared-rich-text h3,
.shared-rich-text h4,
.shared-rich-text h5,
.shared-rich-text h6 {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 0 0 24px 0 !important;
    letter-spacing: -0.02em !important;
}

.shared-rich-text h1 {
    font-size: 36px !important;
    line-height: 1.1 !important;
    margin: 0 0 32px 0 !important;
}

.shared-rich-text h2 {
    font-size: 32px !important;
    line-height: 1.15 !important;
    margin: 0 0 28px 0 !important;
}

.shared-rich-text h3 {
    font-size: 28px !important;
    line-height: 1.2 !important;
    margin: 0 0 24px 0 !important;
}

.shared-rich-text h4 {
    font-size: 24px !important;
    line-height: 1.25 !important;
    margin: 0 0 20px 0 !important;
}

.shared-rich-text h5 {
    font-size: 20px !important;
    line-height: 1.3 !important;
    margin: 0 0 18px 0 !important;
}

.shared-rich-text h6 {
    font-size: 18px !important;
    line-height: 1.35 !important;
    margin: 0 0 16px 0 !important;
}

/* Paragraphs */
.shared-rich-text p {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5em !important;
    margin: 0 0 20px 0 !important;
}

.shared-rich-text p:last-child {
    margin-bottom: 0 !important;
}

/* Lists */
.shared-rich-text ul,
.shared-rich-text ol {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5em !important;
    margin: 0 0 24px 0 !important;
    padding-left: 28px !important;
}

.shared-rich-text ul {
    list-style-type: disc !important;
}

.shared-rich-text ol {
    list-style-type: decimal !important;
}

.shared-rich-text li {
    margin-bottom: 12px !important;
}

.shared-rich-text li:last-child {
    margin-bottom: 0 !important;
}

/* Lists alignment fix for centered content */
.shared-rich-text.text-center ul,
.shared-rich-text.text-center ol {
    display: inline-block !important;
    text-align: left !important;
    padding-left: 0 !important;
    list-style-position: inside !important;
}

.shared-rich-text.text-center ul {
    list-style-type: disc !important;
}

.shared-rich-text.text-center ol {
    list-style-type: decimal !important;
}

.shared-rich-text.text-center li {
    text-align: left !important;
}

/* Responsive list alignment */
@media (max-width: 767px) {
    .shared-rich-text.text-center ul,
    .shared-rich-text.text-center ol {
        display: block !important;
        text-align: center !important;
        padding-left: 28px !important;
        list-style-position: outside !important;
    }
    
    .shared-rich-text.text-center li {
        text-align: center !important;
    }
}

/* Text center content alignment */
.shared-rich-text.text-center {
    text-align: center !important;
}

.shared-rich-text.text-center p {
    text-align: center !important;
}

.shared-rich-text.text-center h1,
.shared-rich-text.text-center h2,
.shared-rich-text.text-center h3,
.shared-rich-text.text-center h4,
.shared-rich-text.text-center h5,
.shared-rich-text.text-center h6 {
    text-align: center !important;
}

.shared-rich-text.text-center blockquote {
    text-align: center !important;
}

.shared-rich-text.text-center blockquote p {
    text-align: center !important;
}

.shared-rich-text.text-center table {
    margin-left: auto !important;
    margin-right: auto !important;
}

.shared-rich-text.text-center figure {
    text-align: center !important;
}

.shared-rich-text.text-center figcaption {
    text-align: center !important;
}

/* Links */
.shared-rich-text a {
    color: #42bcfc !important;
    text-decoration: underline !important;
    transition: color 0.3s ease !important;
    font-weight: 500 !important;
}

.shared-rich-text a:hover {
    color: #1b1d21 !important;
    text-decoration: none !important;
}

/* Strong and Bold */
.shared-rich-text strong,
.shared-rich-text b {
    font-weight: 700 !important;
}

/* Emphasis */
.shared-rich-text em,
.shared-rich-text i {
    font-style: italic !important;
}

/* Definition Lists */
.shared-rich-text dl {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5em !important;
    margin: 0 0 24px 0 !important;
}

.shared-rich-text dt {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    margin: 0 0 8px 0 !important;
}

.shared-rich-text dd {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5em !important;
    margin: 0 0 16px 0 !important;
    padding-left: 20px !important;
}

.shared-rich-text dd:last-child {
    margin-bottom: 0 !important;
}

/* ==========================================================================
   TABLES, CODE & QUOTES
   ========================================================================== */

/* Tables */
.shared-rich-text table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 0 0 24px 0 !important;
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5em !important;
}

.shared-rich-text table th,
.shared-rich-text table td {
    padding: 12px 16px !important;
    text-align: left !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    vertical-align: top !important;
}

.shared-rich-text table th {
    background-color: rgba(0, 0, 0, 0.05) !important;
    font-weight: 700 !important;
    font-family: 'Poppins', sans-serif !important;
}

.shared-rich-text table tr:nth-child(even) {
    background-color: rgba(0, 0, 0, 0.02) !important;
}

.shared-rich-text table tr:hover {
    background-color: rgba(0, 0, 0, 0.04) !important;
}

/* Responsive table wrapper */
.shared-rich-text .table-responsive {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    margin: 0 0 24px 0 !important;
}

.shared-rich-text .table-responsive table {
    margin: 0 !important;
    min-width: 600px !important;
}

/* Code */
.shared-rich-text code {
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace !important;
    font-size: 16px !important;
    background-color: rgba(0, 0, 0, 0.05) !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.shared-rich-text pre {
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace !important;
    font-size: 16px !important;
    line-height: 1.5em !important;
    background-color: rgba(0, 0, 0, 0.05) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    margin: 0 0 24px 0 !important;
    overflow-x: auto !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.shared-rich-text pre code {
    background-color: transparent !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
}

/* Blockquotes */
.shared-rich-text blockquote {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 18px !important;
    line-height: 1.5em !important;
    font-style: italic !important;
    margin: 0 0 24px 0 !important;
    padding: 20px 24px !important;
    border-left: 4px solid #42bcfc !important;
    background-color: rgba(66, 188, 252, 0.05) !important;
    border-radius: 0 8px 8px 0 !important;
}

.shared-rich-text blockquote p {
    margin: 0 0 12px 0 !important;
}

.shared-rich-text blockquote p:last-child {
    margin-bottom: 0 !important;
}

.shared-rich-text blockquote cite {
    font-style: normal !important;
    font-size: 16px !important;
    color: rgba(0, 0, 0, 0.6) !important;
    display: block !important;
    margin-top: 12px !important;
}

/* Inline quotes */
.shared-rich-text q {
    font-style: italic !important;
}

.shared-rich-text q::before {
    content: '"' !important;
}

.shared-rich-text q::after {
    content: '"' !important;
}

/* ==========================================================================
   ADDITIONAL HTML ELEMENTS
   ========================================================================== */

/* Underline */
.shared-rich-text u {
    text-decoration: underline !important;
}

/* Horizontal Rule */
.shared-rich-text hr {
    border: none !important;
    height: 1px !important;
    background-color: rgba(0, 0, 0, 0.1) !important;
    margin: 32px 0 !important;
}

/* Images & Figures */
.shared-rich-text img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 8px !important;
    margin: 16px 0 !important;
    display: block !important;
}

.shared-rich-text figure {
    margin: 24px 0 !important;
    text-align: center !important;
}

.shared-rich-text figure img {
    margin: 0 0 12px 0 !important;
}

.shared-rich-text figcaption {
    font-family: 'Open Sans', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
    color: rgba(0, 0, 0, 0.6) !important;
    font-style: italic !important;
    margin-top: 8px !important;
}

/* Small text */
.shared-rich-text small {
    font-size: 14px !important;
}

/* Marked text */
.shared-rich-text mark {
    background-color: rgba(255, 255, 0, 0.3) !important;
    padding: 2px 4px !important;
    border-radius: 2px !important;
}

/* Deleted text */
.shared-rich-text del {
    text-decoration: line-through !important;
    color: rgba(0, 0, 0, 0.5) !important;
}

/* Inserted text */
.shared-rich-text ins {
    text-decoration: underline !important;
}

/* Subscript and Superscript */
.shared-rich-text sub {
    font-size: 75% !important;
    line-height: 0 !important;
    position: relative !important;
    vertical-align: baseline !important;
    bottom: -0.25em !important;
}

.shared-rich-text sup {
    font-size: 75% !important;
    line-height: 0 !important;
    position: relative !important;
    vertical-align: baseline !important;
    top: -0.5em !important;
}

/* Abbreviations */
.shared-rich-text abbr {
    border-bottom: 1px dotted rgba(0, 0, 0, 0.5) !important;
    cursor: help !important;
}

/* Address */
.shared-rich-text address {
    font-style: italic !important;
    margin: 0 0 24px 0 !important;
}

/* Variable */
.shared-rich-text var {
    font-style: italic !important;
}

/* Sample output */
.shared-rich-text samp {
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace !important;
    background-color: rgba(0, 0, 0, 0.05) !important;
    padding: 2px 4px !important;
    border-radius: 3px !important;
}

/* Keyboard input */
.shared-rich-text kbd {
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace !important;
    background-color: rgba(0, 0, 0, 0.1) !important;
    border: 1px solid rgba(0, 0, 0, 0.2) !important;
    border-radius: 3px !important;
    padding: 2px 6px !important;
    font-size: 14px !important;
}

/* ==========================================================================
   RESPONSIVE DESIGN
   ========================================================================== */

/* Large screens (xl) */
@media (min-width: 1280px) {
    .shared-rich-text {
        font-size: 20px !important;
    }
    
    .shared-rich-text h1 {
        font-size: 40px !important;
    }
    
    .shared-rich-text h2 {
        font-size: 36px !important;
    }
    
    .shared-rich-text h3 {
        font-size: 32px !important;
    }
    
    .shared-rich-text h4 {
        font-size: 28px !important;
    }
    
    .shared-rich-text h5 {
        font-size: 24px !important;
    }
    
    .shared-rich-text h6 {
        font-size: 20px !important;
    }
    
    .shared-rich-text p {
        font-size: 20px !important;
    }
    
    .shared-rich-text ul,
    .shared-rich-text ol {
        font-size: 20px !important;
    }
    
    .shared-rich-text table {
        font-size: 20px !important;
    }
    
    .shared-rich-text table th,
    .shared-rich-text table td {
        padding: 16px 20px !important;
    }
    
    .shared-rich-text pre {
        padding: 24px !important;
        font-size: 18px !important;
    }
    
    .shared-rich-text code {
        font-size: 18px !important;
    }
    
    .shared-rich-text blockquote {
        padding: 24px 28px !important;
        font-size: 20px !important;
    }
    
    .shared-rich-text dl {
        font-size: 20px !important;
    }
    
    .shared-rich-text dt {
        font-size: 20px !important;
    }
    
    .shared-rich-text dd {
        font-size: 20px !important;
    }
    
    .shared-rich-text figcaption {
        font-size: 18px !important;
    }
    
    .shared-rich-text small {
        font-size: 16px !important;
    }
    
    .shared-rich-text kbd {
        font-size: 16px !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .shared-rich-text {
        font-size: 16px !important;
    }
    
    .shared-rich-text h1 {
        font-size: 28px !important;
    }
    
    .shared-rich-text h2 {
        font-size: 24px !important;
    }
    
    .shared-rich-text h3 {
        font-size: 20px !important;
    }
    
    .shared-rich-text h4 {
        font-size: 18px !important;
    }
    
    .shared-rich-text h5 {
        font-size: 16px !important;
    }
    
    .shared-rich-text h6 {
        font-size: 14px !important;
    }
    
    .shared-rich-text p {
        font-size: 16px !important;
    }
    
    .shared-rich-text ul,
    .shared-rich-text ol {
        font-size: 16px !important;
        padding-left: 20px !important;
    }
    
    .shared-rich-text table {
        font-size: 16px !important;
    }
    
    .shared-rich-text table th,
    .shared-rich-text table td {
        padding: 8px 12px !important;
    }
    
    .shared-rich-text pre {
        padding: 16px !important;
        font-size: 14px !important;
    }
    
    .shared-rich-text code {
        font-size: 14px !important;
    }
    
    .shared-rich-text blockquote {
        padding: 16px 20px !important;
        font-size: 16px !important;
    }
    
    .shared-rich-text dl {
        font-size: 16px !important;
    }
    
    .shared-rich-text dt {
        font-size: 16px !important;
    }
    
    .shared-rich-text dd {
        font-size: 16px !important;
        padding-left: 16px !important;
    }
    
    .shared-rich-text figcaption {
        font-size: 14px !important;
    }
    
    .shared-rich-text small {
        font-size: 12px !important;
    }
    
    .shared-rich-text kbd {
        font-size: 12px !important;
    }
    
    .shared-rich-text hr {
        margin: 24px 0 !important;
    }
}

@media (max-width: 480px) {
    .shared-rich-text {
        font-size: 14px !important;
    }
    
    .shared-rich-text h1 {
        font-size: 24px !important;
    }
    
    .shared-rich-text h2 {
        font-size: 20px !important;
    }
    
    .shared-rich-text h3 {
        font-size: 18px !important;
    }
    
    .shared-rich-text h4 {
        font-size: 16px !important;
    }
    
    .shared-rich-text h5 {
        font-size: 14px !important;
    }
    
    .shared-rich-text h6 {
        font-size: 12px !important;
    }
    
    .shared-rich-text p {
        font-size: 14px !important;
    }
    
    .shared-rich-text ul,
    .shared-rich-text ol {
        font-size: 14px !important;
        padding-left: 16px !important;
    }
    
    .shared-rich-text table {
        font-size: 14px !important;
    }
    
    .shared-rich-text table th,
    .shared-rich-text table td {
        padding: 6px 8px !important;
    }
    
    .shared-rich-text pre {
        padding: 12px !important;
        font-size: 12px !important;
    }
    
    .shared-rich-text code {
        font-size: 12px !important;
    }
    
    .shared-rich-text blockquote {
        padding: 12px 16px !important;
        font-size: 14px !important;
    }
    
    .shared-rich-text dl {
        font-size: 14px !important;
    }
    
    .shared-rich-text dt {
        font-size: 14px !important;
    }
    
    .shared-rich-text dd {
        font-size: 14px !important;
        padding-left: 12px !important;
    }
    
    .shared-rich-text figcaption {
        font-size: 12px !important;
    }
    
    .shared-rich-text small {
        font-size: 10px !important;
    }
    
    .shared-rich-text kbd {
        font-size: 10px !important;
    }
    
    .shared-rich-text hr {
        margin: 20px 0 !important;
    }
}

/* ==========================================================================
   BACKGROUND COLOR ADAPTATION SYSTEM
   ========================================================================== */

/* Dark backgrounds - white text */
.shared-rich-text[style*="background-color: #0F2027"],
.shared-rich-text[style*="background-color: #0F2027"] h1,
.shared-rich-text[style*="background-color: #0F2027"] h2,
.shared-rich-text[style*="background-color: #0F2027"] h3,
.shared-rich-text[style*="background-color: #0F2027"] h4,
.shared-rich-text[style*="background-color: #0F2027"] h5,
.shared-rich-text[style*="background-color: #0F2027"] h6,
.shared-rich-text[style*="background-color: #0F2027"] p,
.shared-rich-text[style*="background-color: #0F2027"] ul,
.shared-rich-text[style*="background-color: #0F2027"] ol,
.shared-rich-text[style*="background-color: #0F2027"] li,
.shared-rich-text[style*="background-color: #0F2027"] strong,
.shared-rich-text[style*="background-color: #0F2027"] b,
.shared-rich-text[style*="background-color: #0F2027"] em,
.shared-rich-text[style*="background-color: #0F2027"] i,
.shared-rich-text[style*="background-color: #0F2027"] blockquote,
.shared-rich-text[style*="background-color: #0F2027"] code,
.shared-rich-text[style*="background-color: #0F2027"] pre,
.shared-rich-text[style*="background-color: #0F2027"] table,
.shared-rich-text[style*="background-color: #0F2027"] th,
.shared-rich-text[style*="background-color: #0F2027"] td,
.shared-rich-text[style*="background-color: #0F2027"] dl,
.shared-rich-text[style*="background-color: #0F2027"] dt,
.shared-rich-text[style*="background-color: #0F2027"] dd {
    color: #ffffff !important;
}

.shared-rich-text[style*="background-color: #1B71B6"],
.shared-rich-text[style*="background-color: #1B71B6"] h1,
.shared-rich-text[style*="background-color: #1B71B6"] h2,
.shared-rich-text[style*="background-color: #1B71B6"] h3,
.shared-rich-text[style*="background-color: #1B71B6"] h4,
.shared-rich-text[style*="background-color: #1B71B6"] h5,
.shared-rich-text[style*="background-color: #1B71B6"] h6,
.shared-rich-text[style*="background-color: #1B71B6"] p,
.shared-rich-text[style*="background-color: #1B71B6"] ul,
.shared-rich-text[style*="background-color: #1B71B6"] ol,
.shared-rich-text[style*="background-color: #1B71B6"] li,
.shared-rich-text[style*="background-color: #1B71B6"] strong,
.shared-rich-text[style*="background-color: #1B71B6"] b,
.shared-rich-text[style*="background-color: #1B71B6"] em,
.shared-rich-text[style*="background-color: #1B71B6"] i,
.shared-rich-text[style*="background-color: #1B71B6"] blockquote,
.shared-rich-text[style*="background-color: #1B71B6"] code,
.shared-rich-text[style*="background-color: #1B71B6"] pre,
.shared-rich-text[style*="background-color: #1B71B6"] table,
.shared-rich-text[style*="background-color: #1B71B6"] th,
.shared-rich-text[style*="background-color: #1B71B6"] td,
.shared-rich-text[style*="background-color: #1B71B6"] dl,
.shared-rich-text[style*="background-color: #1B71B6"] dt,
.shared-rich-text[style*="background-color: #1B71B6"] dd {
    color: #ffffff !important;
}

.shared-rich-text[style*="background-color: #24A7D9"],
.shared-rich-text[style*="background-color: #24A7D9"] h1,
.shared-rich-text[style*="background-color: #24A7D9"] h2,
.shared-rich-text[style*="background-color: #24A7D9"] h3,
.shared-rich-text[style*="background-color: #24A7D9"] h4,
.shared-rich-text[style*="background-color: #24A7D9"] h5,
.shared-rich-text[style*="background-color: #24A7D9"] h6,
.shared-rich-text[style*="background-color: #24A7D9"] p,
.shared-rich-text[style*="background-color: #24A7D9"] ul,
.shared-rich-text[style*="background-color: #24A7D9"] ol,
.shared-rich-text[style*="background-color: #24A7D9"] li,
.shared-rich-text[style*="background-color: #24A7D9"] strong,
.shared-rich-text[style*="background-color: #24A7D9"] b,
.shared-rich-text[style*="background-color: #24A7D9"] em,
.shared-rich-text[style*="background-color: #24A7D9"] i,
.shared-rich-text[style*="background-color: #24A7D9"] blockquote,
.shared-rich-text[style*="background-color: #24A7D9"] code,
.shared-rich-text[style*="background-color: #24A7D9"] pre,
.shared-rich-text[style*="background-color: #24A7D9"] table,
.shared-rich-text[style*="background-color: #24A7D9"] th,
.shared-rich-text[style*="background-color: #24A7D9"] td,
.shared-rich-text[style*="background-color: #24A7D9"] dl,
.shared-rich-text[style*="background-color: #24A7D9"] dt,
.shared-rich-text[style*="background-color: #24A7D9"] dd {
    color: #ffffff !important;
}

/* White background - dark text */
.shared-rich-text[style*="background-color: #ffffff"],
.shared-rich-text[style*="background-color: #ffffff"] h1,
.shared-rich-text[style*="background-color: #ffffff"] h2,
.shared-rich-text[style*="background-color: #ffffff"] h3,
.shared-rich-text[style*="background-color: #ffffff"] h4,
.shared-rich-text[style*="background-color: #ffffff"] h5,
.shared-rich-text[style*="background-color: #ffffff"] h6,
.shared-rich-text[style*="background-color: #ffffff"] p,
.shared-rich-text[style*="background-color: #ffffff"] ul,
.shared-rich-text[style*="background-color: #ffffff"] ol,
.shared-rich-text[style*="background-color: #ffffff"] li,
.shared-rich-text[style*="background-color: #ffffff"] strong,
.shared-rich-text[style*="background-color: #ffffff"] b,
.shared-rich-text[style*="background-color: #ffffff"] em,
.shared-rich-text[style*="background-color: #ffffff"] i,
.shared-rich-text[style*="background-color: #ffffff"] blockquote,
.shared-rich-text[style*="background-color: #ffffff"] code,
.shared-rich-text[style*="background-color: #ffffff"] pre,
.shared-rich-text[style*="background-color: #ffffff"] table,
.shared-rich-text[style*="background-color: #ffffff"] th,
.shared-rich-text[style*="background-color: #ffffff"] td,
.shared-rich-text[style*="background-color: #ffffff"] dl,
.shared-rich-text[style*="background-color: #ffffff"] dt,
.shared-rich-text[style*="background-color: #ffffff"] dd {
    color: #1b1d21 !important;
}

/* Transparent background - dark text */
.shared-rich-text[style*="background-color: transparent"],
.shared-rich-text[style*="background-color: transparent"] h1,
.shared-rich-text[style*="background-color: transparent"] h2,
.shared-rich-text[style*="background-color: transparent"] h3,
.shared-rich-text[style*="background-color: transparent"] h4,
.shared-rich-text[style*="background-color: transparent"] h5,
.shared-rich-text[style*="background-color: transparent"] h6,
.shared-rich-text[style*="background-color: transparent"] p,
.shared-rich-text[style*="background-color: transparent"] ul,
.shared-rich-text[style*="background-color: transparent"] ol,
.shared-rich-text[style*="background-color: transparent"] li,
.shared-rich-text[style*="background-color: transparent"] strong,
.shared-rich-text[style*="background-color: transparent"] b,
.shared-rich-text[style*="background-color: transparent"] em,
.shared-rich-text[style*="background-color: transparent"] i,
.shared-rich-text[style*="background-color: transparent"] blockquote,
.shared-rich-text[style*="background-color: transparent"] code,
.shared-rich-text[style*="background-color: transparent"] pre,
.shared-rich-text[style*="background-color: transparent"] table,
.shared-rich-text[style*="background-color: transparent"] th,
.shared-rich-text[style*="background-color: transparent"] td,
.shared-rich-text[style*="background-color: transparent"] dl,
.shared-rich-text[style*="background-color: transparent"] dt,
.shared-rich-text[style*="background-color: transparent"] dd {
    color: #1b1d21 !important;
}

/* ==========================================================================
   ACCESSIBILITY & PERFORMANCE
   ========================================================================== */

/* Focus states */
.shared-rich-text a:focus {
    outline: 2px solid #42bcfc !important;
    outline-offset: 2px !important;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .shared-rich-text a {
        transition: none !important;
    }
}

/* High contrast mode */
@media (prefers-contrast: high) {
    .shared-rich-text table {
        border: 2px solid #000000 !important;
    }
    
    .shared-rich-text table th,
    .shared-rich-text table td {
        border: 1px solid #000000 !important;
    }
}

/* ==========================================================================
   PRINT STYLES
   ========================================================================== */

@media print {
    .shared-rich-text {
        font-size: 12px !important;
    }
    
    .shared-rich-text h1 {
        font-size: 24px !important;
    }
    
    .shared-rich-text h2 {
        font-size: 20px !important;
    }
    
    .shared-rich-text h3 {
        font-size: 18px !important;
    }
    
    .shared-rich-text h4 {
        font-size: 16px !important;
    }
    
    .shared-rich-text h5 {
        font-size: 14px !important;
    }
    
    .shared-rich-text h6 {
        font-size: 12px !important;
    }
    
    .shared-rich-text p {
        font-size: 12px !important;
    }
    
    .shared-rich-text ul,
    .shared-rich-text ol {
        font-size: 12px !important;
    }
    
    .shared-rich-text table {
        font-size: 12px !important;
        border: 1px solid #000000 !important;
    }
    
    .shared-rich-text table th,
    .shared-rich-text table td {
        border: 1px solid #000000 !important;
        padding: 4px 8px !important;
    }
    
    .shared-rich-text blockquote {
        border: 1px solid #000000 !important;
        background: #ffffff !important;
    }
    
    .shared-rich-text pre {
        border: 1px solid #000000 !important;
        background: #ffffff !important;
    }
    
    .shared-rich-text code {
        border: 1px solid #000000 !important;
        background: #ffffff !important;
    }
}
