        /* ========================================
                                                       PROFESSIONAL TV PLAYER - VIDEO.JS
                                                       ======================================== */

        /* Main Container */
        .tv-container {
            max-width: 100%;
            margin: 0 auto;
            padding: 20px;
        }

        /* Player Wrapper */
        .player-wrapper {
            position: relative;
            background: #000;
            border-radius: 16px;
            overflow: hidden;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
            width: 100%;
            min-width: 300px;
        }

        /* Video.js Customization */
        .video-js {
            width: 100%;
            height: auto;
            aspect-ratio: 16 / 9;
            border-radius: 16px;
        }

        .video-js .vjs-tech {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .video-js .vjs-control-bar {
            background-color: rgba(0, 0, 0, 0.85);
            backdrop-filter: blur(10px);
        }

        .video-js .vjs-big-play-button {
            display: none !important;
        }

        .video-js .vjs-progress-holder .vjs-play-progress,
        .video-js .vjs-volume-level,
        .video-js .vjs-slider-bar {
            background-color: {{ $settings['primary_color'] ?? '#ff0000' }} !important;
        }

        /* مخفی کردن دکمه‌های play/pause و سرعت */
        .video-js .vjs-play-control,
        .video-js .vjs-playback-rate,
        .video-js .vjs-big-play-button {
            display: none !important;
        }

        /* Live Badge */
        .live-badge {
            position: absolute;
            top: 15px;
            left: 15px;
            z-index: 20;
            background: #ff0000;
            color: white;
            padding: 5px 15px;
            border-radius: 30px;
            font-size: 12px;
            font-weight: bold;
            letter-spacing: 1px;
            display: flex;
            align-items: center;
            gap: 8px;
            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
            animation: pulse 1.5s infinite;
        }

        @keyframes pulse {

            0%,
            100% {
                opacity: 1;
            }

            50% {
                opacity: 0.7;
            }
        }

        .live-badge i {
            font-size: 10px;
        }

        /* Watermark */
        .watermark {
            position: absolute;
            z-index: 20;
            pointer-events: none;
            background: rgba(0, 0, 0, 0.5);
            backdrop-filter: blur(5px);
            padding: 6px 15px;
            border-radius: 30px;
            font-size: 12px;
            color: white;
            font-weight: 500;
            transition: all 0.3s ease;
        }

        .watermark.bottom-right {
            bottom: 75px;
            right: 15px;
        }

        .watermark.bottom-left {
            bottom: 70px;
            left: 15px;
        }

        .watermark.top-right {
            top: 15px;
            right: 15px;
        }

        .watermark.top-left {
            top: 15px;
            left: 15px;
        }

        .video-js.vjs-fullscreen .watermark.bottom-right,
        .video-js.vjs-fullscreen .watermark.bottom-left {
            bottom: 100px;
        }

        /* Player Logo */
        .player-logo {
            position: absolute;
            z-index: 20;
            pointer-events: none;
            background: rgba(0, 0, 0, 0.3);
            padding: 5px;
            border-radius: 10px;
            transition: all 0.3s ease;
        }

        .player-logo.top-right {
            top: 15px;
            right: 15px;
        }

        .player-logo.top-left {
            top: 15px;
            left: 15px;
        }

        .player-logo.bottom-right {
            bottom: 70px;
            right: 15px;
        }

        .player-logo.bottom-left {
            bottom: 70px;
            left: 15px;
        }

        .player-logo img {
            height: 40px;
            width: auto;
            display: block;
        }

        .player-logo.small img {
            height: 25px;
        }

        .player-logo.large img {
            height: 60px;
        }

        /* Subtitle */
        .subtitle-container {
            position: absolute;
            bottom: 80px;
            left: 0;
            right: 0;
            z-index: 20;
            background: rgba(0, 0, 0, 0.7);
            backdrop-filter: blur(8px);
            padding: 12px 20px;
            overflow: hidden;
            white-space: nowrap;
            pointer-events: none;
            direction: ltr;
        }

        .subtitle-container.top {
            bottom: auto;
            top: 80px;
        }

        .subtitle-text {
            display: inline-block;
            color: #fff;
            font-size: 18px;
            font-weight: 500;
            text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
            animation: scrollSubtitle linear infinite;
            white-space: nowrap;
            padding-right: 100%;
            font-family: 'Tahoma', 'Segoe UI', sans-serif;
            direction: ltr;
        }

        @keyframes scrollSubtitle {
            0% {
                transform: translateX(0);
            }

            100% {
                transform: translateX(-100%);
            }
        }

        /* Player Ticker */
        .player-ticker {
            position: absolute;
            bottom: 30px;
            left: 0;
            right: 0;
            background: linear-gradient(90deg, #1a1a2e 0%, #0f0f1a 100%);
            backdrop-filter: blur(10px);
            z-index: 25;
            display: flex;
            align-items: center;
            overflow: hidden;
            border-radius: 0;
            direction: ltr;
        }

        .player-ticker.top {
            top: 70px;
            bottom: auto;
        }

        .video-js.vjs-fullscreen .player-ticker {
            bottom: 100px;
            z-index: 30;
        }

        .ticker-icon-inline {
            background: {{ $settings['primary_color'] ?? '#ff0000' }};
            color: white;
            padding: 8px 20px;
            font-size: 12px;
            font-weight: bold;
            white-space: nowrap;
            display: flex;
            align-items: center;
            gap: 8px;
            flex-shrink: 0;
            height: 100%;
        }

        .ticker-track-container {
            flex: 1;
            overflow: hidden;
            height: 44px;
            position: relative;
        }

        .ticker-track-ltr {
            position: absolute;
            white-space: nowrap;
            will-change: transform;
            padding: 12px 0;
            font-size: 13px;
            color: #fff;
            font-family: 'Tahoma', 'Segoe UI', sans-serif;
            direction: rtl;
        }

        /* Channel Info */
        .channel-info-section {
            margin-top: 25px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 20px;
        }

        .channel-details {
            flex: 1;
        }

        .channel-name {
            font-size: 24px;
            font-weight: bold;
            margin: 0 0 5px 0;
            display: flex;
            align-items: center;
            gap: 12px;
        }

        .channel-logo-sm {
            height: 35px;
            width: auto;
        }

        .channel-description {
            color: #666;
            font-size: 14px;
            margin: 0;
        }

        .stats-panel {
            display: flex;
            gap: 30px;
            background: #f0f0f0;
            padding: 12px 25px;
            border-radius: 50px;
        }

        .stat {
            text-align: center;
        }

        .stat-value {
            font-size: 22px;
            font-weight: bold;
            color: #333;
        }

        .stat-label {
            font-size: 11px;
            color: #999;
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        /* Now Playing Bar */
        .now-playing-bar {
            background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
            border-radius: 12px;
            padding: 12px 20px;
            margin-top: 20px;
            color: white;
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 15px;
        }

        .now-playing-info {
            display: flex;
            align-items: center;
            gap: 15px;
            flex-wrap: wrap;
        }

        .now-playing-label {
            font-size: 10px;
            opacity: 0.7;
            letter-spacing: 2px;
        }

        .now-playing-title {
            font-size: 16px;
            font-weight: bold;
        }

        .now-playing-time {
            font-family: monospace;
            font-size: 14px;
            background: rgba(255, 255, 255, 0.15);
            padding: 6px 15px;
            border-radius: 30px;
        }

        /* Timeline */
        .timeline-section {
            margin-top: 30px;
            width: 100%;
        }

        .timeline-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px;
            flex-wrap: wrap;
            gap: 10px;
        }

        .timeline-header h3 {
            font-size: 16px;
            font-weight: bold;
            margin: 0;
            color: #333;
        }

        .timeline-date {
            font-size: 12px;
            color: #999;
        }

        .timeline-wrapper {
            width: 100%;
            position: relative;
        }

        .timeline-container {
            overflow-x: auto;
            overflow-y: hidden;
            scroll-behavior: smooth;
            -webkit-overflow-scrolling: touch;
            cursor: grab;
            width: 100%;
            scrollbar-width: thin;
        }

        .timeline-container:active {
            cursor: grabbing;
        }

        .timeline-container::-webkit-scrollbar {
            height: 4px;
        }

        .timeline-container::-webkit-scrollbar-track {
            background: #e0e0e0;
            border-radius: 10px;
        }

        .timeline-container::-webkit-scrollbar-thumb {
            background: {{ $settings['primary_color'] ?? '#ff0000' }};
            border-radius: 10px;
        }

        .timeline-track {
            display: inline-flex;
            gap: 10px;
            padding: 5px 20px;
            min-width: 100%;
            width: max-content;
        }

        /* Timeline Program Items */
        .timeline-program {
            display: inline-flex;
            flex-direction: column;
            min-width: 170px;
            background: #f5f5f5;
            border-radius: 12px;
            overflow: hidden;
            transition: all 0.3s ease;
            position: relative;
            border: 1px solid #e0e0e0;
            padding-bottom: 4px;
        }

        /* برنامه‌های پخش شده - بکگراند کاملاً آبی رویال */
        .timeline-program.passed {
            background: #4169E1 !important;
            /* royalblue */
            opacity: 0.85;
            border-color: #3158c9;
        }

        .timeline-program.passed .program-time {
            background: #3158c9;
            color: #ffffff;
        }

        .timeline-program.passed .program-title {
            color: #ffffff;
        }

        /* برنامه در حال پخش - با progress bar آبی رویال */
        .timeline-program.current {
            background: #ffffff;
            border: 2px solid #4169E1;
            box-shadow: 0 4px 15px rgba(65, 105, 225, 0.3);
            position: relative;
            overflow: hidden;
        }

        .timeline-program.current .program-time {
            background: #4169E1;
            color: white;
        }

        /* Progress bar برای برنامه در حال پخش */
        .timeline-program.current .program-progress-bar-container {
            position: absolute;
            bottom: 0;
            left: 0;
            height: 4px;
            width: 100%;
            background: rgba(65, 105, 225, 0.15);
            z-index: 2;
        }

        .timeline-program.current .program-progress-bar-fill {
            height: 100%;
            background: linear-gradient(to right, #3158c9, #4169E1);
            transition: width 1s ease;
            border-radius: 0 2px 2px 0;
        }

        /* برنامه‌های آینده - بکگراند سفید */
        .timeline-program.future {
            background: #ffffff;
            border: 1px solid #e0e0e0;
        }

        .program-time {
            background: #e0e0e0;
            padding: 8px 12px;
            text-align: center;
            font-size: 11px;
            font-weight: bold;
            font-family: monospace;
            transition: all 0.3s ease;
        }

        .program-title {
            padding: 12px;
            font-size: 12px;
            font-weight: 500;
            line-height: 1.4;
            color: #333;
            transition: all 0.3s ease;
            flex: 1;
        }

        /* نوار پیشرفت برای برنامه‌های پخش شده */
        .program-progress {
            height: 4px;
            background: rgba(0, 0, 0, 0.1);
            position: relative;
            overflow: hidden;
            margin-top: auto;
        }

        .program-progress-bar {
            height: 100%;
            background: #999;
            width: 0%;
            transition: width 1s linear;
        }

        @media (max-width: 768px) {
            .tv-container {
                padding: 10px;
            }

            .channel-info-section {
                flex-direction: column;
                align-items: flex-start;
            }

            .stats-panel {
                width: 100%;
                justify-content: space-around;
            }

            .timeline-program {
                min-width: 140px;
            }

            .subtitle-container {
                bottom: 65px;
                padding: 8px 15px;
            }

            .subtitle-text {
                font-size: 14px;
            }

            .player-logo img {
                height: 30px;
            }

            .watermark {
                font-size: 10px;
                padding: 4px 12px;
            }

            .now-playing-bar {
                flex-direction: column;
                text-align: center;
            }

            .player-ticker {
                bottom: 60px;
            }

            .ticker-icon-inline span {
                display: none;
            }
        }

        @media (max-width: 480px) {
            .timeline-program {
                min-width: 120px;
            }

            .program-title {
                font-size: 10px;
                padding: 8px;
            }

            .program-time {
                font-size: 9px;
                padding: 5px 8px;
            }

            .live-badge {
                top: 10px;
                left: 10px;
                padding: 3px 10px;
                font-size: 10px;
            }
        }

/* Embed player (tv/embed.blade.php) */
.embed-player * { margin: 0; padding: 0; box-sizing: border-box; }
.embed-player { background: #000; font-family: Arial, sans-serif; }
.embed-player .player-container { position: relative; width: 100%; height: 100vh; background: #000; }
.embed-player #embedPlayer { width: 100%; height: 100%; object-fit: contain; background: #000; }
.embed-player .watermark { position: absolute; bottom: 10px; right: 10px; background: rgba(0,0,0,.5); color: #fff; padding: 4px 10px; border-radius: 4px; font-size: 11px; z-index: 10; display: flex; align-items: center; gap: 6px; }
.embed-player .watermark img { height: 20px; }
.embed-player .live-badge { position: absolute; top: 10px; left: 10px; background: #f00; color: #fff; padding: 4px 10px; border-radius: 4px; font-size: 11px; font-weight: bold; z-index: 10; }
.embed-player .offline-message { display: flex; align-items: center; justify-content: center; height: 100%; color: #fff; text-align: center; }
.is-hidden { display: none !important; }
