.checkmark-captcha {
    display: grid;
    gap: 10px;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    align-self: stretch;
    padding: 12px;
    border: 1px solid #d7e0eb;
    border-radius: 8px;
    background: #f7fafc;
}
.checkmark-captcha__instruction { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 0; color: #34435b; font-weight: 700; line-height: 1.7; }
.checkmark-captcha__instruction-icon { display: inline-block; flex: 0 0 40px; width: 40px; height: 40px; object-fit: contain; vertical-align: middle; user-select: none; pointer-events: none; }
.checkmark-captcha__canvas {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    border: 1px solid #cbd7e5;
    border-radius: 6px;
    overflow: hidden;
    background: #f7fafc;
    cursor: pointer;
    touch-action: manipulation;
}
.checkmark-captcha__canvas:focus-visible { outline: 3px solid #315fd3; outline-offset: 3px; }
.checkmark-captcha__challenge-image { display: block; width: 100%; height: auto; aspect-ratio: 26 / 11; object-fit: contain; user-select: none; pointer-events: none; }
.checkmark-captcha__marker {
    position: absolute;
    display: none;
    width: 24px;
    height: 24px;
    margin: -12px 0 0 -12px;
    border: 3px solid #1f5ed1;
    border-radius: 999px;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 0 0 3px rgba(31, 94, 209, .18);
    pointer-events: none;
}
.checkmark-captcha__marker.is-visible { display: block; }
.checkmark-captcha__footer { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.checkmark-captcha__refresh { display: inline-flex; align-items: center; gap: 5px; width: auto !important; min-height: 44px; padding: 6px 2px !important; border: 0 !important; border-radius: 3px !important; background: transparent !important; color: #2451b2 !important; font: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.checkmark-captcha__refresh:hover { color: #173d91 !important; }
.checkmark-captcha__refresh:focus-visible { outline: 3px solid #315fd3; outline-offset: 2px; }
.checkmark-captcha__refresh:disabled { opacity: .55; cursor: wait; }
.checkmark-captcha__status { color: #17653a; font-weight: 700; line-height: 1.6; }
.checkmark-captcha__status.is-error { color: #a32222; }
.checkmark-captcha__honeypot { position: absolute !important; inset-inline-start: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
@media (max-width: 420px) {
    .checkmark-captcha__footer { align-items: flex-start; flex-direction: column; gap: 2px; }
}
