/* Shortcode output. Uses the theme's colour tokens when present, with sensible fallbacks. */
.mlsd-stack { display: grid; gap: 20px; }
.mlsd-grid { display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.mlsd-card {
	background: var(--c-white, #fff);
	border: 1px solid var(--c-line, #e3e8ef);
	border-radius: var(--r-card, 16px);
	box-shadow: var(--shadow-card, 0 1px 2px rgba(23, 50, 77, .04), 0 8px 24px rgba(23, 50, 77, .06));
	padding: 28px;
	scroll-margin-top: calc(var(--header-h, 88px) + 16px);
}
.mlsd-card h2, .mlsd-steps h2 { font-family: var(--f-head, inherit); font-size: 1.25rem; line-height: 1.3; margin: 0 0 12px; color: var(--c-navy, #17324d); }
.mlsd-card p { margin: 0 0 12px; color: var(--c-muted, #5b6b7c); }
.mlsd-card ul { margin: 0; padding-left: 1.2em; color: var(--c-text, #17324d); }
.mlsd-card li { margin: 0 0 6px; }
.mlsd-tag { display: inline-block; font-size: .8125rem; font-weight: 600; color: var(--c-primary, #292974); background: var(--c-primary-soft, #eceefa); border-radius: 999px; padding: 4px 12px; margin: 0 0 12px; }
.mlsd-btn {
	display: inline-flex; align-items: center; min-height: 44px; padding: 0 22px;
	border-radius: 999px; background: var(--c-primary, #292974); color: #fff; font-weight: 600; text-decoration: none;
}
.mlsd-btn:hover { background: var(--c-primary-hover, #1f1f5c); color: #fff; }
.mlsd-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.mlsd-list a { display: inline-block; padding: 8px 0; }
.mlsd-inline { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.mlsd-steps { counter-reset: step; list-style: none; margin: 0; padding: 0; display: grid; gap: 20px; }
.mlsd-steps li { counter-increment: step; position: relative; padding: 0 0 0 56px; }
.mlsd-steps li::before {
	content: counter(step); position: absolute; left: 0; top: 0; width: 40px; height: 40px; border-radius: 50%;
	display: grid; place-items: center; font-weight: 700; color: #197a36; background: var(--c-accent-soft, #e4f5e9);
}
.mlsd-legal p { margin: 0 0 8px; }
.mlsd-points { margin: 0 0 16px; padding-left: 1.2em; color: var(--c-text, #17324d); }
.mlsd-points li { margin: 0 0 6px; }
.mlsd-note { margin: 16px 0 0; padding: 14px 16px; border-radius: var(--r-sm, 8px); background: var(--c-surface, #f7f9fc); color: var(--c-muted, #5b6b7c); }
.mlsd-note strong { display: block; color: var(--c-navy, #17324d); margin-bottom: 4px; }
.mlsd-block { margin: 0 0 32px; max-width: 760px; }
.mlsd-block h2 { font-family: var(--f-head, inherit); font-size: 1.5rem; line-height: 1.25; margin: 0 0 12px; color: var(--c-navy, #17324d); }
.mlsd-block p { color: var(--c-muted, #5b6b7c); line-height: 1.7; margin: 0 0 14px; }
.mlsd-embed { margin: 0 0 32px; }
.mlsd-embed iframe { display: block; width: 100%; border: 1px solid var(--c-line, #e3e8ef); border-radius: var(--r-card, 16px); background: #fff; }
.mlsd-block, .mlsd-card { overflow-wrap: anywhere; }
.mlsd-block a, .mlsd-card a:not(.mlsd-btn) { padding-block: 3px; }
