@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;700&family=Inter:wght@300;400;500;600&display=swap'); :root { --primary: #A855F7; /* Purple 500 */ --primary-light: #C084FC; /* Purple 400 */ --accent: #E879F9; /* Fuchsia 400 */ --bg-dark: #0F071A; /* Dark Deep Purple */ } body { font-family: 'Inter', -apple-system, sans-serif; background-color: var(--bg-dark); } h1, h2, .font-serif { font-family: 'Cinzel', serif; } .glass { background: rgba(168, 85, 247, 0.05); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(168, 85, 247, 0.15); } .glass-gold { background: linear-gradient(135deg, rgba(168, 85, 247, 0.15), rgba(232, 121, 249, 0.1)); border: 1px solid rgba(168, 85, 247, 0.3); } .ai-card-glow-gold { background: rgba(168, 85, 247, 0.08); border: 1px solid rgba(168, 85, 247, 0.25); box-shadow: 0 0 20px rgba(168, 85, 247, 0.1); } .nav-item { color: rgba(255, 255, 255, 0.3); transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1); } .nav-item.active { color: var(--primary-light); transform: translateY(-4px); text-shadow: 0 0 15px rgba(168, 85, 247, 0.8); } .animate-spin-slow { animation: spin 12s linear infinite; } .animate-pulse-slow { animation: pulse 6s ease-in-out infinite; } @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } @keyframes pulse { 0%, 100% { opacity: 0.3; } 50% { opacity: 0.7; } } #stars { position: absolute; width: 100%; height: 100%; } .star { position: absolute; background: white; border-radius: 50%; filter: blur(0.5px); animation: float-star var(--duration) ease-in-out infinite; opacity: var(--opacity); } @keyframes float-star { 0%, 100% { transform: translate(0, 0) scale(1); opacity: var(--opacity); } 50% { transform: translate(var(--x), var(--y)) scale(1.5); opacity: 1; } } .hint-container { @apply p-6 rounded-[2.5rem] bg-purple-900/10 border border-purple-500/10 mt-6; box-shadow: inset 0 0 30px rgba(168, 85, 247, 0.08); } .hint-chip { @apply relative px-1 py-1 bg-white/5 rounded-full text-[11px] text-purple-200 border border-white/10 transition-all cursor-pointer inline-block whitespace-nowrap overflow-hidden; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); backdrop-filter: blur(8px); } .hint-chip span { @apply relative z-10 px-3 py-1 rounded-full bg-purple-500/20 text-purple-100 font-medium; display: inline-block; } .hint-chip:hover { @apply border-purple-400/50 scale-105; box-shadow: 0 8px 15px rgba(168, 85, 247, 0.3); } .hint-chip:hover span { @apply bg-purple-400/40 text-white; } .hint-chip:active { @apply scale-95 opacity-80; } .bubble-anim { animation: bubble-float 5s ease-in-out infinite; animation-delay: calc(var(--delay, 0) * 0.4s); } @keyframes bubble-float { 0%, 100% { transform: translateY(0) rotate(0deg); } 33% { transform: translateY(-4px) rotate(1deg); } 66% { transform: translateY(2px) rotate(-1deg); } } .typing-text { overflow: hidden; white-space: pre-wrap; animation: reveal 2s steps(60, end); } @keyframes reveal { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } } .starlight-gathering-gold { width: 44px; height: 44px; border-radius: 50%; border: 2px solid var(--primary); border-top-color: transparent; animation: spin 0.8s infinite linear; } input[type="date"]::-webkit-calendar-picker-indicator { filter: invert(1) sepia(100%) saturate(200%) hue-rotate(240deg); opacity: 0.8; } select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23A855F7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 12px center; background-size: 16px; } ::-webkit-scrollbar { width: 4px; } ::-webkit-scrollbar-thumb { background: rgba(168, 85, 247, 0.3); border-radius: 10px; }