/* Only enqueued on Debunk. The existing mega-footer retains its own styling. */
body.vp-debunk-page { background: #faf8f3; color: #182d36; }
body.vp-debunk-page .db-shell { width: auto; max-width: 1120px; margin: auto; padding: 0 24px 36px; background: #fff; border-radius: 0 0 6px 6px; }
body.vp-debunk-page #wrapper { margin: 0; padding: 0; background: transparent; box-shadow: none; }
body.vp-debunk-page .db-shell-inner, body.vp-debunk-page #main { float: none; width: 100%; margin: 0; padding: 0; background: transparent; }
body.vp-debunk-page .db-shell-inner > .row-fluid { margin: 0; }
body.vp-debunk-page #footer { margin-bottom: 0; }
body.vp-debunk-page #colophon { margin: 0; }
body.vp-debunk-page .footer_wrap { max-width: 1168px; margin: 35px auto 0; background: transparent; }
body.vp-debunk-page .footer_wrap > .container { width: auto; }
body.vp-debunk-page .footer_wrap .inner_wrap { padding: 0 24px; }
.db-brand { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 30px 0; border-bottom: 1px solid #d7dedb; }
.db-brand a { display: inline-block; background: white; border-radius: 5px; }
.db-brand img { display: block; width: 270px; height: auto; max-width: 100%; }
.db-brand .db-home-link { display: inline-flex; align-items: center; gap: 8px; padding: 12px 0; color: #626d70; font: 400 14px/1.4 Arial, sans-serif; text-decoration: none; white-space: nowrap; }
.db-brand .db-home-link:hover { color: #226a60; text-decoration: underline; }
.db-scope { font-family: Arial, sans-serif; color: #182d36; line-height: 1.6; text-align: left; }
.db-scope *, .db-brand * { box-sizing: border-box; }
.db-scope a { color: #226a60; }
.db-scope button, .db-scope input { font-family: inherit; font-size: 16px; }
.db-scope button { cursor: pointer; }
.db-scope a:focus-visible, .db-scope button:focus-visible, .db-scope input:focus-visible, .db-scope summary:focus-visible, .db-brand a:focus-visible { outline: 3px solid #226a60; outline-offset: 4px; }
.db-sr { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.db-skip { position: absolute; left: -9999px; }
.db-skip:focus { left: 16px; top: 16px; z-index: 999999; background: white; padding: 12px; }
.db-index { padding: 36px 0 50px; }
.db-scope .db-eyebrow { font: 700 12px/1.5 Arial, sans-serif; color: #ed1c24; letter-spacing: 1.5px; text-transform: uppercase; margin: 0; }
.db-index > h1 { font: 400 clamp(42px, 6vw, 68px)/1.1 Georgia, serif; color: #226a60; letter-spacing: -2px; margin: 16px 0 20px; padding: 0; background: none; }
.db-index .db-intro { font: 400 21px/1.55 Georgia, serif; max-width: 620px; margin: 0 0 28px; }
.db-search { display: flex; gap: 6px; padding: 6px; background: white; border: 1px solid #d7dedb; border-radius: 6px; margin: 0; }
.db-search input[type=search] { flex: 1; min-width: 0; height: auto; border: 0; box-shadow: none; padding: 12px; margin: 0; background: transparent; color: #182d36; }
.db-search button { background: #100e19; color: white; border: 0; border-radius: 4px; padding: 12px 18px; min-height: 46px; }
.db-themes { display: flex; gap: 8px; flex-wrap: wrap; margin: 16px 0 24px; }
.db-themes a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 15px; border: 1px solid #d7dedb; border-radius: 24px; color: #100e19; text-decoration: none; font-size: 14px; }
.db-themes a:hover, .db-themes a:focus-visible { border-color: #100e19; }
.db-themes a[aria-current=page] { background: #100e19; color: white; border-color: #100e19; }
.db-results-count { font-size: 13px; color: #626d70; padding-bottom: 13px; border-bottom: 1px solid #d7dedb; margin: 0 0 22px; }
.db-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.db-scope a.db-card { display: flex; flex-direction: column; min-width: 0; min-height: 290px; border: 1px solid #d7dedb; border-radius: 6px; padding: 24px 22px 0; color: #182d36; background: white; text-decoration: none; transition: border-color .15s; }
.db-scope a.db-card:hover { border-color: #100e19; }
.db-card h2 { font: 400 26px/1.25 Georgia, serif; letter-spacing: -.4px; color: #182d36; margin: 16px 0 26px; padding: 0; overflow-wrap: anywhere; }
.db-origin { display: flex; align-items: center; gap: 12px; font-size: 13px; line-height: 1.5; color: #626d70; margin: 0 0 18px; }
.db-card .db-origin { margin-top: auto; }
.db-portrait { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; }
.db-card-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid #d7dedb; padding: 15px 0; font-size: 13px; }
.db-verdict { display: inline-flex; align-items: center; gap: 8px; font: 700 14px/1.4 Arial, sans-serif; color: #626d70; }
.db-verdict::before { content: ''; width: 9px; height: 9px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 50%, transparent); flex: 0 0 auto; }
.db-verdict--faux { color: #a53236; }
.db-verdict--trompeur, .db-verdict--a-nuancer, .db-verdict--non-etaye { color: #9c530f; }
.db-verdict--vrai { color: #226a60; }
.db-empty { padding: 40px 10px 60px; text-align: center; }
.db-empty h2 { font: 400 28px/1.3 Georgia, serif; }
.db-pagination ul { list-style: none; display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; margin: 28px 0 0; padding: 0; }
.db-pagination .page-numbers:not(ul) { display: inline-block; padding: 10px 16px; border: 1px solid #d7dedb; border-radius: 4px; }
.db-pagination .current { background: #182d36; color: white; }
.db-single { max-width: 720px; margin: auto; padding: 30px 0 50px; }
.db-back { display: inline-block; margin-bottom: 28px; padding: 8px 0; }
.db-article > h1, .db-article > h2 { font: 400 clamp(29px, 4vw, 43px)/1.18 Georgia, serif; color: #182d36; letter-spacing: -.7px; background: none; padding: 0; margin: 16px 0 26px; overflow-wrap: anywhere; }
.db-article .db-answer { padding: 23px; background: #eaf1ee; border-radius: 5px; margin-bottom: 30px; }
.db-article .db-answer p { font: 400 21px/1.55 Georgia, serif; color: #182d36; margin: 12px 0 0; }
.db-article section > h2 { font: 700 17px/1.4 Arial, sans-serif; color: #182d36; margin: 28px 0 16px; }
.db-original blockquote { border-left: 3px solid #d7dedb; padding: 4px 0 4px 18px; font: 400 19px/1.6 Georgia, serif; color: #626d70; margin: 18px 0; }
/* Keep the legacy theme's quote images away from Debunk's plain-text quote. */
.db-article .db-original blockquote { position: relative; background: #f7f9f8; border: 0; border-left: 3px solid #d7dedb; padding: 12px 18px 12px 46px; margin: 18px 0; overflow-wrap: anywhere; }
.db-article .db-original blockquote::before { content: "«"; position: absolute; top: 8px; left: 12px; font: 400 30px/1.3 Georgia, serif; color: #626d70; }
.db-article .db-original blockquote::after { content: none; }
.db-article .db-original blockquote p { background: none; padding: 0; font: inherit; color: inherit; margin: 0; }
.db-context { font-size: 13px; color: #626d70; }
.db-analysis { font: 400 19px/1.7 Georgia, serif; overflow-wrap: anywhere; }
.db-analysis p { font: inherit; margin: 0 0 20px; }
/* Lists belong to the analysis typography, including nested lists. */
.db-article .db-analysis ul, .db-article .db-analysis ol { font: inherit; color: inherit; margin: 0 0 20px; padding: 0 0 0 1.5em; list-style-position: outside; }
.db-article .db-analysis ul { list-style-type: disc; }
.db-article .db-analysis ol { list-style-type: decimal; }
.db-article .db-analysis li { font: inherit; font-size: inherit !important; color: inherit; margin: 0 0 .4em; padding: 0; }
.db-article .db-analysis li > ul, .db-article .db-analysis li > ol { margin: .4em 0 0; }
.db-article .db-analysis li > p { margin: 0 0 .4em; }
.db-analysis img, .db-analysis video, .db-analysis iframe { max-width: 100%; }
.db-analysis img { height: auto; }
.db-analysis h2, .db-analysis h3 { font-family: Arial, sans-serif; line-height: 1.3; }
.db-sources { border-block: 1px solid #d7dedb; padding: 18px 0; margin: 28px 0; }
.db-sources summary { font-size: 16px; cursor: pointer; min-height: 28px; }
.db-sources li { font-size: 14px; margin: 16px 0; overflow-wrap: anywhere; }
.db-sources ol { margin: 14px 0 0 22px; }
.db-byline { border-top: 1px solid #d7dedb; padding-top: 18px; font: 400 13px/1.6 Arial, sans-serif; color: #626d70; }
.db-permalink { display: inline-block; padding: 8px 0; font-size: 14px; }
html.db-modal-open { overflow: hidden; }
.db-dialog { color: #182d36; background: white; border: 0; border-radius: 12px; padding: 0; width: min(720px, calc(100% - 40px)); max-width: none; max-height: calc(100dvh - 48px); margin: auto; overflow: auto; overscroll-behavior: contain; box-shadow: 0 20px 70px #0003; }
.db-dialog::backdrop { background: #182d3699; }
.db-dialog-toolbar { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 12px; background: white; padding: 15px 26px; border-bottom: 1px solid #d7dedb; font: 400 12px/1.4 Arial, sans-serif; }
.db-close { border: 1px solid #d7dedb; background: white; color: #182d36; border-radius: 4px; min-height: 44px; padding: 8px 12px; }
.db-dialog-content { padding: 26px 32px 32px; }
@media(max-width: 900px) { .db-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media(max-width: 767px) {
    .db-brand { justify-content: center; }
    .db-brand .db-home-link { display: none; }
}
@media(max-width: 560px) {
    body.vp-debunk-page .db-shell { padding: 0 18px 36px; }
    body.vp-debunk-page .footer_wrap .inner_wrap { padding: 0 18px; }
    .db-brand { padding: 24px 0; }
    .db-brand img { width: 245px; }
    .db-grid { grid-template-columns: 1fr; gap: 16px; }
    .db-card h2 { font-size: 25px; }
    .db-scope a.db-card { min-height: 235px; }
    .db-index { padding-top: 28px; }
    .db-search input[type=search] { padding: 10px 5px; }
    .db-search button { font-size: 14px; padding: 10px; }
    .db-dialog { width: calc(100% - 12px); max-height: calc(100dvh - 12px); border-radius: 8px; }
    .db-dialog-content { padding: 24px 19px; }
    .db-dialog-toolbar { padding: 10px 15px; }
    .db-article .db-answer { padding: 19px; }
}
@media(prefers-reduced-motion: reduce) { .db-scope a.db-card { transition: none; } }
