| | |
| | body { |
| | margin: 0; |
| | padding: 0; |
| | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; |
| | background-color: #121212; |
| | color: white; |
| | display: flex; |
| | justify-content: center; |
| | height: 100vh; |
| | overflow: hidden; |
| | margin-top: 60px; |
| | } |
| | |
| | .app-container { |
| | width: 100%; |
| | max-width: 420px; |
| | min-width: 320px; |
| | height: calc(100% - 60px); |
| | min-height: 600px; |
| | background-color: #181818; |
| | position: relative; |
| | display: flex; |
| | flex-direction: column; |
| | box-shadow: 0 0 20px rgba(0,0,0,0.5); |
| | margin: 60px auto 0; |
| | overflow: hidden; |
| | } |
| | |
| | .header { |
| | padding: 20px; |
| | display: flex; |
| | justify-content: space-between; |
| | align-items: center; |
| | } |
| | .header h1 { margin: 0; font-size: 24px; font-weight: 800; } |
| | .header .revenue { color: #1DB954; font-weight: bold; font-size: 14px; } |
| |
|
| | |
| | .card-stack { |
| | flex: 1; |
| | position: relative; |
| | display: flex; |
| | justify-content: center; |
| | align-items: center; |
| | perspective: 1000px; |
| | } |
| | .card { |
| | width: 85%; |
| | min-width: 280px; |
| | height: 55vh; |
| | min-height: 400px; |
| | max-height: 500px; |
| | background: linear-gradient(145deg, #2a2a2a, #222); |
| | border-radius: 20px; |
| | position: absolute; |
| | box-shadow: 0 10px 25px rgba(0,0,0,0.5); |
| | display: flex; |
| | flex-direction: column; |
| | justify-content: space-between; |
| | padding: 25px; |
| | box-sizing: border-box; |
| | transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.4s; |
| | border: 1px solid #333; |
| | } |
| | |
| | .service-badge { |
| | align-self: flex-start; |
| | background: rgba(255,255,255,0.1); |
| | padding: 5px 12px; |
| | border-radius: 50px; |
| | font-size: 12px; |
| | font-weight: bold; |
| | text-transform: uppercase; |
| | display: flex; |
| | align-items: center; |
| | gap: 5px; |
| | } |
| | .spotify-theme .service-badge { color: #1DB954; border: 1px solid #1DB954; } |
| | .netflix-theme .service-badge { color: #E50914; border: 1px solid #E50914; } |
| |
|
| | |
| | .client-info h2 { font-size: 28px; margin: 0 0 5px 0; } |
| | .client-info p { color: #888; margin: 0; font-size: 14px; } |
| | .expiry-warning { color: #ff4b4b; font-size: 13px; margin-top: 10px; display: block; } |
| |
|
| | |
| | .actions { |
| | padding: 0 30px 120px 30px; |
| | display: flex; |
| | justify-content: space-between; |
| | gap: 20px; |
| | } |
| |
|
| | .btn-action { |
| | flex: 1; |
| | height: 60px; |
| | border-radius: 30px; |
| | border: none; |
| | font-size: 16px; |
| | font-weight: bold; |
| | cursor: pointer; |
| | transition: transform 0.1s, box-shadow 0.2s; |
| | display: flex; |
| | justify-content: center; |
| | align-items: center; |
| | gap: 10px; |
| | } |
| | .btn-action:active { transform: scale(0.95); } |
| |
|
| | .btn-whatsapp { |
| | background-color: #333; |
| | color: white; |
| | } |
| | .btn-whatsapp:hover { |
| | background-color: #444; |
| | box-shadow: 0 0 15px rgba(255, 255, 255, 0.1); |
| | } |
| | .btn-renew { |
| | background-color: #1DB954; |
| | color: black; |
| | box-shadow: 0 0 15px rgba(29, 185, 84, 0.4); |
| | } |
| | .btn-renew:hover { |
| | box-shadow: 0 0 25px rgba(29, 185, 84, 0.6); |
| | } |
| |
|
| | |
| | .bottom-nav { |
| | position: absolute; |
| | bottom: 0; |
| | width: 100%; |
| | height: 80px; |
| | background: #121212; |
| | display: flex; |
| | justify-content: space-around; |
| | align-items: center; |
| | border-top: 1px solid #333; |
| | } |
| | .nav-item { |
| | display: flex; |
| | flex-direction: column; |
| | align-items: center; |
| | color: #666; |
| | font-size: 10px; |
| | gap: 4px; |
| | cursor: pointer; |
| | transition: color 0.2s; |
| | } |
| | .nav-item:hover { |
| | color: #aaa; |
| | } |
| | .nav-item.active { color: #1DB954; } |
| | .nav-icon { font-size: 24px; } |
| |
|
| | |
| | .swipe-right { |
| | transform: translateX(120%) rotate(15deg) !important; |
| | opacity: 0 !important; |
| | } |
| | .swipe-left { |
| | transform: translateX(-120%) rotate(-15deg) !important; |
| | opacity: 0 !important; |
| | } |
| |
|
| | |
| | @keyframes pulse { |
| | 0% { opacity: 0.5; } |
| | 50% { opacity: 1; } |
| | 100% { opacity: 0.5; } |
| | } |
| | .loading { |
| | animation: pulse 1.5s infinite ease-in-out; |
| | } |