/**
 * SloganIndex Persian Card — Core-Isolated Component v4.5.0
 * Updated: 2026-06-17 Europe/London
 *
 * Contract:
 * - Private namespace only: sidxcfa420-*
 * - No si-ah-* classes
 * - No si-card-fa* classes
 * - No dependency on Search FA or Archive Hub FA selectors
 * - Uses core variables from core-local-fonts.php / core-persian-ui.php / core-color-theme.php
 * - Uses taxonomy color variables emitted by core-icons.php
 * - Uses a cards-owned cinematic readability effect above the media layer
 * - Uses Core Color Theme variables for shell, chips, panels, hover and dark/light modes
 */

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
    all: initial !important;
    /* Displayed at 50% of the 1080×1350 portrait ratio: 540×675. */
    --sidxcfa420-card-width: 540px;
    --sidxcfa420-card-height: 675px;
    --sidxcfa420-safe-x: 24px;
    --sidxcfa420-safe-y: 22px;
    --sidxcfa420-text: var(--si-text-color, #111827);
    --sidxcfa420-heading: var(--si-heading-color, #0f172a);
    --sidxcfa420-muted: var(--si-muted-color, #475569);
    --sidxcfa420-font-fa: var(--si-font-fa, 'SI Vazirmatn', 'Vazirmatn', Tahoma, Arial, sans-serif);
    --sidxcfa420-font-en: var(--si-font-en, 'SI Inter', 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif);
    --sidxcfa420-title-panel-bg: rgba(0, 0, 0, .70);
    --sidxcfa420-title-panel-border: rgba(0, 0, 0, .76);
    --sidxcfa420-title-panel-text: #ffffff;
    --sidxcfa420-translation-panel-bg: rgba(229, 231, 235, .90);
    --sidxcfa420-translation-panel-border: rgba(255, 255, 255, .82);
    --sidxcfa420-translation-panel-text: #1f2937;
    --sidxcfa420-media-brightness: .82;
    --sidxcfa420-media-contrast: 1.12;
    --sidxcfa420-media-saturation: 1.08;
    --sidxcfa420-readability-layer-a: rgba(2, 6, 23, .22);
    --sidxcfa420-readability-layer-b: rgba(2, 6, 23, .05);
    --sidxcfa420-readability-focus: rgba(2, 6, 23, .34);

    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    flex: 0 0 var(--sidxcfa420-card-width) !important;
    width: var(--sidxcfa420-card-width) !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: var(--sidxcfa420-card-height) !important;
    min-height: var(--sidxcfa420-card-height) !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    direction: rtl !important;
    unicode-bidi: isolate !important;
    text-align: right !important;
    color: var(--sidxcfa420-text) !important;
    background: #ffffff !important;
    border: 1px solid var(--sidxcfa420-accent-border, rgba(15, 23, 42, .14)) !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: none !important;
    font-family: var(--sidxcfa420-font-fa) !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.8 !important;
    letter-spacing: 0 !important;
    vertical-align: baseline !important;
    list-style: none !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card * ,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card *::before,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card *::after {
    box-sizing: border-box !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-link {
    all: unset !important;
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    direction: rtl !important;
    unicode-bidi: isolate !important;
    text-align: right !important;
    color: inherit !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    cursor: pointer !important;
    font-family: inherit !important;
}


.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-link::before,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-link::after {
    all: unset !important;
    content: '' !important;
    position: absolute !important;
    display: block !important;
    pointer-events: none !important;
    user-select: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-link::before {
    z-index: 1 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    background: rgba(2, 6, 23, .18) !important;
    mix-blend-mode: multiply !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-link::after {
    z-index: 2 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    background:
        radial-gradient(circle at 76% 30%, var(--sidxcfa420-readability-focus) 0, var(--sidxcfa420-readability-layer-a) 32%, rgba(2, 6, 23, .04) 62%, transparent 100%),
        linear-gradient(180deg, rgba(2, 6, 23, .10) 0%, var(--sidxcfa420-readability-layer-b) 44%, rgba(2, 6, 23, .24) 100%) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-bg {
    all: unset !important;
    position: absolute !important;
    display: block !important;
    pointer-events: none !important;
    user-select: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-bg {
    z-index: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    background-color: #f8fafc !important;
    background-image: var(--sidxcfa420-bg, none) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
    filter: brightness(var(--sidxcfa420-media-brightness)) contrast(var(--sidxcfa420-media-contrast)) saturate(var(--sidxcfa420-media-saturation)) !important;
}


.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-no-image .sidxcfa420-bg {
    background-image: none !important;
    background-color: #ffffff !important;
}


.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence {
    all: unset !important;
    position: absolute !important;
    z-index: 8 !important;
    top: 13px !important;
    left: 13px !important;
    right: auto !important;
    bottom: auto !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 46% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 6px !important;
    direction: rtl !important;
    text-align: right !important;
    font-family: var(--sidxcfa420-font-fa) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence-chip {
    all: unset !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    min-width: 0 !important;
    min-height: 24px !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 3px 8px !important;
    overflow: hidden !important;
    direction: rtl !important;
    text-align: right !important;
    white-space: nowrap !important;
    color: var(--sidxcfa420-accent, #0f172a) !important;
    background: rgba(255, 255, 255, .94) !important;
    border: 1px solid var(--sidxcfa420-accent-border, rgba(15, 23, 42, .18)) !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    font-family: var(--sidxcfa420-font-fa) !important;
    font-size: .62rem !important;
    font-style: normal !important;
    font-weight: 850 !important;
    line-height: 1.4 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence-count,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence-label {
    all: unset !important;
    display: inline !important;
    color: inherit !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-style: normal !important;
    line-height: inherit !important;
    white-space: nowrap !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence-count {
    font-weight: 950 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence-label {
    color: var(--sidxcfa420-translation-panel-text, #1f2937) !important;
    font-weight: 760 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-taxonomy {
    all: unset !important;
    position: absolute !important;
    z-index: 8 !important;
    right: -1px !important;
    left: auto !important;
    bottom: 14px !important;
    top: auto !important;
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 68% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 5px !important;
    direction: rtl !important;
    text-align: right !important;
    font-family: var(--sidxcfa420-font-fa) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-chip {
    all: unset !important;
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 25px !important;
    margin: 0 !important;
    padding: 2px 6px 2px 8px !important;
    overflow: hidden !important;
    direction: rtl !important;
    text-align: right !important;
    color: var(--sidxcfa420-heading, #0f172a) !important;
    background: rgba(255, 255, 255, .96) !important;
    border: 1px solid var(--si-tax-accent-border, rgba(51, 65, 85, .30)) !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    font-family: var(--sidxcfa420-font-fa) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon {
    all: unset !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    min-height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--si-tax-accent, #334155) !important;
    background: var(--si-tax-accent-soft, rgba(51, 65, 85, .12)) !important;
    border: 1px solid var(--si-tax-accent-border, rgba(51, 65, 85, .30)) !important;
    border-radius: 0 !important;
    line-height: 1 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-core-icon {
    display: block !important;
    width: 13px !important;
    height: 13px !important;
    min-width: 13px !important;
    min-height: 13px !important;
    max-width: 13px !important;
    max-height: 13px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: currentColor !important;
    overflow: visible !important;
    vertical-align: middle !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-text {
    all: unset !important;
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    direction: rtl !important;
    text-align: right !important;
    color: inherit !important;
    font-family: var(--sidxcfa420-font-fa) !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-label,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-name,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-extra {
    all: unset !important;
    display: inline !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    direction: rtl !important;
    text-align: right !important;
    font-family: inherit !important;
    font-style: normal !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-label {
    flex: 0 0 auto !important;
    color: var(--si-tax-accent, #334155) !important;
    font-size: .56rem !important;
    font-weight: 950 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-label::after {
    content: ':' !important;
    margin-right: 2px !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-name {
    flex: 1 1 auto !important;
    color: var(--sidxcfa420-heading, #0f172a) !important;
    font-size: .60rem !important;
    font-weight: 850 !important;
    text-overflow: ellipsis !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-extra {
    flex: 0 0 auto !important;
    min-width: 16px !important;
    height: 16px !important;
    padding: 0 3px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    background: var(--si-tax-accent, #334155) !important;
    font-size: .54rem !important;
    font-weight: 950 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-content {
    all: unset !important;
    position: absolute !important;
    z-index: 7 !important;
    top: 104px !important;
    right: 5% !important;
    left: 5% !important;
    bottom: 178px !important;
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 9px !important;
    overflow: visible !important;
    direction: rtl !important;
    text-align: right !important;
    color: var(--sidxcfa420-heading, #0f172a) !important;
    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    font-family: var(--sidxcfa420-font-fa) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-title {
    all: unset !important;
    display: inline-block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 8px 12px 9px !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    direction: rtl !important;
    unicode-bidi: plaintext !important;
    text-align: right !important;
    color: var(--sidxcfa420-title-panel-text, #ffffff) !important;
    background: var(--sidxcfa420-title-panel-bg) !important;
    border: 1px solid var(--sidxcfa420-title-panel-border) !important;
    outline: 0 !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .16) !important;
    text-shadow: 0 1px 1px rgba(0, 0, 0, .36) !important;
    font-family: var(--sidxcfa420-font-fa) !important;
    font-size: 1.36rem !important;
    font-style: normal !important;
    font-weight: 950 !important;
    line-height: 1.95 !important;
    letter-spacing: -.01em !important;
    text-decoration: none !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-title-short .sidxcfa420-title {
    font-size: 1.58rem !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-title-long .sidxcfa420-title {
    font-size: 1.17rem !important;
    line-height: 1.9 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation {
    all: unset !important;
    display: inline-block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 6px 10px 7px !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    direction: rtl !important;
    unicode-bidi: plaintext !important;
    text-align: right !important;
    color: var(--sidxcfa420-translation-panel-text, #1f2937) !important;
    background: var(--sidxcfa420-translation-panel-bg) !important;
    border: 1px solid var(--sidxcfa420-translation-panel-border) !important;
    outline: 0 !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, .10) !important;
    font-family: var(--sidxcfa420-font-fa) !important;
    font-size: .95rem !important;
    font-style: normal !important;
    font-weight: 760 !important;
    line-height: 1.9 !important;
    text-decoration: none !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-label,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-text {
    all: unset !important;
    display: inline !important;
    direction: rtl !important;
    text-align: right !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-style: normal !important;
    line-height: inherit !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-label {
    color: var(--sidxcfa420-accent, #0f172a) !important;
    font-weight: 900 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-label::after {
    content: ': ' !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-text {
    color: var(--sidxcfa420-muted, #475569) !important;
    font-weight: 760 !important;
}

@media (max-width: 760px) {
    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
        --sidxcfa420-card-width: 100%;
        --sidxcfa420-card-height: 460px;
        --sidxcfa420-safe-x: 16px;
        flex-basis: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence {
        top: 10px !important;
        left: 10px !important;
        max-width: calc(100% - 20px) !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-content {
        top: 82px !important;
        right: 5% !important;
        left: 5% !important;
        bottom: 144px !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-title {
        font-size: 1.08rem !important;
        line-height: 1.9 !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-title-short .sidxcfa420-title {
        font-size: 1.36rem !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation {
        font-size: .92rem !important;
        line-height: 1.85 !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-taxonomy {
        right: -1px !important;
        bottom: 12px !important;
        max-width: calc(100% - 14px) !important;
    }
}

/* Central card-list layout. Search FA and Archive Hub FA must use this wrapper instead of page-local card grids. */
.sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid {
    all: initial !important;
    --sidxcfa420-grid-max-width: 1160px;
    --sidxcfa420-grid-gap: 24px;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: var(--sidxcfa420-grid-gap) !important;
    width: 100% !important;
    max-width: var(--sidxcfa420-grid-max-width) !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 24px auto 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    direction: rtl !important;
    unicode-bidi: isolate !important;
    text-align: right !important;
    color: var(--si-text-color, #111827) !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    opacity: 1 !important;
    transform: none !important;
    list-style: none !important;
    font-family: var(--si-font-fa, 'SI Vazirmatn', 'Vazirmatn', Tahoma, Arial, sans-serif) !important;
}

.sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid,
.sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid * ,
.sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid *::before,
.sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid *::after {
    box-sizing: border-box !important;
}

.sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid > .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
    flex: 0 1 var(--sidxcfa420-card-width, 540px) !important;
    margin: 0 !important;
}

@media (max-width: 760px) {
    .sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid {
        --sidxcfa420-grid-gap: 18px;
        max-width: 100% !important;
        margin-top: 18px !important;
        padding-right: 16px !important;
        padding-left: 16px !important;
    }

    .sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid > .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
        flex-basis: 100% !important;
    }
}


/* =============================================================================
 * Persian Card FA — v4.5.0
 * Core Color Theme v2.3.1 integration
 * --------------------------------------------------------------------------
 * This final layer keeps the card's isolated namespace, but moves visual color
 * decisions to Core Color Theme tokens.
 *
 * Supported Core tokens:
 * --si-page-bg, --si-surface-color, --si-surface-alt-color, --si-elevated-color,
 * --si-card-bg, --si-text-color, --si-heading-color, --si-muted-color,
 * --si-subtle-text-color, --si-border-color, --si-border-strong-color,
 * --si-divider-color, --si-accent-color, --si-accent-soft-color,
 * --si-accent-strong-color, --si-link-color, --si-link-hover-color,
 * --si-focus-ring-color, --si-shadow-color, --si-shadow-strong-color.
 * ========================================================================== */

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
    --sidxcfa420-surface: var(--si-card-bg, var(--si-surface-color, #fff9ef));
    --sidxcfa420-surface-alt: var(--si-surface-alt-color, #e9dfcc);
    --sidxcfa420-elevated: var(--si-elevated-color, #fffcf5);
    --sidxcfa420-line: var(--si-border-color, #d8cdba);
    --sidxcfa420-line-strong: var(--si-border-strong-color, #b6a78f);
    --sidxcfa420-divider: var(--si-divider-color, #e2d7c4);
    --sidxcfa420-text: var(--si-text-color, #24313d);
    --sidxcfa420-heading: var(--si-heading-color, #17202a);
    --sidxcfa420-muted: var(--si-muted-color, #667085);
    --sidxcfa420-subtle: var(--si-subtle-text-color, #8a7f70);
    --sidxcfa420-core-accent: var(--si-accent-color, #0f766e);
    --sidxcfa420-core-accent-strong: var(--si-accent-strong-color, #115e59);
    --sidxcfa420-core-accent-soft: var(--si-accent-soft-color, #e6f4ef);
    --sidxcfa420-link: var(--si-link-color, #0f766e);
    --sidxcfa420-link-hover: var(--si-link-hover-color, #134e4a);
    --sidxcfa420-focus: var(--si-focus-ring-color, rgba(15, 118, 110, .26));
    --sidxcfa420-shadow-color: var(--si-shadow-color, rgba(36, 49, 61, .08));
    --sidxcfa420-shadow-strong-color: var(--si-shadow-strong-color, rgba(36, 49, 61, .14));

    /* image/text readability variables, tuned per theme below */
    --sidxcfa420-title-panel-bg: rgba(23, 32, 42, .78);
    --sidxcfa420-title-panel-border: rgba(23, 32, 42, .82);
    --sidxcfa420-title-panel-text: #ffffff;
    --sidxcfa420-translation-panel-bg: color-mix(in srgb, var(--sidxcfa420-elevated) 92%, transparent);
    --sidxcfa420-translation-panel-border: color-mix(in srgb, var(--sidxcfa420-line) 82%, transparent);
    --sidxcfa420-translation-panel-text: var(--sidxcfa420-heading);
    --sidxcfa420-media-brightness: .84;
    --sidxcfa420-media-contrast: 1.10;
    --sidxcfa420-media-saturation: 1.04;
    --sidxcfa420-readability-layer-a: rgba(2, 6, 23, .20);
    --sidxcfa420-readability-layer-b: rgba(2, 6, 23, .05);
    --sidxcfa420-readability-focus: rgba(2, 6, 23, .30);

    background: var(--sidxcfa420-surface) !important;
    border-color: var(--sidxcfa420-line) !important;
    color: var(--sidxcfa420-text) !important;
    box-shadow: 0 14px 34px var(--sidxcfa420-shadow-color) !important;
    transition:
        transform 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        filter 180ms ease !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:hover,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:focus-within {
    transform: translateY(-2px) !important;
    border-color: var(--sidxcfa420-accent, var(--sidxcfa420-core-accent)) !important;
    box-shadow: 0 18px 42px var(--sidxcfa420-shadow-strong-color) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-link:focus-visible {
    outline: 3px solid var(--sidxcfa420-focus) !important;
    outline-offset: -3px !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-bg {
    background-color: var(--sidxcfa420-surface-alt) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-no-image .sidxcfa420-bg {
    background:
        radial-gradient(circle at 20% 18%, color-mix(in srgb, var(--sidxcfa420-accent-soft, var(--sidxcfa420-core-accent-soft)) 72%, transparent), transparent 34%),
        linear-gradient(135deg, var(--sidxcfa420-surface-alt), var(--sidxcfa420-surface)) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-link::before {
    background: color-mix(in srgb, var(--si-overlay-color, rgba(2, 6, 23, .56)) 28%, transparent) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-link::after {
    background:
        radial-gradient(circle at 50% 40%, transparent 0, transparent 34%, var(--sidxcfa420-readability-focus) 100%),
        linear-gradient(180deg, var(--sidxcfa420-readability-layer-a), var(--sidxcfa420-readability-layer-b) 38%, var(--sidxcfa420-readability-focus)) !important;
}

/* Evidence chips */
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence-chip {
    color: var(--sidxcfa420-heading) !important;
    background: color-mix(in srgb, var(--sidxcfa420-elevated) 88%, transparent) !important;
    border-color: color-mix(in srgb, var(--sidxcfa420-line) 84%, transparent) !important;
    box-shadow: 0 6px 14px var(--sidxcfa420-shadow-color) !important;
    font-weight: 680 !important;
}

/* Taxonomy chips */
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-chip {
    color: var(--sidxcfa420-heading) !important;
    background: color-mix(in srgb, var(--sidxcfa420-elevated) 90%, transparent) !important;
    border-color: var(--si-tax-accent-border, var(--sidxcfa420-line)) !important;
    box-shadow: 0 6px 14px var(--sidxcfa420-shadow-color) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon {
    color: var(--si-tax-accent, var(--sidxcfa420-core-accent)) !important;
    background: var(--si-tax-accent-soft, var(--sidxcfa420-core-accent-soft)) !important;
    border-color: var(--si-tax-accent-border, var(--sidxcfa420-line)) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-label {
    color: var(--sidxcfa420-muted) !important;
    font-weight: 650 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-name {
    color: var(--sidxcfa420-heading) !important;
    font-weight: 760 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-extra {
    color: var(--sidxcfa420-link-hover) !important;
    background: var(--sidxcfa420-accent-soft, var(--sidxcfa420-core-accent-soft)) !important;
    border-color: var(--sidxcfa420-line) !important;
}

/* Text panels */
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-title {
    color: var(--sidxcfa420-title-panel-text) !important;
    background: var(--sidxcfa420-title-panel-bg) !important;
    border-color: var(--sidxcfa420-title-panel-border) !important;
    box-shadow: 0 10px 22px rgba(0, 0, 0, .18) !important;
    font-weight: 900 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation {
    color: var(--sidxcfa420-translation-panel-text) !important;
    background: var(--sidxcfa420-translation-panel-bg) !important;
    border-color: var(--sidxcfa420-translation-panel-border) !important;
    box-shadow: 0 8px 18px var(--sidxcfa420-shadow-color) !important;
    font-weight: 650 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-label {
    color: var(--sidxcfa420-link-hover) !important;
    font-weight: 780 !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-text {
    color: var(--sidxcfa420-muted) !important;
    font-weight: 650 !important;
}

/* Grid */
.sidxcfa420-grid.sidxcfa420-grid.sidxcfa420-grid {
    color: var(--si-text-color, #24313d) !important;
}

/* Dark theme tuning from Core Color Theme */
html[data-si-theme="dark"] .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card,
body.si-theme-dark .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
    --sidxcfa420-title-panel-bg: rgba(10, 15, 28, .82);
    --sidxcfa420-title-panel-border: rgba(42, 56, 80, .94);
    --sidxcfa420-title-panel-text: var(--si-heading-color, #f8fafc);
    --sidxcfa420-translation-panel-bg: color-mix(in srgb, var(--si-surface-color, #111827) 88%, transparent);
    --sidxcfa420-translation-panel-border: color-mix(in srgb, var(--si-border-strong-color, #53657e) 74%, transparent);
    --sidxcfa420-translation-panel-text: var(--si-text-color, #e7eef8);
    --sidxcfa420-media-brightness: .74;
    --sidxcfa420-media-contrast: 1.16;
    --sidxcfa420-media-saturation: 1.02;
    --sidxcfa420-readability-layer-a: rgba(2, 6, 23, .36);
    --sidxcfa420-readability-layer-b: rgba(2, 6, 23, .08);
    --sidxcfa420-readability-focus: rgba(2, 6, 23, .48);
}

html[data-si-theme="dark"] .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence-chip,
body.si-theme-dark .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-evidence-chip,
html[data-si-theme="dark"] .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-chip,
body.si-theme-dark .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-chip {
    background: color-mix(in srgb, var(--si-surface-color, #111827) 88%, transparent) !important;
    border-color: color-mix(in srgb, var(--si-border-color, #2a3850) 88%, transparent) !important;
}

html[data-si-theme="dark"] .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-text,
body.si-theme-dark .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-translation-text {
    color: var(--si-muted-color, #a8b5c7) !important;
}

@media (max-width: 760px) {
    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
        box-shadow: 0 10px 24px var(--sidxcfa420-shadow-color) !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:hover,
    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:focus-within {
        transform: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
        transition: none !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:hover,
    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:focus-within {
        transform: none !important;
    }
}


/* v4.5.0 Taxonomy Icon Core Fix: PHP renderer moved to Singleton OOP while keeping the approved Core Color Theme v2.3.1 CSS contract. */


/* =============================================================================
 * Persian Card FA — v4.5.0
 * Taxonomy icon/color fix using core-icons.php
 * --------------------------------------------------------------------------
 * Rule:
 * - Taxonomy icon/chip colors come from core-icons.php variables:
 *   --si-tax-accent, --si-tax-accent-soft, --si-tax-accent-border
 * - Card border/hover colors come from Core Color Theme, not taxonomy colors.
 * - Therefore movement pink never controls the card hover/border.
 * ========================================================================== */

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
    --sidxcfa420-card-border: var(--si-border-color, #d8cdba);
    --sidxcfa420-card-border-hover: var(--si-border-strong-color, #b6a78f);
    --sidxcfa420-card-hover-ring: var(--si-focus-ring-color, rgba(15, 118, 110, .18));

    border: 1px solid var(--sidxcfa420-card-border) !important;
    box-shadow: 0 10px 26px var(--sidxcfa420-shadow-color, var(--si-shadow-color, rgba(36, 49, 61, .08))) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:hover,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:focus-within {
    border-color: var(--sidxcfa420-card-border-hover) !important;
    box-shadow:
        0 0 0 1px color-mix(in srgb, var(--sidxcfa420-card-border-hover) 34%, transparent),
        0 16px 38px var(--sidxcfa420-shadow-strong-color, var(--si-shadow-strong-color, rgba(36, 49, 61, .14))) !important;
}

/* Absolutely no taxonomy-driven card hover color. */
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:hover,
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card:focus-within {
    --sidxcfa420-accent-border: var(--si-border-color, #d8cdba);
}

/* Taxonomy chip must keep exact identity from core-icons.php. */
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-chip {
    --sidxcfa420-this-tax-color: var(--si-tax-accent, #334155);
    --sidxcfa420-this-tax-soft: var(--si-tax-accent-soft, rgba(51, 65, 85, .12));
    --sidxcfa420-this-tax-border: var(--si-tax-accent-border, rgba(51, 65, 85, .30));

    color: var(--sidxcfa420-heading, var(--si-heading-color, #17202a)) !important;
    background:
        linear-gradient(90deg, color-mix(in srgb, var(--sidxcfa420-this-tax-soft) 68%, transparent), transparent 64%),
        color-mix(in srgb, var(--sidxcfa420-elevated, var(--si-elevated-color, #fffcf5)) 92%, transparent) !important;
    border-color: var(--sidxcfa420-this-tax-border) !important;
    box-shadow: 0 6px 14px var(--sidxcfa420-shadow-color, var(--si-shadow-color, rgba(36, 49, 61, .08))) !important;
}

/* Icon box: color, background and border all come from core-icons.php taxonomy visual variables. */
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon {
    color: var(--si-tax-accent, #334155) !important;
    background: var(--si-tax-accent-soft, rgba(51, 65, 85, .12)) !important;
    border-color: var(--si-tax-accent-border, rgba(51, 65, 85, .30)) !important;
}

/* Force SVGs coming from core-icons.php to paint with the taxonomy currentColor. */
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon .sidxcfa420-core-icon {
    color: var(--si-tax-accent, #334155) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon .sidxcfa420-core-icon [stroke] {
    stroke: currentColor !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon .sidxcfa420-core-icon [fill]:not([fill="none"]) {
    fill: currentColor !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon .sidxcfa420-core-icon path:not([fill]):not([stroke]),
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon .sidxcfa420-core-icon circle:not([fill]):not([stroke]),
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-icon .sidxcfa420-core-icon rect:not([fill]):not([stroke]) {
    fill: currentColor !important;
}

/* Keep taxonomy text readable; only icon/chip accent uses taxonomy color. */
.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-label {
    color: var(--si-muted-color, #667085) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-name {
    color: var(--si-heading-color, #17202a) !important;
}

.sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-extra {
    color: var(--si-link-hover-color, #134e4a) !important;
    background: var(--si-accent-soft-color, #e6f4ef) !important;
    border-color: var(--si-border-color, #d8cdba) !important;
}

/* Dark theme: keep taxonomy colors visible but avoid noisy hover/border. */
html[data-si-theme="dark"] .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card,
body.si-theme-dark .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card {
    --sidxcfa420-card-border: var(--si-border-color, #2a3850);
    --sidxcfa420-card-border-hover: var(--si-border-strong-color, #53657e);
}

html[data-si-theme="dark"] .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-chip,
body.si-theme-dark .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-chip {
    background:
        linear-gradient(90deg, color-mix(in srgb, var(--si-tax-accent-soft, rgba(51, 65, 85, .12)) 58%, transparent), transparent 68%),
        color-mix(in srgb, var(--si-surface-color, #111827) 90%, transparent) !important;
    border-color: var(--si-tax-accent-border, rgba(51, 65, 85, .30)) !important;
}

html[data-si-theme="dark"] .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-label,
body.si-theme-dark .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-label {
    color: var(--si-muted-color, #a8b5c7) !important;
}

html[data-si-theme="dark"] .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-name,
body.si-theme-dark .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card .sidxcfa420-tax-name {
    color: var(--si-heading-color, #f8fafc) !important;
}


/* v4.5.2: safer long-title layout on mobile cards */
@media (max-width: 760px) {
    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-title-long {
        --sidxcfa420-card-height: 500px;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-title-long .sidxcfa420-content {
        top: 76px !important;
        bottom: 158px !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-title-long .sidxcfa420-title {
        display: -webkit-box !important;
        max-width: 100% !important;
        overflow: hidden !important;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical;
        font-size: 1rem !important;
        line-height: 1.72 !important;
    }

    .sidxcfa420-card.sidxcfa420-card.sidxcfa420-card.sidxcfa420-title-long .sidxcfa420-translation {
        font-size: .86rem !important;
        line-height: 1.68 !important;
    }
}


/* v4.5.3: safe fallback tokens for older browsers and low-risk cleanup */
.sidxcfa420-card {
    --sidxcfa420-fallback-border: rgba(15, 23, 42, .14);
    --sidxcfa420-fallback-soft: rgba(255, 255, 255, .78);
    --sidxcfa420-fallback-chip: rgba(255, 255, 255, .88);
}

/* Fallbacks are intentionally conservative; existing enhanced rules may override them. */
.sidxcfa420-card .sidxcfa420-badge,
.sidxcfa420-card .sidxcfa420-evidence-chip,
.sidxcfa420-card .sidxcfa420-tax-chip {
    border-color: var(--sidxcfa420-fallback-border);
    background-color: var(--sidxcfa420-fallback-chip);
}

.sidxcfa420-card .sidxcfa420-content,
.sidxcfa420-card .sidxcfa420-title-panel {
    background-color: var(--sidxcfa420-fallback-soft);
}

html[data-si-theme="dark"] .sidxcfa420-card,
body.si-theme-dark .sidxcfa420-card {
    --sidxcfa420-fallback-border: rgba(226, 232, 240, .18);
    --sidxcfa420-fallback-soft: rgba(15, 23, 42, .72);
    --sidxcfa420-fallback-chip: rgba(15, 23, 42, .78);
}
