/* MEI Editions public styles. Only enqueued while a cutover flag is on. */

/* Byline block: thin top rule, By author, date, reading time, cream bg */
.mei-byline {
	background: #faf6ee;
	border-top: 1px solid #d8cfc0;
	border-bottom: 1px solid #ece5d8;
	padding: 16px 20px;
	margin: 0 0 26px;
	color: #5b5347;
}
.mei-byline p { margin: 0; }
.mei-byline .mei-byline-name {
	font: 600 19px/1.4 Georgia, serif;
	color: #242923;
	margin-bottom: 4px;
}
.mei-byline .mei-byline-name a { color: inherit; }
.mei-byline .mei-byline-meta {
	font: 14px/1.7 Arial, sans-serif;
	letter-spacing: 0.2px;
}
.mei-byline a { text-decoration: underline; }

/* In this article (TOC) */
.mei-toc {
	background: #faf6ee;
	border: 1px solid #ece5d8;
	border-radius: 6px;
	padding: 14px 18px;
	margin: 0 0 26px;
}
.mei-toc-head {
	margin: 0 0 8px;
	font-size: 13px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-weight: 700;
	color: #5b5347;
}
.mei-toc ol { margin: 0; padding-left: 18px; }
.mei-toc li { margin: 4px 0; font-size: 14px; }
.mei-toc li.mei-toc-h3 { margin-left: 16px; }
.mei-toc a { color: inherit; }

/* Author page */
.mei-author-hero { display: flex; gap: 22px; align-items: center; margin: 30px 0; }
.mei-author-photo img { border-radius: 50%; width: 120px; height: 120px; object-fit: cover; }
.mei-author-role { color: #5b5347; }
.mei-author-bio p { max-width: 720px; }

/* Single truthful byline: hide the theme hero meta line exactly on posts
   that carry the plugin byline block. */
.mei-byline-assigned .entry-hero .meta { display: none; }


/* Profile layout: previously an inline <style> block inside each legacy
   profile's post_content (byte-identical across all 20 profiles, verified
   by md5). Moved here verbatim so profile content is plain editable data.
   Rules unchanged, still scoped to .mei-profile and its :has() wrapper. */
.entry-content:has(.mei-profile){max-width:1120px!important;width:calc(100% - 60px)!important}.mei-profile{color:#242923}.mei-profile *{box-sizing:border-box}.mei-profile .mp-note{background:#e9e3d7;padding:18px;font:12px/1.65 Arial,sans-serif}.mei-profile .mp-kicker{font:11px Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;color:#806b4b}.mei-profile .mp-header{padding:30px 0 45px;border-bottom:1px solid #cfc5b5}.mei-profile .mp-header h2{font:58px/1.08 Georgia,serif;margin:18px 0}.mei-profile .mp-dek{font:italic 23px/1.55 Georgia,serif;color:#74766b;max-width:800px}.mei-profile .mp-grid{display:grid;grid-template-columns:270px 1fr;gap:65px;padding:45px 0}.mei-profile .mp-side{position:sticky;top:55px;align-self:start;font:13px/1.6 Arial,sans-serif}.mei-profile .mp-side dl{margin:24px 0}.mei-profile .mp-side dt{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#8c7757;margin-top:16px}.mei-profile .mp-side dd{margin:4px 0}.mei-profile .mp-side ol{padding-left:17px;margin-top:18px}.mei-profile .mp-side li{margin-bottom:9px}.mei-profile .mp-side a{color:#383f35;text-decoration:none;border-bottom:1px solid #cdc3b2}.mei-profile .mp-body h2{font:34px/1.2 Georgia,serif;margin:48px 0 22px;scroll-margin-top:60px}.mei-profile .mp-body h2:first-child{margin-top:0}.mei-profile .mp-body p{font:19px/1.85 Georgia,serif;margin:0 0 22px}.mei-profile .mp-body .mp-first:first-letter{float:left;font:72px/.85 Georgia,serif;color:#5b2c35;margin:10px 10px 0 0}.mei-profile .mp-sources{border-top:1px solid #cfc5b5;padding-top:25px}.mei-profile .mp-sources p,.mei-profile .mp-sources li{font:13px/1.7 Arial,sans-serif}.mei-profile .mp-roster{border-top:1px solid #cfc5b5;padding:30px 0}.mei-profile .mp-roster ul{columns:3;padding-left:18px;font:14px/1.9 Arial,sans-serif}.mei-profile .mp-mobiletoc{display:none}@media(max-width:800px){.entry-content:has(.mei-profile){width:calc(100% - 36px)!important}.mei-profile .mp-header h2{font-size:40px}.mei-profile .mp-dek{font-size:20px}.mei-profile .mp-grid{grid-template-columns:1fr;gap:30px;padding-top:30px}.mei-profile .mp-side{position:static;border-bottom:1px solid #cfc5b5;padding-bottom:25px}.mei-profile .mp-side ol,.mei-profile .mp-desktoplabel{display:none}.mei-profile .mp-mobiletoc{display:block;font:14px/1.7 Arial,sans-serif;background:#eee8dc;padding:18px}.mei-profile .mp-mobiletoc ol{padding-left:20px}.mei-profile .mp-body p{font-size:18px;line-height:1.8}.mei-profile .mp-body h2{font-size:29px}.mei-profile .mp-roster ul{columns:1}}.mei-profile .mp-header .mp-dek{display:none!important}
.mei-profile .mp-note{font-size:13px}.mei-profile .mp-roster ul{list-style:none;padding:0}.mei-profile .mp-roster li{break-inside:avoid;margin:0 0 12px}.mei-profile .mp-roster a{color:#51252b}.mei-profile p:first-letter{float:none!important;font:inherit!important;margin:0!important}.mei-profile .mp-body .mp-first:first-letter{float:left!important;font:72px/.85 Georgia,serif!important;margin:10px 10px 0 0!important}

/* Story cards without a thumbnail must not collapse into the image track:
   the theme grid gives .mei-ed-card a fixed 170px (120px mobile) first
   column; an image-less card's text would otherwise squeeze into it. */
.mei-ed-card:not(:has(img)) { grid-template-columns: 1fr; }
@media (max-width: 900px) {
	.mei-author-posts .mei-ed-cards { grid-template-columns: 1fr; }
	.mei-author-posts .mei-ed-card:not(:has(img)) { grid-template-columns: 1fr; }
}

/* Authors directory (/author/) */
.mei-author-dir { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 22px; margin: 26px 0 60px; }
.mei-author-dir-card { display: block; background: #faf6ee; border: 1px solid #ece5d8; border-radius: 8px; padding: 26px 20px; text-align: center; color: #242923; text-decoration: none; }
.mei-author-dir-card:hover { border-color: #d8cfc0; }
.mei-author-dir-photo img { border-radius: 50%; width: 110px; height: 110px; object-fit: cover; }
.mei-author-dir-name { display: block; font: 600 20px/1.4 Georgia, serif; margin: 12px 0 4px; }
.mei-author-dir-role { display: block; color: #5b5347; font-size: 14px; }
.mei-author-dir-bio { display: block; color: #5b5347; font-size: 14px; line-height: 1.6; margin: 8px 0 10px; }
.mei-author-dir-more { display: inline-block; font-size: 14px; text-decoration: underline; }
