:root {
    --cms-ink: #142028;
    --cms-answer-accent: #0f766e;
    --cms-answer-bg: #f0fbf9;
    --cms-answer-border: #cdeae5;
    --cms-example-accent: #1d4ed8;
    --cms-example-bg: #f4f7ff;
    --cms-example-border: #d5e0fb;
    --cms-note-accent: #b45309;
    --cms-note-bg: #fff9ed;
    --cms-note-border: #f3e2c2;
}

.blog .entry .cms-subtitle,
.entry .cms-subtitle,
.cms-subtitle {
    display: block !important;
    margin: 0.35rem 0 0.9rem !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.7 !important;
    color: var(--cms-ink) !important;
    text-align: right !important;
}

.blog .entry .cms-quick-answer,
.entry-meta .cms-quick-answer,
.entry-content .cms-quick-answer,
.cms-quick-answer {
    display: block !important;
    position: relative;
    margin: 0 0 1.4rem !important;
    padding: 1rem 1.15rem !important;
    background: var(--cms-answer-bg) !important;
    border: 1px solid var(--cms-answer-border) !important;
    border-right: 5px solid var(--cms-answer-accent) !important;
    border-radius: 12px !important;
    color: var(--cms-ink) !important;
    font-size: 1.05rem !important;
    font-weight: 500 !important;
    line-height: 1.9 !important;
    text-align: justify !important;
}

.blog .entry .cms-quick-answer::before,
.entry-meta .cms-quick-answer::before,
.cms-quick-answer::before {
    content: "جواب سریع";
    display: block !important;
    margin-bottom: 0.35rem;
    color: var(--cms-answer-accent) !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
}

.blog .entry .entry-content .cms-body-text,
.entry-content .cms-body-text {
    color: var(--cms-ink) !important;
    line-height: 1.9 !important;
    text-align: justify !important;
}

.blog .entry .entry-content .cms-body-text::after,
.entry-content .cms-body-text::after {
    content: "";
    display: block;
    clear: both;
}

.blog .entry .entry-content .cms-body-text :is(p, li, span, div, h3, strong, b),
.entry-content .cms-body-text :is(p, li, span, div, h3, strong, b) {
    color: var(--cms-ink) !important;
    line-height: 1.9 !important;
}

.blog .entry .entry-content .cms-body-text p,
.entry-content .cms-body-text p { margin: 0 0 0.9rem !important; }

.blog .entry .entry-content .cms-body-text h3,
.entry-content .cms-body-text h3 {
    margin: 1.4rem 0 0.55rem !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
}

.blog .entry .entry-content .cms-body-text ul,
.blog .entry .entry-content .cms-body-text ol,
.entry-content .cms-body-text ul,
.entry-content .cms-body-text ol {
    margin: 0.6rem 0 1rem !important;
    padding: 0 1.4rem 0 0 !important;
}

.blog .entry .entry-content .cms-body-text a,
.entry-content .cms-body-text a {
    color: #0b5cab !important;
    text-decoration: underline;
}

.blog .entry .entry-content .cms-body-text .cms-example,
.blog .entry .entry-content .cms-body-text .cms-note,
.entry-content .cms-body-text .cms-example,
.entry-content .cms-body-text .cms-note {
    display: block !important;
    margin: 1.2rem 0 !important;
    padding: 0.95rem 1.1rem !important;
    border-radius: 12px !important;
}

.blog .entry .entry-content .cms-body-text .cms-example,
.entry-content .cms-body-text .cms-example {
    background: var(--cms-example-bg) !important;
    border: 1px solid var(--cms-example-border) !important;
    border-right: 5px solid var(--cms-example-accent) !important;
}

.blog .entry .entry-content .cms-body-text .cms-note,
.entry-content .cms-body-text .cms-note {
    background: var(--cms-note-bg) !important;
    border: 1px solid var(--cms-note-border) !important;
    border-right: 5px solid var(--cms-note-accent) !important;
}

.blog .entry .entry-content .cms-body-text .cms-example > strong:first-child,
.blog .entry .entry-content .cms-body-text .cms-example > b:first-child,
.entry-content .cms-body-text .cms-example > strong:first-child,
.entry-content .cms-body-text .cms-example > b:first-child {
    color: var(--cms-example-accent) !important;
}

.blog .entry .entry-content .cms-body-text .cms-note > strong:first-child,
.blog .entry .entry-content .cms-body-text .cms-note > b:first-child,
.entry-content .cms-body-text .cms-note > strong:first-child,
.entry-content .cms-body-text .cms-note > b:first-child {
    color: var(--cms-note-accent) !important;
}

.blog .entry .cms-shot.is-banner,
.entry-content .cms-shot.is-banner,
.cms-shot.is-banner {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    float: none !important;
    margin: 12px auto !important;
    border-radius: 12px;
}

.blog .entry .cms-shot.is-right,
.entry-content .cms-shot.is-right {
    float: right !important;
    width: min(280px, 46%) !important;
    height: auto !important;
    margin: 4px 0 12px 16px !important;
    border-radius: 12px;
}

.blog .entry .cms-shot.is-left,
.entry-content .cms-shot.is-left {
    float: left !important;
    width: min(280px, 46%) !important;
    height: auto !important;
    margin: 4px 16px 12px 0 !important;
    border-radius: 12px;
}

.blog .entry .cms-faq,
.entry .cms-faq,
.cms-faq {
    clear: both !important;
    margin: 1.6rem 0 0.4rem !important;
    padding: 0 !important;
}

.blog .entry .cms-faq > h2,
.entry .cms-faq > h2,
.cms-faq > h2 {
    margin: 0 0 0.8rem !important;
    font-size: 1.25rem !important;
    color: var(--cms-ink) !important;
}

.blog .entry .cms-faq-item,
.entry .cms-faq-item,
.cms-faq-item {
    display: block !important;
    margin: 0 0 0.55rem !important;
    background: #fff !important;
    border: 1px solid #d5dee6 !important;
    border-radius: 12px !important;
    overflow: hidden;
}

.blog .entry .cms-faq-item summary,
.entry .cms-faq-item summary,
.cms-faq-item summary {
    display: block !important;
    padding: 0.85rem 1rem !important;
    cursor: pointer;
    font-weight: 700 !important;
    color: var(--cms-ink) !important;
}

.blog .entry .cms-faq-answer,
.entry .cms-faq-answer,
.cms-faq-answer {
    padding: 0 1rem 0.9rem !important;
    color: var(--cms-ink) !important;
    line-height: 1.9 !important;
}

@media (max-width: 575.98px) {
    .blog .entry .cms-shot.is-right,
    .blog .entry .cms-shot.is-left,
    .entry-content .cms-shot.is-right,
    .entry-content .cms-shot.is-left {
        float: none !important;
        width: 100% !important;
        margin: 12px auto !important;
    }
}
