/* Blog components, scoped to article content and named editor styles. */
.article-main { min-width: 0; }
.article-main__body { overflow-wrap: anywhere; }
.article-main__body.entry-content > :first-child { margin-top: 0; }
.article-main__body.entry-content p { line-height: 1.8; }
.article-main__body.entry-content li { margin-block: 10px; line-height: 1.7; padding-left: 4px; }
.article-main__body.entry-content :is(h2,h3) { scroll-margin-top: 110px; }
.article-main__body.entry-content .wp-block-table { max-width: 100%; overflow-x: auto; }
.article-main__body.entry-content th { text-align: left; }
.article-main__body.entry-content td { vertical-align: top; }
.article-main__body.entry-content :is(figure,figcaption) { max-width: 100%; }
.article-main__body.entry-content figcaption { color: #526175; font-size: .9rem; line-height: 1.6; margin-top: 12px; text-align: center; }
.article-main__body.entry-content :not(pre) > code { background: #edf2f8; border-radius: 4px; padding: .12em .3em; font-size: .9em; color: #143d6b; }
.is-style-mitp-callout { border-left: 4px solid #0867c5; padding: 24px; background: #eef5fd; border-radius: 0 14px 14px 0; }
.article-main__body :is(.mitp-faq,.wp-block-details), .is-style-mitp-faq {
 border: 1px solid #d8e2ee; border-radius: 14px; background: #fff; margin-block: 12px; overflow: hidden;
}
.article-main__body :is(.mitp-faq,.wp-block-details) > summary, .is-style-mitp-faq > summary {
 cursor: pointer; padding: 20px 48px 20px 20px; font-weight: 600; color: #003274; position: relative; list-style: none; line-height: 1.5;
}
.article-main__body details > summary::-webkit-details-marker, .is-style-mitp-faq > summary::-webkit-details-marker { display: none; }
.article-main__body details > summary::after, .is-style-mitp-faq > summary::after { content: '+'; position: absolute; right: 20px; top: 18px; font-size: 1.4rem; }
.article-main__body details[open] > summary::after, .is-style-mitp-faq[open] > summary::after { content: '\2212'; }
.article-main__body.entry-content summary :is(h3,h4) { display: inline; margin: 0; font: inherit; }
.article-main__body .mitp-faq__answer { padding: 0 20px 20px; }
.article-main__body .mitp-faq__answer > :first-child { margin-top: 0; }
.article-main__body .mitp-faq__answer > * + * { margin-top: 16px; }
.article-main__body .wp-block-details > :not(summary), .is-style-mitp-faq > :not(summary) { margin: 0 20px 20px; }
.article-main__body summary:focus-visible { outline: 3px solid #0b69cb; outline-offset: -4px; border-radius: 12px; }
.article-main__body.entry-content :is(ul,ol).is-style-mitp-checklist, .editor-styles-wrapper .is-style-mitp-checklist { margin-left: 0; padding-left: 0; list-style: none; }
.article-main__body.entry-content .is-style-mitp-checklist > li, .editor-styles-wrapper .is-style-mitp-checklist > li { padding: 16px; border: 1px solid #d8e2ee; border-radius: 12px; background: #f7faff; }
.article-main__body .is-style-mitp-checklist[data-mitp-checklist] > li { display: grid; grid-template-columns: 24px minmax(0,1fr); gap: 12px; align-items: start; }
.is-style-mitp-checklist input[type=checkbox] { width: 22px; height: 22px; margin-top: 3px; accent-color: #075eae; cursor: pointer; appearance: auto; }
.article-main__body .is-style-mitp-checklist > li.is-checked { background: #eff8f3; border-color: #6d9d83; }
.mitp-checklist-text { cursor: pointer; }
.mitp-checklist-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; font-size: .9rem; }
.mitp-checklist-toolbar button { border: 1px solid #b7cbe2; color: #003274; background: white; border-radius: 8px; padding: 8px 12px; cursor: pointer; }
.article-main__body pre, .editor-styles-wrapper pre.wp-block-code { max-width: 100%; overflow-x: auto; white-space: pre; overflow-wrap: normal; tab-size: 4; padding: 22px; background: #102238; color: #edf4ff; border-radius: 12px; font: .9rem/1.7 ui-monospace, SFMono-Regular, Consolas, monospace; }
.article-main__body pre code { font: inherit; color: inherit; background: transparent; white-space: pre; display: block; padding: 0; overflow-wrap: normal; }
.mitp-code { max-width: 100%; min-width: 0; border-radius: 12px; overflow: hidden; background: #102238; }
.mitp-code__bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px; color: #d7e7fc; background: #183450; font: 500 .8rem/1.4 ui-sans-serif, sans-serif; }
.mitp-code__bar button { padding: 7px 12px; border: 1px solid #7893b2; border-radius: 6px; color: #fff; background: transparent; cursor: pointer; }
.article-main__body .mitp-code pre { margin: 0; border: 0; border-radius: 0; }
.mitp-code .token.comment, .mitp-code .token.prolog, .mitp-code .token.doctype { color: #a6b7ce; }
.mitp-code .token.keyword, .mitp-code .token.boolean { color: #cfb5ff; }
.mitp-code .token.string, .mitp-code .token.attr-value { color: #a9e5b3; }
.mitp-code .token.function, .mitp-code .token.class-name { color: #ffe199; }
.mitp-code .token.number, .mitp-code .token.operator { color: #ffbea0; }
.mitp-code .token.property, .mitp-code .token.tag, .mitp-code .token.variable { color: #98d7ff; }
.mitp-related h2 { margin-bottom: 28px; }
.mitp-blog-back { display: inline-block; margin-top: 24px; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.mitp-blog-cta { background: #f0f5fb; }
.mitp-blog-cta__panel { display: grid; grid-template-columns: minmax(0,1.8fr) minmax(220px,1fr); gap: 48px; padding: clamp(26px,5vw,64px); border-radius: 24px; color: #fff; background: #003274; }
.mitp-blog-cta__copy { min-width: 0; }
.mitp-blog-cta__copy .section-label { color: #c5dcff; }
.mitp-blog-cta__copy h2 { color: #fff; font-size: clamp(1.8rem,3vw,2.7rem); line-height: 1.15; margin-bottom: 20px; }
.mitp-blog-cta__copy p { color: #e1ebfb; line-height: 1.75; }
.mitp-blog-cta__copy .button-row { margin-top: 28px; }
.mitp-blog-cta .theme-button { color: #003274; background: #fff; border: 1px solid #fff; box-shadow: none; }
.mitp-blog-cta .theme-button:hover { color: #003274; background: #e2efff; border-color: #e2efff; }
.mitp-blog-cta .theme-button--hero-outline { color: #fff; background: transparent; border-color: #a5bfdf; }
.mitp-blog-cta .theme-button--hero-outline:hover { color: #003274; background: #fff; border-color: #fff; }
.mitp-blog-cta__copy a:not(.theme-button) { color: #fff; text-decoration: underline; }
.mitp-blog-cta__links { align-self: center; min-width: 0; }
.mitp-blog-cta__links p { color: #c5dcff; font-weight: 600; margin-bottom: 12px; }
.mitp-blog-cta__links a { color: #fff; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px 0; border-bottom: 1px solid #53739b; text-decoration: none; }
.mitp-blog-cta__links a:hover { text-decoration: underline; text-underline-offset: 4px; }
.mitp-blog-cta :is(a,button):focus-visible { outline: 3px solid #ffd980; outline-offset: 5px; }
@media (max-width: 767px) {
 .mitp-blog-cta__panel { grid-template-columns: minmax(0,1fr); gap: 28px; }
 .mitp-blog-cta .button-row { flex-direction: column; align-items: stretch; }
 .mitp-blog-cta .theme-button { white-space: normal; text-align: center; }
 .article-main__body.entry-content table { min-width: 560px; }
 .article-main__body.entry-content > table { display: block; min-width: 0; overflow-x: auto; }
}
@media print {
 .mitp-checklist-toolbar button, .mitp-code__bar button, .mitp-blog-cta { display: none; }
 .article-main__body details::details-content { display: block; }
 .article-main__body pre { white-space: pre-wrap; overflow-wrap: anywhere; }
}
