/**
 * Community Suite 0.9.5
 * Public UI rebuilt from zero against the approved community mockups.
 */

.mvc-page {
	--mvc-bg: var(--mv-bg, oklch(98.5% 0.006 150));
	--mvc-soft: var(--mv-bg-soft, oklch(96.8% 0.009 150));
	--mvc-surface: var(--mv-surface, oklch(99.4% 0.004 150));
	--mvc-raised: var(--mv-surface-raised, oklch(99.7% 0.003 150));
	--mvc-text: var(--mv-text, oklch(29% 0.08 255));
	--mvc-muted: var(--mv-text-muted, oklch(51% 0.035 245));
	--mvc-line: var(--mv-border, oklch(89% 0.018 155));
	--mvc-line-strong: var(--mv-border-strong, oklch(81% 0.028 155));
	--mvc-hub-accent: var(--mv-brand, #128a4a);
	--mvc-hub-deep: var(--mv-brand-deep, #08743c);
	--mvc-questions-accent: #2874c6;
	--mvc-testimonials-accent: #d43f78;
	--mvc-discussions-accent: #7654c8;
	--mvc-guides-accent: #b96612;
	--mvc-profiles-accent: #0f8587;
	--mvc-form-question-bg: color-mix(in oklch, var(--mvc-surface) 93%, var(--mvc-questions-accent) 7%);
	--mvc-form-testimonial-bg: color-mix(in oklch, var(--mvc-surface) 93%, var(--mvc-testimonials-accent) 7%);
	--mvc-form-discussion-bg: color-mix(in oklch, var(--mvc-surface) 93%, var(--mvc-discussions-accent) 7%);
	--mvc-form-discussion-field-bg: color-mix(in oklch, var(--mvc-surface) 97%, var(--mvc-discussions-accent) 3%);
	--mvc-form-message-bg: color-mix(in oklch, var(--mvc-surface) 93%, var(--mvc-profiles-accent) 7%);
	--mvc-section-accent: var(--mvc-hub-accent);
	--mvc-section-deep: var(--mvc-hub-deep);
	--mvc-green: var(--mvc-section-accent);
	--mvc-green-deep: var(--mvc-section-deep);
	--mvc-green-soft: color-mix(in srgb, var(--mvc-green) 9%, var(--mvc-surface));
	--mvc-green-text: var(--mvc-green-deep);
	--mvc-blue: var(--mv-info, oklch(55% 0.16 255));
	--mvc-blue-text: color-mix(in srgb, var(--mvc-blue) 74%, black);
	--mvc-pink: var(--mv-silo-beauty, oklch(65% 0.19 355));
	--mvc-orange: var(--mv-warning, oklch(67% 0.16 70));
	--mvc-danger: var(--mv-danger, oklch(55% 0.19 20));
	--mvc-radius-sm: 8px;
	--mvc-radius: 12px;
	--mvc-radius-lg: 18px;
	--mvc-shadow: 0 12px 34px rgb(16 38 74 / 8%);
	margin: 0;
	padding: clamp(22px, 3vw, 44px) 0 clamp(64px, 7vw, 100px);
	background: var(--mvc-bg);
	color: var(--mvc-text);
	font-family: var(--mv-font-body, "Figtree", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
	font-size: 16px;
	line-height: 1.55;
	overflow-x: clip;
}

[data-theme="dark"] .mvc-page {
	--mvc-green-text: color-mix(in srgb, var(--mvc-green) 66%, white);
	--mvc-blue: oklch(72% 0.13 252);
	--mvc-blue-text: var(--mvc-blue);
	--mvc-danger: oklch(72% 0.15 20);
	--mvc-form-question-bg: color-mix(in oklch, var(--mvc-surface) 88%, var(--mvc-questions-accent) 12%);
	--mvc-form-testimonial-bg: color-mix(in oklch, var(--mvc-surface) 88%, var(--mvc-testimonials-accent) 12%);
	--mvc-form-discussion-bg: color-mix(in oklch, var(--mvc-surface) 88%, var(--mvc-discussions-accent) 12%);
	--mvc-form-discussion-field-bg: color-mix(in oklch, var(--mvc-raised) 94%, var(--mvc-discussions-accent) 6%);
	--mvc-form-message-bg: color-mix(in oklch, var(--mvc-surface) 88%, var(--mvc-profiles-accent) 12%);
	--mvc-shadow: 0 18px 44px rgb(0 0 0 / 24%);
}

.mvc-page.mvc-listing:not(.mvc-listing--testimonials),
.mvc-page.mvc-detail:not(.mvc-detail--testimonial) {
	--mvc-section-accent: var(--mvc-questions-accent);
	--mvc-section-deep: color-mix(in srgb, var(--mvc-questions-accent) 74%, black);
}

.mvc-page.mvc-listing--testimonials,
.mvc-page.mvc-detail--testimonial {
	--mvc-section-accent: var(--mvc-testimonials-accent);
	--mvc-section-deep: color-mix(in srgb, var(--mvc-testimonials-accent) 74%, black);
}

.mvc-page.mvc-article-discussion {
	--mvc-section-accent: var(--mvc-discussions-accent);
	--mvc-section-deep: color-mix(in srgb, var(--mvc-discussions-accent) 74%, black);
}

.mvc-page *,
.mvc-page *::before,
.mvc-page *::after { box-sizing: border-box; }

.mvc-page .mvc-page__shell--wide {
	width: min(96vw, 1760px);
	max-width: 1760px;
	margin-inline: auto;
}

.mvc-page :is(h1, h2, h3, h4, p, ul, ol, dl, figure) { margin-top: 0; }
.mvc-page :is(h1, h2, h3, h4) {
	color: var(--mvc-text);
	font-family: var(--mv-font-heading, "Figtree", system-ui, sans-serif);
	font-weight: 760;
	letter-spacing: -0.025em;
	line-height: 1.12;
}
.mvc-page a { text-underline-offset: 3px; }
.mvc-page img { display: block; max-width: 100%; }
.mvc-page button,
.mvc-page input,
.mvc-page select,
.mvc-page textarea { font: inherit; }
.mvc-page :is(a, button, input, select, textarea):focus-visible {
	outline: 3px solid color-mix(in srgb, var(--mvc-green) 55%, transparent);
	outline-offset: 3px;
}

/* Shared controls ----------------------------------------------------- */
.mvc-btn {
	display: inline-flex;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 11px 20px;
	border: 1px solid var(--mvc-line-strong);
	border-radius: var(--mvc-radius-sm);
	background: transparent;
	color: var(--mvc-text);
	font-size: 0.9375rem;
	font-weight: 740;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	transition: border-color 160ms ease-out, background-color 160ms ease-out, color 160ms ease-out, transform 160ms ease-out;
}
.mvc-btn:hover { transform: translateY(-1px); }
.mvc-btn--primary {
	border-color: var(--mvc-green-deep);
	background: var(--mvc-green-deep);
	color: oklch(98% 0.01 150) !important;
	box-shadow: 0 8px 20px color-mix(in srgb, var(--mvc-green) 20%, transparent);
}
.mvc-btn--primary:hover { background: color-mix(in srgb, var(--mvc-green-deep) 88%, oklch(20% 0.04 150)); }
.mvc-btn--ghost:hover { border-color: var(--mvc-green); color: var(--mvc-green-text); }
.mvc-btn--filter { min-width: 108px; }
.mvc-icon { flex: 0 0 auto; }

.mvc-page :is(input:not([type="checkbox"]):not([type="radio"]), textarea, select) {
	width: 100%;
	min-height: 46px;
	padding: 10px 13px;
	border: 1px solid var(--mvc-line-strong);
	border-radius: var(--mvc-radius-sm);
	background: var(--mvc-surface);
	color: var(--mvc-text);
	font-size: 0.9375rem;
	line-height: 1.4;
}
.mvc-page textarea { min-height: 132px; resize: vertical; }
.mvc-page :is(input, textarea, select):focus {
	border-color: var(--mvc-green);
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--mvc-green) 13%, transparent);
}
.mvc-page ::placeholder { color: var(--mvc-muted); opacity: 0.78; }

/* Hero --------------------------------------------------------------- */
.mvc-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 0.95fr) minmax(440px, 1.05fr);
	width: 100vw;
	min-height: 320px;
	margin-inline: calc(50% - 50vw);
	overflow: hidden;
	border: 0;
	border-radius: 0;
	background: var(--mvc-surface);
	box-shadow: none;
}
.mvc-listing .mvc-hero {
	display: block;
	min-height: clamp(245px, 20vw, 300px);
	background: var(--mvc-surface);
}
.mvc-listing .mvc-hero::after {
	position: absolute;
	inset: 0 0 0 42%;
	z-index: 0;
	content: "";
	background: var(--mvc-hero-image) center 42% / cover no-repeat;
}
.mvc-hero__body,
.mvc-hero__copy {
	position: relative;
	z-index: 1;
	display: flex;
	max-width: 660px;
	flex-direction: column;
	justify-content: center;
	padding: clamp(28px, 3vw, 44px) clamp(28px, 4vw, 56px);
	padding-left: max(clamp(24px, 2vw, 36px), calc((100vw - 1760px) / 2));
}
.mvc-listing .mvc-hero__copy { min-height: clamp(245px, 20vw, 300px); }
.mvc-hero__title,
.mvc-hero h1 {
	max-width: 13ch;
	margin-bottom: 14px;
	font-size: clamp(2.35rem, 3.4vw, 3rem);
	font-weight: 780;
	letter-spacing: -0.035em;
	line-height: 1.02;
}
.mvc-listing .mvc-hero h1 { max-width: 18ch; font-size: clamp(2.25rem, 3vw, 2.8rem); }
.mvc-hero h1 sup { margin-left: 7px; color: var(--mvc-green); font-size: 0.25em; }
.mvc-hero__text,
.mvc-hero__copy > p {
	max-width: 56ch;
	margin-bottom: 8px;
	font-size: 1.0625rem;
	font-weight: 560;
	line-height: 1.55;
}
.mvc-hero__note,
.mvc-hero__copy > small {
	display: block;
	color: var(--mvc-muted);
	font-size: 0.875rem;
	line-height: 1.5;
}
.mvc-hero__ctas,
.mvc-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.mvc-hero__media { position: relative; min-width: 0; margin: 0; }
.mvc-hero__media::after {
	display: none;
}
.mvc-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.mvc-hero__promises {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 26px 0 0;
	padding: 0;
	list-style: none;
}
.mvc-hero__promises li {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--mvc-muted);
	font-size: 0.875rem;
	font-weight: 650;
}
.mvc-hero__promises svg { color: var(--mvc-green-text); }

/* Trust, stats and navigation --------------------------------------- */
.mvc-promises,
.mvc-stats,
.mvc-community-nav {
	margin: 16px 0 0;
	border: 1px solid var(--mvc-line);
	border-radius: var(--mvc-radius);
	background: var(--mvc-surface);
	box-shadow: 0 7px 24px rgb(16 38 74 / 5%);
}
.mvc-promises {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding: 0;
	list-style: none;
}
.mvc-promises li {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	min-height: 86px;
	padding: 16px 20px;
}
.mvc-promises li + li { border-left: 1px solid var(--mvc-line); }
.mvc-promises li > span {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 50%;
	background: var(--mvc-green-soft);
	color: var(--mvc-green-text);
}
.mvc-promises p { margin: 0; }
.mvc-promises strong { display: block; font-size: 0.9375rem; }
.mvc-promises small { display: block; margin-top: 3px; color: var(--mvc-muted); font-size: 0.875rem; line-height: 1.35; }

.mvc-stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: 0;
	padding: 0;
	list-style: none;
}
.mvc-stats > :is(li, div) {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	column-gap: 12px;
	align-items: center;
	min-height: 82px;
	padding: 14px 24px;
}
.mvc-stats > :is(li, div) + :is(li, div) { border-left: 1px solid var(--mvc-line); }
.mvc-stats svg { grid-row: 1 / 3; color: var(--mvc-green-text); }
.mvc-stats__value,
.mvc-stats dd { margin: 0; font-size: 1.3rem; font-weight: 800; line-height: 1.1; }
.mvc-stats__label,
.mvc-stats dt { color: var(--mvc-muted); font-size: 0.875rem; line-height: 1.25; }

.mvc-community-nav { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); overflow: hidden; }
.mvc-community-nav a {
	display: flex;
	min-height: 68px;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 12px 16px;
	border-bottom: 3px solid transparent;
	color: var(--mvc-muted);
	font-size: 1rem;
	font-weight: 750;
	text-align: center;
	text-decoration: none;
}
.mvc-community-nav a + a { border-left: 1px solid var(--mvc-line); }
.mvc-community-nav a:nth-child(1) { --mvc-nav-accent: var(--mvc-hub-accent); }
.mvc-community-nav a:nth-child(2) { --mvc-nav-accent: var(--mvc-questions-accent); }
.mvc-community-nav a:nth-child(3) { --mvc-nav-accent: var(--mvc-testimonials-accent); }
.mvc-community-nav a:nth-child(4) { --mvc-nav-accent: var(--mvc-discussions-accent); }
.mvc-community-nav a:nth-child(5) { --mvc-nav-accent: var(--mvc-guides-accent); }
.mvc-community-nav a:nth-child(6) { --mvc-nav-accent: var(--mvc-profiles-accent); }
.mvc-community-nav a svg { width: 20px; height: 20px; color: var(--mvc-nav-accent); }
.mvc-community-nav a:hover,
.mvc-community-nav a.is-current {
	border-bottom-color: var(--mvc-nav-accent);
	background: color-mix(in srgb, var(--mvc-nav-accent) 8%, var(--mvc-surface));
	color: color-mix(in srgb, var(--mvc-nav-accent) 76%, var(--mvc-text));
}
.mvc-nav-count { display: grid; min-width: 22px; min-height: 22px; place-items: center; padding-inline: 6px; border-radius: 999px; background: var(--mvc-nav-accent); color: oklch(98% 0.008 150); font-size: 0.875rem; font-weight: 800; }

