/**
 * Typography defaults for single news/blog posts.
 *
 * Loaded only when:
 *   - Frontend:  is_singular( 'post' )
 *   - Editor:    current_screen->post_type === 'post'
 *
 * Selectors target both the rendered post content (.wp-block-post-content)
 * on the frontend and the editor's iframe wrapper (.editor-styles-wrapper)
 * so authors see the same sizing while writing as readers see when
 * published. The :not() guard skips any block where the author has
 * explicitly picked a font size in the editor.
 */

.wp-block-post-content p:not([class*="has-"][class*="-font-size"]),
.editor-styles-wrapper p:not([class*="has-"][class*="-font-size"]) {
	font-size: var(--wp--preset--font-size--normal-fixed);
}

/* Override .entry-content p { text-wrap: balance } from style.min.css —
   balance produces awkward mid-sentence splits on short paragraphs.
   `pretty` keeps orphan control without balancing line lengths. */
.wp-block-post-content p,
.editor-styles-wrapper p {
	text-wrap: pretty;
}

.wp-block-post-content h2:not([class*="has-"][class*="-font-size"]),
.editor-styles-wrapper h2:not([class*="has-"][class*="-font-size"]) {
	/* Using 2-xlarge instead of xlarge because xlarge currently clamps
	   smaller than larger (h3 size) in the 1200–1650px viewport range. */
	font-size: var(--wp--preset--font-size--2-xlarge);
	text-transform: none;
}

.wp-block-post-content h3:not([class*="has-"][class*="-font-size"]),
.editor-styles-wrapper h3:not([class*="has-"][class*="-font-size"]) {
	font-size: var(--wp--preset--font-size--larger);
}

.wp-block-post-content h4:not([class*="has-"][class*="-font-size"]),
.editor-styles-wrapper h4:not([class*="has-"][class*="-font-size"]) {
	font-size: var(--wp--preset--font-size--large);
}
