* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Inter', sans-serif; }
body { background-color: #1c1c1c; color: #ffffff; overflow: hidden; user-select: none; }
.app-container { display: flex; height: 100vh; width: 100vw; padding: 2vw; gap: 1.5vw; }
.column { background-color: #252525; border-radius: 12px; display: flex; flex-direction: column; padding: 15px; }
#packages-col { width: 25vw; }
#channels-col { width: 30vw; }
.col-header { font-size: 18px; font-weight: 700; margin-bottom: 15px; display: flex; align-items: center; gap: 10px; }

/* أزرار البحث والمفضلة */
.search-box, .action-btn { background-color: #333; padding: 10px 15px; border-radius: 8px; margin-bottom: 10px; font-size: 14px; color: #aaa; display: flex; align-items: center; gap: 10px; transition: all 0.1s ease-in-out; border: 2px solid transparent; }
.search-box.focused, .action-btn.focused { background-color: #333 !important; border: 2px solid #ffd700 !important; color: #ffd700 !important; transform: scale(1.02); }
.action-btn.active-fav { background-color: #ff0055; color: white; font-weight: bold; }

.list-container { list-style: none; overflow-y: auto; flex-grow: 1; scrollbar-width: none; }
.list-container::-webkit-scrollbar { display: none; }

.list-item { padding: 12px 15px; margin-bottom: 8px; border-radius: 8px; font-size: 16px; font-weight: 600; display: flex; align-items: center; justify-content: space-between; border: 2px solid transparent; transition: all 0.1s ease-in-out; background-color: transparent; }

/* توهج سريع وخفيف على معالج الشاشة (بدون ظلال) */
.list-item.focused {
    background: linear-gradient(90deg, rgba(255,215,0,0.15) 0%, rgba(255,215,0,0) 100%) !important;
    border: 2px solid #ffd700 !important;
    color: #ffd700 !important;
    transform: scale(1.04);
    z-index: 5;
}

.list-item.active { background-color: #333; }
.item-content { display: flex; align-items: center; gap: 12px; }
.item-icon { width: 32px; height: 32px; background-color: #444; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 13px; transition: 0.1s; }
.list-item.focused .item-icon { background-color: #ffd700; color: #000; }
.fav-star { color: #ff0055; font-size: 18px; }

/* المشغل والفول سكرين */
.player-col { flex-grow: 1; position: relative; border-radius: 20px; overflow: hidden; background-color: #000; margin: 2vw 4vw 4vw 1vw; transition: all 0.2s ease; }
.player-col:fullscreen { margin: 0; border-radius: 0; }
.player-col:-webkit-full-screen { margin: 0; border-radius: 0; }

.video-wrapper, video { width: 100%; height: 100%; object-fit: contain; }
video { background-color: #000000 !important; outline: none; pointer-events: none; }
video::-webkit-media-controls { display: none !important; }

/* شريط المعلومات بلون صلب (بدون غواش) لزيادة السرعة */
.channel-info-bar { position: absolute; bottom: 20px; left: 20px; right: 20px; background-color: rgba(15, 15, 15, 0.98); padding: 15px 25px; border-radius: 12px; display: flex; align-items: center; gap: 20px; z-index: 10; opacity: 1; transition: opacity 0.2s ease; }
.channel-info-bar.hidden-smart { opacity: 0; pointer-events: none; }

.top-bar { position: absolute; top: 20px; right: 20px; z-index: 10; transition: opacity 0.2s ease; }
.top-bar.hidden-smart { opacity: 0; }
#clock { background-color: rgba(0, 0, 0, 0.8); padding: 8px 15px; border-radius: 20px; font-weight: bold; font-size: 18px; border: 1px solid rgba(255,255,255,0.1); }

.info-icon { width: 50px; height: 50px; background-color: #555; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: bold; font-size: 16px; color: white; }
.info-text h2 { font-size: 20px; margin-bottom: 5px; }
.info-text p { font-size: 14px; color: #aaa; }

/* التحميل والخطأ */
.spinner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 60px; height: 60px; border: 6px solid rgba(255, 255, 255, 0.1); border-top: 6px solid #ffd700; border-radius: 50%; animation: spin 1s linear infinite; display: none; z-index: 20; }
@keyframes spin { 0% { transform: translate(-50%, -50%) rotate(0deg); } 100% { transform: translate(-50%, -50%) rotate(360deg); } }
.error-msg { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: rgba(255, 0, 0, 0.9); color: white; padding: 15px 30px; border-radius: 10px; font-size: 18px; font-weight: bold; display: none; z-index: 20; text-align: center; }

/* قائمة OSD بلون صلب (بدون غواش) */
.osd-container { position: absolute; top: 0; left: 0; bottom: 0; width: 350px; background: rgba(15, 15, 15, 0.98); padding: 20px; z-index: 30; display: flex; flex-direction: column; transition: transform 0.2s ease; transform: translateX(0); }
.osd-container.hidden { transform: translateX(-100%); }

/* شاشة البحث السريعة */
.search-modal { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(0,0,0,0.95); z-index: 100; display: flex; justify-content: center; align-items: flex-start; padding-top: 10vh; transition: 0.2s; }
.search-modal.hidden { opacity: 0; pointer-events: none; }
.search-content { width: 60%; background: #252525; padding: 20px; border-radius: 15px; border: 1px solid #444; }
#search-input { width: 100%; padding: 15px; font-size: 20px; background: #111; color: white; border: 2px solid #00d2ff; border-radius: 10px; outline: none; }
#search-input:focus { border-color: #ffd700; }
