<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Проверка безопасности | LORDPLAY</title>
<style>
    :root {
        --bg-color: #121212;
        --box-bg: #1e1e24;
        --text-main: #e2e8f0;
        --text-muted: #a0aec0;
        --accent: #ff1a25;
        --border: #2d3748;
    }
    body {
        margin: 0; padding: 0;
        background-color: var(--bg-color);
        color: var(--text-main);
        font-family: 'Segoe UI', system-ui, sans-serif;
        display: flex; justify-content: center; align-items: center;
        min-height: 100vh;
    }
    .box {
        background: var(--box-bg);
        border: 1px solid var(--border);
        border-radius: 16px;
        padding: 40px 30px;
        width: 100%; max-width: 380px;
        text-align: center;
        box-shadow: 0 20px 50px rgba(0,0,0,0.5);
    }
    .logo { font-size: 28px; font-weight: 800; margin-bottom: 25px; letter-spacing: -0.5px; }
    .logo-white { color: #fff; }
    .logo-red { color: var(--accent); }
    
    .captcha-info { font-size: 14px; color: var(--text-muted); margin-bottom: 20px; line-height: 1.5; }
    
    .captcha-image-wrapper {
        width: 150px; height: 150px; margin: 0 auto 20px;
        border-radius: 12px; overflow: hidden;
        border: 3px solid var(--border);
        transition: border-color 0.3s, box-shadow 0.3s;
    }
    .captcha-image-wrapper img {
        width: 100%; height: 100%; object-fit: cover;
        display: block;
    }
    
    .slider-container { margin: 20px 0; }
    input[type="range"] {
        width: 100%; cursor: pointer; accent-color: var(--accent);
    }
    
    .angle-display {
        font-size: 13px; color: var(--text-muted); margin-top: 8px;
        font-family: monospace;
    }
    
    .btn-verify {
        width: 100%; padding: 14px; margin-top: 25px;
        background: var(--accent); color: #fff; border: none;
        border-radius: 10px; font-size: 16px; font-weight: 700;
        cursor: pointer; transition: all 0.2s ease;
    }
    .btn-verify:hover { background: #ff3340; transform: translateY(-1px); }
    .btn-verify:disabled { background: #555; cursor: not-allowed; transform: none; }
    
    .error-msg {
        background: rgba(255, 26, 37, 0.1); border: 1px solid var(--accent);
        color: var(--accent); padding: 12px; border-radius: 8px;
        font-size: 13px; margin-top: 20px; text-align: center;
    }
</style>
</head>
<body>

<div class="box">
    <div class="logo">
        <span class="logo-white">🎬LORD</span><span class="logo-red">PLAY</span>
    </div>
    
    <p class="captcha-info">
        Пожалуйста, подтвердите, что вы человек.<br>
        Выровняйте изображение, перетащив ползунок.
    </p>

    <form method="POST" id="captchaForm">
        <!-- Скрытый токен для защиты от CSRF и ботов без сессий -->
        <input type="hidden" name="captcha_token" value="1bf934d0b0970a2b855805e7efe9130d">
        <input type="hidden" name="captcha_angle" id="captchaAngle" value="88">
        
        <div class="captcha-image-wrapper" id="imageWrapper">
            <!-- Убедись, что картинка captcha-target.jpg лежит в /assets/img/ и она ИСХОДНО РОВНАЯ (0 градусов) -->
            <img src="/assets/img/captcha-target.jpg" id="captchaImage" 
                 style="transform: rotate(88deg); transition: transform 0.1s;">
        </div>
        
        <div class="slider-container">
            <input type="range" min="0" max="360" value="88" id="rotationSlider">
            <div class="angle-display">Угол: <span id="rotationValue">88</span>°</div>
        </div>
        
        <button type="submit" class="btn-verify" id="submitBtn" disabled>
            Подтвердить
        </button>
    </form>
    
    </div>

<script>
const slider = document.getElementById('rotationSlider');
const img = document.getElementById('captchaImage');
const valueDisplay = document.getElementById('rotationValue');
const angleInput = document.getElementById('captchaAngle');
const submitBtn = document.getElementById('submitBtn');
const imageWrapper = document.getElementById('imageWrapper');

const TARGET_ANGLE = 0;
const TOLERANCE = 15; // Допуск ±15 градусов

slider.addEventListener('input', function() {
    let angle = parseInt(this.value);
    
    // Визуально поворачиваем картинку
    img.style.transform = `rotate(${angle}deg)`;
    valueDisplay.textContent = angle;
    angleInput.value = angle;
    
    // Вычисляем разницу с целевым углом (учитываем переход 360 -> 0)
    let diff = Math.min(Math.abs(angle - TARGET_ANGLE), Math.abs(angle - 360));
    
    if (diff <= TOLERANCE) {
        // Попали в цель!
        imageWrapper.style.borderColor = '#4CAF50';
        imageWrapper.style.boxShadow = '0 0 15px rgba(76, 175, 80, 0.4)';
        submitBtn.disabled = false;
        submitBtn.textContent = '✅ Подтвердить';
    } else {
        // Мимо
        imageWrapper.style.borderColor = '#2d3748';
        imageWrapper.style.boxShadow = 'none';
        submitBtn.disabled = true;
        submitBtn.textContent = 'Подтвердить';
    }
});

// Инициализация при загрузке (чтобы сразу проверить, если рандомно выпал 0)
slider.dispatchEvent(new Event('input'));
</script>

</body>
</html>
