/* Title hierarchy only. Do not override body fonts or article prose/headings. */
body.single-post .entry-header > h1,
body.single-post .post-style-2-top-header h1,
body.single-post .post-style-3-title > h1 {
    font-size:22px; font-weight:400; line-height:1.45;
    overflow-wrap:anywhere;
}
body #content .bukids-series-hero .bk2-series-heading > h1,
body #content .bukids-series-hero > h1 {
    font-size:22px; font-weight:400; line-height:1.45;
    overflow-wrap:anywhere;
}
body #content .post-list .post-info :is(h2, h3),
body #content .b2-widget-post-title :is(h2, .bk-wt),
body #content .bukids-card-content h3,
body #content .bukids-resource-content h3 {
    font-size:14px; font-weight:400; line-height:1.5;
    display:block; height:auto; min-height:0; max-height:none;
    overflow:visible; -webkit-line-clamp:unset; white-space:normal;
    overflow-wrap:anywhere;
}
body #content .post-list .post-info :is(h2, h3) a,
body #content .b2-widget-post-title :is(h2, .bk-wt) a,
body #content .bukids-resource-content h3 a {
    font-size:inherit; font-weight:inherit; line-height:inherit;
}
body #content .bukids-series-hero .bukids-series-cn-name {
    font-weight:400;
}
/* B2 fixes compact widget rows at 92px; full titles need an auto-height row. */
body #content .b2-widget-hot li.widget-post-small,
body #content .b2-widget-hot li.widget-post-none {
    height:auto; min-height:92px; margin-top:0;
}
body #content .widget-post-small .b2-widget-post-thumb {
    width:100%; min-width:0;
}
body #content .widget-post-small .b2-widget-post-title,
body #content .widget-post-none .b2-widget-post-title {
    height:auto; min-height:60px; min-width:0;
}
body #content .b2-widget-post-title :is(h2, .bk-wt) {
    word-break:normal;
}
body #content .b2-widget-post-title time {
    display:block;
}
/* Image-overlay widgets cannot expand beyond their fixed image frame. */
body #content .widget-post-big .b2-widget-post-title :is(h2, .bk-wt) {
    display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
    overflow:hidden;
}
body #content .bukids-card-cn {
    font-size:12px; font-weight:400; line-height:1.5;
}
body #content .bukids-card-stats {
    font-size:12px; font-weight:400; line-height:1.65;
}
@media (max-width:768px) {
    body.single-post .entry-header > h1,
    body.single-post .post-style-2-top-header h1,
    body.single-post .post-style-3-title > h1 { font-size:19px; }
    body #content .bukids-series-hero .bk2-series-heading > h1,
    body #content .bukids-series-hero > h1 { font-size:19px; }
    body #content .post-list .post-info :is(h2, h3),
    body #content .b2-widget-post-title :is(h2, .bk-wt),
    body #content .bukids-card-content h3,
    body #content .bukids-resource-content h3 { font-size:14px; }
}

/* 2.0.224: the page title is always the largest, strongest heading. Article
   text used 18–20px bold sub-headings under a 19–22px regular-weight title,
   so "教材介绍" or "1.《闪电狗》…" looked bigger than the title itself.
   Title: 22px / 19px, semibold. Text headings step down from it. (Blog posts
   are B2's own typography: a 26px title, 20px sub-headings — already in order.) */
body.single-post .entry-header > h1,
body.single-post .post-style-2-top-header h1,
body.single-post .post-style-3-title > h1 { font-weight: 600; }
body.single-post .single-article .entry-content h2:not([class*="bk-"]):not(.bk-related-topics *) { font-size: 19px; font-weight: 600; line-height: 1.5; }
body.single-post .single-article .entry-content h3:not([class*="bk-"]):not(.bk-related-topics *) { font-size: 17px; font-weight: 600; line-height: 1.55; }
body.single-post .single-article .entry-content h4:not([class*="bk-"]):not(.bk-related-topics *) { font-size: 16px; font-weight: 600; line-height: 1.6; }
body.single-post .single-article .entry-content :is(h5, h6):not([class*="bk-"]):not(.bk-related-topics *) { font-size: 15px; font-weight: 600; line-height: 1.6; }
@media (max-width: 768px) {
    body.single-post .single-article .entry-content h2:not([class*="bk-"]):not(.bk-related-topics *) { font-size: 17px; }
    body.single-post .single-article .entry-content h3:not([class*="bk-"]):not(.bk-related-topics *) { font-size: 16px; }
    body.single-post .single-article .entry-content :is(h4, h5, h6):not([class*="bk-"]):not(.bk-related-topics *) { font-size: 15px; }
}
