/* The v5 quiz embedded in the blue legacy site, and its direct-link fallback. */
.tvmq-page { --q-yellow: #0071e3; }
.tvmq-page .q-primary { color: #fff; }
.tvmq-page :is(h1,h2,h3,p) { padding: 0; white-space: normal; }
.tvmq-page .q-choice:has(input:checked) { border-color: #0071e3; background: #eef6ff; box-shadow: inset 0 0 0 1px #0071e3; }
.tvmq-page .q-choice:has(input:focus-visible) { outline-color: #0071e3; }
.tvmq-page .q-checkbox .q-check,
html.cta-blue .tvmq-page .q-checkbox .q-check,
.tvmq-page .q-checkbox:has(input:checked) .q-check {
    background: #fff;
    border-color: #0071e3;
    color: #0071e3;
}
.tvmq-page .q-checkbox:not(:has(input:checked)) .q-check { border-color: #bdbdb8; }
.tvmq-page .q-checkbox .q-check svg { background: none; color: #0071e3; stroke: #0071e3; fill: none; }
.tvmq-page .q-layout[data-view="contact"] { display: block; max-width: 520px; }
.tvmq-page .q-layout[data-view="contact"] .q-receipt { display: none; }
.tvmq-page .q-contact-form .q-consent { margin-top: 22px; }
.tvmq-page:has(.q-layout[data-view="contact"]) .q-footer-inner { display: block; max-width: 520px; }
.tvmq-page .q-layout[data-view="contact"] ~ .q-footer { width: 100%; }
.v5-quiz-modal {
    position: fixed; inset: 0; width: 100%;
    max-width: none; height: 100dvh; max-height: none;
    margin: 0; padding: 0; border: 0; border-radius: 0;
    overflow: auto; overscroll-behavior: contain;
}
.v5-quiz-modal:not([open]) { display: none; }
.v5-quiz-modal::backdrop { background: #0009; }
.v5-quiz-modal .q-header { position: sticky; top: 0; z-index: 8; background: var(--q-paper); }
.v5-quiz-modal .q-footer { position: sticky; bottom: 0; padding-bottom: max(12px,env(safe-area-inset-bottom)); background: var(--q-paper); }
.v5-quiz-modal .q-layout { min-height: calc(100dvh - 140px); padding-bottom: 24px; }
.v5-quiz-modal .v5-quiz-verification[data-turnstile-active] {
    position: sticky; bottom: 90px; left: auto; transform: none; width: fit-content;
}
@media(max-width:767px) {
    .v5-quiz-modal .q-footer { padding-inline: 16px; }
}
