/* Muttley Events – 5K registration page + checkout donation box */
.mev-runner { margin: 0 0 1.5em; }
.mev-runner [hidden] { display: none !important; }
.mev-runner h3 { margin: 0 0 .6em; }
.mev-runner h4 { margin: 1.4em 0 .5em; padding-top: .8em; border-top: 1px solid rgba(0,0,0,.1); }
.mev-runner p { margin: 0 0 1em; }
.mev-runner label { display: block; font-weight: 600; margin-bottom: .25em; }
.mev-runner input[type=text], .mev-runner input[type=email], .mev-runner input[type=tel],
.mev-runner input[type=date], .mev-runner select { width: 100%; box-sizing: border-box; }
.mev-runner small { display: block; margin-top: .3em; opacity: .75; font-size: .85em; line-height: 1.4; }
.mev-runner .required { color: #b32d2e; text-decoration: none; border: 0; margin-left: 2px; }
.mev-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1em; }
@media (max-width: 600px) { .mev-row { grid-template-columns: 1fr; } }
.mev-radios > span { display: block; font-weight: 600; margin-bottom: .25em; }
.mev-radios label { display: inline-block; font-weight: 400; margin-right: 1.5em; }
.mev-check label { font-weight: 400; display: flex; gap: .5em; align-items: flex-start; }
.mev-check input { margin-top: .3em; flex: none; }
.mev-waiver { max-height: 260px; overflow: auto; border: 1px solid #ccc; border-radius: 6px; padding: 12px 14px; background: #fafafa; font-size: 14px; line-height: 1.5; margin-bottom: 1em; }
.mev-waiver p { margin: 0 0 .8em; }
.mev-extra { width: auto; border: 0; margin: 0 0 .4em; }
.mev-extra td { padding: 0 .5em .5em 0; border: 0; }
.mev-extra input[type=number] { width: 5em; }
.mev-extra-add { background: none; border: 0; padding: 0; color: inherit; text-decoration: underline; cursor: pointer; }
.mev-closed { font-weight: 600; padding: .8em 1em; background: #fff4e5; border-left: 4px solid #f0a000; }

.mev-donation { border: 2px solid #f0a000; border-radius: 8px; padding: 1em 1.2em; margin: 0 0 1.5em; background: #fffaf0; }
.mev-donation h3 { margin: 0 0 .3em; }
.mev-donation p { margin: 0 0 .8em; }
.mev-donation-buttons { display: flex; flex-wrap: wrap; gap: .5em; margin-bottom: .8em; }
.mev-donation-buttons .button { margin: 0; }
.mev-donation-buttons .button.is-selected { outline: 3px solid #f0a000; outline-offset: 1px; }
.mev-donation-other label { display: block; font-weight: 600; margin-bottom: .25em; }
.mev-money { display: inline-flex; align-items: center; gap: .3em; font-weight: 600; }
.mev-money input { width: 8em; }

/* "Your registration" box above the form */
.mev-register { margin-top: 1em; }
.mev-notices .woocommerce-message, .mev-notices .woocommerce-error, .mev-notices .woocommerce-info { margin-bottom: 1em; }
.mev-summary { border: 2px solid #2e6b3a; border-radius: 8px; padding: 1em 1.2em; margin: 0 0 1.5em; background: #f3f8f4; }
.mev-summary h3 { margin: 0 0 .5em; }
.mev-summary-list { margin: 0 0 1em 1.2em; padding: 0; }
.mev-summary-list li { margin: 0 0 .45em; }
.mev-summary-list span { opacity: .8; font-size: .92em; }
.mev-remove { font-size: .85em; margin-left: .4em; }
.mev-summary-actions { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: .6em; }
.mev-summary-actions .mev-checkout { font-size: 1.05em; padding: .75em 1.4em; }
.mev-runner .single_add_to_cart_button, .mev-register .single_add_to_cart_button { width: 100%; }
