From 1d2a2735bd578f514f91268caeebd9c95bc31cc6 Mon Sep 17 00:00:00 2001 From: LoveEL <166885442+Yourhaze89@users.noreply.github.com> Date: Thu, 28 Aug 2025 13:29:02 -0400 Subject: [PATCH 1/6] The Philippines has been added --- aria.m3u | 2 ++ 1 file changed, 2 insertions(+) diff --git a/aria.m3u b/aria.m3u index 0b8f06d..7501bbe 100644 --- a/aria.m3u +++ b/aria.m3u @@ -1115,6 +1115,8 @@ https://a1xs.vip/700034 https://a1xs.vip/700035 #EXTINF:-1 group-title="New Zealand",Sky Sport 6 https://a1xs.vip/700036 +#EXTINF:-1 group-title="Philippines" tvg-logo="https://upload.wikimedia.org/wikipedia/en/thumb/c/c0/GMA_Network_Logo_Vector.svg/1200px-GMA_Network_Logo_Vector.svg.png",GMA +https://ott.m3u8.nathcreqtives.com/gma/manifest.m3u8 #EXTINF:-1 group-title="Poland" tvg-logo="https://upload.wikimedia.org/wikipedia/commons/thumb/3/3d/Telewizja_Polska_-_TVP1_logo_2003.svg/1200px-Telewizja_Polska_-_TVP1_logo_2003.svg.png",TVP 1 http://46.171.186.177:9981/stream/channelid/738470772?ticket=E0083AC1C68CF88F3281425748E50C074C5C4AC2&profile=pass #EXTINF:-1 group-title="Poland" tvg-logo="https://upload.wikimedia.org/wikipedia/commons/thumb/8/8c/Telewizja_Polska_-_TVP2_logo_2003.svg/1200px-Telewizja_Polska_-_TVP2_logo_2003.svg.png",TVP 2 From da742bdfef190a8f56a41f12c0a310e8e24dc27f Mon Sep 17 00:00:00 2001 From: LoveEL <166885442+Yourhaze89@users.noreply.github.com> Date: Thu, 28 Aug 2025 14:00:34 -0400 Subject: [PATCH 2/6] Update aria+.m3u --- aria+.m3u | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/aria+.m3u b/aria+.m3u index fb92a6d..1e03b92 100644 --- a/aria+.m3u +++ b/aria+.m3u @@ -199,13 +199,13 @@ http://portal5458.com:8080/live/Y18QnUSTwM/52775199980/40741.ts #EXTINF:-1 group-title="Canada" tvg-id="CP24.(CablePulse.24).ca" tvg-logo="https://media.starlite.best/cp24.cablepulse.24.ca.png",CP24 http://portal5458.com:8080/live/Y18QnUSTwM/52775199980/40740.ts #EXTINF:-1 group-title="Canada" tvg-id="Crave1.-.East.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/canada/crave-1-ca.png",Crave 1 -https://starlite.best/api/stream/smart/smart/livetv.epg/crave1.east.ca.m3u8 +http://portal5458.com:8080/live/Y18QnUSTwM/52775199980/40656.ts #EXTINF:-1 group-title="Canada" tvg-id="Crave2.-.East.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/canada/crave-2-ca.png",Crave 2 -https://starlite.best/api/stream/smart/smart/livetv.epg/crave2.east.ca.m3u8 +http://portal5458.com:8080/live/Y18QnUSTwM/52775199980/40655.ts #EXTINF:-1 group-title="Canada" tvg-id="Crave3.-.East.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/canada/crave-3-ca.png",Crave 3 -https://starlite.best/api/stream/smart/smart/livetv.epg/crave3.east.ca.m3u8 +https://theariatv.github.io/channeldead.mp4 #EXTINF:-1 group-title="Canada" tvg-id="Crave4.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/canada/crave-4-ca.png",Crave 4 -https://starlite.best/api/stream/smart/smart/livetv.epg/crave4.east.ca.m3u8 +http://portal5458.com:8080/live/Y18QnUSTwM/52775199980/40653.ts #EXTINF:-1 group-title="Canada" tvg-id="Crime.+.Investigation.Canada.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/canada/crime-and-investigation-ca.png",Crime + Investigation http://jabawalkies.club:8080/live/K1uWWBmaxJ/Xa1TFucw91/112731.ts #EXTINF:-1 group-title="Canada" tvg-id="CTV.News.Channel.ca" tvg-logo="https://media.starlite.best/ctv.news.channel.ca.png",CTV News @@ -217,9 +217,9 @@ http://38.143.48.212:9981/stream/channelid/133843306?profile=pass #EXTINF:-1 group-title="Canada" tvg-id="CTV.Life.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/main/countries/canada/ctv-life-channel-ca.png",CTV Life http://jabawalkies.club:8080/live/K1uWWBmaxJ/Xa1TFucw91/5216.ts #EXTINF:-1 group-title="Canada" tvg-id="CTV.Nature.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/main/countries/canada/ctv-nature-channel-ca.png",CTV Nature -https://starlite.best/api/stream/smart/smart/livetv.epg/discovery.science.canada.ca.m3u8 +https://theariatv.github.io/channeldead.mp4 #EXTINF:-1 group-title="Canada" tvg-id="CTV.Speed.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/main/countries/canada/ctv-speed-channel-ca.png",CTV Speed -https://starlite.best/api/stream/smart/smart/livetv.epg/discovery.velocity.ca.m3u8 +https://theariatv.github.io/channeldead.mp4 #EXTINF:-1 group-title="Canada" tvg-id="CTV.Sci-Fi.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/main/countries/canada/ctv-sci-fi-channel-ca.png",CTV Sci Fi http://38.143.48.212:9981/stream/channelid/191789153?profile=pass #EXTINF:-1 group-title="Canada" tvg-id="CTV.Wild.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/main/countries/canada/ctv-wild-channel-ca.png",CTV Wild @@ -331,7 +331,7 @@ http://portal5458.com:8080/live/Y18QnUSTwM/52775199980/40640.ts #EXTINF:-1 group-title="Canada" tvg-id="One.Soccer.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/canada/one-soccer-ca.png",One Soccer http://jabawalkies.club:8080/live/K1uWWBmaxJ/Xa1TFucw91/123909.ts #EXTINF:-1 group-title="Canada" tvg-id="ONE.TV.ca" tvg-logo="https://cdn.tvpassport.com/image/station/240x135/v2/s26777_h15_ac.png",One TV -https://theariatv.github.io/aria.mp4 +https://theariatv.github.io/channeldead.mp4 #EXTINF:-1 group-title="Canada" tvg-id="outtv.ca" tvg-logo="https://play-lh.googleusercontent.com/jsVXFQfgTUMbNvWmk3Ccy4eVFSysQMI0vTEiTzgbLddzIGnPfsFLJ6OK29BRwGYhaPw",OUTtv http://jabawalkies.club:8080/live/K1uWWBmaxJ/Xa1TFucw91/112813.ts #EXTINF:-1 group-title="Canada" tvg-id="Oxygen.True.Crime.ca" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/canada/oxygen-ca.png",Oxygen True Crimes From dfeebe56a23446fc0510df90b7f9bbb92c368df8 Mon Sep 17 00:00:00 2001 From: LoveEL <166885442+Yourhaze89@users.noreply.github.com> Date: Thu, 28 Aug 2025 16:09:22 -0400 Subject: [PATCH 3/6] Added more spain channels --- aria.m3u | 34 ++++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/aria.m3u b/aria.m3u index 7501bbe..95a7cf3 100644 --- a/aria.m3u +++ b/aria.m3u @@ -1245,28 +1245,42 @@ http://210.126.10.17:5004/auto/v5027 http://210.126.10.17:5004/auto/v5045 #EXTINF:-1 group-title="South Korea" tvg-logo="https://upload.wikimedia.org/wikipedia/commons/9/95/Mnet.png",Mnet http://210.126.10.17:5004/auto/v5042 -#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/tve-1-es.png" group-title="Spain",La 1 HD +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/tve-1-es.png" group-title="Spain",La 1 http://83.63.50.226:9981/stream/channelid/1467144271?ticket=6FB05E46F799FD4EE5AB0C60B783879682C69252&profile=pass -#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/tve-2-es.png" group-title="Spain",La 2 HD +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/tve-2-es.png" group-title="Spain",La 2 http://83.63.50.226:9981/stream/channelid/1429257344?ticket=10D846B10884BD4009FFB8E353E0B9CDC1C57B6B&profile=pass -#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/antena-3-es.png" group-title="Spain",Antena 3 HD +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/antena-3-es.png" group-title="Spain",Antena 3 http://185.189.225.150:85/Antena3HD/index.m3u8 -#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/cuatro-es.png" group-title="Spain",Cuatro HD -http://185.189.225.150:85/CuatroHD/index.m3u8 -#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/telecinco-es.png" group-title="Spain",TeleCinco HD -http://185.189.225.150:85/TeleCincoHD/index.m3u8 -#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/la-sexta-es.png" group-title="Spain",La Sexta SD -http://185.189.225.150:85/LaSexta/index.m3u8 -#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/moviestar-plus-es.png" group-title="Spain",Movistar Plus SD +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/cuatro-es.png" group-title="Spain",Cuatro +http://213.97.163.175:4022/udp/239.10.20.20:1234 +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/telecinco-es.png" group-title="Spain",TeleCinco +http://213.97.163.175:4022/udp/239.10.20.19:1234 +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/la-sexta-es.png" group-title="Spain",La Sexta http://185.189.225.150:85/LaSexta/index.m3u8 +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/veo7-es.png" group-title="Spain",Veo7 +http://213.97.163.175:4022/udp/239.10.20.54:1234 #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/ten-es.png" group-title="Spain",TEN http://83.63.50.226:9981/stream/channelid/132024166?ticket=9B96EC565FFBB929E7493D847E5EDB5FBFD403BA&profile=pass #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/mega-es.png" group-title="Spain",MEGA http://83.63.50.226:9981/stream/channelid/2046120540?ticket=7F9FA9B92C26D493DC9511BDA0794FC329E84A4C&profile=pass +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/dmax-es.png" group-title="Spain",DMAX +http://213.97.163.175:4022/udp/239.10.20.53:1234 +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/tv3-es.png" group-title="Spain",TV3 +http://213.97.163.175:4022/udp/239.10.20.100:1234 +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/3-24-es.png" group-title="Spain",3/24 +http://213.97.163.175:4022/udp/239.10.20.101:1234 +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/esport3-es.png" group-title="Spain",Esport3 +http://213.97.163.175:4022/udp/239.10.20.103:1234 +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/paramount-network-es.png" group-title="Spain",Paramount Network +http://213.97.163.175:4022/udp/239.10.20.52:1234 #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/squirrel-es.png" group-title="Spain",Squirrel http://83.63.50.226:9981/stream/channelid/173171682?ticket=AF1192F50CFAF1F33D7538C82570559AEDD71D75&profile=pass #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/clan-es.png" group-title="Spain",Clan http://83.63.50.226:9981/stream/channelid/1627097868?ticket=BB72E0652E81C33B7D75D8E5321E04B19AF7163E&profile=pass +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/boing-es.png" group-title="Spain",Boing +http://213.97.163.175:4022/udp/239.10.20.50:1234 +#EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/sx3-es.png" group-title="Spain",SX3 +http://213.97.163.175:4022/udp/239.10.20.102:1234 #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/24h-es.png" group-title="Spain",24h http://83.63.50.226:9981/stream/channelid/1006422367?ticket=F6D4FDAB47AE62921087BEE75F3946CD30DE553F&profile=pass #EXTINF:-1 tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/refs/heads/main/countries/spain/tdp-es.png" group-title="Spain",Teledeporte (TDP) From 0c4d741c6de5cd375928f02ecd6847384cdb76e5 Mon Sep 17 00:00:00 2001 From: VlastikYoutubeKo <56507931+VlastikYoutubeKo@users.noreply.github.com> Date: Thu, 28 Aug 2025 23:53:37 +0200 Subject: [PATCH 4/6] Update index.html --- index.html | 611 ++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 555 insertions(+), 56 deletions(-) diff --git a/index.html b/index.html index f09adfd..4da5ab2 100644 --- a/index.html +++ b/index.html @@ -14,6 +14,9 @@ --accent-color: #0d6efd; --header-bg: #ffffff; --danger-color: #dc3545; + --success-color: #198754; + --warning-color: #ffc107; + --secondary-bg: #f1f3f4; } @media (prefers-color-scheme: dark) { @@ -25,21 +28,35 @@ --accent-color: #4dabf7; --header-bg: #1e1e1e; --danger-color: #f06571; + --success-color: #51cf66; + --warning-color: #ffd43b; + --secondary-bg: #2d2d2d; } } + * { + box-sizing: border-box; + } + body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; background-color: var(--bg-color); color: var(--text-color); - transition: background-color 0.2s, color 0.2s; + transition: background-color 0.3s ease, color 0.3s ease; + line-height: 1.6; } .container { - max-width: 900px; + max-width: 1200px; margin: 0 auto; - padding: 2rem; + padding: 1rem; + } + + @media (min-width: 768px) { + .container { + padding: 2rem; + } } header { @@ -47,19 +64,49 @@ margin-bottom: 3rem; border-bottom: 1px solid var(--border-color); padding-bottom: 1.5rem; + position: relative; } header h1 { - font-size: 3rem; + font-size: clamp(2rem, 5vw, 3rem); margin: 0; + background: linear-gradient(45deg, var(--accent-color), #6f42c1); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + background-clip: text; + } + + .stats-bar { + display: flex; + justify-content: center; + gap: 2rem; + margin-top: 1rem; + flex-wrap: wrap; + } + + .stat-item { + text-align: center; + padding: 0.5rem; + } + + .stat-number { + font-size: 1.5rem; + font-weight: bold; + color: var(--accent-color); + } + + .stat-label { + font-size: 0.9rem; + color: var(--muted-text-color); } .project-info { - background-color: var(--header-bg); + background: linear-gradient(135deg, var(--header-bg) 0%, var(--secondary-bg) 100%); border: 1px solid var(--border-color); - border-radius: 8px; + border-radius: 12px; padding: 1.5rem; margin-bottom: 2rem; + box-shadow: 0 2px 4px rgba(0,0,0,0.1); } .project-info h2, .project-info h3 { @@ -70,36 +117,130 @@ color: var(--accent-color); text-decoration: none; font-weight: 500; + transition: color 0.2s ease; } .project-info a:hover { text-decoration: underline; + color: var(--success-color); } - .playlist-links p { - margin: 0.5rem 0; + .playlist-links { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 1rem; + margin: 1rem 0; + } + + .playlist-link { + display: block; + padding: 1rem; + background-color: var(--secondary-bg); + border: 1px solid var(--border-color); + border-radius: 8px; + text-decoration: none; + transition: all 0.2s ease; + } + + .playlist-link:hover { + transform: translateY(-2px); + box-shadow: 0 4px 8px rgba(0,0,0,0.15); } - .search-container { + .controls-bar { + display: flex; + gap: 1rem; margin-bottom: 1.5rem; + flex-wrap: wrap; + align-items: center; + } + + .search-container { + flex: 1; + min-width: 250px; + position: relative; } #search-input { width: 100%; - padding: 0.75rem 1rem; + padding: 0.75rem 1rem 0.75rem 2.5rem; font-size: 1rem; - border-radius: 8px; - border: 1px solid var(--border-color); + border-radius: 25px; + border: 2px solid var(--border-color); background-color: var(--header-bg); color: var(--text-color); - box-sizing: border-box; + transition: border-color 0.2s ease, box-shadow 0.2s ease; + } + + #search-input:focus { + outline: none; + border-color: var(--accent-color); + box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.1); + } + + .search-icon { + position: absolute; + left: 0.75rem; + top: 50%; + transform: translateY(-50%); + color: var(--muted-text-color); + pointer-events: none; + } + + .view-toggle { + display: flex; + border: 1px solid var(--border-color); + border-radius: 8px; + overflow: hidden; + } + + .view-button { + padding: 0.5rem 1rem; + background: var(--header-bg); + border: none; + color: var(--text-color); + cursor: pointer; + transition: all 0.2s ease; + } + + .view-button.active { + background: var(--accent-color); + color: white; + } + + .expand-collapse-buttons { + display: flex; + gap: 0.5rem; + } + + .action-button { + padding: 0.5rem 1rem; + border: 1px solid var(--border-color); + border-radius: 6px; + background: var(--header-bg); + color: var(--text-color); + cursor: pointer; + font-size: 0.9rem; + transition: all 0.2s ease; + } + + .action-button:hover { + background: var(--accent-color); + color: white; + border-color: var(--accent-color); } .category-folder { border: 1px solid var(--border-color); - border-radius: 8px; + border-radius: 12px; margin-bottom: 1rem; background-color: var(--header-bg); + overflow: hidden; + transition: all 0.3s ease; + } + + .category-folder:hover { + box-shadow: 0 4px 12px rgba(0,0,0,0.1); } .category-header { @@ -109,9 +250,39 @@ justify-content: space-between; align-items: center; font-size: 1.2rem; + font-weight: 600; + background: linear-gradient(90deg, var(--header-bg) 0%, var(--secondary-bg) 100%); + transition: all 0.2s ease; + } + + .category-header:hover { + background: var(--secondary-bg); + } + + .category-title { + display: flex; + align-items: center; + gap: 0.5rem; + } + + .channel-count { + background: var(--accent-color); + color: white; + padding: 0.25rem 0.5rem; + border-radius: 12px; + font-size: 0.8rem; font-weight: 500; } + .expand-icon { + transition: transform 0.3s ease; + font-size: 1.2rem; + } + + .expand-icon.expanded { + transform: rotate(180deg); + } + .channel-table { width: 100%; border-collapse: collapse; @@ -128,37 +299,199 @@ font-weight: 600; font-size: 0.9rem; color: var(--muted-text-color); + background-color: var(--secondary-bg); + } + + .channel-table tr:hover { + background-color: var(--secondary-bg); } .channel-name { display: flex; align-items: center; + gap: 0.75rem; + } + + .channel-logo { + width: 32px; + height: 24px; + object-fit: contain; + border-radius: 4px; + background-color: var(--secondary-bg); + border: 1px solid var(--border-color); + } + + .logo-fallback { + width: 32px; + height: 24px; + display: flex; + align-items: center; + justify-content: center; + background: linear-gradient(45deg, var(--accent-color), #6f42c1); + border-radius: 4px; + color: white; + font-size: 10px; + font-weight: bold; + text-transform: uppercase; } .channel-table a { color: var(--accent-color); text-decoration: none; font-weight: 500; + transition: color 0.2s ease; + } + + .channel-table a:hover { + color: var(--success-color); + } + + .status-indicator { + width: 8px; + height: 8px; + border-radius: 50%; + display: inline-block; + margin-right: 0.5rem; + } + + .status-stable { + background-color: var(--success-color); + } + + .status-unstable { + background-color: var(--warning-color); } .unstable-icon { - color: #ffc107; + color: var(--warning-color); font-weight: bold; - margin-left: 8px; cursor: help; - font-size: 1.2rem; + font-size: 1rem; } .report-button { font-size: 0.8rem; - padding: 4px 8px; - border-radius: 5px; + padding: 6px 12px; + border-radius: 20px; border: 1px solid var(--danger-color); background: transparent; color: var(--danger-color); cursor: pointer; text-decoration: none; display: inline-block; + transition: all 0.2s ease; + } + + .report-button:hover { + background: var(--danger-color); + color: white; + } + + .loading-spinner { + display: flex; + justify-content: center; + align-items: center; + padding: 3rem; + } + + .spinner { + width: 40px; + height: 40px; + border: 4px solid var(--border-color); + border-top: 4px solid var(--accent-color); + border-radius: 50%; + animation: spin 1s linear infinite; + } + + @keyframes spin { + 0% { transform: rotate(0deg); } + 100% { transform: rotate(360deg); } + } + + .no-results { + text-align: center; + padding: 3rem; + color: var(--muted-text-color); + } + + .grid-view { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); + gap: 1rem; + } + + .grid-category { + border: 1px solid var(--border-color); + border-radius: 12px; + background: var(--header-bg); + padding: 1rem; + } + + .grid-category h3 { + margin-top: 0; + font-size: 1.1rem; + } + + .grid-channels { + display: flex; + flex-direction: column; + gap: 0.5rem; + } + + .grid-channel { + display: flex; + justify-content: space-between; + align-items: center; + padding: 0.5rem; + border: 1px solid var(--border-color); + border-radius: 6px; + font-size: 0.9rem; + } + + .grid-channel-info { + display: flex; + align-items: center; + gap: 0.5rem; + } + + .grid-channel-logo { + width: 20px; + height: 15px; + object-fit: contain; + border-radius: 2px; + } + + .grid-logo-fallback { + width: 20px; + height: 15px; + display: flex; + align-items: center; + justify-content: center; + background: linear-gradient(45deg, var(--accent-color), #6f42c1); + border-radius: 2px; + color: white; + font-size: 8px; + font-weight: bold; + } + + @media (max-width: 768px) { + .controls-bar { + flex-direction: column; + align-items: stretch; + } + + .channel-table th:nth-child(n+3), + .channel-table td:nth-child(n+3) { + display: none; + } + + .stats-bar { + gap: 1rem; + } + + .playlist-links { + grid-template-columns: 1fr; + } } @@ -171,7 +504,7 @@