/* MKL Provenance – front-end styles. Neutral so they sit inside any theme. */
.mkl-impact { margin: 1.25em 0; }
.mkl-artist { margin: 0 0 .75em; font-size: 1.05em; }
.mkl-pledge { border: 1px solid #b9d6cf; background: #f2f8f6; border-radius: 8px; padding: 1em 1.1em; margin-bottom: 1em; }
.mkl-pledge p { margin: .35em 0; }
.mkl-pledge-label { display: inline-block; font-size: .72em; letter-spacing: .08em; text-transform: uppercase; font-weight: 600; color: #22605a; }
.mkl-badge { display: inline-block; font-size: .8em; padding: .15em .6em; border-radius: 99px; background: #eee; color: #555; }
.mkl-badge-ok { background: #d8efe5; color: #1a6b48; }
.mkl-facts { margin: 0 0 1em 1.1em; font-size: .92em; color: #444; }
.mkl-loop-artist, .mkl-loop-pledge { display: block; font-size: .85em; color: #666; }
.mkl-loop-pledge { color: #22605a; font-weight: 600; }
.mkl-checkout-fields { margin-top: 1.5em; }
.mkl-consent { font-size: .92em; }
.mkl-cert-table small { color: #666; }
.mkl-cert-table .button { margin: 2px 4px 2px 0; }
.mkl-note { font-size: .88em; color: #666; }

.mkl-verify { max-width: 720px; }
.mkl-verify-form label { font-weight: 600; display: block; margin-bottom: .3em; }
.mkl-verify .mkl-row { display: flex; gap: .5em; }
.mkl-verify .mkl-row input { flex: 1; min-width: 0; }
.mkl-drop { border: 2px dashed #c9c9c9; border-radius: 8px; padding: 1em; margin: 1.25em 0; }
.mkl-drop.is-over { border-color: #22605a; background: #f2f8f6; }
.mkl-pick { text-decoration: underline; cursor: pointer; }
.mkl-drop-result.ok { color: #1a6b48; font-weight: 600; }
.mkl-drop-result.bad { color: #b32d2e; word-break: break-all; }
.mkl-result { border-radius: 8px; padding: 1em 1.2em; margin-top: 1em; }
.mkl-good { border: 1px solid #b9d6cf; background: #f2f8f6; }
.mkl-bad { border: 1px solid #efc2c2; background: #fdf3f3; }
.mkl-result dl { display: grid; grid-template-columns: max-content 1fr; gap: .35em 1em; margin: 0; }
.mkl-result dt { font-weight: 600; }
.mkl-result dd { margin: 0; word-break: break-all; }
@media (max-width: 600px) { .mkl-result dl { grid-template-columns: 1fr; } .mkl-result dd { margin-bottom: .5em; } }
.mkl-split { width: 100%; margin: .6em 0 .2em; font-size: .9em; border-collapse: collapse; }
.mkl-split th { text-align: left; font-weight: 400; padding: .2em 0; }
.mkl-split td { text-align: right; padding: .2em 0 .2em .8em; white-space: nowrap; }
.mkl-split tr + tr th, .mkl-split tr + tr td { border-top: 1px solid #d6e6e1; }

/* Impact page [mkl_impact] and homepage figures [mkl_impact_stats] */
.mkl-projects { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1.5em; margin: 1.5em 0; }
.mkl-project { border: 1px solid #e6dfd4; border-radius: 10px; padding: 1.4em; background: #fff; }
.mkl-project h2 { margin: 0 0 .3em; font-size: 1.4em; }
.mkl-project-desc { color: #6b655e; margin: 0; }
.mkl-kpis, .mkl-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: .75em; margin: 1.1em 0; }
.mkl-kpis b, .mkl-stats b { display: block; font-size: 1.7em; font-weight: 400; line-height: 1.2; }
.mkl-kpis span, .mkl-stats span { font-size: .8em; color: #6b655e; }
.mkl-stats { max-width: 520px; }
.mkl-bar { height: 8px; background: #efe9df; border-radius: 99px; overflow: hidden; }
.mkl-bar i { display: block; height: 100%; background: #22605a; }

/* Site kit: draft notes on legal pages, missing business data */
.mkl-draft-note { border: 2px dashed #b3263a; background: #fdf3f3; border-radius: 8px; padding: .4em 1.2em; margin-bottom: 1.5em; }
mark.mkl-missing { background: #fff3c4; color: #7a5a00; padding: 0 .2em; }

/* Verification form: consistent with the theme's inputs and buttons */
.mkl-verify input[type="text"] { font: inherit; padding: .65em .85em; border: 1px solid #cfc7bb; border-radius: 6px; background: #fff; color: inherit; }
.mkl-verify button { font: inherit; padding: .65em 1.4em; border: 0; border-radius: 99px; background: #1d1b19; color: #fbf8f3; cursor: pointer; }
.mkl-verify button:hover { background: #b3263a; }
.mkl-verify-form { margin-bottom: 1em; }
.mkl-result h3 { margin-top: 0; }
.mkl-result code, .mkl-result dd code { font-size: .78em; word-break: break-all; }
.mkl-cert-table .button { display: inline-block; margin: 2px 6px 2px 0; }
