ZIP/WAREHOUSE/today_constellation.php
<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>3월 2일 오늘의 별자리 운세</title>
    <script src="https://cdn.tailwindcss.com"></script>
    <link href="https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap" rel="stylesheet">
    <style>
        body {
            font-family: 'Noto Sans KR', sans-serif;
            background-color: #0f172a; /* Fallback */
        }
        .glass-card {
            background: rgba(255, 255, 255, 0.05);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.1);
        }
        .animate-float {
            animation: float 6s ease-in-out infinite;
        }
        @keyframes float {
            0% { transform: translateY(0px); }
            50% { transform: translateY(-10px); }
            100% { transform: translateY(0px); }
        }
        .star {
            position: absolute;
            background: white;
            border-radius: 50%;
            opacity: 0;
            animation: twinkle var(--duration) ease-in-out infinite;
            animation-delay: var(--delay);
        }
        @keyframes twinkle {
            0% { opacity: 0; transform: scale(0.5); }
            50% { opacity: var(--opacity); transform: scale(1); }
            100% { opacity: 0; transform: scale(0.5); }
        }
    </style>
</head>
<body class="relative min-h-screen overflow-x-hidden bg-gradient-to-b from-[#0f172a] via-[#1e1b4b] to-[#312e81] text-white">

    <!-- Star Background (Generated by JS) -->
    <div id="stars-container" class="absolute inset-0 pointer-events-none z-0"></div>

    <main class="relative z-10 mx-auto max-w-lg px-6 py-8 pb-20">
        
        <!-- Header -->
        <header class="text-center mb-8">
            <p class="text-indigo-300 text-sm font-medium tracking-wider mb-2">2026년 1월 12일 월요일</p>
            <h1 class="text-2xl font-bold text-white mb-1">오늘의 별자리 운세</h1>
            <p class="text-slate-400 text-xs">양력 3월 2일생 (물고기자리)</p>
        </header>

        <!-- Main Symbol Card -->
        <div class="glass-card rounded-3xl p-8 text-center mb-8 shadow-2xl shadow-indigo-500/20 relative overflow-hidden">
            <div class="absolute top-0 left-0 w-full h-1 bg-gradient-to-r from-transparent via-cyan-400 to-transparent opacity-50"></div>
            
            <div class="animate-float mb-6 inline-block p-4 rounded-full bg-indigo-500/20 shadow-inner ring-1 ring-white/20">
                <!-- Pisces SVG Icon -->
                <svg class="w-16 h-16 text-cyan-300" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
                    <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z" opacity="0.2"></path>
                    <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z" opacity="0"></path>
                    <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 01-8 0"></path>
                    <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 12c0 4 2 8 4 8s4-4 4-8-2-8-4-8-4 4-4 8z"></path> 
                    <!-- Simple Pisces representation lines -->
                    <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M7 18s2-4 2-6-2-6-2-6M17 18s-2-4-2-6 2-6 2-6M4 12h16"></path>
                </svg>
            </div>

            <h2 class="text-xl font-bold text-white mb-2">물고기자리</h2>
            <p class="text-cyan-200 text-sm font-medium mb-4">"감성과 현실 사이의 균형"</p>
            <p class="text-slate-300 leading-relaxed text-sm">
                오늘 당신은 풍부한 상상력과 예술적인 영감이 돋보이는 하루를 보내게 됩니다. 흐르는 물처럼 유연한 태도가 행운을 불러옵니다.
            </p>
        </div>

        <!-- Detail Cards Grid -->
        <div class="grid grid-cols-1 gap-4 mb-8">
            
            <!-- Love Luck -->
            <div class="glass-card rounded-2xl p-5 flex items-start space-x-4 hover:bg-white/10 transition-colors duration-300">
                <div class="bg-pink-500/20 p-2.5 rounded-xl text-pink-300">
                    <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"></path></svg>
                </div>
                <div>
                    <h3 class="font-bold text-pink-200 text-sm mb-1">애정운</h3>
                    <p class="text-xs text-slate-300 leading-relaxed">
                        감수성이 풍부해져 상대방의 마음을 깊이 이해할 수 있습니다. 로맨틱한 분위기를 연출하기 좋지만, 대화는 명확하게 하세요.
                    </p>
                </div>
            </div>

            <!-- Money Luck -->
            <div class="glass-card rounded-2xl p-5 flex items-start space-x-4 hover:bg-white/10 transition-colors duration-300">
                <div class="bg-yellow-500/20 p-2.5 rounded-xl text-yellow-300">
                    <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8c-1.657 0-3 .895-3 2s1.343 2 3 2 3 .895 3 2-1.343 2-3 2m0-8c1.11 0 2.08.402 2.599 1M12 8V7m0 1v8m0 0v1m0-1c-1.11 0-2.08-.402-2.599-1M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg>
                </div>
                <div>
                    <h3 class="font-bold text-yellow-200 text-sm mb-1">재물/비즈니스</h3>
                    <p class="text-xs text-slate-300 leading-relaxed">
                        큰 돈이 오가는 결정이나 무리한 투자는 피하는 것이 안전합니다. 내실을 다지며 현재 상황을 점검하는 것이 유리합니다.
                    </p>
                </div>
            </div>

        </div>

        <!-- Lucky Items Section -->
        <h3 class="text-sm font-bold text-indigo-300 mb-3 uppercase tracking-wider ml-1">Today's Lucky</h3>
        <div class="grid grid-cols-3 gap-3">
            <!-- Item 1 -->
            <div class="glass-card rounded-xl p-3 text-center flex flex-col items-center justify-center aspect-square">
                <span class="text-2xl mb-1">💧</span>
                <span class="text-xs text-slate-400">아이템</span>
                <span class="text-sm font-bold text-white">수분크림</span>
            </div>
            <!-- Item 2 -->
            <div class="glass-card rounded-xl p-3 text-center flex flex-col items-center justify-center aspect-square">
                <div class="w-6 h-6 rounded-full bg-cyan-200 mb-1 border-2 border-white/30"></div>
                <span class="text-xs text-slate-400">색상</span>
                <span class="text-sm font-bold text-white">파스텔톤</span>
            </div>
            <!-- Item 3 -->
            <div class="glass-card rounded-xl p-3 text-center flex flex-col items-center justify-center aspect-square">
                <span class="text-2xl font-serif italic text-purple-300 mb-1">7</span>
                <span class="text-xs text-slate-400">숫자</span>
                <span class="text-sm font-bold text-white">7, 22</span>
            </div>
        </div>

        <!-- Action Button -->
        <div class="mt-10 text-center">
            <button onclick="copyLuck()" class="group relative px-6 py-3 font-bold text-white rounded-full bg-gradient-to-r from-indigo-500 to-purple-600 shadow-lg shadow-indigo-500/40 hover:shadow-indigo-500/60 transition-all active:scale-95">
                <span class="relative flex items-center gap-2">
                    <span>운세 복사하기</span>
                    <svg class="w-4 h-4 group-hover:translate-x-1 transition-transform" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 5H6a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2v-1M8 5a2 2 0 002 2h2a2 2 0 002-2M8 5a2 2 0 012-2h2a2 2 0 012 2m0 0h2a2 2 0 012 2v3m2 4H10m0 0l3-3m-3 3l3 3"></path></svg>
                </span>
            </button>
            <div id="toast" class="fixed bottom-10 left-1/2 transform -translate-x-1/2 bg-white text-slate-900 px-4 py-2 rounded-full text-sm font-bold shadow-xl opacity-0 transition-opacity duration-300 pointer-events-none">
                복사되었습니다! ✨
            </div>
        </div>

    </main>

    <script>
        // Star Background Generation
        document.addEventListener('DOMContentLoaded', () => {
            const container = document.getElementById('stars-container');
            const starCount = 50;

            for (let i = 0; i < starCount; i++) {
                const star = document.createElement('div');
                star.classList.add('star');
                
                // Random positioning
                const x = Math.random() * 100;
                const y = Math.random() * 100;
                const size = Math.random() * 2 + 1; // 1px to 3px
                const duration = Math.random() * 3 + 2; // 2s to 5s
                const delay = Math.random() * 5;
                const opacity = Math.random() * 0.7 + 0.3;

                star.style.left = `${x}%`;
                star.style.top = `${y}%`;
                star.style.width = `${size}px`;
                star.style.height = `${size}px`;
                star.style.setProperty('--duration', `${duration}s`);
                star.style.setProperty('--delay', `${delay}s`);
                star.style.setProperty('--opacity', opacity);

                container.appendChild(star);
            }
        });

        // Copy Functionality
        function copyLuck() {
            const text = `[3월 2일 물고기자리 운세]\n"감성과 현실 사이의 균형이 필요한 날"\n\n총운: 흐르는 물처럼 유연한 태도가 행운을 불러옵니다.\n애정운: 로맨틱한 분위기를 연출하기 좋습니다.\n재물운: 큰 투자는 피하고 내실을 다지세요.\n행운의 아이템: 수분크림, 파스텔톤, 숫자 7`;
            
            // Clipboard API usage fallback for iframes
            const textArea = document.createElement("textarea");
            textArea.value = text;
            document.body.appendChild(textArea);
            textArea.select();
            try {
                document.execCommand('copy');
                showToast();
            } catch (err) {
                console.error('Unable to copy', err);
            }
            document.body.removeChild(textArea);
        }

        function showToast() {
            const toast = document.getElementById('toast');
            toast.style.opacity = '1';
            toast.style.transform = 'translate(-50%, -10px)';
            setTimeout(() => {
                toast.style.opacity = '0';
                toast.style.transform = 'translate(-50%, 0)';
            }, 2000);
        }
    </script>
</body>
</html>