:root { --primary: #0a0a0a; --secondary: #1a1a2e; --tertiary: #16213e; --accent: #4caf50; --accent-light: #81c784; --accent-dark: #388e3c; --success: #4caf50; --warning: #ff9800; --danger: #f44336; --info: #2196f3; --text-primary: #ffffff; --text-secondary: rgba(255, 255, 255, 0.8); --text-muted: rgba(255, 255, 255, 0.6); --bg-primary: rgba(10, 10, 10, 0.95); --bg-secondary: rgba(26, 26, 46, 0.9); --bg-tertiary: rgba(22, 33, 62, 0.85); --bg-glass: rgba(255, 255, 255, 0.1); --bg-glass-light: rgba(255, 255, 255, 0.05); --border-primary: rgba(76, 175, 80, 0.4); --border-secondary: rgba(255, 255, 255, 0.1); --gradient-primary: linear-gradient(135deg, #4caf50 0%, #2196f3 50%, #00bcd4 100%); --gradient-secondary: linear-gradient(135deg, #ff9800 0%, #f44336 100%); --gradient-accent: linear-gradient(135deg, #4caf50 0%, #388e3c 100%); --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3); --shadow: 0 4px 16px rgba(0, 0, 0, 0.4); --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.5); --shadow-glow: 0 0 20px rgba(76, 175, 80, 0.6); --radius-sm: 8px; --radius: 12px; --radius-lg: 16px; --radius-xl: 24px; --space-xs: 4px; --space-sm: 8px; --space: 12px; --space-lg: 16px; --space-xl: 24px; --space-2xl: 32px; --font-primary: "Inter", sans-serif; --font-display: "Orbitron", monospace; --font-accent: "Poppins", sans-serif; --transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1); --z-modal: 1050; } *, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; } html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; overflow-x: hidden; } body { font-family: var(--font-primary); font-size: 16px; line-height: 1.6; color: var(--text-primary); background: #000; min-height: 100vh; overflow-x: hidden; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: relative; } .cosmic-background { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(ellipse at center, #1a1a2e 0%, #16213e 50%, #0a0a0a 100%); z-index: -1; overflow: hidden; } .stars-layer-1, .stars-layer-2, .stars-layer-3 { position: absolute; width: 100%; height: 100%; background: transparent; } .stars-layer-1 { background-image: radial-gradient(2px 2px at 20px 30px, #fff, transparent), radial-gradient(2px 2px at 40px 70px, #fff, transparent), radial-gradient(1px 1px at 90px 40px, #fff, transparent), radial-gradient(1px 1px at 130px 80px, #fff, transparent), radial-gradient(2px 2px at 160px 30px, #fff, transparent); background-repeat: repeat; background-size: 200px 100px; animation: sparkle 50s linear infinite; } .stars-layer-2 { background-image: radial-gradient(1px 1px at 40px 60px, #fff, transparent), radial-gradient(1px 1px at 120px 10px, #fff, transparent), radial-gradient(1px 1px at 80px 80px, #fff, transparent); background-repeat: repeat; background-size: 300px 200px; animation: sparkle 100s linear infinite reverse; } .stars-layer-3 { background-image: radial-gradient(1px 1px at 10px 10px, #4caf50, transparent), radial-gradient(1px 1px at 150px 150px, #2196f3, transparent), radial-gradient(1px 1px at 60px 90px, #00bcd4, transparent); background-repeat: repeat; background-size: 400px 300px; animation: sparkle 150s linear infinite; } .nebula-layer { position: absolute; width: 100%; height: 100%; background: radial-gradient(ellipse at 20% 50%, rgba(76, 175, 80, 0.1) 0%, transparent 50%), radial-gradient(ellipse at 80% 20%, rgba(33, 150, 243, 0.1) 0%, transparent 50%), radial-gradient(ellipse at 40% 80%, rgba(0, 188, 212, 0.1) 0%, transparent 50%); animation: nebula-drift 20s ease-in-out infinite; } .cosmic-dust { position: absolute; width: 100%; height: 100%; background: url('data:image/svg+xml,') repeat; animation: dust-float 30s linear infinite; } .shooting-stars { position: absolute; width: 100%; height: 100%; } .shooting-stars::before, .shooting-stars::after { content: ""; position: absolute; width: 2px; height: 2px; background: linear-gradient(45deg, #fff, transparent); border-radius: 50%; animation: shooting-star 3s linear infinite; } .shooting-stars::before { top: 20%; left: 10%; animation-delay: 0s; } .shooting-stars::after { top: 60%; right: 20%; animation-delay: 1.5s; } .aurora-effect { position: absolute; width: 100%; height: 100%; background: linear-gradient( 45deg, rgba(76, 175, 80, 0.05) 0%, transparent 30%, rgba(33, 150, 243, 0.05) 70%, transparent 100% ); animation: aurora-wave 15s ease-in-out infinite; } @keyframes sparkle { 0% { transform: translateY(0); } 100% { transform: translateY(-100vh); } } @keyframes nebula-drift { 0%, 100% { transform: translateX(0) translateY(0); } 33% { transform: translateX(30px) translateY(-20px); } 66% { transform: translateX(-20px) translateY(30px); } } @keyframes dust-float { 0% { transform: translateY(0) rotate(0deg); } 100% { transform: translateY(-100vh) rotate(360deg); } } @keyframes shooting-star { 0% { transform: translateX(0) translateY(0) rotate(45deg); opacity: 1; } 100% { transform: translateX(300px) translateY(300px) rotate(45deg); opacity: 0; } } @keyframes aurora-wave { 0%, 100% { opacity: 0.3; transform: translateX(0); } 50% { opacity: 0.6; transform: translateX(50px); } } .loading-screen { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(ellipse at center, rgba(26, 26, 46, 0.95) 0%, rgba(10, 10, 10, 0.98) 100%); backdrop-filter: blur(20px); display: flex; justify-content: center; align-items: center; z-index: var(--z-modal); transition: opacity 0.8s ease, visibility 0.8s ease; } .loading-screen.hidden { opacity: 0; visibility: hidden; } .loading-container { text-align: center; z-index: 2; } .loading-logo { position: relative; width: 120px; height: 120px; margin: 0 auto var(--space-2xl); display: flex; align-items: center; justify-content: center; } .logo-inner { width: 80px; height: 80px; background: var(--gradient-primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 40px; color: white; z-index: 3; animation: logo-pulse 2s ease-in-out infinite; } .logo-rings { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } .ring { position: absolute; border: 2px solid; border-radius: 50%; animation: ring-rotate 3s linear infinite; } .ring-1 { top: 0; left: 0; width: 100%; height: 100%; border-color: rgba(76, 175, 80, 0.6); animation-duration: 3s; } .ring-2 { top: 10px; left: 10px; width: calc(100% - 20px); height: calc(100% - 20px); border-color: rgba(33, 150, 243, 0.6); animation-duration: 4s; animation-direction: reverse; } .ring-3 { top: 20px; left: 20px; width: calc(100% - 40px); height: calc(100% - 40px); border-color: rgba(0, 188, 212, 0.6); animation-duration: 5s; } .loading-text { font-family: var(--font-display); font-size: 2rem; font-weight: 800; background: var(--gradient-primary); -webkit-background-clip: text; background-clip: text; color: transparent; margin-bottom: var(--space); animation: text-glow 2s ease-in-out infinite alternate; } .loading-subtitle { font-size: 1.1rem; color: var(--text-secondary); margin-bottom: var(--space-2xl); font-weight: 500; } .loading-progress { width: 250px; height: 6px; background: rgba(255, 255, 255, 0.1); border-radius: var(--radius); overflow: hidden; margin: 0 auto var(--space); position: relative; } .progress-bar { height: 100%; background: var(--gradient-primary); border-radius: var(--radius); animation: loading-progress 3s ease-in-out infinite; } .progress-glow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent); animation: progress-shine 2s ease-in-out infinite; } .loading-status { font-size: 0.9rem; color: var(--text-muted); animation: status-fade 2s ease-in-out infinite; } .loading-particles { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; } .particle { position: absolute; width: 4px; height: 4px; background: var(--accent); border-radius: 50%; animation: particle-float 4s ease-in-out infinite; } .particle:nth-child(1) { top: 20%; left: 10%; animation-delay: 0s; } .particle:nth-child(2) { top: 60%; right: 15%; animation-delay: 1s; } .particle:nth-child(3) { bottom: 30%; left: 20%; animation-delay: 2s; } .particle:nth-child(4) { top: 40%; right: 30%; animation-delay: 3s; } .particle:nth-child(5) { bottom: 20%; right: 10%; animation-delay: 4s; } @keyframes logo-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.1); } } @keyframes ring-rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } @keyframes text-glow { 0% { text-shadow: 0 0 20px rgba(76, 175, 80, 0.5); } 100% { text-shadow: 0 0 30px rgba(76, 175, 80, 0.8); } } @keyframes loading-progress { 0% { width: 0%; } 50% { width: 70%; } 100% { width: 100%; } } @keyframes progress-shine { 0% { left: -100%; } 100% { left: 100%; } } @keyframes status-fade { 0%, 100% { opacity: 0.6; } 50% { opacity: 1; } } @keyframes particle-float { 0%, 100% { transform: translateY(0) rotate(0deg); opacity: 0.5; } 50% { transform: translateY(-20px) rotate(180deg); opacity: 1; } } .app-container { position: relative; max-width: 430px; margin: 0 auto; min-height: 100vh; background: transparent; overflow: hidden; z-index: 2; } .app-header { padding: var(--space-xl) var(--space-lg) var(--space-2xl); position: relative; overflow: hidden; } .header-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(26, 26, 46, 0.3); backdrop-filter: blur(20px); border-bottom: 2px solid var(--border-primary); z-index: 1; } .header-background::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(76, 175, 80, 0.1), transparent); animation: header-shine 4s ease-in-out infinite; } .header-content { position: relative; z-index: 2; } .user-profile { display: flex; align-items: center; gap: var(--space-lg); margin-bottom: var(--space-xl); padding: var(--space-lg); background: rgba(255, 255, 255, 0.05); border-radius: var(--radius-lg); border: 1px solid var(--border-secondary); backdrop-filter: blur(30px); position: relative; overflow: hidden; } .user-profile::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(45deg, rgba(76, 175, 80, 0.05), transparent); opacity: 0; transition: var(--transition); } .user-profile:hover::before { opacity: 1; } .avatar-container { position: relative; } .user-avatar { width: 60px; height: 60px; border-radius: 50%; object-fit: cover; z-index: 2; position: relative; } .avatar-ring { position: absolute; top: -3px; left: -3px; width: 66px; height: 66px; border: 2px solid; border-image: var(--gradient-primary) 1; border-radius: 50%; animation: avatar-rotate 3s linear infinite; z-index: 1; } .status-indicator { position: absolute; bottom: 2px; right: 2px; width: 16px; height: 16px; background: var(--success); border: 2px solid white; border-radius: 50%; animation: status-pulse 2s ease-in-out infinite; z-index: 3; } .user-info { flex: 1; } .user-name { font-size: 1.1rem; font-weight: 700; background: var(--gradient-primary); -webkit-background-clip: text; background-clip: text; color: transparent; margin-bottom: var(--space-xs); } .user-level { font-size: 0.8rem; color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.5px; font-weight: 600; margin-bottom: var(--space-xs); } .user-stats { display: flex; gap: var(--space-lg); } .stat { display: flex; align-items: center; gap: var(--space-xs); font-size: 0.8rem; color: var(--text-muted); } .stat i { color: var(--accent); } .settings-btn { width: 50px; height: 50px; background: var(--bg-glass); border: 2px solid var(--border-primary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; color: var(--accent); cursor: pointer; transition: var(--transition); backdrop-filter: blur(20px); position: relative; overflow: hidden; } .settings-btn:hover { background: var(--accent); color: white; transform: scale(1.05) rotate(90deg); box-shadow: var(--shadow-glow); } .btn-glow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(circle, rgba(76, 175, 80, 0.3), transparent); opacity: 0; transition: var(--transition); } .settings-btn:hover .btn-glow { opacity: 1; animation: btn-glow-pulse 1s ease-in-out infinite; } .balance-section { margin-top: var(--space-2xl); } .main-balance { display: flex; align-items: center; justify-content: center; gap: var(--space-lg); margin-bottom: var(--space-xl); padding: var(--space-xl); background: rgba(255, 255, 255, 0.05); border-radius: var(--radius-lg); backdrop-filter: blur(30px); position: relative; overflow: hidden; border: 1px solid var(--border-secondary); } .main-balance::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(76, 175, 80, 0.1), transparent); animation: balance-shine 3s ease-in-out infinite; } .balance-icon { width: 60px; height: 60px; background: var(--gradient-primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 28px; animation: coin-float 4s ease-in-out infinite; box-shadow: var(--shadow-glow); position: relative; } .icon-pulse { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: inherit; border-radius: inherit; animation: icon-pulse 2s ease-in-out infinite; } .balance-display { display: flex; align-items: baseline; gap: var(--space-sm); } .balance-amount { font-family: var(--font-display); font-size: 2.5rem; font-weight: 900; color: var(--text-primary); text-shadow: 0 0 30px rgba(76, 175, 80, 0.8); } .balance-currency { font-size: 1.2rem; color: var(--text-secondary); font-weight: 700; font-family: var(--font-display); } .balance-trend { display: flex; align-items: center; gap: var(--space-xs); color: var(--success); font-size: 0.9rem; font-weight: 600; } .level-system { background: rgba(255, 255, 255, 0.05); border-radius: var(--radius-lg); border: 2px solid var(--border-primary); padding: var(--space-lg); backdrop-filter: blur(30px); position: relative; } .level-header { margin-bottom: var(--space-lg); } .level-badges { display: flex; align-items: center; justify-content: center; gap: var(--space-lg); margin-bottom: var(--space-lg); } .level-badge { padding: var(--space-sm) var(--space-lg); background: var(--bg-glass); border: 2px solid var(--border-secondary); border-radius: var(--radius-lg); font-size: 0.8rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; backdrop-filter: blur(20px); transition: var(--transition); text-align: center; position: relative; } .level-badge.current { background: var(--gradient-primary); color: white; border: none; box-shadow: var(--shadow-glow); transform: scale(1.05); } .badge-glow { position: absolute; top: -2px; left: -2px; right: -2px; bottom: -2px; background: var(--gradient-primary); border-radius: inherit; z-index: -1; opacity: 0.5; animation: badge-glow 2s ease-in-out infinite; } .level-badge.next { color: var(--text-muted); } .level-arrow { color: var(--accent); font-weight: bold; font-size: 1.2rem; } .xp-container { position: relative; } .xp-progress { width: 100%; height: 12px; background: rgba(255, 255, 255, 0.1); border-radius: var(--radius); overflow: hidden; border: 1px solid var(--border-secondary); position: relative; } .xp-bar { height: 100%; background: var(--gradient-primary); border-radius: var(--radius); transition: width 1s cubic-bezier(0.4, 0, 0.2, 1); width: 0%; position: relative; } .xp-glow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent); animation: xp-glow 2s ease-in-out infinite; } .xp-particles { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url('data:image/svg+xml,') repeat-x; animation: xp-particles 3s linear infinite; } .xp-text { text-align: center; font-size: 0.8rem; color: var(--text-muted); margin-top: var(--space-sm); font-weight: 600; } @keyframes header-shine { 0% { left: -100%; } 100% { left: 100%; } } @keyframes avatar-rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } @keyframes status-pulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.5; transform: scale(0.8); } } @keyframes btn-glow-pulse { 0%, 100% { opacity: 0.5; } 50% { opacity: 1; } } @keyframes balance-shine { 0% { left: -100%; } 100% { left: 100%; } } @keyframes coin-float { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-5px) rotate(180deg); } } @keyframes icon-pulse { 0%, 100% { opacity: 0.3; transform: scale(1); } 50% { opacity: 0.6; transform: scale(1.1); } } @keyframes badge-glow { 0%, 100% { opacity: 0.3; } 50% { opacity: 0.7; } } @keyframes xp-glow { 0%, 100% { left: -100%; } 50% { left: 100%; } } @keyframes xp-particles { 0% { transform: translateX(0); } 100% { transform: translateX(100px); } } .main-content { padding: var(--space-2xl) var(--space-lg) 140px; } .section { display: none; animation: section-slide 0.6s cubic-bezier(0.4, 0, 0.2, 1); } .section.active { display: block; } .section-header { display: flex; align-items: center; gap: var(--space-lg); margin-bottom: var(--space-2xl); padding: var(--space-lg); background: rgba(255, 255, 255, 0.05); border-radius: var(--radius-lg); border: 1px solid var(--border-secondary); backdrop-filter: blur(30px); position: relative; overflow: hidden; } .section-header::before { content: ""; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(76, 175, 80, 0.05), transparent); animation: section-shine 4s ease-in-out infinite; } .section-icon { width: 60px; height: 60px; background: var(--gradient-primary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 28px; box-shadow: var(--shadow-glow); position: relative; } .icon-glow { position: absolute; top: -5px; left: -5px; right: -5px; bottom: -5px; background: var(--gradient-primary); border-radius: inherit; opacity: 0.3; animation: icon-glow 3s ease-in-out infinite; z-index: -1; } .section-info { flex: 1; } .section-title { font-family: var(--font-display); font-size: 1.8rem; font-weight: 900; color: var(--text-primary); margin-bottom: var(--space-xs); } .section-subtitle { font-size: 1rem; color: var(--text-secondary); font-weight: 500; } .game-area { text-align: center; } .combo-system { display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--space-2xl); gap: var(--space-lg); } .combo-display { background: var(--bg-glass); border: 2px solid var(--border-primary); border-radius: var(--radius-lg); padding: var(--space-lg); backdrop-filter: blur(30px); display: flex; align-items: center; gap: var(--space-lg); opacity: 0; transform: scale(0.8); transition: var(--transition); box-shadow: var(--shadow-lg); position: relative; } .combo-display.active { opacity: 1; transform: scale(1); animation: combo-glow 1s ease-in-out infinite alternate; } .combo-icon { width: 50px; height: 50px; background: var(--gradient-secondary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 24px; position: relative; } .fire-particles { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(circle, rgba(255, 152, 0, 0.3), transparent); border-radius: inherit; animation: fire-dance 1s ease-in-out infinite; } .combo-info { text-align: left; } .combo-label { font-family: var(--font-display); font-weight: 800; color: var(--warning); font-size: 0.9rem; margin-bottom: var(--space-xs); } .combo-multiplier { font-family: var(--font-display); font-weight: 800; color: var(--warning); font-size: 1.5rem; } .streak-display { background: var(--bg-glass); border: 2px solid var(--border-primary); border-radius: var(--radius-lg); padding: var(--space-lg); backdrop-filter: blur(30px); display: flex; align-items: center; gap: var(--space); min-width: 120px; } .streak-icon { width: 40px; height: 40px; background: var(--gradient-primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 20px; } .streak-info { text-align: left; } .streak-number { font-family: var(--font-display); font-size: 1.5rem; font-weight: 800; color: var(--accent); margin-bottom: var(--space-xs); } .streak-label { font-size: 0.8rem; color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.5px; font-weight: 600; } .character-section { position: relative; margin-bottom: var(--space-2xl); } .character-container { position: relative; width: 320px; height: 320px; margin: 0 auto; cursor: pointer; transition: var(--transition); filter: drop-shadow(0 30px 60px rgba(76, 175, 80, 0.5)); } .character-container:hover { transform: scale(1.05); filter: drop-shadow(0 40px 80px rgba(76, 175, 80, 0.7)); } .character-container:active { transform: scale(0.95); } .character-aura { position: absolute; top: -30px; left: -30px; right: -30px; bottom: -30px; z-index: 1; } .aura-ring { position: absolute; border: 2px solid; border-radius: 50%; animation: aura-rotate 10s linear infinite; } .aura-ring.ring-1 { top: 0; left: 0; width: 100%; height: 100%; border-color: rgba(76, 175, 80, 0.3); animation-duration: 10s; } .aura-ring.ring-2 { top: 15px; left: 15px; width: calc(100% - 30px); height: calc(100% - 30px); border-color: rgba(33, 150, 243, 0.3); animation-duration: 15s; animation-direction: reverse; } .aura-ring.ring-3 { top: 30px; left: 30px; width: calc(100% - 60px); height: calc(100% - 60px); border-color: rgba(0, 188, 212, 0.3); animation-duration: 20s; } .character-glow { position: absolute; top: -20px; left: -20px; right: -20px; bottom: -20px; background: var(--gradient-primary); border-radius: 50%; opacity: 0.2; animation: character-glow 3s ease-in-out infinite; z-index: 2; } .character-image { width: 100%; height: 100%; object-fit: contain; border-radius: 50%; transition: var(--transition); position: relative; z-index: 3; } .character-image.tap-animation { animation: tap-bounce 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55); } .tap-effects { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); pointer-events: none; z-index: 4; } .ripple-effect { width: 100px; height: 100px; border: 2px solid var(--accent); border-radius: 50%; opacity: 0; animation: ripple 0.6s ease-out; } .floating-rewards { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); pointer-events: none; z-index: 5; } .floating-reward { position: absolute; font-family: var(--font-display); font-size: 28px; font-weight: 900; color: var(--warning); opacity: 0; pointer-events: none; text-shadow: 0 0 30px rgba(255, 152, 0, 1); animation: float-up 2.5s ease-out forwards; z-index: 1000; } .floating-reward.critical { color: var(--danger); font-size: 36px; text-shadow: 0 0 40px rgba(244, 67, 54, 1); } .floating-reward.jackpot { color: var(--success); font-size: 40px; text-shadow: 0 0 50px rgba(76, 175, 80, 1); } .particle-system { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 6; } .tap-indicator { font-size: 1.1rem; color: var(--text-secondary); margin-top: var(--space-xl); font-weight: 600; animation: indicator-pulse 2s ease-in-out infinite; text-align: center; background: rgba(255, 255, 255, 0.05); padding: var(--space) var(--space-lg); border-radius: var(--radius-xl); border: 1px solid var(--border-secondary); backdrop-filter: blur(20px); display: flex; align-items: center; justify-content: center; gap: var(--space); position: relative; } .indicator-pulse { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: inherit; border-radius: inherit; animation: pulse-ring 2s ease-in-out infinite; z-index: -1; } .energy-system { background: rgba(255, 255, 255, 0.05); border-radius: var(--radius-lg); border: 2px solid var(--border-primary); padding: var(--space-lg); backdrop-filter: blur(30px); position: relative; } .energy-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--space-lg); } .energy-icon { width: 50px; height: 50px; background: var(--gradient-primary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 24px; animation: energy-pulse 2s ease-in-out infinite; box-shadow: var(--shadow-glow); position: relative; } .energy-spark { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(circle, rgba(255, 255, 255, 0.3), transparent); border-radius: inherit; animation: spark-flash 1.5s ease-in-out infinite; } .energy-info { flex: 1; margin-left: var(--space-lg); } .energy-label { font-size: 0.9rem; color: var(--text-secondary); font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: var(--space-xs); } .energy-text { font-family: var(--font-display); font-size: 1.3rem; font-weight: 800; color: var(--text-primary); } .energy-status { display: flex; align-items: center; gap: var(--space-xs); font-size: 0.8rem; font-weight: 600; } .energy-status i { animation: status-blink 2s ease-in-out infinite; } .energy-progress { width: 100%; height: 16px; background: rgba(255, 255, 255, 0.1); border-radius: var(--radius); overflow: hidden; border: 1px solid var(--border-secondary); position: relative; } .energy-bar { height: 100%; background: var(--gradient-primary); border-radius: var(--radius); transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1); width: 100%; position: relative; } .energy-flow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent); animation: energy-flow 2s ease-in-out infinite; } .energy-glow { position: absolute; top: -2px; left: -2px; right: -2px; bottom: -2px; background: var(--gradient-primary); border-radius: inherit; opacity: 0.3; animation: energy-glow 3s ease-in-out infinite; z-index: -1; } @keyframes section-slide { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } } @keyframes section-shine { 0% { left: -100%; } 100% { left: 100%; } } @keyframes icon-glow { 0%, 100% { opacity: 0.3; transform: scale(1); } 50% { opacity: 0.6; transform: scale(1.05); } } @keyframes combo-glow { 0% { box-shadow: var(--shadow-lg); } 100% { box-shadow: var(--shadow-glow); } } @keyframes fire-dance { 0%, 100% { opacity: 0.3; transform: scale(1); } 50% { opacity: 0.6; transform: scale(1.1); } } @keyframes aura-rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } @keyframes character-glow { 0%, 100% { opacity: 0.2; transform: scale(1); } 50% { opacity: 0.4; transform: scale(1.05); } } @keyframes tap-bounce { 0% { transform: scale(1); } 50% { transform: scale(1.1); } 100% { transform: scale(1); } } @keyframes ripple { 0% { opacity: 1; transform: scale(0); } 100% { opacity: 0; transform: scale(2); } } @keyframes float-up { 0% { opacity: 1; transform: translate(-50%, -50%) translateY(0) scale(1); } 100% { opacity: 0; transform: translate(-50%, -50%) translateY(-100px) scale(1.2); } } @keyframes indicator-pulse { 0%, 100% { opacity: 0.7; transform: scale(1); } 50% { opacity: 1; transform: scale(1.02); } } @keyframes pulse-ring { 0% { opacity: 0.3; transform: scale(1); } 50% { opacity: 0.1; transform: scale(1.05); } 100% { opacity: 0.3; transform: scale(1); } } @keyframes energy-pulse { 0%, 100% { transform: scale(1); box-shadow: var(--shadow-glow); } 50% { transform: scale(1.05); box-shadow: var(--shadow-glow), 0 0 30px rgba(76, 175, 80, 0.8); } } @keyframes spark-flash { 0%, 100% { opacity: 0; } 50% { opacity: 0.6; } } @keyframes status-blink { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } @keyframes energy-flow { 0% { left: -100%; } 100% { left: 100%; } } @keyframes energy-glow { 0%, 100% { opacity: 0.3; } 50% { opacity: 0.6; } } .boost-grid { display: grid; grid-template-columns: 1fr; gap: var(--space-xl); } .boost-card { background: rgba(255, 255, 255, 0.05); border: 2px solid var(--border-secondary); border-radius: var(--radius-lg); padding: var(--space-xl); backdrop-filter: blur(30px); transition: var(--transition); position: relative; overflow: hidden; } .boost-card:hover { border-color: var(--border-primary); transform: translateY(-5px); box-shadow: var(--shadow-glow); } .card-glow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(45deg, rgba(76, 175, 80, 0.05), transparent); opacity: 0; transition: var(--transition); } .boost-card:hover .card-glow { opacity: 1; } .boost-header { display: flex; align-items: center; gap: var(--space-lg); margin-bottom: var(--space-xl); } .boost-icon { width: 60px; height: 60px; background: var(--gradient-primary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 28px; box-shadow: var(--shadow-glow); position: relative; } .boost-info { flex: 1; } .boost-title { font-size: 1.3rem; font-weight: 700; color: var(--text-primary); margin-bottom: var(--space-xs); } .boost-description { font-size: 0.9rem; color: var(--text-secondary); font-weight: 500; } .boost-level { background: var(--bg-glass); border: 1px solid var(--border-secondary); border-radius: var(--radius); padding: var(--space-xs) var(--space); font-size: 0.8rem; font-weight: 700; color: var(--accent); text-transform: uppercase; letter-spacing: 0.5px; } .boost-stats { display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--space-xl); padding: var(--space-lg); background: rgba(255, 255, 255, 0.05); border-radius: var(--radius); border: 1px solid var(--border-secondary); } .stat-item { text-align: center; } .stat-label { font-size: 0.8rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.5px; font-weight: 600; margin-bottom: var(--space-xs); } .stat-value { font-family: var(--font-display); font-size: 1.3rem; font-weight: 800; color: var(--text-primary); } .stat-value.next { color: var(--success); } .stat-arrow { color: var(--accent); font-size: 1.2rem; } .boost-cost { display: flex; align-items: center; justify-content: center; gap: var(--space-xs); margin-bottom: var(--space-lg); font-family: var(--font-display); font-size: 1.1rem; font-weight: 800; color: var(--warning); } .boost-status { padding: var(--space-xs) var(--space); border-radius: var(--radius); font-size: 0.8rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; text-align: center; } .boost-status.active { background: var(--success); color: white; } .boost-status:not(.active) { background: var(--bg-glass); color: var(--text-muted); border: 1px solid var(--border-secondary); } .btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-sm); padding: var(--space-lg) var(--space-xl); border: none; border-radius: var(--radius); font-size: 0.9rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; cursor: pointer; transition: var(--transition); position: relative; overflow: hidden; text-decoration: none; min-height: 50px; backdrop-filter: blur(20px); } .btn:disabled { opacity: 0.5; cursor: not-allowed; transform: none !important; } .btn-primary { background: var(--gradient-primary); color: white; box-shadow: var(--shadow-glow); } .btn-primary:hover:not(:disabled) { transform: translateY(-2px); box-shadow: var(--shadow-glow), var(--shadow-lg); } .btn-secondary { background: var(--bg-glass); color: var(--text-secondary); border: 2px solid var(--border-secondary); } .btn-secondary:hover:not(:disabled) { border-color: var(--border-primary); color: var(--text-primary); transform: translateY(-2px); } .btn-danger { background: var(--gradient-secondary); color: white; box-shadow: 0 0 20px rgba(244, 67, 54, 0.6); } .btn-danger:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 0 20px rgba(244, 67, 54, 0.6), var(--shadow-lg); } .btn-boost { width: 100%; } .btn-lg { padding: var(--space-xl) var(--space-2xl); font-size: 1rem; min-height: 60px; } .btn-shine { position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent); transition: var(--transition); } .btn:hover .btn-shine { left: 100%; } .mission-filters { display: flex; gap: var(--space-sm); margin-bottom: var(--space-2xl); overflow-x: auto; padding: var(--space); background: rgba(255, 255, 255, 0.05); border-radius: var(--radius-lg); border: 1px solid var(--border-secondary); backdrop-filter: blur(30px); } .filter-btn { display: flex; align-items: center; gap: var(--space-xs); padding: var(--space) var(--space-lg); background: var(--bg-glass); border: 2px solid var(--border-secondary); border-radius: var(--radius); color: var(--text-secondary); font-size: 0.8rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; cursor: pointer; transition: var(--transition); white-space: nowrap; backdrop-filter: blur(20px); } .filter-btn:hover { border-color: var(--border-primary); color: var(--text-primary); } .filter-btn.active { background: var(--gradient-primary); border: none; color: white; box-shadow: var(--shadow-glow); transform: scale(1.05); } .missions-list { display: flex; flex-direction: column; gap: var(--space-xl); } .mission-card { background: rgba(255, 255, 255, 0.05); border: 2px solid var(--border-secondary); border-radius: var(--radius-lg); padding: var(--space-xl); backdrop-filter: blur(30px); transition: var(--transition); position: relative; overflow: hidden; } .mission-card::before { content: ""; position: absolute; top: 0; left: 0; width: 4px; height: 100%; background: var(--gradient-primary); opacity: 0; transition: var(--transition); } .mission-card.started::before { opacity: 0.5; } .mission-card.completed::before { background: var(--gradient-accent); opacity: 1; } .mission-card.claimed::before { background: var(--gradient-secondary); opacity: 1; } .mission-card:hover { border-color: var(--border-primary); transform: translateY(-5px); box-shadow: var(--shadow-glow); } .wallet-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-lg); margin-bottom: var(--space-2xl); } .stat-card { background: rgba(255, 255, 255, 0.05); border: 2px solid var(--border-secondary); border-radius: var(--radius-lg); padding: var(--space-xl); text-align: center; backdrop-filter: blur(30px); transition: var(--transition); position: relative; overflow: hidden; } .stat-card:hover { border-color: var(--border-primary); transform: translateY(-5px); box-shadow: var(--shadow-glow); } .stat-glow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(45deg, rgba(76, 175, 80, 0.05), transparent); opacity: 0; transition: var(--transition); } .stat-card:hover .stat-glow { opacity: 1; } .stat-icon { width: 50px; height: 50px; background: var(--gradient-primary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 24px; margin: 0 auto var(--space-lg); box-shadow: var(--shadow-glow); } .pubg-section { background: rgba(255, 255, 255, 0.05); border: 2px solid var(--border-secondary); border-radius: var(--radius-lg); padding: var(--space-xl); margin-bottom: var(--space-2xl); backdrop-filter: blur(30px); } .pubg-header { display: flex; align-items: center; gap: var(--space-lg); margin-bottom: var(--space-xl); } .pubg-icon { width: 60px; height: 60px; background: var(--gradient-primary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 28px; box-shadow: var(--shadow-glow); } .pubg-title { font-size: 1.3rem; font-weight: 700; color: var(--text-primary); margin-bottom: var(--space-xs); } .pubg-description { font-size: 0.9rem; color: var(--text-secondary); font-weight: 500; } .pubg-form { display: flex; gap: var(--space-lg); } .input-group { position: relative; flex: 1; } .pubg-input { width: 100%; padding: var(--space-lg); background: var(--bg-glass); border: 2px solid var(--border-secondary); border-radius: var(--radius); color: var(--text-primary); font-size: 1rem; font-weight: 500; backdrop-filter: blur(20px); transition: var(--transition); } .pubg-input:focus { outline: none; border-color: var(--border-primary); box-shadow: var(--shadow-glow); } .pubg-input::placeholder { color: var(--text-muted); } .input-glow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: var(--gradient-primary); border-radius: inherit; opacity: 0; transition: var(--transition); z-index: -1; } .pubg-input:focus + .input-glow { opacity: 0.1; } .withdrawal-section { margin-bottom: var(--space-2xl); } .withdrawal-title { font-size: 1.3rem; font-weight: 700; color: var(--text-primary); margin-bottom: var(--space-xl); text-align: center; } .withdrawal-packages { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-lg); } .withdrawal-package { background: rgba(255, 255, 255, 0.05); border: 2px solid var(--border-secondary); border-radius: var(--radius-lg); padding: var(--space-xl); text-align: center; backdrop-filter: blur(30px); transition: var(--transition); cursor: pointer; position: relative; overflow: hidden; } .withdrawal-package:hover { border-color: var(--border-primary); transform: translateY(-5px); box-shadow: var(--shadow-glow); } .withdrawal-package.premium { border-color: rgba(255, 152, 0, 0.4); } .withdrawal-package.premium:hover { border-color: rgba(255, 152, 0, 0.8); box-shadow: 0 0 20px rgba(255, 152, 0, 0.6); } .withdrawal-package.legendary { border-color: rgba(156, 39, 176, 0.4); } .withdrawal-package.legendary:hover { border-color: rgba(156, 39, 176, 0.8); box-shadow: 0 0 20px rgba(156, 39, 176, 0.6); } .package-glow { position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: linear-gradient(90deg, transparent, rgba(76, 175, 80, 0.1), transparent); transition: var(--transition); } .withdrawal-package:hover .package-glow { left: 100%; } .package-icon { width: 60px; height: 60px; background: var(--gradient-primary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 28px; margin: 0 auto var(--space-lg); box-shadow: var(--shadow-glow); } .withdrawal-package.premium .package-icon { background: linear-gradient(135deg, #ff9800 0%, #f57c00 100%); } .withdrawal-package.legendary .package-icon { background: linear-gradient(135deg, #9c27b0 0%, #7b1fa2 100%); } .package-amount { font-family: var(--font-display); font-size: 1.8rem; font-weight: 900; color: var(--text-primary); margin-bottom: var(--space-xs); } .package-currency { font-size: 0.9rem; color: var(--text-secondary); font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: var(--space-lg); } .package-cost { font-family: var(--font-display); font-size: 1.1rem; font-weight: 800; color: var(--warning); margin-bottom: var(--space); } .package-status { font-size: 0.8rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; padding: var(--space-xs) var(--space); border-radius: var(--radius); display: inline-block; } .package-status.available { background: var(--success); color: white; } .package-status.premium { background: linear-gradient(135deg, #ff9800, #f57c00); color: white; } .package-status.legendary { background: linear-gradient(135deg, #9c27b0, #7b1fa2); color: white; } .history-section { margin-bottom: var(--space-2xl); } .history-title { font-size: 1.3rem; font-weight: 700; color: var(--text-primary); margin-bottom: var(--space-xl); text-align: center; } .withdrawal-history { background: rgba(255, 255, 255, 0.05); border-radius: var(--radius-lg); border: 1px solid var(--border-secondary); backdrop-filter: blur(30px); max-height: 300px; overflow-y: auto; } .friends-tabs { display: flex; gap: var(--space-sm); margin-bottom: var(--space-2xl); background: rgba(255, 255, 255, 0.05); border-radius: var(--radius-lg); padding: var(--space-sm); border: 1px solid var(--border-secondary); backdrop-filter: blur(20px); } .tab-btn { flex: 1; display: flex; align-items: center; justify-content: center; gap: var(--space-xs); padding: var(--space-lg); background: transparent; border: none; border-radius: var(--radius); color: var(--text-secondary); font-size: 0.9rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; cursor: pointer; transition: var(--transition); } .tab-btn.active { background: var(--gradient-primary); color: white; box-shadow: var(--shadow-glow); } .friends-tab { display: none; } .friends-tab.active { display: block; animation: tab-slide 0.5s cubic-bezier(0.4, 0, 0.2, 1); } .referral-section { background: rgba(255, 255, 255, 0.05); border: 2px solid var(--border-secondary); border-radius: var(--radius-lg); padding: var(--space-xl); backdrop-filter: blur(30px); } .referral-header { display: flex; align-items: center; gap: var(--space-lg); margin-bottom: var(--space-xl); } .referral-icon { width: 60px; height: 60px; background: var(--gradient-primary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-size: 28px; box-shadow: var(--shadow-glow); position: relative; } .referral-title { font-size: 1.3rem; font-weight: 700; color: var(--text-primary); margin-bottom: var(--space-xs); } .referral-description { font-size: 0.9rem; color: var(--text-secondary); font-weight: 500; } .referral-stats { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-lg); margin-bottom: var(--space-xl); } .referral-stat { display: flex; align-items: center; gap: var(--space-lg); padding: var(--space-lg); background: rgba(255, 255, 255, 0.05); border-radius: var(--radius); border: 1px solid var(--border-secondary); } .stat-number { font-family: var(--font-display); font-size: 1.5rem; font-weight: 800; color: var(--text-primary); margin-bottom: var(--space-xs); } .referral-link-section { margin-bottom: var(--space-xl); } .link-header { text-align: center; margin-bottom: var(--space-lg); } .link-header h4 { font-size: 1.1rem; font-weight: 700; color: var(--text-primary); margin-bottom: var(--space-xs); } .link-header p { font-size: 0.9rem; color: var(--text-secondary); } .link-container { display: flex; gap: var(--space-lg); } .referral-input { flex: 1; padding: var(--space-lg); background: var(--bg-glass); border: 2px solid var(--border-secondary); border-radius: var(--radius); color: var(--text-primary); font-size: 0.9rem; font-weight: 500; backdrop-filter: blur(20px); font-family: monospace; } .referral-input:focus { outline: none; border-color: var(--border-primary); box-shadow: var(--shadow-glow); } .friends-list, .leaderboard { display: flex; flex-direction: column; gap: var(--space-lg); } .friend-item, .leaderboard-item { display: flex; align-items: center; padding: var(--space-lg); background: rgba(255, 255, 255, 0.05); border-radius: var(--radius); border: 1px solid var(--border-secondary); backdrop-filter: blur(20px); transition: var(--transition); } .friend-item:hover, .leaderboard-item:hover { border-color: var(--border-primary); transform: translateY(-2px); box-shadow: var(--shadow-lg); } .friend-avatar { width: 50px; height: 50px; border-radius: 50%; border: 2px solid var(--accent); object-fit: cover; margin-right: var(--space-lg); } .friend-info { flex: 1; } .friend-name { font-weight: 600; color: var(--text-primary); margin-bottom: var(--space-xs); } .friend-date { font-size: 0.8rem; color: var(--text-muted); } .friend-earnings { text-align: right; font-weight: 700; color: var(--success); } .bottom-nav { position: fixed; bottom: 0; left: 50%; transform: translateX(-50%); width: 100%; max-width: 430px; z-index: 1000; padding: var(--space-lg); } .nav-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(26, 26, 46, 0.95); backdrop-filter: blur(30px); border-top: 2px solid var(--border-primary); border-radius: var(--radius-lg) var(--radius-lg) 0 0; box-shadow: 0 -10px 30px rgba(0, 0, 0, 0.5); } .nav-container { position: relative; display: flex; justify-content: space-around; align-items: center; gap: var(--space-sm); z-index: 2; } .nav-item { display: flex; flex-direction: column; align-items: center; gap: var(--space-xs); padding: var(--space); border-radius: var(--radius); color: var(--text-muted); text-decoration: none; transition: var(--transition); cursor: pointer; min-width: 60px; position: relative; } .nav-item:hover { color: var(--accent); transform: translateY(-2px); } .nav-item.active { color: var(--accent); background: rgba(255, 255, 255, 0.05); border: 1px solid var(--border-primary); box-shadow: var(--shadow-glow); } .nav-item.active::before { content: ""; position: absolute; top: -2px; left: 50%; transform: translateX(-50%); width: 20px; height: 3px; background: var(--gradient-primary); border-radius: var(--radius-xl); } .nav-icon { font-size: 20px; transition: var(--transition); position: relative; } .nav-item.active .nav-icon { transform: scale(1.1); } .nav-label { font-size: 0.7rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; } .modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.8); backdrop-filter: blur(10px); display: flex; align-items: center; justify-content: center; z-index: var(--z-modal); opacity: 0; visibility: hidden; transition: var(--transition); padding: var(--space-lg); } .modal-overlay.show { opacity: 1; visibility: visible; } .modal-content { background: var(--bg-secondary); border: 2px solid var(--border-primary); border-radius: var(--radius-lg); padding: var(--space-2xl); max-width: 400px; width: 100%; max-height: 90vh; overflow-y: auto; backdrop-filter: blur(30px); box-shadow: var(--shadow-lg); transform: scale(0.9) translateY(20px); transition: var(--transition); position: relative; } .modal-overlay.show .modal-content { transform: scale(1) translateY(0); } .modal-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--space-2xl); padding-bottom: var(--space-lg); border-bottom: 2px solid var(--border-secondary); } .modal-title { font-family: var(--font-display); font-size: 1.5rem; font-weight: 900; color: var(--text-primary); } .modal-close { width: 40px; height: 40px; background: var(--bg-glass); border: 2px solid var(--border-secondary); border-radius: var(--radius); display: flex; align-items: center; justify-content: center; color: var(--text-muted); cursor: pointer; transition: var(--transition); } .modal-close:hover { background: var(--danger); color: white; border-color: var(--danger); transform: scale(1.1); } .modal-body { margin-bottom: var(--space-2xl); } .modal-actions { display: flex; gap: var(--space-lg); } .welcome-modal { text-align: center; max-width: 500px; } .welcome-header { margin-bottom: var(--space-2xl); } .welcome-logo { width: 100px; height: 100px; background: var(--gradient-primary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 50px; margin: 0 auto var(--space-2xl); animation: logo-float 3s ease-in-out infinite; box-shadow: var(--shadow-glow); position: relative; } .logo-glow { position: absolute; top: -10px; left: -10px; right: -10px; bottom: -10px; background: var(--gradient-primary); border-radius: inherit; opacity: 0.3; animation: logo-glow 2s ease-in-out infinite alternate; z-index: -1; } .welcome-title { font-family: var(--font-display); font-size: 2rem; font-weight: 900; background: var(--gradient-primary); -webkit-background-clip: text; background-clip: text; color: transparent; margin-bottom: var(--space-lg); } .welcome-subtitle { font-size: 1.1rem; color: var(--text-secondary); margin-bottom: var(--space-2xl); } .welcome-bonus { background: rgba(255, 255, 255, 0.05); border: 2px solid var(--border-primary); border-radius: var(--radius-lg); padding: var(--space-xl); margin-bottom: var(--space-2xl); backdrop-filter: blur(20px); position: relative; } .bonus-icon { width: 60px; height: 60px; background: var(--gradient-secondary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 28px; margin: 0 auto var(--space-lg); animation: bonus-float 2s ease-in-out infinite; } .bonus-amount { font-family: var(--font-display); font-size: 3rem; font-weight: 900; color: var(--warning); text-shadow: 0 0 30px rgba(255, 152, 0, 0.8); margin-bottom: var(--space-sm); } .bonus-currency { font-size: 1.2rem; color: var(--text-secondary); font-weight: 700; margin-bottom: var(--space-lg); } .bonus-label { font-size: 0.9rem; color: var(--text-muted); font-weight: 500; } .welcome-actions { display: flex; flex-direction: column; gap: var(--space-lg); } .settings-list { display: flex; flex-direction: column; gap: var(--space-lg); } .setting-item { display: flex; align-items: center; justify-content: space-between; padding: var(--space-lg); background: rgba(255, 255, 255, 0.05); border: 2px solid var(--border-secondary); border-radius: var(--radius); backdrop-filter: blur(20px); transition: var(--transition); } .setting-item:hover { border-color: var(--border-primary); transform: translateY(-2px); box-shadow: var(--shadow-lg); } .setting-info { flex: 1; } .setting-title { font-size: 1rem; font-weight: 700; color: var(--text-primary); margin-bottom: var(--space-xs); } .setting-description { font-size: 0.9rem; color: var(--text-secondary); font-weight: 500; } .toggle-switch { width: 60px; height: 32px; background: var(--bg-glass); border: 2px solid var(--border-secondary); border-radius: var(--radius-xl); position: relative; cursor: pointer; transition: var(--transition); } .toggle-switch.active { background: var(--gradient-primary); border-color: var(--accent); box-shadow: var(--shadow-glow); } .toggle-slider { position: absolute; top: 2px; left: 2px; width: 24px; height: 24px; background: white; border-radius: 50%; transition: var(--transition); box-shadow: var(--shadow-sm); } .toggle-switch.active .toggle-slider { transform: translateX(28px); } .confirmation-icon { width: 80px; height: 80px; background: var(--gradient-secondary); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 40px; margin: 0 auto var(--space-xl); animation: warning-pulse 2s ease-in-out infinite; } .confirmation-text { font-size: 1rem; color: var(--text-secondary); line-height: 1.6; margin-bottom: var(--space-xl); text-align: center; } .notification-container { position: fixed; top: var(--space-lg); right: var(--space-lg); z-index: calc(var(--z-modal) + 10); max-width: 400px; width: 100%; } .notification { background: var(--bg-secondary); border: 2px solid var(--border-primary); border-radius: var(--radius-lg); padding: var(--space-lg); margin-bottom: var(--space); backdrop-filter: blur(30px); box-shadow: var(--shadow-lg); transform: translateX(100%); opacity: 0; transition: var(--transition); cursor: pointer; position: relative; overflow: hidden; } .notification::before { content: ""; position: absolute; top: 0; left: 0; width: 4px; height: 100%; background: var(--gradient-primary); } .notification.success::before { background: var(--gradient-accent); } .notification.error::before { background: var(--gradient-secondary); } .notification.warning::before { background: linear-gradient(135deg, #ff9800, #f57c00); } .notification.show { transform: translateX(0); opacity: 1; } .notification:hover { transform: translateX(-5px); box-shadow: var(--shadow-glow); } .empty-state { text-align: center; padding: var(--space-2xl); color: var(--text-muted); } .empty-icon { font-size: 60px; margin-bottom: var(--space-lg); opacity: 0.5; } .empty-title { font-size: 1.1rem; font-weight: 700; color: var(--text-secondary); margin-bottom: var(--space); } .empty-description { font-size: 1rem; color: var(--text-muted); font-weight: 500; } @keyframes tab-slide { 0% { opacity: 0; transform: translateX(20px); } 100% { opacity: 1; transform: translateX(0); } } @keyframes logo-float { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-10px) rotate(5deg); } } @keyframes logo-glow { 0% { opacity: 0.3; transform: scale(1); } 100% { opacity: 0.6; transform: scale(1.05); } } @keyframes bonus-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } } @keyframes warning-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } @media (max-width: 480px) { .app-header { padding: var(--space-lg) var(--space) var(--space-2xl); } .main-content { padding: var(--space-lg) var(--space) 120px; } .character-container { width: 280px; height: 280px; } .wallet-stats { grid-template-columns: 1fr; } .withdrawal-packages { grid-template-columns: 1fr; } .referral-stats { grid-template-columns: 1fr; } .modal-content { padding: var(--space-lg); margin: var(--space); } .notification-container { left: var(--space); right: var(--space); top: var(--space); } } @media (max-width: 360px) { .character-container { width: 240px; height: 240px; } .combo-system { flex-direction: column; gap: var(--space); } } ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-track { background: rgba(255, 255, 255, 0.05); border-radius: var(--radius); } ::-webkit-scrollbar-thumb { background: var(--gradient-primary); border-radius: var(--radius); } ::-webkit-scrollbar-thumb:hover { background: var(--gradient-accent); } ::selection { background: var(--accent); color: white; } ::-moz-selection { background: var(--accent); color: white; } *:focus { outline: 2px solid var(--accent); outline-offset: 2px; } button:focus, .btn:focus { outline: 2px solid var(--accent); outline-offset: 2px; }