/* Panels and hub ----------------------------------------------------- */
.mvc-panel,
.mvc-directory,
.mvc-directory-aside > section,
.mvc-active-members,
.mvc-contribute,
.mvc-guides,
.mvc-advice,
.mvc-question,
.mvc-detail__aside > section {
	border: 1px solid var(--mvc-line);
	border-radius: var(--mvc-radius);
	background: var(--mvc-surface);
	box-shadow: 0 8px 28px rgb(16 38 74 / 5%);
}
.mvc-panel { padding: clamp(20px, 2.2vw, 30px); }
.mvc-panel__title { display: flex; align-items: center; gap: 10px; margin-bottom: 8px; font-size: 1.3rem; }
.mvc-panel__title svg { color: var(--mvc-green-text); }
.mvc-panel__lede { margin-bottom: 20px; color: var(--mvc-muted); font-size: 0.9375rem; }
.mvc-panel__more {
	display: inline-flex;
	margin-top: 18px;
	color: var(--mvc-green-text);
	font-size: 0.9375rem;
	font-weight: 720;
	text-decoration: none;
}
.mvc-panel__header { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.mvc-panel__header .mvc-panel__title { margin: 0; }
.mvc-panel__header > a { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 6px; color: var(--mvc-blue); font-size: 0.875rem; font-weight: 720; text-decoration: none; }
.mvc-hub-featured > .mvc-panel:first-child { border-top: 3px solid var(--mvc-questions-accent); }
.mvc-hub-featured > .mvc-panel:first-child :is(.mvc-panel__title svg, .mvc-panel__header > a) { color: var(--mvc-questions-accent); }
.mvc-hub-featured > .mvc-panel:nth-child(2) { border-top: 3px solid var(--mvc-testimonials-accent); }
.mvc-hub-featured > .mvc-panel:nth-child(2) :is(.mvc-panel__title svg, .mvc-panel__header > a) { color: var(--mvc-testimonials-accent); }
.mvc-panel--callout { margin-top: 18px; background: color-mix(in srgb, var(--mvc-orange) 6%, var(--mvc-surface)); }
.mvc-panel--rules { background: color-mix(in srgb, var(--mvc-orange) 8%, var(--mvc-surface)); }
.mvc-hub-featured { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr); gap: 18px; align-items: start; margin-top: 18px; }
.mvc-hub-questions,
.mvc-hub-stories { margin: 0; padding: 0; list-style: none; }
.mvc-hub-questions li { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 13px 0; border-bottom: 1px solid var(--mvc-line); }
.mvc-hub-questions li:last-child,
.mvc-hub-stories li:last-child { border-bottom: 0; }
.mvc-hub-questions img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; }
.mvc-hub-questions div { display: grid; gap: 3px; min-width: 0; }
.mvc-hub-questions a,
.mvc-hub-stories a { color: var(--mvc-text); font-size: 0.9375rem; font-weight: 720; line-height: 1.35; text-decoration: none; }
.mvc-hub-questions small { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-hub-questions li > span { grid-column: 3; grid-row: 1; padding: 5px 9px; border-radius: 999px; background: color-mix(in srgb, var(--mvc-blue) 10%, var(--mvc-soft)); color: var(--mvc-blue); font-size: 0.875rem; }
.mvc-hub-questions li > strong { grid-column: 3; color: var(--mvc-muted); font-size: 0.875rem; font-weight: 650; text-align: right; }
.mvc-hub-stories li { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 14px; align-items: center; padding: 13px 0; border-bottom: 1px solid var(--mvc-line); }
.mvc-hub-stories li.is-text-only { grid-template-columns: 1fr; }
.mvc-hub-stories img { width: 150px; height: 100px; border-radius: var(--mvc-radius-sm); object-fit: cover; }
.mvc-hub-stories p { margin: 6px 0; color: var(--mvc-muted); font-size: 0.875rem; line-height: 1.42; }
.mvc-hub-stories small { display: flex; align-items: center; gap: 8px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-hub-recent { margin-top: 18px; }
.mvc-empty--compact { min-height: 120px; padding: 18px; }
.mvc-hub__row { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr); gap: 18px; margin-top: 18px; }
.mvc-hub__side { display: grid; gap: 18px; min-width: 0; }
.mvc-hub__row + .mvc-panel,
.mvc-panel + .mvc-panel { margin-top: 18px; }
.mvc-list { margin: 0; padding: 0; list-style: none; }
.mvc-list li { display: flex; justify-content: space-between; gap: 18px; padding: 13px 0; border-bottom: 1px solid var(--mvc-line); }
.mvc-list li:last-child { border-bottom: 0; }
.mvc-list a { color: var(--mvc-text); font-size: 0.9375rem; font-weight: 680; text-decoration: none; }
.mvc-list time { flex: 0 0 auto; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-rules { margin: 0; padding: 0; list-style: none; }
.mvc-rules li,
.mvc-listing-rules li {
	position: relative;
	padding-left: 25px;
	color: var(--mvc-muted);
	font-size: 0.9375rem;
	line-height: 1.5;
}
.mvc-rules li + li,
.mvc-listing-rules li + li { margin-top: 10px; }
.mvc-rules li::before,
.mvc-listing-rules li::before {
	position: absolute;
	left: 0;
	color: var(--mvc-green-text);
	content: "✓";
	font-weight: 800;
}
.mvc-topics,
.mvc-members { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.mvc-topics--grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.mvc-topics a {
	display: flex;
	min-height: 48px;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 10px 14px;
	border: 1px solid var(--mvc-line);
	border-radius: 999px;
	background: var(--mvc-soft);
	color: var(--mvc-text);
	font-size: 0.875rem;
	font-weight: 680;
	text-decoration: none;
}
.mvc-topics__count { color: var(--mvc-green-text); }
.mvc-members { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.mvc-members a {
	display: flex;
	min-height: 76px;
	align-items: center;
	gap: 11px;
	padding: 12px;
	border: 1px solid var(--mvc-line);
	border-radius: var(--mvc-radius-sm);
	color: var(--mvc-text);
	text-decoration: none;
}
.mvc-members img { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; }
.mvc-members span { display: grid; min-width: 0; }
.mvc-members strong { overflow: hidden; font-size: 0.9375rem; text-overflow: ellipsis; white-space: nowrap; }
.mvc-members small { color: var(--mvc-muted); font-size: 0.875rem; }

/* Listings ----------------------------------------------------------- */
.mvc-listing { padding-top: 0; }
.mvc-directory-grid {
	display: grid;
	grid-template-columns: minmax(0, 2.35fr) minmax(300px, 0.95fr);
	gap: 18px;
	align-items: start;
	margin-top: 16px;
}
.mvc-directory { min-width: 0; padding: 16px; }
.mvc-directory-aside { display: grid; gap: 16px; min-width: 0; }
.mvc-directory-aside > section { padding: 20px; }
.mvc-page .mvc-directory-aside > .mvc-ask:not(.mvc-ask--testimonial) { background: var(--mvc-form-question-bg); }
.mvc-page .mvc-directory-aside > .mvc-ask--testimonial { background: var(--mvc-form-testimonial-bg); }
.mvc-filters {
	display: grid;
	grid-template-columns: minmax(190px, 1.35fr) repeat(3, minmax(140px, 0.9fr));
	gap: 10px;
	align-items: end;
	margin-bottom: 16px;
}
.mvc-listing--testimonials .mvc-filters { grid-template-columns: minmax(180px, 1.3fr) repeat(3, minmax(130px, 0.85fr)) auto; }
.mvc-filters label { position: relative; display: grid; gap: 6px; margin: 0; }
.mvc-filters label > span:not(.screen-reader-text) { color: var(--mvc-muted); font-size: 0.875rem; font-weight: 650; }
.mvc-filters__search svg { position: absolute; right: 13px; bottom: 14px; color: var(--mvc-muted); }
.mvc-filters__search input { padding-right: 42px !important; }
.mvc-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; padding: 0; list-style: none; }
.mvc-card {
	position: relative;
	display: flex;
	min-width: 0;
	min-height: 260px;
	flex-direction: column;
	padding: 18px;
	border: 1px solid var(--mvc-line);
	border-radius: var(--mvc-radius);
	background: var(--mvc-surface);
	transition: border-color 160ms ease-out, box-shadow 160ms ease-out, transform 160ms ease-out;
}
.mvc-card:focus-within { z-index: 5; }
.mvc-card:hover { transform: translateY(-2px); border-color: var(--mvc-line-strong); box-shadow: var(--mvc-shadow); }
.mvc-card--featured {
	grid-column: 1 / -1;
	min-height: 240px;
	border-color: color-mix(in srgb, var(--mvc-green) 34%, var(--mvc-line));
	background: color-mix(in srgb, var(--mvc-green) 3%, var(--mvc-surface));
}
.mvc-card__kicker { display: flex; align-items: center; gap: 7px; margin-bottom: 12px; color: var(--mvc-green-text); font-size: 0.875rem; font-weight: 780; }
.mvc-card__featured-grid { display: grid; grid-template-columns: 120px minmax(0, 1fr) minmax(230px, 0.7fr); gap: 22px; align-items: center; }
.mvc-card__top { display: flex; align-items: start; justify-content: space-between; gap: 10px; }
.mvc-card__author { display: flex; min-width: 0; align-items: center; gap: 10px; }
.mvc-card__author img { width: 42px; height: 42px; flex: 0 0 auto; border-radius: 50%; object-fit: cover; }
.mvc-card--featured .mvc-card__author { align-self: start; flex-direction: column; align-items: start; }
.mvc-card--featured .mvc-card__author img { width: 58px; height: 58px; }
.mvc-card__author span { display: grid; min-width: 0; }
.mvc-card__author strong { overflow: hidden; font-size: 0.9375rem; text-overflow: ellipsis; white-space: nowrap; }
.mvc-card__author small { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-card__body { min-width: 0; }
.mvc-card__title { margin: 16px 0 8px; font-size: 1.2rem; line-height: 1.22; }
.mvc-card--featured .mvc-card__title { margin-top: 0; font-size: clamp(1.35rem, 2vw, 1.75rem); }
.mvc-card__title a { color: var(--mvc-text); text-decoration: none; }
.mvc-card__excerpt { margin: 0 0 16px; color: var(--mvc-muted); font-size: 0.9375rem; line-height: 1.55; }
.mvc-card__metrics { display: flex; flex-wrap: wrap; gap: 16px; margin: 12px 0 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-card__metrics span,
.mvc-card__footer > span { display: inline-flex; align-items: center; gap: 6px; }
.mvc-card__visual { display: grid; gap: 10px; align-self: stretch; }
.mvc-card__visual img { width: 100%; height: 150px; border-radius: var(--mvc-radius-sm); object-fit: cover; }
.mvc-card__visual a {
	display: flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	gap: 8px;
	border: 1px solid var(--mvc-green);
	border-radius: var(--mvc-radius-sm);
	color: var(--mvc-green-text);
	font-size: 0.875rem;
	font-weight: 740;
	text-decoration: none;
}
.mvc-card__topic {
	display: inline-flex;
	align-items: center;
	max-width: 150px;
	overflow: hidden;
	padding: 5px 10px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--mvc-blue) 10%, var(--mvc-soft));
	color: var(--mvc-blue);
	font-size: 0.875rem;
	font-weight: 680;
	text-decoration: none;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.mvc-card__footer { display: flex; align-items: center; gap: 14px; margin-top: auto; padding-top: 14px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-card__state { margin-left: auto; padding: 5px 10px; border-radius: 999px; background: color-mix(in srgb, var(--mvc-orange) 12%, var(--mvc-soft)); color: var(--mvc-orange); font-weight: 680; }
.mvc-card__state[data-state="resolved"] { background: var(--mvc-green-soft); color: var(--mvc-green-text); }
.mvc-card__read { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; color: var(--mvc-green-text); font-weight: 740; text-decoration: none; }
.mvc-pagination { display: flex; justify-content: center; gap: 6px; margin-top: 20px; }
.mvc-pagination .page-numbers { display: grid; min-width: 44px; min-height: 44px; place-items: center; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); color: var(--mvc-text); text-decoration: none; }
.mvc-pagination .current { border-color: var(--mvc-green); background: var(--mvc-green-soft); color: var(--mvc-green-text); }

.mvc-empty,
.mvc-signin,
.mvc-state {
	display: grid;
	min-height: 190px;
	place-items: center;
	align-content: center;
	gap: 8px;
	padding: 32px;
	border: 1px dashed var(--mvc-line-strong);
	border-radius: var(--mvc-radius);
	background: color-mix(in srgb, var(--mvc-green) 2%, var(--mvc-soft));
	color: var(--mvc-muted);
	font-size: 0.9375rem;
	text-align: center;
}
.mvc-empty__title { margin: 0; color: var(--mvc-text); font-size: 1.25rem; font-weight: 760; }
.mvc-empty__text { max-width: 54ch; margin: 0; }
.mvc-state { min-height: 0; margin: 16px 0; border-style: solid; }
.mvc-state--error { border-color: color-mix(in srgb, var(--mvc-danger) 35%, var(--mvc-line)); color: var(--mvc-danger); }

/* Composer forms ----------------------------------------------------- */
.mvc-ask__head { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 12px; align-items: center; margin-bottom: 18px; }
.mvc-ask__head > span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: var(--mvc-green); color: oklch(98% 0.01 150); }
.mvc-ask__head h2 { margin: 0; font-size: 1.4rem; }
.mvc-ask__head p { margin: 4px 0 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-ask__form,
.mvc-tform { display: grid; gap: 16px; }
.mvc-form-login { width: 100%; }
.mvc-tform--compact { gap: 15px; }
.mvc-tform--compact .mvc-tform__lede { margin: -2px 0 2px; line-height: 1.5; }
.mvc-tform__compact-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.mvc-input-suffix { position: relative; }
.mvc-input-suffix input { padding-right: 78px !important; }
.mvc-input-suffix span { position: absolute; top: 50%; right: 12px; color: var(--mvc-muted); font-size: 0.875rem; transform: translateY(-50%); pointer-events: none; }
.mvc-tform__optional { border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); background: var(--mvc-soft); }
.mvc-tform__optional summary { display: flex; min-height: 58px; align-items: center; gap: 10px; padding: 11px 13px; color: var(--mvc-text); cursor: pointer; list-style: none; }
.mvc-tform__optional summary::-webkit-details-marker { display: none; }
.mvc-tform__optional summary svg { color: var(--mvc-green-text); }
.mvc-tform__optional summary span { display: grid; gap: 2px; }
.mvc-tform__optional summary strong { font-size: 0.9375rem; }
.mvc-tform__optional summary small { color: var(--mvc-muted); font-size: 0.875rem; font-weight: 500; }
.mvc-tform__optional-fields { display: grid; gap: 14px; padding: 4px 13px 15px; border-top: 1px solid var(--mvc-line); }
.mvc-field,
.mvc-tform label { display: grid; gap: 7px; margin: 0; }
.mvc-field > label,
.mvc-tform .mvc-label { color: var(--mvc-text); font-size: 0.9375rem; font-weight: 720; }
.mvc-field > small,
.mvc-tform .mvc-hint { display: flex; justify-content: space-between; margin: 0; color: var(--mvc-muted); font-size: 0.875rem; line-height: 1.4; }
.mvc-similar { padding: 12px; border-radius: var(--mvc-radius-sm); background: var(--mvc-soft); font-size: 0.875rem; }
.mvc-ask__rating { margin: 0; padding: 0; border: 0; }
.mvc-ask__rating legend { margin-bottom: 10px; font-size: 0.9375rem; font-weight: 720; }
.mvc-ask__rating > div { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; }
.mvc-ask__rating label { display: grid; min-height: 54px; place-items: center; gap: 2px; padding: 6px 2px; border-radius: var(--mvc-radius-sm); color: var(--mvc-orange); cursor: pointer; }
.mvc-ask__rating label:hover { background: color-mix(in srgb, var(--mvc-orange) 8%, var(--mvc-soft)); }
.mvc-ask__rating label small { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-check,
.mvc-composer__anon { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; align-items: start; color: var(--mvc-muted); font-size: 0.875rem; line-height: 1.45; }
.mvc-check input,
.mvc-composer__anon input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--mvc-green); }
.mvc-ask__submit { width: 100%; }
.mvc-ask__moderation { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 0; color: var(--mvc-muted); font-size: 0.875rem; text-align: center; }
.mvc-tform__lede { color: var(--mvc-muted); font-size: 0.9375rem; }
.mvc-tform__group { min-width: 0; margin: 0; padding: 20px 0 0; border: 0; border-top: 1px solid var(--mvc-line); }
.mvc-tform__group legend { padding: 0 8px 0 0; font-size: 1.0625rem; font-weight: 760; }
.mvc-tform__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 14px; }
.mvc-tform__group > label + label { margin-top: 14px; }
.mvc-tform .mvc-optional { color: var(--mvc-muted); font-weight: 500; }
.mvc-tform .mvc-ask__rules { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; margin: 0; padding: 14px; border-radius: var(--mvc-radius-sm); background: var(--mvc-soft); color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-listing-rules h2 { margin-bottom: 14px; font-size: 1.2rem; }
.mvc-listing-rules ul { margin: 0 0 16px; padding: 0; list-style: none; }
.mvc-listing-rules > p { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 9px; margin: 0; padding: 13px; border: 1px solid color-mix(in srgb, var(--mvc-orange) 34%, var(--mvc-line)); border-radius: var(--mvc-radius-sm); color: var(--mvc-muted); font-size: 0.875rem; }

/* Listing support sections ----------------------------------------- */
.mvc-directory-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 16px; }
.mvc-directory-meta > section { padding: 18px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); }
.mvc-directory-meta header,
.mvc-active-members header,
.mvc-guides header { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.mvc-directory-meta h2,
.mvc-active-members h2,
.mvc-guides h2,
.mvc-contribute h2 { margin: 0; font-size: 1.2rem; }
.mvc-directory-meta header a,
.mvc-active-members header a { color: var(--mvc-blue); font-size: 0.875rem; font-weight: 700; text-decoration: none; }
.mvc-guides { border-top: 3px solid var(--mvc-guides-accent); }
.mvc-guides header a { color: var(--mvc-guides-accent); font-size: 0.875rem; font-weight: 700; text-decoration: none; }
.mvc-topic-pills { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 0; padding: 0; list-style: none; }
.mvc-topic-pills a { display: block; padding: 7px 11px; border-radius: 999px; background: var(--mvc-soft); color: var(--mvc-muted); font-size: 0.875rem; text-decoration: none; }
.mvc-directory-meta ol { margin: 14px 0 0; padding: 0; list-style: none; }
.mvc-directory-meta ol li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--mvc-line); font-size: 0.875rem; }
.mvc-directory-meta ol a { color: var(--mvc-text); text-decoration: none; }
.mvc-directory-meta ol small { color: var(--mvc-muted); }
.mvc-active-members,
.mvc-contribute,
.mvc-guides,
.mvc-advice { margin-top: 18px; padding: 20px; }
.mvc-active-members ul { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 16px 0 0; padding: 0; list-style: none; }
.mvc-active-members li,
.mvc-active-members a { display: flex; min-width: 0; align-items: center; gap: 10px; }
.mvc-active-members li { padding: 12px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); }
.mvc-active-members li:focus-within { position: relative; z-index: 5; }
.mvc-active-members a { color: var(--mvc-text); text-decoration: none; }
.mvc-active-members img { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; }
.mvc-active-members p { display: grid; min-width: 0; margin: 0; }
.mvc-active-members strong { overflow: hidden; font-size: 0.9375rem; text-overflow: ellipsis; white-space: nowrap; }
.mvc-active-members span { color: var(--mvc-green-text); font-size: 0.875rem; }
.mvc-active-members small { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-contribute > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 16px; }
.mvc-contribute a { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 12px; padding: 18px; border-radius: var(--mvc-radius); background: color-mix(in srgb, var(--mvc-questions-accent) 9%, var(--mvc-soft)); color: var(--mvc-text); text-decoration: none; }
.mvc-contribute a:nth-child(2) { background: color-mix(in srgb, var(--mvc-testimonials-accent) 9%, var(--mvc-soft)); }
.mvc-contribute a:nth-child(3) { background: color-mix(in srgb, var(--mvc-discussions-accent) 9%, var(--mvc-soft)); }
.mvc-contribute a > span,
.mvc-contribute a em { color: var(--mvc-questions-accent); }
.mvc-contribute a:nth-child(2) :is(span, em) { color: var(--mvc-testimonials-accent); }
.mvc-contribute a:nth-child(3) :is(span, em) { color: var(--mvc-discussions-accent); }
.mvc-contribute p { display: grid; gap: 4px; margin: 0; }
.mvc-contribute strong { font-size: 1rem; }
.mvc-contribute small { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-contribute em { font-size: 0.875rem; font-style: normal; font-weight: 740; }
.mvc-guides header p { margin: 4px 0 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-guides > ul { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 16px 0 0; padding: 0; list-style: none; }
.mvc-guides li > a { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 10px; align-items: center; min-height: 76px; padding: 8px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); color: var(--mvc-text); text-decoration: none; }
.mvc-guides img { width: 72px; height: 58px; border-radius: 6px; object-fit: cover; }
.mvc-guides strong { font-size: 0.875rem; line-height: 1.35; }
.mvc-guides li > a > strong:first-child { grid-column: 1 / -1; padding: 6px; }
.mvc-advice > header h2 { margin-bottom: 16px; font-size: 1.3rem; }
.mvc-advice > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.mvc-advice article { display: grid; grid-template-columns: 42px minmax(0, 1fr); column-gap: 12px; padding: 18px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-soft); }
.mvc-advice article > span { grid-row: 1 / 3; color: var(--mvc-green-text); }
.mvc-advice h3 { margin: 0 0 5px; font-size: 1rem; }
.mvc-advice p { margin: 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-transparency { margin-top: 18px; padding: 14px; border-radius: var(--mvc-radius-sm); background: var(--mvc-soft); color: var(--mvc-muted); font-size: 0.875rem; text-align: center; }

/* Details ------------------------------------------------------------ */
.mvc-detail { padding-top: 24px; }
.mvc-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 18px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-breadcrumb a { color: var(--mvc-muted); text-decoration: none; }
.mvc-breadcrumb strong { max-width: 52ch; overflow: hidden; color: var(--mvc-text); text-overflow: ellipsis; white-space: nowrap; }
.mvc-detail__layout { display: grid; grid-template-columns: minmax(0, 2.25fr) minmax(310px, 0.75fr); gap: 22px; align-items: start; }
.mvc-detail__main,
.mvc-detail__aside { display: grid; gap: 18px; min-width: 0; }
.mvc-question { padding: clamp(22px, 3vw, 34px); }
.mvc-question__head h1 { max-width: 24ch; margin: 0 0 18px; font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.08; }
.mvc-question__status { display: inline-flex; align-items: center; gap: 7px; margin-bottom: 14px; padding: 7px 12px; border-radius: 999px; background: var(--mvc-green-soft); color: var(--mvc-green-text); font-size: 0.875rem; font-weight: 740; }
.mvc-question__author { display: inline-flex; align-items: center; gap: 10px; }
.mvc-question__author img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; }
.mvc-question__author p { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin: 0; }
.mvc-question__author strong { font-size: 1rem; }
.mvc-question__author span,
.mvc-badge { padding: 4px 9px; border-radius: 999px; background: color-mix(in srgb, var(--mvc-blue) 10%, var(--mvc-soft)); color: var(--mvc-blue-text); font-size: 0.875rem; font-weight: 700; }
.mvc-question__meta { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 10px 0 0 12px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-question__meta a { padding: 4px 9px; border-radius: 999px; background: color-mix(in srgb, var(--mvc-blue) 10%, var(--mvc-soft)); color: var(--mvc-blue); text-decoration: none; }
.mvc-question__content { max-width: 74ch; margin-top: 24px; font-size: 1.0625rem; line-height: 1.72; }
.mvc-question__content > :last-child { margin-bottom: 0; }
.mvc-question__buttons { display: grid; grid-template-columns: 1.35fr repeat(4, 1fr); gap: 10px; margin-top: 26px; }
.mvc-question__buttons :is(a, button) { display: flex; min-height: 48px; align-items: center; justify-content: center; gap: 8px; padding: 10px; border: 1px solid var(--mvc-line-strong); border-radius: var(--mvc-radius-sm); background: transparent; color: var(--mvc-text); font-size: 0.875rem; font-weight: 700; text-decoration: none; cursor: pointer; }
.mvc-question__buttons .is-primary { border: 2px solid var(--mvc-green); color: var(--mvc-green-text); }
.mvc-question__actions { margin-top: 12px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); }
.mvc-reactions { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); }
.mvc-react { display: flex; min-height: 48px; align-items: center; justify-content: center; gap: 7px; padding: 8px; border: 0; background: transparent; color: var(--mvc-muted); font-size: 0.875rem; font-weight: 700; cursor: pointer; }
.mvc-react + .mvc-react { border-left: 1px solid var(--mvc-line); }
.mvc-react:hover,
.mvc-react.is-active { color: var(--mvc-green-text); background: var(--mvc-green-soft); }
.mvc-question__activity { display: grid; grid-template-columns: repeat(3, 1fr); margin: 12px 0 0; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); }
.mvc-question__activity div { display: flex; min-height: 54px; align-items: center; justify-content: center; gap: 8px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-question__activity div + div { border-left: 1px solid var(--mvc-line); }
.mvc-question__activity dd { margin: 0; font-weight: 700; }
.mvc-question__activity div:last-child { color: var(--mvc-green-text); }
.mvc-detail__aside > section { padding: 22px; }
.mvc-detail__aside h2 { margin-bottom: 14px; font-size: 1.3rem; }
.mvc-follow-panel header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.mvc-follow-panel header h2 { margin: 0; }
.mvc-follow-panel header > button { position: relative; width: 44px; height: 44px; flex: 0 0 44px; padding: 0; border: 0; border-radius: 999px; background: transparent; cursor: pointer; }
.mvc-follow-panel header > button::before { position: absolute; top: 11px; left: 2px; width: 40px; height: 22px; border-radius: 999px; background: var(--mvc-green); content: ""; transition: background-color 160ms cubic-bezier(0.165, 0.84, 0.44, 1); }
.mvc-follow-panel header > button span { position: absolute; top: 14px; right: 5px; width: 16px; height: 16px; border-radius: 50%; background: oklch(98% 0.01 150); box-shadow: 0 1px 2px oklch(10% 0.01 220 / 24%); transition: transform 160ms cubic-bezier(0.165, 0.84, 0.44, 1); }
.mvc-follow-panel header > button[aria-pressed="false"]::before { background: var(--mvc-line-strong); }
.mvc-follow-panel header > button[aria-pressed="false"] span { transform: translateX(-18px); }
.mvc-follow-panel header > button:focus-visible { outline: 2px solid var(--mvc-green-text); outline-offset: 2px; }
.mvc-follow-panel > p { margin: 14px 0 20px; color: var(--mvc-muted); font-size: 0.9375rem; }
.mvc-follow-panel dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; padding-top: 16px; border-top: 1px solid var(--mvc-line); }
.mvc-follow-panel dl div { text-align: center; }
.mvc-follow-panel dl div + div { border-left: 1px solid var(--mvc-line); }
.mvc-follow-panel dd { margin: 0; font-size: 1.1rem; font-weight: 800; }
.mvc-follow-panel dt { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-side-section ul { margin: 0; padding: 0; list-style: none; }
.mvc-side-section li + li { border-top: 1px solid var(--mvc-line); }
.mvc-side-section li a { display: block; padding: 11px 0; color: var(--mvc-blue); font-size: 0.9375rem; line-height: 1.4; text-decoration: none; }
.mvc-side-section__more,
.mvc-author-panel > a,
.mvc-rules > a { display: flex; min-height: 44px; align-items: center; justify-content: center; margin-top: 14px; border: 1px solid var(--mvc-line-strong); border-radius: var(--mvc-radius-sm); color: var(--mvc-green-text); font-size: 0.875rem; font-weight: 740; text-decoration: none; }
.mvc-author-panel > div { display: flex; align-items: center; gap: 12px; }
.mvc-author-panel img { width: 58px; height: 58px; border-radius: 50%; object-fit: cover; }
.mvc-author-panel p { display: grid; grid-template-columns: auto auto; gap: 3px 7px; align-items: center; margin: 0; }
.mvc-author-panel strong { font-size: 1rem; }
.mvc-author-panel span { padding: 4px 8px; border-radius: 999px; background: var(--mvc-green-soft); color: var(--mvc-green-text); font-size: 0.875rem; }
.mvc-author-panel small { grid-column: 1 / -1; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-side-cta { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: center; background: var(--mvc-green-soft) !important; }
.mvc-side-cta > span { color: var(--mvc-green-text); }
.mvc-side-cta h2 { margin: 0 0 5px; }
.mvc-side-cta p { margin: 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-side-cta .mvc-btn { grid-column: 1 / -1; margin-top: 16px; }

/* Testimonial detail ------------------------------------------------- */
.mvc-testimonial-detail { overflow: hidden; padding: 0; }
.mvc-testimonial-detail .mvc-question__head { padding: clamp(22px, 3vw, 34px); border-bottom: 1px solid var(--mvc-line); }
.mvc-testimonial-detail__author { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 12px; align-items: center; margin-top: 18px; }
.mvc-testimonial-detail__author > img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.mvc-testimonial-detail__author p { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0; }
.mvc-testimonial-detail__author strong { font-size: 1rem; }
.mvc-testimonial-detail__author span { padding: 4px 9px; border-radius: 999px; background: var(--mvc-green-soft); color: var(--mvc-green-text); font-size: 0.875rem; }
.mvc-testimonial-detail__author small { flex-basis: 100%; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-testimonial-detail__topics { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.mvc-testimonial-detail__topics a { display: inline-flex; padding: 6px 10px; border-radius: 999px; background: var(--mvc-green-soft); color: var(--mvc-green-text); font-size: 0.875rem; font-weight: 700; text-decoration: none; }
.mvc-story-section { padding: clamp(22px, 3vw, 34px); }
.mvc-story-section + .mvc-story-section { border-top: 1px solid var(--mvc-line); }
.mvc-story-section h2 { display: flex; align-items: center; gap: 9px; margin-bottom: 15px; font-size: 1.35rem; }
.mvc-story-section h2 svg { color: var(--mvc-pink); }
.mvc-story-section .mvc-question__content { margin-top: 0; }
.mvc-story-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; margin: 0; }
.mvc-story-facts div { display: grid; grid-template-columns: minmax(145px, 0.8fr) minmax(0, 1.2fr); gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--mvc-line); }
.mvc-story-facts dt { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-story-facts dd { margin: 0; font-size: 0.9375rem; font-weight: 700; }
.mvc-testimonial-detail > .mvc-vigilance,
.mvc-testimonial-detail > .mvc-disclaimer { display: block; margin: 18px 30px; padding: 14px; border-radius: var(--mvc-radius-sm); background: color-mix(in srgb, var(--mvc-orange) 9%, var(--mvc-soft)); color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-testimonial-detail > .mvc-question__actions { margin: 0; border-width: 1px 0 0; border-radius: 0; }
.mvc-testimonial-detail__tools { display: flex; justify-content: flex-end; padding: 14px 30px; border-top: 1px solid var(--mvc-line); }
.mvc-related-stories li { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px 0; }
.mvc-related-stories li > img { width: 80px; height: 68px; border-radius: var(--mvc-radius-sm); object-fit: cover; }
.mvc-related-stories li a { padding: 0; color: var(--mvc-text); font-weight: 700; }
.mvc-related-stories li small { display: block; margin-top: 4px; color: var(--mvc-muted); font-size: 0.875rem; }

/* Discussion --------------------------------------------------------- */
.mvc-discussion { min-width: 0; }
.mvc-discussion__head { display: flex; align-items: end; justify-content: space-between; gap: 18px; }
.mvc-discussion__title { margin: 0; font-size: clamp(1.55rem, 2.4vw, 2rem); }
.mvc-sort { display: flex; flex-wrap: wrap; }
.mvc-sort__item { min-height: 44px; padding: 11px 14px; border-bottom: 3px solid transparent; color: var(--mvc-muted); font-size: 0.875rem; font-weight: 700; text-decoration: none; }
.mvc-sort__item.is-current { border-color: var(--mvc-green); color: var(--mvc-green-text); }
.mvc-disclaimer { display: flex; align-items: center; gap: 8px; margin: 10px 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-composer { display: grid; gap: 12px; margin: 12px 0 18px; padding: 16px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); }
.mvc-composer__row { display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; gap: 12px; align-items: center; }
.mvc-composer__row > img { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; }
.mvc-composer__field { min-height: 52px !important; }
.mvc-composer__actions { display: flex; gap: 8px; }
.mvc-composer__rules,
.mvc-composer__anon,
.mvc-composer__status { margin: 0 0 0 58px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-composer__meta { display: flex; justify-content: space-between; gap: 12px; margin: 0 0 0 58px; color: var(--mvc-muted); font-size: 0.8125rem; }
.mvc-composer__meta button { padding: 0; border: 0; background: transparent; color: var(--mvc-green-text); font-weight: 700; text-decoration: underline; cursor: pointer; }
.mvc-composer__anon { display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: center; }
.mvc-composer__anon small { flex-basis: 100%; margin-left: 24px; color: var(--mvc-muted); }
.mvc-composer__context { margin: 0; padding: 9px 11px; border: 1px solid var(--mvc-line); background: var(--mvc-surface); color: var(--mvc-muted); font-size: 0.8125rem; line-height: 1.45; }
.mvc-composer--inline { margin-top: 12px; background: var(--mvc-soft); }
.mvc-composer--inline .mvc-composer__row { grid-template-columns: minmax(0, 1fr) auto; }
.mvc-composer--inline .mvc-composer__row > img { display: none; }
.mvc-thread,
.mvc-node__children { margin: 0; padding: 0; list-style: none; }
.mvc-node { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 12px; margin-top: 12px; padding: 18px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); }
.mvc-node.is-best { border-color: color-mix(in srgb, var(--mvc-green) 55%, var(--mvc-line)); box-shadow: 0 8px 24px color-mix(in srgb, var(--mvc-green) 8%, transparent); }
.mvc-node__rail { display: grid; align-content: start; justify-items: center; gap: 8px; }
.mvc-node__avatar { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; }
.mvc-node__avatar--anon { border: 1px dashed var(--mvc-line); background: var(--mvc-soft); }
.mvc-node__thread { width: 1px; min-height: 28px; border: 0; background: var(--mvc-line); }
.mvc-node__accepted { float: right; display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 6px 10px; border-radius: 999px; background: var(--mvc-green-soft); color: var(--mvc-green-text); font-size: 0.875rem; font-weight: 740; }
.mvc-node__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 8px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-node__author { color: var(--mvc-text); font-size: 1rem; font-weight: 740; text-decoration: none; }
.mvc-node__content { font-size: 1rem; line-height: 1.62; }
.mvc-node__content p:last-child { margin-bottom: 0; }
.mvc-node__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; }
.mvc-node .mvc-reactions { display: flex; }
.mvc-node .mvc-react { min-height: 44px; padding: 8px 10px; border: 0; }
.mvc-node__tools { display: flex; flex-wrap: wrap; gap: 4px; }
.mvc-tool { display: inline-flex; min-height: 44px; align-items: center; gap: 6px; padding: 8px 9px; border: 0; background: transparent; color: var(--mvc-muted); font-size: 0.875rem; cursor: pointer; }
.mvc-tool--danger { color: var(--mvc-danger); }
.mvc-node__children { margin-top: 12px; }
.mvc-node__children .mvc-node { background: var(--mvc-soft); }
.mvc-node__slot:empty { display: none; }
.mvc-node__more { min-height: 44px; padding: 8px 10px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); background: transparent; color: var(--mvc-green-text); font-size: 0.875rem; }
.mvc-guides--detail { padding: 0; border: 0; background: transparent; box-shadow: none; }
.mvc-guides--detail > ul { grid-template-columns: repeat(4, 1fr); }
.mvc-guides--detail li > a { grid-template-columns: 80px minmax(0, 1fr) 18px; min-height: 88px; background: var(--mvc-surface); }
.mvc-guides--detail img { width: 80px; height: 68px; }
.mvc-guides--detail span { display: grid; }
.mvc-guides--detail small,
.mvc-guides--detail em { color: var(--mvc-muted); font-size: 0.875rem; font-style: normal; }

.mvc-report { width: min(92vw, 540px); padding: 26px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); color: var(--mvc-text); }
.mvc-report::backdrop { background: rgb(0 9 20 / 66%); }
.mvc-report__form { display: grid; gap: 16px; }
.mvc-report__title { margin: 0; font-size: 1.5rem; }
.mvc-report__text { margin: 0; color: var(--mvc-muted); }
.mvc-report__reasons { display: grid; gap: 9px; margin: 0; padding: 0; border: 0; }
.mvc-report__reasons label { display: flex; gap: 9px; align-items: start; }
.mvc-report__detail { display: grid; gap: 7px; }
.mvc-report__actions { display: flex; justify-content: flex-end; gap: 10px; }
.mvc-live { margin: 8px 0 0; font-size: 0.875rem; }

/* Shared discussion component ------------------------------------- */
.mvc-article-discussion { width: min(96vw, 1760px); margin: clamp(36px, 5vw, 72px) auto; padding: clamp(22px, 3vw, 38px); }
.mvc-discussion--community { margin-top: 20px; }
.mvc-discussion-overview__head { display: flex; align-items: flex-start; gap: 16px; max-width: 72ch; margin-bottom: 18px; }
.mvc-discussion-overview__mark { display: grid; flex: 0 0 48px; width: 48px; height: 48px; place-items: center; border-radius: 50%; background: var(--mvc-green-soft); color: var(--mvc-green-text); }
.mvc-discussion-overview__head h2 { margin: 4px 0 7px; font-size: 1.75rem; }
.mvc-discussion-overview__head div > p { margin: 0; color: var(--mvc-muted); font-size: 1rem; }
.mvc-discussion-overview__head small { display: block; margin-top: 6px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-section__eyebrow { color: var(--mvc-green-text) !important; font-weight: 740; }
.mvc-section__eyebrow { display: flex; align-items: center; gap: 8px; }
.mvc-discussion-summary { display: flex; align-items: stretch; justify-content: space-between; gap: 18px; margin-bottom: 18px; padding: 14px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); }
.mvc-discussion-summary__stats { display: grid; grid-template-columns: repeat(3, minmax(130px, 1fr)); flex: 1; margin: 0; }
.mvc-discussion-summary__stats p { display: grid; grid-template-columns: 30px minmax(0, 1fr); column-gap: 9px; align-content: center; margin: 0; padding: 6px 14px; }
.mvc-discussion-summary__stats p + p { border-left: 1px solid var(--mvc-line); }
.mvc-discussion-summary__stats svg { grid-row: 1 / 3; align-self: center; color: var(--mvc-green-text); }
.mvc-discussion-summary__stats span { display: grid; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-discussion-summary__stats strong { color: var(--mvc-text); font-size: 1.05rem; font-weight: 800; }
.mvc-discussion-summary__actions { display: flex; gap: 8px; align-items: center; }
.mvc-discussion-summary .mvc-btn { padding-inline: 14px; white-space: nowrap; }
.mvc-discussion-tabs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
.mvc-discussion-tabs a { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; padding: 10px 16px; border: 1px solid transparent; border-radius: 999px; background: var(--mvc-soft); color: var(--mvc-muted); font-size: 0.875rem; font-weight: 700; text-decoration: none; }
.mvc-discussion-tabs a:hover,
.mvc-discussion-tabs a.is-current { border-color: var(--mvc-green); background: var(--mvc-green-soft); color: var(--mvc-green-text); }
.mvc-discussion .mvc-signin.mv-comments__signin { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; min-height: 0; place-items: initial; align-content: initial; gap: 14px; align-items: center; padding: 18px; border-style: solid; background: color-mix(in srgb, var(--mvc-green) 4%, var(--mvc-surface)); text-align: left; box-shadow: var(--mvc-shadow); }
.mvc-discussion .mvc-signin.mv-comments__signin > span { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 50%; background: var(--mvc-green-soft); color: var(--mvc-green-text); }
.mvc-discussion .mvc-signin.mv-comments__signin strong { color: var(--mvc-text); font-size: 0.9375rem; }
.mvc-discussion .mvc-signin.mv-comments__signin p { margin: 3px 0 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-discussion .mvc-empty.mv-comments__empty { display: flex; min-height: 0; place-items: initial; align-content: initial; gap: 14px; align-items: flex-start; padding: 22px; text-align: left; }
.mvc-discussion .mvc-empty.mv-comments__empty > svg { flex: 0 0 auto; color: var(--mvc-green-text); }

/* Community contribution workspace ---------------------------------- */
.mvc-page .mvc-discussion {
	--mvc-discussion-panel: var(--mvc-form-discussion-bg);
	--mvc-discussion-field: var(--mvc-form-discussion-field-bg);
	--mvc-discussion-line: var(--mvc-line-strong);
	margin-top: clamp(34px, 4vw, 52px);
	padding-top: clamp(24px, 3vw, 34px);
	border-top: 1px solid var(--mvc-line);
}
.mvc-page .mvc-discussion-overview__head { max-width: 780px; margin-bottom: 22px; }
.mvc-page .mvc-discussion-overview__head h2 { font-size: clamp(1.85rem, 2.8vw, 2.35rem); }
.mvc-page .mvc-discussion-overview__head div > p { max-width: 62ch; color: var(--mvc-text); }
.mvc-page .mvc-discussion-summary { margin-bottom: 14px; border-color: var(--mvc-discussion-line); box-shadow: none; }
.mvc-page .mvc-discussion-tabs { margin: 0 0 22px; padding-bottom: 3px; overflow-x: auto; flex-wrap: nowrap; }
.mvc-page .mvc-discussion-tabs a { flex: 0 0 auto; border-radius: var(--mvc-radius-sm); }
.mvc-page .mvc-discussion__main { min-width: 0; }
.mvc-page .mvc-composer:not(.mvc-composer--inline) { gap: 0; margin: 0; padding: 18px; overflow: hidden; border-color: var(--mvc-discussion-line); border-radius: var(--mvc-radius); background: var(--mvc-discussion-panel); box-shadow: 0 12px 30px rgb(16 38 34 / 7%); }
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__row { grid-template-columns: 46px minmax(0, 1fr); align-items: start; }
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__row > img { grid-row: 1 / 4; }
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__label { grid-column: 2; color: var(--mvc-text); font-size: 0.9375rem; font-weight: 760; }
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__field { grid-column: 2; min-height: 150px !important; padding: 14px 15px; border: 1px solid var(--mvc-discussion-line); background: var(--mvc-discussion-field); line-height: 1.6; resize: vertical; }
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__field::placeholder { color: var(--mvc-muted); opacity: 1; }
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__actions { grid-column: 2; justify-content: flex-end; padding-top: 2px; }
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__actions .mvc-btn--primary { min-width: 180px; }
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__rules,
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__anon,
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__meta,
.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__status { margin: 12px 0 0 58px; }
.mvc-page .mvc-discussion .mvc-signin.mv-comments__signin { margin: 0; border-color: var(--mvc-discussion-line); border-radius: 0 0 var(--mvc-radius) var(--mvc-radius); box-shadow: none; }
.mvc-page #discussion-stream { margin-top: 30px; }
.mvc-page .mvc-native-comments__toolbar { padding: 0 0 12px; border-bottom: 1px solid var(--mvc-line); }
.mvc-page .mvc-native-comments__toolbar h3 { font-size: 1.25rem; }
[data-theme="dark"] .mvc-page .mvc-discussion {
	--mvc-discussion-panel: var(--mvc-form-discussion-bg);
	--mvc-discussion-field: var(--mvc-form-discussion-field-bg);
	--mvc-discussion-line: var(--mvc-line-strong);
}
[data-theme="dark"] .mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__field { color: var(--mvc-text); }
[data-theme="dark"] .mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__field::placeholder { color: var(--mvc-muted); }

/* Community answers are threaded rows, never cards inside cards. */
.mvc-discussion--community .mvc-thread { border-top: 1px solid var(--mvc-line); }
.mvc-discussion--community .mvc-discussion-summary { padding-inline: 0; border-width: 1px 0; border-radius: 0; background: transparent; }
.mvc-discussion--community .mvc-node {
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 12px;
	margin: 0;
	padding: 18px 0;
	border: 0;
	border-bottom: 1px solid var(--mvc-line);
	border-radius: 0;
	background: transparent;
}
.mvc-discussion--community .mvc-node.is-best { border-color: var(--mvc-line); box-shadow: none; }
.mvc-discussion--community .mvc-node__accepted { float: none; padding: 0; border-radius: 0; background: transparent; }
.mvc-discussion--community .mvc-node__children { margin: 10px 0 0 8px; padding-left: 24px; border-left: 1px solid var(--mvc-line-strong); }
.mvc-discussion--community .mvc-node__children .mvc-node { background: transparent; }
.mvc-discussion--community .mvc-node__rail { position: relative; display: grid; }
.mvc-discussion--community .mvc-node__thread {
	position: relative;
	width: 44px;
	min-height: 44px;
	border: 0;
	background: transparent;
	cursor: pointer;
}
.mvc-discussion--community .mvc-node__thread::before { position: absolute; inset: 4px 21px; width: 2px; border-radius: 1px; background: var(--mvc-line-strong); content: ""; }
.mvc-discussion--community .mvc-node__thread[aria-expanded="false"]::before { background: var(--mvc-green); }
.mvc-discussion--community .mvc-node__actions { justify-content: flex-start; }
.mvc-discussion--community .mvc-node__tools { align-items: center; }
.mvc-discussion--community .mvc-node__more-actions { position: relative; }
.mvc-discussion--community .mvc-node__more-actions > summary { list-style: none; }
.mvc-discussion--community .mvc-node__more-actions > summary::-webkit-details-marker { display: none; }
.mvc-discussion--community .mvc-node__more-actions > div {
	position: absolute;
	z-index: 5;
	top: calc(100% + 4px);
	right: 0;
	display: grid;
	min-width: 180px;
	padding: 6px;
	border: 1px solid var(--mvc-line-strong);
	border-radius: var(--mvc-radius-sm);
	background: var(--mvc-raised);
	box-shadow: var(--mvc-shadow);
}
.mvc-discussion--community .mvc-node__more-actions > div .mvc-tool { width: 100%; justify-content: flex-start; }
.mvc-discussion--community .mvc-react.is-static { color: var(--mvc-muted); text-decoration: none; }
.mvc-discussion--community .mvc-react.is-static:hover { color: var(--mvc-green-text); }
.mvc-discussion--community .mvc-composer--inline { padding: 12px 0; border-width: 1px 0; border-radius: 0; background: transparent; }
.mvc-discussion--community .mvc-composer--inline .mvc-composer__row { grid-template-columns: 1fr; }
.mvc-discussion--community .mvc-composer--inline .mvc-composer__label,
.mvc-discussion--community .mvc-composer--inline .mvc-composer__field,
.mvc-discussion--community .mvc-composer--inline .mvc-composer__actions { grid-column: 1; }
.mvc-discussion--community .mvc-composer--inline .mvc-composer__actions { justify-content: flex-end; }
.mvc-discussion--community .mvc-composer--inline .mvc-composer__meta,
.mvc-discussion--community .mvc-composer--inline .mvc-composer__anon,
.mvc-discussion--community .mvc-composer--inline .mvc-composer__status { margin-left: 0; }
.mvc-composer__status.is-error { color: var(--mvc-danger); }
.mvc-composer__status.is-held { color: var(--mvc-orange); }
.mvc-node__feedback { margin: 10px 0 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-node__feedback[data-tone="success"] { color: var(--mvc-green-text); }
.mvc-node__feedback[data-tone="error"] { color: var(--mvc-danger); }
.mvc-thread-pagination { display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: center; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--mvc-line); }
.mvc-thread-pagination a { display: inline-flex; min-height: 44px; align-items: center; color: var(--mvc-green-text); font-weight: 700; }
.mvc-thread-pagination a:last-child { justify-self: end; }
.mvc-thread-pagination span { color: var(--mvc-muted); font-size: 0.875rem; text-align: center; }

@media (max-width: 600px) {
	.mvc-page .mvc-discussion { margin-top: 44px; padding-top: 28px; }
	.mvc-page .mvc-discussion-summary__actions { display: grid; grid-template-columns: 1fr; width: 100%; }
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__row { grid-template-columns: 1fr; }
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__row > img { display: none; }
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__label,
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__field,
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__actions { grid-column: 1; }
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__rules,
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__anon,
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__meta,
	.mvc-page .mvc-composer:not(.mvc-composer--inline) .mvc-composer__status { margin-left: 0; }
	.mvc-discussion--community .mvc-native-comments__toolbar { align-items: stretch; flex-direction: column; gap: 8px; }
	.mvc-discussion--community .mvc-native-comments__toolbar nav { width: 100%; overflow-x: auto; }
	.mvc-discussion--community .mvc-native-comments__toolbar a { flex: 1 0 auto; justify-content: center; text-align: center; }
	.mvc-discussion--community .mvc-node { grid-template-columns: 44px minmax(0, 1fr); gap: 10px; padding: 16px 0; }
	.mvc-discussion--community .mvc-node__rail { display: grid; }
	.mvc-discussion--community .mvc-node__avatar { width: 36px; height: 36px; }
	.mvc-discussion--community .mvc-node__thread { width: 44px; }
	.mvc-discussion--community .mvc-node__thread::before { inset-inline: 21px; }
	.mvc-discussion--community .mvc-node__children { margin-left: 0; padding-left: 14px; }
	.mvc-discussion--community .mvc-node__actions { align-items: stretch; flex-direction: row; }
	.mvc-discussion--community .mvc-node__more-actions > div { right: auto; left: 0; }
	.mvc-discussion--community .mvc-composer--inline .mvc-composer__actions { display: flex; }
	.mvc-discussion--community .mvc-composer--inline .mvc-composer__actions .mvc-btn { width: auto; }
	.mvc-thread-pagination { grid-template-columns: 1fr 1fr; }
	.mvc-thread-pagination span { grid-column: 1 / -1; grid-row: 1; }
	.mvc-thread-pagination a { grid-row: 2; }
}
.mvc-article-discussion__layout { display: grid; grid-template-columns: minmax(0, 2.4fr) minmax(300px, 0.75fr); gap: 22px; align-items: start; }
.mvc-article-discussion__main,
.mvc-article-discussion__aside { display: grid; gap: 14px; min-width: 0; }
.mvc-article-discussion__aside > section,
.mvc-native-composer { padding: 20px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); }
.mvc-native-comment-form { display: grid; gap: 12px; }
.mvc-native-comment-form > * { margin-block: 0; }
.mvc-native-comment-form label { display: block; margin-bottom: 6px; font-size: 0.9375rem; font-weight: 720; }
.mvc-native-comment-form .comment-form-author,
.mvc-native-comment-form .comment-form-email,
.mvc-native-comment-form .comment-form-url { display: inline-block; width: calc(33.333% - 8px); vertical-align: top; }
.mvc-native-comments__toolbar { display: flex; align-items: center; justify-content: space-between; padding: 8px 0; }
.mvc-native-comments__toolbar h3 { margin: 0; font-size: 1.35rem; }
.mvc-native-comments__toolbar nav { display: flex; }
.mvc-native-comments__toolbar > span { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-native-comments__toolbar a { min-height: 44px; padding: 11px 13px; border-bottom: 3px solid transparent; color: var(--mvc-muted); font-size: 0.875rem; font-weight: 700; text-decoration: none; }
.mvc-native-comments__toolbar a.is-current { border-color: var(--mvc-green); color: var(--mvc-green-text); }
.mvc-native-comments,
.mvc-native-comments__children { margin: 0; padding: 0; list-style: none; }
.mvc-native-comments__children { margin-left: 44px; }
.mvc-native-comment { margin-top: 12px; }
.mvc-native-comment__card { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 12px; padding: 18px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); }
.mvc-native-comment__avatar img { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; }
.mvc-native-comment__body { min-width: 0; }
.mvc-native-comment__body > header { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-native-comment__body > header strong { color: var(--mvc-text); font-size: 1rem; }
.mvc-native-comment__content { margin-top: 9px; font-size: 1rem; line-height: 1.6; }
.mvc-native-comment__content p:last-child { margin-bottom: 0; }
.mvc-native-comment__body > footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; }
.mvc-native-comment__body .mvc-reactions { display: flex; }
.mvc-native-comment__body .mvc-react { min-height: 44px; padding: 8px 10px; border: 0; }
.mvc-native-comment__tools { display: flex; align-items: center; gap: 6px; }
.mvc-native-comment__tools .comment-reply-link { display: inline-flex; min-height: 44px; align-items: center; color: var(--mvc-green-text); font-size: 0.875rem; font-weight: 740; text-decoration: none; }
.mvc-article-discussion__aside h3 { margin: 0 0 12px; font-size: 1.2rem; }
.mvc-article-discussion__aside h3 { display: flex; align-items: center; gap: 8px; }
.mvc-discussion-digest ul { margin: 0; padding-left: 22px; }
.mvc-discussion-digest li { padding: 5px 0; color: var(--mvc-muted); font-size: 0.9375rem; }
.mvc-discussion-digest li::marker { color: var(--mvc-green); }
.mvc-discussion-digest p,
.mvc-discussion-join p { color: var(--mvc-muted); font-size: 0.9375rem; }
.mvc-discussion-join { display: grid; gap: 10px; }
.mvc-discussion-join h3,
.mvc-discussion-join p { margin: 0; }
.mvc-discussion-contributors ul { display: flex; gap: 14px; margin: 0; padding: 0; list-style: none; }
.mvc-discussion-contributors li { display: grid; gap: 5px; justify-items: center; min-width: 0; }
.mvc-discussion-contributors img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.mvc-discussion-contributors span { max-width: 74px; overflow: hidden; font-size: 0.875rem; text-overflow: ellipsis; white-space: nowrap; }

/* Topic archive and legacy surfaces -------------------------------- */
.mvc-topic-archive .mvc-listing__head { margin-bottom: 20px; padding: 28px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-green-soft); }
.mvc-listing__title { margin-bottom: 10px; font-size: clamp(2.4rem, 4vw, 4rem); }
.mvc-listing__lede { color: var(--mvc-muted); font-size: 1rem; }
.mvc-topic-section { margin-top: 20px; }
.mvc-topic-section > header { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 14px; }
.mvc-topic-section > header h2 { margin: 0; font-size: 1.5rem; }
.mvc-topic-section > header a { color: var(--mvc-green-text); font-size: 0.875rem; font-weight: 740; text-decoration: none; }
.mvc-ask__summary { padding: 16px; font-weight: 740; cursor: pointer; }
.mvc-record__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.mvc-testimonial,
.mvc-aggregate,
.mvc-vigilance { padding: 22px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); }

@media (max-width: 1100px) {
	.mvc-page .mvc-page__shell--wide { width: calc(100% - 24px); }
	.mvc-hero { grid-template-columns: minmax(0, 1fr) minmax(360px, 0.9fr); }
	.mvc-hero__body,
	.mvc-hero__copy { padding: 34px; }
	.mvc-directory-grid,
	.mvc-detail__layout { grid-template-columns: minmax(0, 1.75fr) minmax(310px, 0.85fr); }
	.mvc-filters,
	.mvc-listing--testimonials .mvc-filters { grid-template-columns: 1fr 1fr; }
	.mvc-btn--filter { width: 100%; }
	.mvc-cards { grid-template-columns: 1fr 1fr; }
	.mvc-card__featured-grid { grid-template-columns: 100px minmax(0, 1fr); }
	.mvc-card__visual { grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr) 220px; }
	.mvc-card__visual img { height: 180px; }
	.mvc-active-members ul,
	.mvc-members { grid-template-columns: repeat(3, 1fr); }
	.mvc-guides > ul,
	.mvc-guides--detail > ul { grid-template-columns: repeat(2, 1fr); }
	.mvc-question__buttons { grid-template-columns: 1fr 1fr; }
	.mvc-question__buttons .is-primary { grid-column: 1 / -1; }
	.mvc-article-discussion__layout { grid-template-columns: minmax(0, 1.8fr) minmax(280px, 0.8fr); }
	.mvc-discussion-summary { align-items: stretch; flex-direction: column; }
	.mvc-discussion-summary nav { display: grid; grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 820px) {
	.mvc-page { padding-top: 16px; }
	.mvc-hero,
	.mvc-listing .mvc-hero { display: flex; min-height: 620px; flex-direction: column-reverse; }
	.mvc-listing .mvc-hero::after { inset: 0 0 45% 0; background: var(--mvc-hero-image) center 35% / cover no-repeat; }
	.mvc-hero__media { min-height: 300px; }
	.mvc-hero__body,
	.mvc-hero__copy,
	.mvc-listing .mvc-hero__copy { width: 100%; min-height: 320px; padding: 28px; justify-content: flex-end; }
	.mvc-hero__title,
	.mvc-hero h1,
	.mvc-listing .mvc-hero h1 { font-size: clamp(2rem, 8.5vw, 2.4rem); }
	.mvc-promises { grid-template-columns: 1fr; }
	.mvc-promises li + li { border-top: 1px solid var(--mvc-line); border-left: 0; }
	.mvc-stats { grid-template-columns: 1fr 1fr; }
	.mvc-stats > :is(li, div):nth-child(odd) { border-left: 0; }
	.mvc-stats > :is(li, div):nth-child(n+3) { border-top: 1px solid var(--mvc-line); }
	.mvc-community-nav { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
	.mvc-community-nav a { flex: 0 0 220px; scroll-snap-align: start; }
	.mvc-directory-grid,
	.mvc-detail__layout,
	.mvc-hub__row,
	.mvc-hub-featured { grid-template-columns: 1fr; }
	.mvc-directory-aside,
	.mvc-detail__aside { grid-template-columns: 1fr 1fr; }
	.mvc-topic-archive .mvc-cards,
	.mvc-cards { grid-template-columns: 1fr 1fr; }
	.mvc-topics--grid { grid-template-columns: 1fr 1fr; }
	.mvc-contribute > div,
	.mvc-advice > div { grid-template-columns: 1fr; }
	.mvc-story-facts { grid-template-columns: 1fr; }
	.mvc-discussion-summary__stats { grid-template-columns: 1fr 1fr 1fr; }
	.mvc-article-discussion__layout { grid-template-columns: 1fr; }
	.mvc-article-discussion__aside { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
	.mvc-page .mvc-page__shell--wide,
	.mvc-article-discussion { width: calc(100% - 24px); }
	.mvc-page { font-size: 15px; }
	.mvc-hero__body,
	.mvc-hero__copy,
	.mvc-listing .mvc-hero__copy { padding: 22px; }
	.mvc-hero__ctas,
	.mvc-hero__actions { display: grid; }
	.mvc-hero__promises { grid-template-columns: 1fr; }
	.mvc-stats { grid-template-columns: 1fr; }
	.mvc-stats > :is(li, div) + :is(li, div) { border-top: 1px solid var(--mvc-line); border-left: 0; }
	.mvc-directory { padding: 12px; }
	.mvc-filters,
	.mvc-listing--testimonials .mvc-filters,
	.mvc-cards,
	.mvc-directory-meta,
	.mvc-directory-aside,
	.mvc-detail__aside,
	.mvc-topics--grid,
	.mvc-active-members ul,
	.mvc-members,
	.mvc-guides > ul,
	.mvc-guides--detail > ul,
	.mvc-tform__grid,
	.mvc-record__grid { grid-template-columns: 1fr; }
	.mvc-tform__compact-row { grid-template-columns: 1fr; }
	.mvc-card { min-height: 0; }
	.mvc-card__featured-grid { grid-template-columns: 1fr; }
	.mvc-card--featured .mvc-card__author { flex-direction: row; align-items: center; }
	.mvc-card__visual { grid-column: auto; grid-template-columns: 1fr; }
	.mvc-card__visual img { height: 190px; }
	.mvc-panel__header { align-items: start; flex-direction: column; }
	.mvc-hub-questions li { grid-template-columns: 42px minmax(0, 1fr); }
	.mvc-hub-questions img { width: 42px; height: 42px; }
	.mvc-hub-questions li > :is(span, strong) { grid-column: 2; text-align: left; justify-self: start; }
	.mvc-hub-stories li { grid-template-columns: 100px minmax(0, 1fr); }
	.mvc-hub-stories img { width: 100px; height: 88px; }
	.mvc-question { padding: 20px; }
	.mvc-question__head h1 { font-size: clamp(1.85rem, 8vw, 2.25rem); }
	.mvc-question__meta { display: flex; margin-left: 0; }
	.mvc-question__buttons { grid-template-columns: 1fr; }
	.mvc-question__buttons .is-primary { grid-column: auto; }
	.mvc-reactions,
	.mvc-question__activity { grid-template-columns: 1fr; }
	.mvc-react + .mvc-react,
	.mvc-question__activity div + div { border-top: 1px solid var(--mvc-line); border-left: 0; }
	.mvc-story-facts div { grid-template-columns: 1fr; gap: 4px; }
	.mvc-discussion__head { align-items: start; flex-direction: column; }
	.mvc-composer__row { grid-template-columns: 1fr; }
	.mvc-composer__row > img { display: none; }
	.mvc-composer__actions { display: grid; }
	.mvc-composer__rules,
	.mvc-composer__anon,
	.mvc-composer__status { margin-left: 0; }
	.mvc-node { grid-template-columns: 1fr; }
	.mvc-node__rail { display: none; }
	.mvc-node__accepted { float: none; margin-bottom: 8px; }
	.mvc-node__actions { align-items: start; flex-direction: column; }
	.mvc-native-comment-form .comment-form-author,
	.mvc-native-comment-form .comment-form-email,
	.mvc-native-comment-form .comment-form-url { width: 100%; }
	.mvc-article-discussion { padding: 16px; }
	.mvc-discussion-summary__stats,
	.mvc-discussion-summary nav { grid-template-columns: 1fr; }
	.mvc-discussion-summary__stats p + p { border-top: 1px solid var(--mvc-line); border-left: 0; }
	.mvc-article-discussion__aside { grid-template-columns: 1fr; }
	.mvc-native-comments__children { margin-left: 14px; }
	.mvc-native-comment__card { grid-template-columns: 1fr; }
	.mvc-native-comment__avatar { display: none; }
	.mvc-native-comment__body > footer { align-items: start; flex-direction: column; }
	.mvc-discussion .mvc-signin.mv-comments__signin { grid-template-columns: 44px minmax(0, 1fr); }
	.mvc-discussion .mvc-signin.mv-comments__signin .mvc-btn { grid-column: 1 / -1; width: 100%; }
}

/* Community charter ------------------------------------------------- */
.mvc-charter { --mvc-section-accent: var(--mvc-hub-accent); --mvc-section-deep: var(--mvc-hub-deep); }
.mvc-charter .mvc-page__shell--wide { width: min(94vw, 1360px); }
.mvc-charter .mvc-breadcrumb { max-width: 1180px; margin-inline: auto; }
.mvc-charter__hero { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 24px; max-width: 1180px; margin: 0 auto; padding: clamp(36px, 5vw, 70px) clamp(24px, 5vw, 68px); border-block: 1px solid var(--mvc-line); background: var(--mvc-surface); }
.mvc-charter__hero-icon { display: grid; width: 62px; height: 62px; place-items: center; border: 1px solid color-mix(in oklch, var(--mvc-green) 34%, var(--mvc-line)); border-radius: 50%; background: var(--mvc-green-soft); color: var(--mvc-green-text); }
.mvc-charter__eyebrow { margin-bottom: 9px; color: var(--mvc-green-text); font-size: 0.75rem; font-weight: 800; letter-spacing: 0.09em; text-transform: uppercase; }
.mvc-charter__hero h1 { max-width: 18ch; margin-bottom: 18px; font-size: clamp(2.35rem, 5vw, 4.4rem); letter-spacing: -0.045em; }
.mvc-charter__hero-copy > p:not(.mvc-charter__eyebrow) { max-width: 68ch; margin-bottom: 22px; color: var(--mvc-muted); font-size: clamp(1rem, 1.4vw, 1.18rem); line-height: 1.65; }
.mvc-charter__meta { display: flex; flex-wrap: wrap; gap: 10px 24px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-charter__meta span { display: inline-flex; align-items: center; gap: 7px; }
.mvc-charter__meta span:first-child { color: var(--mvc-green-text); font-weight: 740; }
.mvc-charter__principles { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 1180px; margin: 0 auto; padding: 0; border-bottom: 1px solid var(--mvc-line); background: var(--mvc-soft); list-style: none; }
.mvc-charter__principles li { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 12px; align-items: center; min-height: 94px; padding: 20px 28px; }
.mvc-charter__principles li + li { border-left: 1px solid var(--mvc-line); }
.mvc-charter__principles svg { color: var(--mvc-green-text); }
.mvc-charter__principles strong,
.mvc-charter__principles small { display: block; }
.mvc-charter__principles strong { margin-bottom: 2px; color: var(--mvc-text); font-size: 0.9375rem; }
.mvc-charter__principles small { color: var(--mvc-muted); font-size: 0.8125rem; line-height: 1.4; }
.mvc-charter__layout { display: grid; grid-template-columns: minmax(220px, 270px) minmax(0, 820px); gap: clamp(34px, 5vw, 78px); justify-content: center; max-width: 1180px; margin: clamp(40px, 6vw, 78px) auto 0; }
.mvc-charter__aside { align-self: start; position: sticky; top: 28px; }
.mvc-charter__aside nav > p { margin-bottom: 14px; color: var(--mvc-muted); font-size: 0.75rem; font-weight: 800; letter-spacing: 0.075em; text-transform: uppercase; }
.mvc-charter__aside ol { display: grid; gap: 3px; margin: 0; padding: 0; list-style: none; }
.mvc-charter__aside li a { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 9px; align-items: start; min-height: 42px; padding: 9px 8px; border-radius: var(--mvc-radius-sm); color: var(--mvc-muted); font-size: 0.8125rem; font-weight: 650; line-height: 1.35; text-decoration: none; }
.mvc-charter__aside li a:hover { background: var(--mvc-green-soft); color: var(--mvc-green-text); }
.mvc-charter__aside li a span { display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid var(--mvc-line-strong); border-radius: 50%; font-size: 0.6875rem; }
.mvc-charter__acceptance { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 9px; margin: 22px 0 0; padding: 14px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); background: var(--mvc-soft); color: var(--mvc-muted); font-size: 0.8125rem; line-height: 1.5; }
.mvc-charter__acceptance svg { margin-top: 2px; color: var(--mvc-green-text); }
.mvc-charter__article { min-width: 0; }
.mvc-charter__article > header { margin-bottom: 44px; padding-bottom: 36px; border-bottom: 1px solid var(--mvc-line); }
.mvc-charter__article > header > p:first-child,
.mvc-charter__footer > div:first-child > p:first-child { margin-bottom: 8px; color: var(--mvc-green-text); font-size: 0.75rem; font-weight: 800; letter-spacing: 0.075em; text-transform: uppercase; }
.mvc-charter__article > header h2 { max-width: 22ch; margin-bottom: 16px; font-size: clamp(1.75rem, 3vw, 2.5rem); }
.mvc-charter__article > header p:last-child { max-width: 69ch; margin-bottom: 0; color: var(--mvc-muted); font-size: 1.0625rem; line-height: 1.7; }
.mvc-charter__content { counter-reset: mvc-charter-section; }
.mvc-charter__content h2 { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 14px; align-items: center; scroll-margin-top: 26px; margin: 48px 0 15px; font-size: clamp(1.35rem, 2.2vw, 1.75rem); }
.mvc-charter__content h2:first-child { margin-top: 0; }
.mvc-charter__content h2::before { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid color-mix(in oklch, var(--mvc-green) 35%, var(--mvc-line)); border-radius: 50%; background: var(--mvc-green-soft); color: var(--mvc-green-text); content: counter(mvc-charter-section, decimal-leading-zero); counter-increment: mvc-charter-section; font-size: 0.6875rem; font-weight: 800; letter-spacing: 0; }
.mvc-charter__content p,
.mvc-charter__content ul { max-width: 72ch; color: var(--mvc-muted); font-size: 1rem; line-height: 1.72; }
.mvc-charter__content p { margin-bottom: 22px; }
.mvc-charter__content ul { display: grid; gap: 10px; margin: 0 0 28px; padding: 0; list-style: none; }
.mvc-charter__content li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; }
.mvc-charter__content li::before { color: var(--mvc-green-text); content: "✓"; font-weight: 850; }
.mvc-charter__urgent { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 16px; margin-top: 48px; padding: 22px; border: 1px solid color-mix(in oklch, var(--mvc-orange) 38%, var(--mvc-line)); border-radius: var(--mvc-radius); background: color-mix(in oklch, var(--mvc-surface) 94%, var(--mvc-orange) 6%); }
.mvc-charter__urgent > span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: color-mix(in oklch, var(--mvc-surface) 82%, var(--mvc-orange) 18%); color: color-mix(in oklch, var(--mvc-orange) 74%, var(--mvc-text)); }
.mvc-charter__urgent h2 { margin-bottom: 8px; font-size: 1.25rem; }
.mvc-charter__urgent p { max-width: 67ch; margin-bottom: 10px; color: var(--mvc-muted); font-size: 0.9375rem; line-height: 1.6; }
.mvc-charter__urgent a { display: inline-flex; align-items: center; gap: 7px; color: var(--mvc-text); font-size: 0.875rem; font-weight: 740; }
.mvc-charter__footer { margin-top: 52px; padding: clamp(24px, 4vw, 38px); border: 1px solid color-mix(in oklch, var(--mvc-green) 28%, var(--mvc-line)); border-radius: var(--mvc-radius-lg); background: var(--mvc-green-soft); }
.mvc-charter__footer h2 { max-width: 25ch; margin-bottom: 11px; font-size: clamp(1.45rem, 2.4vw, 2rem); }
.mvc-charter__footer > div:first-child > p:last-child { max-width: 64ch; margin-bottom: 22px; color: var(--mvc-muted); }
.mvc-charter__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.mvc-charter__privacy { display: inline-flex; align-items: center; gap: 7px; margin-top: 20px; color: var(--mvc-muted); font-size: 0.8125rem; }
.mvc-charter-acceptance { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 14px; align-items: start; }
.mvc-charter-acceptance > a,
.mvc-rules__link { color: var(--mvc-green-text); font-size: 0.875rem; font-weight: 740; text-underline-offset: 3px; }
.mvc-rules__link { display: inline-flex; min-height: 44px; align-items: center; gap: 7px; margin-top: 12px; }

@media (max-width: 900px) {
	.mvc-charter__layout { grid-template-columns: 1fr; }
	.mvc-charter__aside { position: static; }
	.mvc-charter__aside ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mvc-charter__acceptance { max-width: 66ch; }
}

@media (max-width: 620px) {
	.mvc-charter .mvc-page__shell--wide { width: calc(100% - 24px); }
	.mvc-charter__hero { grid-template-columns: 1fr; padding-inline: 20px; }
	.mvc-charter__hero-icon { width: 52px; height: 52px; }
	.mvc-charter__hero h1 { font-size: clamp(2.15rem, 11vw, 3rem); }
	.mvc-charter__principles { grid-template-columns: 1fr; }
	.mvc-charter__principles li { min-height: 78px; padding: 16px 20px; }
	.mvc-charter__principles li + li { border-top: 1px solid var(--mvc-line); border-left: 0; }
	.mvc-charter__layout { margin-top: 36px; }
	.mvc-charter__aside ol { grid-template-columns: 1fr; }
	.mvc-charter__article > header { margin-bottom: 34px; padding-bottom: 28px; }
	.mvc-charter__content h2 { grid-template-columns: 34px minmax(0, 1fr); gap: 10px; margin-top: 38px; }
	.mvc-charter__content h2::before { width: 32px; height: 32px; }
	.mvc-charter__urgent { grid-template-columns: 1fr; padding: 18px; }
	.mvc-charter__actions { display: grid; }
	.mvc-charter-acceptance { grid-template-columns: 1fr; }
	.mvc-charter-acceptance > a { margin-left: 30px; }
}

/* Private messages --------------------------------------------------- */
.mvc-messages { --mvc-section-accent: var(--mvc-profiles-accent); --mvc-section-deep: color-mix(in oklch, var(--mvc-profiles-accent) 74%, black); }
.mvc-messages__page-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.mvc-messages__page-head h1 { margin: 7px 0 8px; font-size: 2.25rem; }
.mvc-messages__page-head p:last-child { max-width: 65ch; margin: 0; color: var(--mvc-muted); }
.mvc-messages__notice { display: block; min-height: 0; margin: 0 0 16px; padding: 12px 14px; text-align: left; }
.mvc-messages__notice[data-state="success"] { border-color: color-mix(in oklch, var(--mvc-hub-accent) 36%, var(--mvc-line)); background: color-mix(in oklch, var(--mvc-surface) 94%, var(--mvc-hub-accent) 6%); color: var(--mvc-text); }
.mvc-messages__notice[data-state="warning"] { border-color: color-mix(in oklch, var(--mvc-orange) 40%, var(--mvc-line)); background: color-mix(in oklch, var(--mvc-surface) 94%, var(--mvc-orange) 6%); color: var(--mvc-text); }
.mvc-messages__notice[data-state="error"] { border-color: color-mix(in oklch, var(--mvc-danger) 38%, var(--mvc-line)); background: color-mix(in oklch, var(--mvc-surface) 94%, var(--mvc-danger) 6%); color: var(--mvc-text); }
.mvc-messages__composer-feedback { display: none; margin: 0; color: var(--mvc-muted); font-size: 0.82rem; }
.mvc-messages__composer-feedback:not(:empty) { display: block; }
.mvc-messages__composer-feedback[data-tone="success"] { color: var(--mvc-green-text); }
.mvc-messages__composer-feedback[data-tone="warning"] { color: color-mix(in oklch, var(--mvc-orange) 72%, var(--mvc-text)); }
.mvc-messages__composer-feedback[data-tone="error"] { color: var(--mvc-danger); }
.mvc-messages__layout { display: grid; height: clamp(560px, calc(100svh - 230px), 760px); grid-template-columns: minmax(280px, 340px) minmax(0, 1fr); overflow: hidden; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); box-shadow: var(--mvc-shadow); }
.mvc-messages__inbox { min-width: 0; min-height: 0; overflow-y: auto; overscroll-behavior: contain; border-right: 1px solid var(--mvc-line); background: var(--mvc-soft); scrollbar-gutter: stable; }
.mvc-messages__inbox > header { position: sticky; z-index: 2; top: 0; display: flex; min-height: 72px; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; border-bottom: 1px solid var(--mvc-line); background: var(--mvc-soft); }
.mvc-messages__inbox h2 { margin: 0; font-size: 1.125rem; }
.mvc-messages__inbox header p { margin: 3px 0 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-messages__inbox > header > span { color: var(--mvc-muted); font-size: 0.875rem; font-weight: 760; }
.mvc-messages__inbox ul { margin: 0; padding: 0; list-style: none; }
.mvc-messages__inbox li + li { border-top: 1px solid var(--mvc-line); }
.mvc-messages__inbox li > a { display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 11px; align-items: center; min-height: 76px; padding: 12px 14px; color: var(--mvc-text); text-decoration: none; }
.mvc-messages__inbox li > a:hover { background: color-mix(in oklch, var(--mvc-surface) 92%, var(--mvc-profiles-accent) 8%); }
.mvc-messages__inbox li > a.is-current { background: color-mix(in oklch, var(--mvc-surface) 88%, var(--mvc-profiles-accent) 12%); }
.mvc-messages__inbox img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.mvc-messages__inbox a > span { display: grid; min-width: 0; gap: 3px; }
.mvc-messages__inbox-name { display: flex; min-width: 0; align-items: baseline; justify-content: space-between; gap: 12px; }
.mvc-messages__inbox-name time { flex: none; color: var(--mvc-muted); font-size: 0.75rem; font-weight: 520; }
.mvc-messages__inbox strong,
.mvc-messages__inbox small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mvc-messages__inbox strong { font-size: 0.9375rem; }
.mvc-messages__inbox small { color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-messages__inbox em { display: grid; min-width: 24px; min-height: 24px; place-items: center; padding-inline: 6px; border-radius: 999px; background: var(--mvc-profiles-accent); color: oklch(98% 0.008 150); font-size: 0.875rem; font-style: normal; font-weight: 800; }
.mvc-messages__inbox-empty { display: grid; justify-items: start; gap: 7px; padding: 28px 18px; color: var(--mvc-muted); }
.mvc-messages__inbox-empty svg { color: var(--mvc-profiles-accent); }
.mvc-messages__inbox-empty strong { color: var(--mvc-text); }
.mvc-messages__inbox-empty p { margin: 0; font-size: 0.875rem; }
.mvc-messages__conversation { display: grid; min-width: 0; min-height: 0; grid-template-rows: auto minmax(0, 1fr) auto; overflow: hidden; }
.mvc-messages__conversation-head { position: relative; z-index: 6; display: grid; grid-template-columns: 36px 48px minmax(0, 1fr) auto; gap: 12px; align-items: center; min-height: 72px; padding: 11px 18px; border-bottom: 1px solid var(--mvc-line); background: var(--mvc-surface); }
.mvc-messages__back { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid var(--mvc-line); border-radius: 4px; color: var(--mvc-text); }
.mvc-messages__back svg { transform: rotate(180deg); }
.mvc-messages__back:hover { border-color: var(--mvc-profiles-accent); background: color-mix(in oklch, var(--mvc-surface) 90%, var(--mvc-profiles-accent) 10%); color: var(--mvc-profiles-accent); }
.mvc-messages__conversation-head > img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; }
.mvc-messages__participant { margin: 0; font-size: 1.125rem; }
.mvc-member-contact { min-width: 0; color: inherit; text-decoration: none; text-underline-offset: 3px; }
.mvc-member-contact--strong { font-weight: 760; }
.mvc-member-contact:hover,
.mvc-member-contact:focus-visible { color: var(--mvc-profiles-accent); text-decoration: underline; }
.mvc-member-contact-set { display: inline-flex; min-width: 0; align-items: center; gap: 8px; }
.mvc-member-contact__message { display: inline-flex; min-width: 36px; min-height: 36px; align-items: center; justify-content: center; gap: 6px; padding: 6px 9px; border: 1px solid var(--mvc-line-strong); border-radius: 5px; background: transparent; color: var(--mvc-muted); font-size: 0.8125rem; font-weight: 720; line-height: 1; text-decoration: none; white-space: nowrap; transition: border-color 160ms ease-out, background-color 160ms ease-out, color 160ms ease-out; }
.mvc-member-contact__message:hover { border-color: var(--mvc-profiles-accent); background: color-mix(in oklch, var(--mvc-surface) 90%, var(--mvc-profiles-accent) 10%); color: var(--mvc-profiles-accent); }
.mvc-member-contact__message:focus-visible { outline: 2px solid var(--mvc-profiles-accent); outline-offset: 2px; }
.mvc-card__author .mvc-member-contact__message-label,
.mvc-active-members .mvc-member-contact__message-label { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.mvc-card__author .mvc-member-contact-set,
.mvc-active-members .mvc-member-contact-set { display: inline-flex; align-items: center; }
.mvc-active-members .mvc-member-contact { color: var(--mvc-text); }
.mvc-author-panel .mvc-member-contact__message { display: none; }
.mvc-messages__conversation-head p { display: flex; align-items: center; gap: 6px; margin: 3px 0 0; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-messages__conversation-head form { margin: 0; }
.mvc-messages__member-actions { position: relative; display: flex; flex-wrap: wrap; justify-content: end; gap: 7px; }
.mvc-messages__member-actions .mvc-tool { min-height: 36px; }
.mvc-messages__member-report { position: relative; }
.mvc-messages__member-report > summary { list-style: none; cursor: pointer; }
.mvc-messages__member-report > summary::-webkit-details-marker { display: none; }
.mvc-messages__member-report > form { position: absolute; z-index: 4; top: calc(100% + 8px); right: 0; display: grid; width: min(360px, 82vw); gap: 11px; padding: 16px; border: 1px solid var(--mvc-line-strong); border-radius: var(--mvc-radius-sm); background: var(--mvc-raised); box-shadow: var(--mvc-shadow); }
.mvc-messages__member-report label { display: grid; gap: 5px; color: var(--mvc-text); font-size: 0.875rem; font-weight: 700; }
.mvc-messages__member-report textarea { min-height: 92px; }
.mvc-messages__member-report .mvc-btn { justify-self: start; }
.mvc-messages__delete { position: relative; }
.mvc-messages__delete > summary { list-style: none; cursor: pointer; }
.mvc-messages__delete > summary::-webkit-details-marker { display: none; }
.mvc-messages__delete > form { position: absolute; z-index: 5; top: calc(100% + 8px); right: 0; display: grid; width: min(340px, 82vw); gap: 10px; padding: 16px; border: 1px solid color-mix(in oklch, var(--mvc-danger) 32%, var(--mvc-line)); border-radius: var(--mvc-radius-sm); background: var(--mvc-raised); box-shadow: var(--mvc-shadow); }
.mvc-messages__delete strong { color: var(--mvc-text); }
.mvc-messages__delete p { margin: 0; color: var(--mvc-muted); font-size: 0.875rem; line-height: 1.5; }
.mvc-messages__delete .mvc-btn { justify-self: start; }
.mvc-messages__stream { min-height: 0; padding: 20px; overflow-y: auto; overscroll-behavior: contain; background: var(--mvc-bg); scrollbar-gutter: stable; }
.mvc-messages__stream ol { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.mvc-messages__stream li { display: grid; justify-items: start; gap: 5px; }
.mvc-messages__stream li.is-mine { justify-items: end; }
.mvc-messages__stream li > div:not(.mvc-message-own-actions) { max-width: min(72ch, 82%); padding: 11px 13px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius); background: var(--mvc-surface); }
.mvc-messages__stream li.is-mine > div:not(.mvc-message-own-actions) { border-color: color-mix(in oklch, var(--mvc-profiles-accent) 28%, var(--mvc-line)); background: color-mix(in oklch, var(--mvc-surface) 89%, var(--mvc-profiles-accent) 11%); }
.mvc-messages__stream li.is-deleted > div:not(.mvc-message-own-actions) { border-style: dashed; background: var(--mvc-soft); color: var(--mvc-muted); font-style: italic; }
.mvc-messages__stream li p { margin: 0; line-height: 1.55; overflow-wrap: anywhere; }
.mvc-messages__stream li p + p { margin-top: 8px; }
.mvc-message-status { display: inline-flex; margin-top: 8px; padding: 3px 7px; border: 1px solid var(--mvc-line-strong); border-radius: 4px; color: var(--mvc-muted); font-size: 0.75rem; font-weight: 760; }
.mvc-message-status[data-state="pending"] { border-color: color-mix(in oklch, var(--mvc-orange) 42%, var(--mvc-line)); color: color-mix(in oklch, var(--mvc-orange) 68%, var(--mvc-text)); }
.mvc-message-status[data-state="rejected"] { border-color: color-mix(in oklch, var(--mvc-danger) 40%, var(--mvc-line)); color: var(--mvc-danger); }
.mvc-message-reason { display: block; max-width: 60ch; margin-top: 6px; color: var(--mvc-muted); line-height: 1.45; }
.mvc-messages__stream time { display: block; margin-top: 5px; color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-messages__start { max-width: 56ch; margin: auto; padding: 40px 20px; color: var(--mvc-muted); text-align: center; }
.mvc-messages__start strong { color: var(--mvc-text); font-size: 1.0625rem; }
.mvc-messages__start p { margin: 7px 0 0; }
.mvc-messages__report { max-width: min(520px, 82%); color: var(--mvc-muted); font-size: 0.875rem; }
.mvc-messages__report summary { cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.mvc-messages__report form { display: grid; gap: 10px; margin-top: 9px; padding: 13px; border: 1px solid var(--mvc-line); border-radius: var(--mvc-radius-sm); background: var(--mvc-surface); }
.mvc-messages__report label { display: grid; gap: 5px; }
.mvc-messages__report .mvc-btn { justify-self: start; }
.mvc-message-own-actions { position: relative; display: flex; max-width: min(72ch, 82%); align-items: start; justify-content: end; gap: 12px; color: var(--mvc-muted); font-size: 0.8125rem; }
.mvc-message-own-actions summary { min-height: 32px; padding: 6px 0; list-style: none; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.mvc-message-own-actions summary::-webkit-details-marker { display: none; }
.mvc-message-own-actions details[open] > summary { color: var(--mvc-profiles-accent); }
.mvc-message-own-actions form { position: absolute; z-index: 4; right: 0; bottom: 34px; display: grid; width: min(460px, 78vw); gap: 9px; padding: 12px; border: 1px solid var(--mvc-line-strong); border-radius: 6px; background: var(--mvc-raised); box-shadow: var(--mvc-shadow); text-align: left; }
.mvc-message-own-actions textarea { width: 100%; min-height: 82px; max-height: 180px; resize: vertical; border-color: var(--mvc-line-strong); background: var(--mvc-surface); color: var(--mvc-text); }
.mvc-message-own-actions form > div { display: flex; align-items: center; gap: 8px; }
.mvc-message-own-actions form p { margin: 0; color: var(--mvc-muted); font-size: 0.8125rem; line-height: 1.45; }
.mvc-message-own-actions [data-mvc-message-action-feedback]:empty { display: none; }
.mvc-message-delete form { width: min(360px, 78vw); }
.mvc-message-delete summary { color: var(--mvc-danger); }
.mvc-messages__composer { display: grid; gap: 7px; padding: 10px 12px 11px; border-top: 1px solid var(--mvc-line); background: var(--mvc-form-message-bg); }
.mvc-messages__composer-head,
.mvc-messages__composer-meta { display: flex; min-width: 0; align-items: center; justify-content: space-between; gap: 12px; }
.mvc-messages__composer-head label { color: var(--mvc-text); font-size: 0.875rem; font-weight: 740; }
.mvc-messages__composer-head span { flex: none; color: var(--mvc-muted); font-size: 0.75rem; font-variant-numeric: tabular-nums; }
.mvc-messages__composer-field { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: end; }
.mvc-messages__composer-field textarea { width: 100%; height: 46px; min-height: 46px; max-height: 124px; padding: 11px 13px; overflow-y: auto; resize: none; border-color: var(--mvc-line-strong); background: var(--mvc-surface); line-height: 1.45; }
.mvc-messages__composer-field textarea:hover { border-color: color-mix(in oklch, var(--mvc-profiles-accent) 45%, var(--mvc-line-strong)); }
.mvc-messages__composer-field textarea:focus { border-color: var(--mvc-profiles-accent); box-shadow: 0 0 0 2px color-mix(in oklch, var(--mvc-profiles-accent) 20%, transparent); }
.mvc-messages__composer-field .mvc-btn { min-width: 112px; min-height: 46px; align-self: end; }
.mvc-messages__composer-meta { min-height: 18px; align-items: start; }
.mvc-messages__composer-meta small { max-width: 58ch; color: var(--mvc-muted); font-size: 0.75rem; line-height: 1.35; }
.mvc-messages__composer-meta .mvc-messages__composer-feedback { margin-left: auto; text-align: right; }
.mvc-messages__welcome { display: grid; max-width: 58ch; place-items: center; align-self: center; justify-self: center; padding: 40px 24px; color: var(--mvc-muted); text-align: center; }
.mvc-messages__welcome > span { display: grid; width: 58px; height: 58px; place-items: center; margin-bottom: 16px; border-radius: 50%; background: color-mix(in oklch, var(--mvc-surface) 84%, var(--mvc-profiles-accent) 16%); color: var(--mvc-profiles-accent); }
.mvc-messages__welcome h2 { margin-bottom: 8px; font-size: 1.4rem; }
.mvc-messages__welcome p { margin: 0; }
.mvc-messages__loader { display: grid; min-height: 52px; place-items: center; padding: 10px 14px; border-top: 1px solid var(--mvc-line); color: var(--mvc-muted); font-size: 0.875rem; text-align: center; }
.mvc-messages__loader a { color: var(--mvc-green-text); font-weight: 720; text-decoration: none; }
.mvc-messages__loader a:hover { text-decoration: underline; text-underline-offset: 3px; }
.mvc-messages__loader[aria-busy="true"] a { display: none; }
.mvc-messages__loader[aria-busy="true"] span { display: inline; }
.mvc-messages__loader--older { min-height: 42px; margin: -20px -20px 18px; border-top: 0; border-bottom: 1px solid var(--mvc-line); background: var(--mvc-soft); }

@media (max-width: 900px) {
	.mvc-messages__page-head { align-items: start; flex-direction: column; }
}

@media (max-width: 767px) {
	.mvc-messages__layout { grid-template-columns: 1fr; }
	.mvc-messages__layout--inbox { display: block; height: auto; min-height: 0; overflow: visible; }
	.mvc-messages__layout--inbox .mvc-messages__inbox { max-height: none; overflow: visible; border-right: 0; }
	.mvc-messages__layout--inbox .mvc-messages__welcome { display: none; }
	.mvc-messages--thread .mvc-messages__page-head { display: none; }
	.mvc-messages__layout--thread { height: calc(100svh - 104px); min-height: 480px; }
	.mvc-messages__layout--thread .mvc-messages__inbox { display: none; }
	.mvc-messages__conversation { min-height: 0; height: 100%; }
	.mvc-message-own-actions summary { display: inline-flex; min-height: 44px; align-items: center; }
	.mvc-member-contact__message { min-width: 44px; min-height: 44px; }
}

@media (max-width: 560px) {
	.mvc-messages__page-head h1 { font-size: 1.9rem; }
	.mvc-messages__layout { width: calc(100% + 2px); margin-inline: -1px; border-radius: var(--mvc-radius-sm); }
	.mvc-messages__conversation-head { grid-template-columns: 36px 42px minmax(0, 1fr); padding-inline: 12px; }
	.mvc-messages__conversation-head > img { width: 42px; height: 42px; }
	.mvc-messages__member-actions { grid-column: 1 / -1; justify-content: start; padding-left: 48px; }
	.mvc-messages__inbox-name time { display: none; }
	.mvc-messages__delete > form { right: auto; left: 0; }
	.mvc-messages__member-report > form { right: auto; left: 0; }
	.mvc-messages__stream { padding: 16px 12px; }
	.mvc-messages__stream li > div:not(.mvc-message-own-actions),
	.mvc-messages__report { max-width: 92%; }
	.mvc-message-own-actions { max-width: 92%; }
	.mvc-message-own-actions form { position: fixed; z-index: 100; right: 12px; bottom: 12px; left: 12px; width: auto; max-height: calc(100svh - 24px); overflow-y: auto; }
	.mvc-messages__composer { padding: 10px; }
	.mvc-messages__composer-meta small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	.mvc-messages__composer-field .mvc-btn { min-width: 48px; padding-inline: 14px; }
	.mvc-messages__composer-field .mvc-btn span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.mvc-page *,
	.mvc-page *::before,
	.mvc-page *::after { scroll-behavior: auto !important; transition: none !important; }
}
