/* Shared reading typography. Navigation, controls and status colors keep their UI styles. */
:root {
    --oc-reading-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --oc-reading-size: 17px;
    --oc-reading-ink: #1f2937;
    --oc-reading-heading: #172b4d;
    --oc-reading-leading: 1.65;
}
body.oc-portal-typography :is(
    .entry-content, .wp-block-post-content, .oc-entry-content, .oc-public-page-content,
    .blog__details-content, .elementor-widget-text-editor, .ocle-longread,
    .tutor-course-details-content, .tutor-lesson-wrapper,
    .tutor-course-info-cards .tutor-p3, .tutor-course-info-list-content,
    .tutor-course-details-widget-list, .courses__details-inner .event-details-list, .oc-cs
),
.editor-styles-wrapper, body.mce-content-body {
    font-family: var(--oc-reading-font);
    font-size: var(--oc-reading-size);
    line-height: var(--oc-reading-leading);
}
body.oc-portal-typography :is(.tutor-course-info-list-content, .tutor-course-details-widget-list, .courses__details-inner .event-details-list),
.editor-styles-wrapper, body.mce-content-body { color: var(--oc-reading-ink); }
body.oc-portal-typography :is(
    .entry-content, .wp-block-post-content, .oc-entry-content, .oc-public-page-content,
    .blog__details-content, .elementor-widget-text-editor, .ocle-longread,
    .tutor-course-details-content, .tutor-lesson-wrapper,
    .tutor-course-info-cards .tutor-p3, .tutor-course-info-list-content,
    .tutor-course-details-widget-list, .courses__details-inner .event-details-list, .oc-cs
) :is(p, ul, ol, li):not(:where(
    nav *, [role="navigation"] *, footer *, form *,
    .tutor-nav *, .tutor-learning-sidebar *, .tutor-dashboard-menu *,
    .wp-block-navigation *, .wp-block-query *,
    .has-text-color, .has-text-color *, .has-background, .has-background *,
    .has-small-font-size, .has-large-font-size, .has-x-large-font-size,
    .ocle-font-small, .ocle-font-large, .oc-cs__small
)),
.editor-styles-wrapper :is(.wp-block-paragraph, .wp-block-list, .wp-block-list li):not(.has-text-color):not(.has-background):not([style]),
body.mce-content-body :is(p, ul, ol, li):not([style]) {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: var(--oc-reading-ink);
}
/* Tutor adds an explicit 16px utility wrapper to authored course descriptions. */
body.oc-portal-typography .tutor-course-details-content > .tutor-fs-6 {
    font-size: inherit !important;
    line-height: inherit;
    color: inherit;
}
body.oc-portal-typography :is(.event-details-list, .tutor-course-details-widget-list) li > span {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}
body.oc-portal-typography :is(
    .entry-content, .wp-block-post-content, .oc-entry-content, .oc-public-page-content,
    .blog__details-content, .elementor-widget-text-editor,
    .tutor-course-details-content, .tutor-lesson-wrapper, .oc-cs
) :is(h2, h3, h4, h5):not(.has-text-color),
body.oc-portal-typography .courses__details-inner > .title,
body.oc-portal-typography .tutor-course-details-widget-title,
.editor-styles-wrapper :is(h2, h3, h4, h5), body.mce-content-body :is(h2, h3, h4, h5) {
    font-family: var(--oc-reading-font);
    color: var(--oc-reading-heading);
    font-weight: 650;
    line-height: 1.3;
}
body.oc-portal-typography :is(.tutor-course-details-content, .tutor-lesson-wrapper, .oc-cs) h2,
body.oc-portal-typography .courses__details-inner > .title,
.editor-styles-wrapper h2, body.mce-content-body h2 { font-size: clamp(24px, 2vw, 28px); }
body.oc-portal-typography :is(.tutor-course-details-content, .tutor-lesson-wrapper, .oc-cs) h3,
.editor-styles-wrapper h3, body.mce-content-body h3 { font-size: 22px; }
body.oc-portal-typography .tutor-course-details-widget-title,
body.oc-portal-typography :is(.tutor-course-details-content, .tutor-lesson-wrapper, .oc-cs) :is(h4, h5),
.editor-styles-wrapper :is(h4, h5), body.mce-content-body :is(h4, h5) { font-size: 19px; }
@media (max-width: 767px) {
    :root { --oc-reading-size: 16px; }
}
