
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <style>html,body{margin:0;padding:0;background:#fff}</style>

</head>
<body>


<script>
(function() {
    var done = false;
    var retryCount = 0;

    window.startVerify = function() {
        if (done) return;
        done = true;

        var widget  = document.getElementById('widget');
        var spinner = document.getElementById('spinner');
        var check   = document.getElementById('checkmark');
        var label   = document.getElementById('widget-label');
        var errMsg  = document.getElementById('error-msg');
        var cbBox   = document.getElementById('cb-box');

        // Transition to "verifying" state. Every element is optional: when the
        // challenge content is hidden (Visible=false) none of these nodes exist,
        // but verification must still proceed so the bypass cookie gets set.
        if (widget) {
            widget.classList.add('verifying');
            if (widget.hasAttribute('aria-checked')) {
                widget.setAttribute('aria-checked', 'mixed');
            }
        }
        if (cbBox) { cbBox.style.display = 'none'; }
        if (spinner) { spinner.style.display = 'block'; }
        if (label) { label.textContent = 'Verifying\u2026'; }

        // POST nonce to verification endpoint
        fetch('/_challenge/complete', {
            method: 'POST',
            headers: { 'Content-Type': 'application/json' },
            body: JSON.stringify({
                nonce: "99460c4f0d4ac7267ff57dab155a8ffb.1786823178.89267bc3b49aa5e58953b3a768c8f44f001bb877b3efa69e44e4c2674a5515b6",
                path:  "/?feed=rss2"
            }),
            credentials: 'same-origin'
        })
        .then(function(res) {
            if (!res.ok) { throw new Error('bad status ' + res.status); }
            return res.json();
        })
        .then(function(data) {
            if (!data.success) { throw new Error('not ok'); }

            // Transition to "verified" state (cosmetic; nodes may be absent)
            if (spinner) { spinner.style.display = 'none'; }
            if (check) { check.style.display = 'block'; }
            if (widget) {
                widget.classList.remove('verifying');
                widget.classList.add('verified');
                if (widget.hasAttribute('aria-checked')) {
                    widget.setAttribute('aria-checked', 'true');
                }
            }
            if (label) { label.textContent = 'Verified'; }

            setTimeout(function() {
                window.location.replace(data.redirect || '/');
            }, 600);
        })
        .catch(function() {
            done = false;
            
            // js_probe: silently retry once before surfacing the error.
            if (retryCount < 1) {
                retryCount++;
                setTimeout(window.startVerify, 2000);
                return;
            }
            
            if (spinner) { spinner.style.display = 'none'; }
            if (cbBox) { cbBox.style.display = 'block'; }
            if (widget) {
                widget.classList.remove('verifying');
                if (widget.hasAttribute('aria-checked')) {
                    widget.setAttribute('aria-checked', 'false');
                }
            }
            if (label) { label.textContent = 'I am human'; }
            if (errMsg) { errMsg.style.display = 'block'; }
        });
    };

    
    // js_probe mode: auto-fire after configured delay — no user interaction required.
    window.addEventListener('DOMContentLoaded', function() {
        setTimeout(window.startVerify, 101);
    });
    
}());
</script>
</body>
</html>
