 .gradient-text {
            background: linear-gradient(135deg, var(--cyan), var(--blue));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .ranking-card {
            background: rgba(30, 41, 59, 0.8);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(6, 182, 212, 0.2);
            transition: all 0.3s ease;
        }

        .ranking-card:hover {
            transform: translateY(-2px);
            border-color: rgba(6, 182, 212, 0.4);
            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
        }

        .tab-button, .period-button {
            background: rgba(15, 23, 42, 0.6);
            border: 1px solid rgba(100, 116, 139, 0.3);
            transition: all 0.3s ease;
        }

        .tab-button.active, .period-button.active {
            background: rgba(34, 211, 238, 0.1);
            border-color: var(--cyan);
            color: var(--cyan);
        }

        .tab-button:hover:not(.active), .period-button:hover:not(.active) {
            background: rgba(30, 41, 59, 0.8);
            border-color: rgba(100, 116, 139, 0.5);
        }

        .genre-select {
            background: rgba(15, 23, 42, 0.8);
            border: 1px solid rgba(100, 116, 139, 0.3);
        }

        .genre-select:focus {
            background: rgba(15, 23, 42, 0.95);
            border-color: var(--cyan);
            box-shadow: 0 0 0 3px rgba(34, 211, 238, 0.1);
        }

        .rank-number {
            background: linear-gradient(135deg, var(--cyan), var(--blue));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .rank-1 {
            background: linear-gradient(135deg, #ffd700, #ffed4e);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .rank-2 {
            background: linear-gradient(135deg, #c0c0c0, #e5e7eb);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .rank-3 {
            background: linear-gradient(135deg, #cd7f32, #d97706);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .genre-tag {
            background: rgba(34, 211, 238, 0.1);
            border: 1px solid rgba(34, 211, 238, 0.3);
            color: var(--cyan);
        }

        .rating-star {
            color: #fbbf24;
        }

        .trend-up {
            color: #10b981;
        }

        .trend-down {
            color: #ef4444;
        }

        .trend-same {
            color: #6b7280;
        }

        .stats-item {
            background: rgba(15, 23, 42, 0.6);
            border: 1px solid rgba(100, 116, 139, 0.2);
        }

        .crown-icon {
            color: #ffd700;
            filter: drop-shadow(0 0 8px rgba(255, 215, 0, 0.3));
        }