// 페이지 로드 시 인증 확인
        window.onload = function() {
            const urlParams = new URLSearchParams(window.location.search);
            const urlToken = urlParams.get('token');
            
            console.log('URL에서 받은 토큰:', urlToken);
            
            // 부모 창에 토큰 요청
            window.opener.postMessage('requestToken', '*');
            
            // 부모 창으로부터 토큰 받기
            window.addEventListener('message', function(event) {
                // 메인 페이지의 도메인 확인 (실제 도메인으로 변경 필요)
                if (event.data && event.data.token) {
                    const parentToken = event.data.token;
                    console.log('부모 창에서 받은 토큰:', parentToken);
                    
                    // 토큰 비교
                    if (urlToken === parentToken) {
                        console.log('인증 성공: STT 서비스 표시');
                        document.getElementById('mainContainer').style.display = 'block';
                        document.getElementById('unauthorizedMessage').style.display = 'none';
                    } else {
                        console.log('인증 실패: 토큰 불일치');
                        document.getElementById('mainContainer').style.display = 'none';
                        document.getElementById('unauthorizedMessage').style.display = 'block';
                    }
                }
            });
        };

        async function processFile() {
            const fileInput = document.getElementById('audioFile');
            const loadingDiv = document.getElementById('loading');
            const resultDiv = document.getElementById('result');
            const copyButton = document.getElementById('copyButton');
            
            if (!fileInput.files.length) {
                alert('파일을 선택해주세요.');
                return;
            }

            const formData = new FormData();
            formData.append('file', fileInput.files[0]);

            loadingDiv.style.display = 'block';
            resultDiv.textContent = '';
            copyButton.style.display = 'none';

            try {
                const response = await fetch('/process', {
                    method: 'POST',
                    body: formData
                });
                
                const data = await response.json();
                
                if (response.ok) {
                    console.log('변환 결과:', data.result);
                    resultDiv.textContent = data.result.join('\n');
                    copyButton.style.display = 'inline-block'; // 결과가 있을 때만 복사 버튼 표시
                } else {
                    throw new Error(data.error);
                }
            } catch (error) {
                console.error('에러:', error);
                resultDiv.textContent = `에러가 발생했습니다: ${error.message}`;
            } finally {
                loadingDiv.style.display = 'none';
            }
        }

        async function copyResult() {
            const resultDiv = document.getElementById('result');
            try {
                if (navigator.clipboard && navigator.clipboard.writeText) {
                    await navigator.clipboard.writeText(resultDiv.textContent);
                } else {
                    // 대체 복사 방법
                    const textarea = document.createElement('textarea');
                    textarea.value = resultDiv.textContent;
                    document.body.appendChild(textarea);
                    textarea.select();
                    document.execCommand('copy');
                    document.body.removeChild(textarea);
                }
                alert('클립보드에 복사되었습니다.');
            } catch (err) {
                console.error('복사 실패:', err);
                alert('복사에 실패했습니다.');
            }
        }