/*
Theme Name: CodeAndAPK IPTV & APK Portal
Theme URI: https://codeandapk.com/
Author: CodeAndAPK
Author URI: https://codeandapk.com/
Description: قالب CodeAndAPK Java Studio احترافي متعدد اللغات لبرامج APK وأكواد IPTV بتصميم حديث سريع ومتجاوب.
Version: 5.0.12
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: codeandapk-xtream-minimal
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root{
  color-scheme:dark;
  --bg:#1e1f22;
  --panel:#2b2d30;
  --panel-soft:#252629;
  --border:#3c3f41;
  --gutter:#202124;
  --text:#c7c9ce;
  --muted:#777b83;
  --orange:#cf8e6d;
  --blue:#56a8f5;
  --green:#6aab73;
  --yellow:#f2c55c;
  --purple:#c77dff;
  --focus:#3574f0;
}

*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
html[dir="rtl"]{direction:rtl}
html[dir="ltr"]{direction:ltr}
body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 15% 0%,rgba(53,116,240,.09),transparent 30rem),
    radial-gradient(circle at 90% 30%,rgba(199,125,255,.05),transparent 26rem),
    var(--bg);
  color:var(--text);
  font-family:Tahoma,"Segoe UI",Arial,sans-serif;
  line-height:1.5;
}
button,input,textarea,select{font:inherit}
a{color:inherit}

.portal-page{
  width:min(calc(100% - 16px),1120px);
  min-height:100vh;
  margin:0 auto;
  padding:52px 0 18px;
  display:flex;
  flex-direction:column;
  gap:10px;
}

.portal-toolbar{
  position:sticky;
  z-index:30;
  top:0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  padding:5px 0;
  background:linear-gradient(to bottom,var(--bg) 78%,transparent);
}
.portal-refresh{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:31px;
  border:1px solid #4b4e53;
  border-radius:6px;
  background:linear-gradient(180deg,#35373b,#2b2d30);
  color:#e7e9ed;
  padding:4px 10px;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 3px 9px rgba(0,0,0,.15);
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}
.portal-refresh span{color:var(--green);font-size:16px;line-height:1}
.portal-refresh:hover{border-color:var(--focus);background:linear-gradient(180deg,#3a3d42,#303236)}
.portal-refresh:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.portal-refresh:active{transform:translateY(1px)}

.portal-section{
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:9px;
  background:rgba(37,38,41,.72);
  box-shadow:0 5px 15px rgba(0,0,0,.16);
}
.portal-section-header{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:41px;
  padding:7px 10px;
  border-bottom:1px solid var(--border);
  background:linear-gradient(180deg,#303236,#292b2e);
}
.portal-section-header h2{
  margin:0;
  color:#e3e5e8;
  font-size:13px;
  line-height:1.35;
  font-weight:900;
}
.portal-section-icon{
  direction:ltr;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  height:25px;
  padding:0 6px;
  border:1px solid #4a4d52;
  border-radius:5px;
  background:#202124;
  color:var(--orange);
  font:800 10px/1 Consolas,"Courier New",monospace;
}
.portal-section-apk .portal-section-icon{color:var(--green)}
.portal-section-content{padding:7px}
.section-empty{
  margin:0;
  padding:14px 10px;
  border:1px dashed #4a4d52;
  border-radius:7px;
  background:var(--panel-soft);
  color:#9da0a6;
  text-align:center;
  font-size:11px;
}

/* IPTV: بطاقتان في السطر */
.xtream-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
}
.xtream-record{
  direction:ltr;
  overflow:hidden;
  display:grid;
  grid-template-columns:1fr;
  border:1px solid var(--border);
  border-radius:7px;
  background:var(--panel);
  box-shadow:0 4px 11px rgba(0,0,0,.14);
  counter-reset:java-line;
}
.xtream-status{
  direction:rtl;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:6px;
  min-height:29px;
  padding:5px 9px;
  border-bottom:1px solid var(--border);
  background:var(--panel-soft);
  font-size:10px;
  line-height:1;
  font-weight:900;
}
.xtream-status-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%}
.xtream-status-info{display:inline-flex;align-items:center;gap:6px;min-width:0}
.xtream-code-number{margin-inline-start:auto;padding:2px 7px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(0,0,0,.16);color:#d9e6ff;font-size:9px;line-height:1.3;white-space:nowrap}
.xtream-code-number strong{color:#fff;font-size:10px}
.xtream-status-active{color:#86efac}
.xtream-status-active .xtream-status-dot{background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.14),0 0 8px rgba(34,197,94,.45)}
.xtream-status-inactive{color:#fca5a5}
.xtream-status-inactive .xtream-status-dot{background:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.14),0 0 8px rgba(239,68,68,.4)}
.xtream-field{
  position:relative;
  min-width:0;
  min-height:48px;
  padding:7px 7px 7px 31px;
  border-bottom:1px solid var(--border);
  background:linear-gradient(180deg,rgba(255,255,255,.012),transparent);
}
.xtream-field:last-child{border-bottom:0}
.xtream-field::before{
  content:counter(java-line);
  counter-increment:java-line;
  position:absolute;
  inset:0 auto 0 0;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  width:24px;
  padding-top:7px;
  border-right:1px solid #34363a;
  background:var(--gutter);
  color:var(--muted);
  font:10px/1.35 Consolas,"Courier New",monospace;
  user-select:none;
}
.xtream-label{
  display:block;
  margin-bottom:1px;
  direction:rtl;
  text-align:right;
  font-size:9px;
  line-height:1.35;
  font-weight:900;
  white-space:nowrap;
}
.xtream-m3u-field .xtream-label{color:var(--purple)}
.xtream-server-field .xtream-label{color:var(--orange)}
.xtream-user-field .xtream-label{color:var(--blue)}
.xtream-password-field .xtream-label{color:var(--yellow)}
.xtream-value{
  display:block;
  direction:ltr;
  unicode-bidi:plaintext;
  overflow-wrap:anywhere;
  word-break:break-word;
  font-family:Consolas,"SFMono-Regular",Monaco,"Courier New",monospace;
  font-size:10.5px;
  line-height:1.38;
  color:var(--green);
  user-select:all;
}
.xtream-value::before,.xtream-value::after{color:#b7c0c9}
.xtream-value::before{content:'"'}
.xtream-value::after{content:'";'}
.xtream-m3u-field .xtream-value:empty::before,.xtream-m3u-field .xtream-value:empty::after{content:''}
.xtream-m3u-field .xtream-value:empty{min-height:14px;border-bottom:1px dashed #545860}

/* برامج APK */
.program-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
}
.program-card{
  min-width:0;
  display:grid;
  grid-template-columns:94px minmax(0,1fr);
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:7px;
  background:var(--panel);
  box-shadow:0 4px 11px rgba(0,0,0,.14);
}
.program-cover{
  position:relative;
  min-height:126px;
  border-left:1px solid var(--border);
  background:#202124;
}
.program-cover img{display:block;width:100%;height:100%;min-height:126px;object-fit:cover}
.program-thumbnail-image{
  display:block;
  width:100%;
  height:100%;
  min-height:126px;
  object-fit:cover;
}
.program-default-image{
  object-fit:cover;
  background:#202124;
}
.program-cover-placeholder{position:absolute;inset:0}
.program-body{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:8px;
}
.program-type{
  direction:ltr;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:20px;
  margin-bottom:4px;
  padding:2px 6px;
  border:1px solid #4a4d52;
  border-radius:4px;
  background:#202124;
  color:var(--blue);
  font:800 9px/1 Consolas,"Courier New",monospace;
}
.portal-section-apk .program-type{color:var(--green)}
.program-title{
  width:100%;
  margin:0 0 4px;
  color:#eceef1;
  font-size:12px;
  line-height:1.4;
  font-weight:900;
  overflow-wrap:anywhere;
}
.program-title a{color:inherit;text-decoration:none}
.program-title a:hover,.program-title a:focus-visible{color:#fff;text-decoration:underline;outline:0}
.program-cover-link{display:block;text-decoration:none}
.program-publish-date{
  width:100%;
  display:flex;
  align-items:center;
  gap:4px;
  margin:0 0 4px;
  color:#92969e;
  font-size:9px;
  line-height:1.35;
  font-weight:800;
}
.program-publish-date span{color:var(--yellow);font-size:10px;line-height:1}
.program-publish-date time{color:#b9bdc4;font-family:Tahoma,"Segoe UI",Arial,sans-serif}
.program-entry-stat{
  width:100%;
  margin:0 0 5px;
  color:#8f949c;
  font-size:9px;
  font-weight:800;
}
.program-entry-stat strong{direction:ltr;color:var(--green);font-family:Consolas,"Courier New",monospace}
.program-header-meta{
  margin-right:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:2px;
}
.program-entry-stat-header{width:auto;margin:0}
.program-publish-date-header{width:auto;margin:0;justify-content:flex-end}
.program-info{
  width:100%;
  flex:1 1 auto;
  color:#aeb1b7;
  font-size:10px;
  line-height:1.55;
  overflow-wrap:anywhere;
}
.program-info p{margin:0 0 5px}
.program-info p:last-child{margin-bottom:0}
.program-downloads{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:7px;
}
.program-download{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:29px;
  margin-top:0;
  padding:4px 10px;
  border:1px solid #3176b9;
  border-radius:5px;
  background:linear-gradient(180deg,#3574a9,#285c89);
  color:#fff;
  text-decoration:none;
  font-size:10px;
  font-weight:900;
  transition:filter .15s ease,transform .15s ease;
}
.portal-section-apk .program-download-primary{border-color:#397a48;background:linear-gradient(180deg,#4f925d,#386d44)}
.portal-section-apk .program-open{border-color:#4b5f85;background:linear-gradient(180deg,#344361,#29354b)}
.portal-section-apk .program-download-secondary{border-color:#735a2d;background:linear-gradient(180deg,#8d6b34,#674c25)}
.portal-section-apk .program-download-player{border-color:#6750a4;background:linear-gradient(180deg,#7b61b8,#5b438f)}
.portal-section-apk .program-install-button{flex:1 1 100%;font-size:11px}
.program-download:hover{filter:brightness(1.1)}
.program-download:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.program-download:active{transform:translateY(1px)}
.program-download-disabled{border-color:#555!important;background:#36383c!important;color:#92959b;cursor:not-allowed}

@media (max-width:760px){
  .portal-page{width:calc(100% - 8px);padding-top:32px;gap:7px}
  .portal-toolbar{padding:3px 0}
  .portal-section-content{padding:4px}
  .xtream-list,.program-list{gap:4px}
  .portal-section-header{min-height:37px;padding:6px 8px}
  .portal-section-header h2{font-size:11px}
  .portal-section-icon{min-width:25px;height:23px;font-size:9px}
  .xtream-field{min-height:45px;padding:6px 5px 6px 27px}
  .xtream-field::before{width:21px;padding-top:6px;font-size:9px}
  .xtream-status{min-height:27px;padding:4px 7px;font-size:9px}
  .xtream-status-dot{width:7px;height:7px}
  .xtream-label{font-size:8px}
  .xtream-value{font-size:9.5px;line-height:1.32}
  .program-card{grid-template-columns:74px minmax(0,1fr)}
  .program-cover,.program-cover img{min-height:115px}
  .program-body{padding:6px}
  .program-title{font-size:10.5px}
  .program-info{font-size:9px}
  .program-download{min-height:27px;padding:3px 8px;font-size:9px}
}

@media (max-width:480px){
  .program-list{grid-template-columns:1fr}
  .program-card{grid-template-columns:88px minmax(0,1fr)}
}

@media (max-width:315px){
  .xtream-list{grid-template-columns:1fr}
  .portal-refresh{width:100%}
  .program-card{grid-template-columns:72px minmax(0,1fr)}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .portal-refresh,.program-download{transition:none}
}


/* الإصدار 3.1: قائمة الأقسام يمين الصفحة وآخر أربعة عناصر في الرئيسية */
.portal-layout{
  direction:rtl;
  display:flex;
  align-items:flex-start;
  gap:10px;
  min-width:0;
}
.portal-sidebar{
  position:sticky;
  top:47px;
  z-index:20;
  flex:0 0 178px;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:9px;
  background:rgba(37,38,41,.9);
  box-shadow:0 5px 15px rgba(0,0,0,.16);
}
.portal-sidebar-title{
  margin:0;
  padding:10px 11px;
  border-bottom:1px solid var(--border);
  background:linear-gradient(180deg,#303236,#292b2e);
  color:#e8eaed;
  font-size:12px;
  font-weight:900;
}
.portal-sidebar-nav{display:grid;padding:6px;gap:5px}
.portal-sidebar-link{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:39px;
  padding:7px 8px;
  border:1px solid #404348;
  border-radius:6px;
  background:#292b2f;
  color:#cfd2d7;
  text-decoration:none;
  font-size:10.5px;
  font-weight:900;
  transition:border-color .15s ease,background .15s ease,transform .15s ease;
}
.portal-sidebar-link:hover,.portal-sidebar-link:focus-visible{
  border-color:var(--focus);
  background:#30343a;
  outline:0;
}
.portal-sidebar-link:active{transform:translateY(1px)}
.portal-sidebar-link.is-active{border-color:#5b79b6;background:#293247;color:#fff}
.portal-sidebar-badge{
  direction:ltr;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 35px;
  height:24px;
  border:1px solid #4a4d52;
  border-radius:5px;
  background:#202124;
  color:var(--orange);
  font:900 9px/1 Consolas,"Courier New",monospace;
}
.portal-sidebar-link-apk .portal-sidebar-badge{color:var(--green)}
.portal-main{
  flex:1 1 auto;
  min-width:0;
  display:grid;
  gap:10px;
}
.portal-section-header{
  justify-content:space-between;
  flex-wrap:wrap;
}
.portal-section-heading{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.portal-section-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:6px;
  margin-right:auto;
}
.portal-section-update{
  display:inline-flex;
  align-items:center;
  gap:5px;
  color:#9ea2aa;
  font-size:9px;
  font-weight:800;
}
.portal-section-update strong{
  direction:ltr;
  color:#c8ccd2;
  font-family:Consolas,"Courier New",monospace;
  font-size:9px;
}
.portal-view-all{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:27px;
  padding:3px 8px;
  border:1px solid #4b5f85;
  border-radius:5px;
  background:#2c3547;
  color:#e8eefc;
  text-decoration:none;
  font-size:9px;
  font-weight:900;
}
.portal-view-all:hover,.portal-view-all:focus-visible{border-color:var(--focus);background:#344361;outline:0}
.portal-archive-title{
  margin:0;
  color:#eceef1;
  font-size:14px;
  font-weight:900;
}
.portal-home .portal-section{scroll-margin-top:54px}
.portal-home .program-info{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden;
}
.portal-home .program-card{min-height:137px}
.portal-home .xtream-record{min-height:238px}
.portal-archive .portal-main{gap:8px}
.portal-archive .portal-section-content{min-height:200px}
.portal-back-home{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:31px;
  padding:4px 10px;
  border:1px solid #4b4e53;
  border-radius:6px;
  background:linear-gradient(180deg,#35373b,#2b2d30);
  color:#e7e9ed;
  text-decoration:none;
  font-size:10px;
  font-weight:900;
}
.portal-back-home:hover,.portal-back-home:focus-visible{border-color:var(--focus);outline:0}

@media (max-width:760px){
  .portal-layout{flex-direction:column;gap:7px}
  .portal-sidebar{position:static;flex:0 0 auto;width:100%}
  .portal-sidebar-title{padding:7px 8px;font-size:10px}
  .portal-sidebar-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px}
  .portal-sidebar-link{justify-content:center;min-height:34px;padding:4px;font-size:8.5px;text-align:center}
  .portal-sidebar-badge{display:none}
  .portal-main{width:100%;gap:7px}
  .portal-section-actions{width:100%;justify-content:space-between;margin-right:0;padding-right:33px}
  .portal-section-update,.portal-section-update strong,.portal-view-all{font-size:8px}
}

@media (max-width:480px){
  .portal-home .program-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portal-home .program-card{grid-template-columns:1fr;min-height:0}
  .portal-home .program-cover{min-height:76px;border-left:0;border-bottom:1px solid var(--border)}
  .portal-home .program-cover img{min-height:76px;height:76px}
  .portal-home .program-body{padding:5px}
  .portal-home .program-info{-webkit-line-clamp:3;font-size:8.5px}
  .portal-home .program-title{font-size:9.5px}
  .portal-home .program-downloads{gap:4px}
  .portal-home .program-download{flex:1 1 calc(50% - 4px);padding:3px 4px;font-size:8.5px}
  .portal-home .xtream-record{min-height:0}
  .portal-section-actions{padding-right:0}
}

@media (max-width:350px){
  .portal-sidebar-nav{grid-template-columns:1fr}
  .portal-sidebar-link{justify-content:flex-start;padding:5px 8px}
  .portal-home .program-list{grid-template-columns:1fr}
}

/* الإصدار 3.1.1: تصغير بطاقات أكواد IPTV قليلًا */
.xtream-list{gap:5px}
.xtream-record{border-radius:6px;box-shadow:0 3px 9px rgba(0,0,0,.13)}
.xtream-status{
  min-height:26px;
  padding:4px 8px;
  gap:5px;
  font-size:9px;
}
.xtream-status-dot{width:7px;height:7px}
.xtream-field{
  min-height:42px;
  padding:5px 6px 5px 28px;
}
.xtream-field::before{
  width:22px;
  padding-top:5px;
  font-size:9px;
}
.xtream-label{
  margin-bottom:0;
  font-size:8px;
}
.xtream-value{
  font-size:9.5px;
  line-height:1.3;
}
.portal-home .xtream-record{min-height:0}

@media (max-width:760px){
  .xtream-list{gap:3px}
  .xtream-field{min-height:39px;padding:4px 4px 4px 25px}
  .xtream-field::before{width:19px;padding-top:4px;font-size:8px}
  .xtream-status{min-height:24px;padding:3px 6px;font-size:8px}
  .xtream-status-dot{width:6px;height:6px}
  .xtream-label{font-size:7.5px}
  .xtream-value{font-size:8.8px;line-height:1.25}
}


/* الإصدار 3.2: البحث الشامل في الأكواد والبرامج */
.screen-reader-text{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.portal-search-form{
  direction:rtl;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:6px;
  width:100%;
  padding:7px;
  border:1px solid var(--border);
  border-radius:8px;
  background:rgba(37,38,41,.9);
  box-shadow:0 4px 13px rgba(0,0,0,.14);
}
.portal-search-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border:1px solid #45484d;
  border-radius:5px;
  background:#202124;
  color:var(--blue);
  font:900 17px/1 Consolas,"Courier New",monospace;
}
.portal-search-input{
  min-width:0;
  width:100%;
  height:32px;
  border:1px solid #484b50;
  border-radius:5px;
  background:#1f2023;
  color:#eef0f3;
  padding:5px 10px;
  font-family:inherit;
  font-size:11px;
  outline:0;
}
.portal-search-input::placeholder{color:#858991}
.portal-search-input:focus{border-color:var(--focus);box-shadow:0 0 0 2px rgba(53,116,240,.15)}
.portal-search-button,.portal-search-clear{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:5px 12px;
  border-radius:5px;
  font-size:10px;
  font-weight:900;
  text-decoration:none;
}
.portal-search-button{
  border:1px solid #3176b9;
  background:linear-gradient(180deg,#3574a9,#285c89);
  color:#fff;
  cursor:pointer;
}
.portal-search-clear{
  border:1px solid #52555a;
  background:#303236;
  color:#c8cbd0;
}
.portal-search-button:hover,.portal-search-button:focus-visible{filter:brightness(1.1);outline:0}
.portal-search-clear:hover,.portal-search-clear:focus-visible{border-color:var(--focus);color:#fff;outline:0}
.portal-search-summary{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  padding:9px 11px;
  border:1px solid #4a4d52;
  border-radius:7px;
  background:#25272b;
  color:#aeb2b8;
  font-size:10px;
  font-weight:800;
}
.portal-search-summary strong{
  direction:ltr;
  color:var(--yellow);
  font-family:Consolas,"Courier New",monospace;
  overflow-wrap:anywhere;
}
.portal-search-section{scroll-margin-top:55px}
.portal-search-empty{
  display:grid;
  gap:5px;
  padding:24px 14px;
  border:1px dashed #50545a;
  border-radius:8px;
  background:#252629;
  text-align:center;
}
.portal-search-empty strong{color:#f0f1f3;font-size:13px}
.portal-search-empty span{color:#9ca0a7;font-size:10px;line-height:1.6}

@media (max-width:600px){
  .portal-search-form{grid-template-columns:auto minmax(0,1fr) auto;padding:5px;gap:4px}
  .portal-search-clear{grid-column:1/-1;min-height:27px}
  .portal-search-icon{width:25px;height:27px;font-size:15px}
  .portal-search-input{height:29px;padding:4px 7px;font-size:9.5px}
  .portal-search-button{min-height:29px;padding:4px 9px;font-size:9px}
}


/* الإصدار 3.5: إحصاء فتح البرامج ونسخ الأكواد */
.xtream-card-actions{
  direction:rtl;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  padding:6px 7px;
  border-top:1px solid var(--border);
  background:#242629;
}
.xtream-copy-button{
  appearance:none;
  min-height:27px;
  padding:3px 9px;
  border:1px solid #397a48;
  border-radius:5px;
  background:linear-gradient(180deg,#4f925d,#386d44);
  color:#fff;
  font-size:9px;
  font-weight:900;
  cursor:pointer;
}
.xtream-copy-button:hover,.xtream-copy-button:focus-visible{filter:brightness(1.1);outline:2px solid var(--focus);outline-offset:1px}
.xtream-copy-button:disabled{cursor:wait;opacity:.82}
.xtream-copy-button.is-copied{border-color:#4c9f60;background:#32683f}
.xtream-copy-button.has-error{border-color:#9a4545;background:#703333}

.portal-program-detail-content{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:12px;
  padding:12px;
}
.portal-program-detail-cover{
  position:relative;
  overflow:hidden;
  aspect-ratio:1/1;
  min-height:0;
  border:1px solid var(--border);
  border-radius:8px;
  background:#202124;
}
.portal-program-detail-cover img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}
.portal-program-detail-body{min-width:0;display:flex;flex-direction:column}
.portal-program-detail-info{font-size:11px;line-height:1.75}
.portal-program-detail-downloads{margin-top:auto;padding-top:12px}
.portal-program-detail-downloads .program-download{min-height:34px;padding:6px 14px}

@media (max-width:760px){
  .xtream-card-actions{padding:4px 5px;gap:4px}
  .xtream-copy-button{min-height:24px;padding:2px 6px;font-size:8px}
  .program-entry-stat{font-size:8px}
  .portal-program-detail-content{grid-template-columns:105px minmax(0,1fr);gap:8px;padding:8px}
  .portal-program-detail-info{font-size:9.5px}
}

@media (max-width:480px){
  .portal-program-detail-content{grid-template-columns:88px minmax(0,1fr);gap:7px}
  .portal-program-detail-cover{width:88px;margin:0}
  .program-entry-stat-header{width:100%;margin-right:33px}
  .portal-program-detail-downloads{grid-column:1/-1}
}

@media (max-width:350px){
  .portal-program-detail-content{grid-template-columns:1fr}
  .portal-program-detail-cover{width:110px;margin:0 auto}
}


/* الإصدار 3.6: صور مصغرة مخصصة لبرامج APK */
.program-cover-link{background:#202124}
.portal-program-detail-cover{box-shadow:0 5px 14px rgba(0,0,0,.2)}


/* الإصدار 3.6.1: تصغير صورة البرنامج تلقائيًا بجانب الاسم بدل علامة APK */
.program-card{
  grid-template-columns:72px minmax(0,1fr);
  align-items:stretch;
}
.program-cover{
  width:72px;
  min-height:72px;
  align-self:start;
  aspect-ratio:1/1;
  overflow:hidden;
  border-left:1px solid var(--border);
  border-bottom:1px solid var(--border);
  border-radius:0 0 0 7px;
}
.program-cover img,
.program-thumbnail-image{
  width:72px;
  height:72px;
  min-height:72px;
  object-fit:cover;
  object-position:center;
}
.program-type{display:none!important}
.program-body{padding:7px}
.program-title{margin-top:1px}
.program-title-thumbnail{
  flex:0 0 46px;
  display:inline-flex;
  width:46px;
  height:46px;
  overflow:hidden;
  border:1px solid #4b4e53;
  border-radius:9px;
  background:#202124;
  box-shadow:0 3px 9px rgba(0,0,0,.22);
}
.program-title-thumbnail img{
  display:block;
  width:46px;
  height:46px;
  min-height:46px;
  object-fit:cover;
  object-position:center;
}
.portal-program-detail .portal-section-heading{align-items:center}
.portal-program-detail-content{
  display:block;
  padding:10px;
}
.portal-program-detail-cover{display:none!important}
.portal-program-detail-body{width:100%}
.portal-section-app-icon{font-size:15px}

@media (max-width:760px){
  .program-card{grid-template-columns:62px minmax(0,1fr)}
  .program-cover,
  .program-cover img,
  .program-thumbnail-image{
    width:62px;
    height:62px;
    min-height:62px;
  }
  .program-title-thumbnail,
  .program-title-thumbnail img{
    width:40px;
    height:40px;
    min-height:40px;
  }
  .program-title-thumbnail{flex-basis:40px;border-radius:8px}
}

@media (max-width:480px){
  .program-card{grid-template-columns:58px minmax(0,1fr)}
  .program-cover,
  .program-cover img,
  .program-thumbnail-image{
    width:58px;
    height:58px;
    min-height:58px;
  }
}


/* الإصدار 3.6.2: ترتيب صورة البرنامج في الصفحة الرئيسية */
.portal-home .program-card{
  grid-template-columns:64px minmax(0,1fr);
  align-items:start;
  min-height:0;
  padding:6px;
  gap:7px;
}
.portal-home .program-cover{
  width:64px;
  height:64px;
  min-height:64px;
  aspect-ratio:1/1;
  align-self:start;
  overflow:hidden;
  margin:0;
  border:1px solid #4b4e53;
  border-radius:10px;
  background:#191a1d;
}
.portal-home .program-cover img,
.portal-home .program-thumbnail-image{
  display:block;
  width:100%;
  height:100%;
  min-height:0;
  padding:4px;
  object-fit:contain;
  object-position:center;
  background:#191a1d;
}
.portal-home .program-body{
  min-width:0;
  padding:0;
}
.portal-home .program-title{
  margin:0 0 3px;
  line-height:1.3;
}
.portal-home .program-publish-date{margin-bottom:2px}
.portal-home .program-entry-stat{margin-bottom:3px}
.portal-home .program-info{line-height:1.45}

@media (max-width:760px){
  .portal-home .program-card{
    grid-template-columns:58px minmax(0,1fr);
    padding:5px;
    gap:6px;
  }
  .portal-home .program-cover{
    width:58px;
    height:58px;
    min-height:58px;
    border-radius:9px;
  }
}

@media (max-width:480px){
  .portal-home .program-card{
    grid-template-columns:52px minmax(0,1fr);
    padding:4px;
    gap:5px;
  }
  .portal-home .program-cover{
    width:52px;
    height:52px;
    min-height:52px;
    border-radius:8px;
  }
  .portal-home .program-cover img,
  .portal-home .program-thumbnail-image{padding:3px}
}

@media (max-width:350px){
  .portal-home .program-card{
    grid-template-columns:60px minmax(0,1fr);
    padding:6px;
    gap:7px;
  }
  .portal-home .program-cover{
    width:60px;
    height:60px;
    min-height:60px;
  }
}


/* الإصدار 3.7.0: تاريخ إضافة البرنامج */
@media (max-width:760px){
  .program-publish-date{font-size:8px;gap:3px}
  .program-publish-date span{font-size:9px}
  .program-header-meta{width:100%;margin-right:33px;align-items:flex-start}
  .program-publish-date-header{justify-content:flex-start}
  .program-entry-stat-header{width:auto;margin:0}
}
@media (max-width:480px){
  .program-publish-date{font-size:7.5px}
}


/* الإصدار 3.8.0: سجل دخول المحتوى في لوحة الإدارة */

/* الإصدار 3.9.2: عرض برنامجين في كل سطر داخل صفحة قسم برامج APK */
.portal-archive .portal-section-apk .program-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
}

@media (max-width:480px){
  .portal-archive .portal-section-apk .program-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:4px;
  }
  .portal-archive .portal-section-apk .program-card{
    grid-template-columns:46px minmax(0,1fr);
    min-height:0;
    border-radius:6px;
  }
  .portal-archive .portal-section-apk .program-cover,
  .portal-archive .portal-section-apk .program-cover img,
  .portal-archive .portal-section-apk .program-thumbnail-image{
    width:46px;
    height:46px;
    min-height:46px;
  }
  .portal-archive .portal-section-apk .program-cover img,
  .portal-archive .portal-section-apk .program-thumbnail-image{
    padding:2px;
    object-fit:contain;
    background:#191a1d;
  }
  .portal-archive .portal-section-apk .program-body{padding:5px}
  .portal-archive .portal-section-apk .program-title{
    margin-bottom:2px;
    font-size:9px;
    line-height:1.3;
  }
  .portal-archive .portal-section-apk .program-publish-date,
  .portal-archive .portal-section-apk .program-entry-stat{
    margin-bottom:2px;
    font-size:7px;
  }
  .portal-archive .portal-section-apk .program-info{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
    font-size:8px;
    line-height:1.35;
  }
  .portal-archive .portal-section-apk .program-downloads{margin-top:4px}
  .portal-archive .portal-section-apk .program-download{
    width:100%;
    min-height:24px;
    padding:3px 4px;
    font-size:7.5px;
    line-height:1.25;
    text-align:center;
  }
}

@media (max-width:350px){
  .portal-archive .portal-section-apk .program-card{
    grid-template-columns:42px minmax(0,1fr);
  }
  .portal-archive .portal-section-apk .program-cover,
  .portal-archive .portal-section-apk .program-cover img,
  .portal-archive .portal-section-apk .program-thumbnail-image{
    width:42px;
    height:42px;
    min-height:42px;
  }
  .portal-archive .portal-section-apk .program-body{padding:4px}
  .portal-archive .portal-section-apk .program-info{-webkit-line-clamp:2}
}


/* Performance and rendering containment — v4.1.0 */
.portal-section,
.xtream-record,
.program-card{
  content-visibility:auto;
  contain-intrinsic-size:1px 260px;
}
.program-thumbnail-image{
  aspect-ratio:1/1;
}
.portal-pagination{margin:12px 0 4px}
.portal-pagination .page-numbers{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  margin:0;
  padding:0;
  list-style:none;
  flex-wrap:wrap;
}
.portal-pagination a,
.portal-pagination span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:32px;
  min-height:30px;
  padding:4px 8px;
  border:1px solid var(--border);
  border-radius:6px;
  background:var(--panel);
  color:var(--text);
  font-size:11px;
  text-decoration:none;
}
.portal-pagination .current{
  border-color:var(--focus);
  background:var(--focus);
  color:#fff;
}
.portal-pagination a:hover{border-color:var(--focus)}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* إشعارات المتصفح */
.codeandapk-push-button{
  position:fixed;
  z-index:9999;
  left:14px;
  bottom:14px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:38px;
  padding:7px 12px;
  border:1px solid #4b4e53;
  border-radius:999px;
  background:#2b2d30;
  color:#f3f4f6;
  font-size:11px;
  font-weight:900;
  box-shadow:0 7px 24px rgba(0,0,0,.28);
  cursor:pointer;
}
.codeandapk-push-button:hover{border-color:var(--focus);background:#34363a}
.codeandapk-push-button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.codeandapk-push-button:disabled{opacity:.7;cursor:wait}
@media(max-width:480px){.codeandapk-push-button{left:8px;bottom:8px;font-size:10px;padding:6px 9px}}

/* معلومات البرنامج الظاهرة والمتطابقة مع بيانات SEO */
.program-specs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  margin:0 0 10px;
}
.program-specs>div{min-width:0;padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--panel-soft)}
.program-specs dt{margin:0 0 3px;color:var(--muted);font-size:9px;font-weight:900}
.program-specs dd{margin:0;color:#e4e6ea;font-size:11px;font-weight:800;overflow-wrap:anywhere}
@media(max-width:420px){.program-specs{grid-template-columns:1fr}}


/* Google-indexable IPTV detail and archive links — v4.3.0 */
.xtream-card-title{
  margin:0 0 3px;
  padding:0 2px 5px;
  border-bottom:1px solid rgba(255,255,255,.06);
  font-size:11px;
  line-height:1.45;
}
.xtream-card-title a{
  color:#e6e8eb;
  text-decoration:none;
}
.xtream-card-title a:hover{color:var(--blue);text-decoration:underline}
.xtream-card-date{
  margin:-1px 2px 5px;
  color:var(--muted);
  font-size:9px;
}
.iptv-indexable-summary{
  margin:0 0 10px;
  padding:9px 11px;
  border:1px solid var(--border);
  border-radius:7px;
  background:var(--panel-soft);
  color:#d6d8dc;
  font-size:12px;
}
.portal-iptv-detail .xtream-list,
.portal-iptv-detail .xtream-record{max-width:620px}
.portal-iptv-detail .xtream-record{margin-inline:auto}


/* Homepage repair and visual consistency — v4.3.1 */
.portal-icon-svg{
  display:block;
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.portal-section-icon .portal-icon-svg{width:15px;height:15px}
.portal-sidebar-badge .portal-icon-svg{width:15px;height:15px}
.portal-search-icon .portal-icon-svg{width:17px;height:17px}
.program-publish-date .portal-icon-svg{width:11px;height:11px}

/* There are two sections only; avoid the empty third mobile column. */
@media (max-width:760px){
  .portal-sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Keep uploaded app artwork complete and aligned instead of cropping it. */
.program-list{align-items:stretch}
.program-card{height:100%;align-items:start}
.program-cover{
  display:block;
  overflow:hidden;
  flex:0 0 auto;
  background:#191a1d;
}
.program-cover img,
.program-thumbnail-image{
  display:block;
  max-width:100%;
  object-fit:contain;
  object-position:center;
  background:#191a1d;
}
.program-body{height:100%}
.program-downloads{margin-top:auto}
.portal-home .program-title{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}

/* Avoid blank/late sections on browsers with partial content-visibility support. */
.portal-section{content-visibility:visible;contain-intrinsic-size:auto}
.portal-home .xtream-record,
.portal-home .program-card{content-visibility:visible;contain-intrinsic-size:auto}
.portal-archive .xtream-record{content-visibility:auto;contain-intrinsic-size:240px}
.portal-archive .program-card{content-visibility:auto;contain-intrinsic-size:130px}

/* Make the compact search form robust on very narrow phones. */
@media (max-width:360px){
  .portal-search-form{grid-template-columns:minmax(0,1fr) auto}
  .portal-search-icon{display:none}
  .portal-search-input{min-width:0}
  .portal-search-clear{grid-column:1/-1}
}


/* IPTV homepage card repair — v4.3.2 */
.portal-home .portal-section-iptv .xtream-record{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.portal-home .portal-section-iptv .xtream-field,
.portal-home .portal-section-iptv .xtream-status,
.portal-home .portal-section-iptv .xtream-card-actions{
  width:100%;
  box-sizing:border-box;
}
.portal-home .portal-section-iptv .xtream-field{
  flex:0 0 auto;
}
.portal-home .portal-section-iptv .xtream-card-actions{
  margin-top:auto;
}
.portal-home .portal-section-iptv .xtream-value{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
}
@media (max-width:420px){
  .portal-home .portal-section-iptv .xtream-card-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .portal-home .portal-section-iptv .xtream-copy-button{width:100%}
}


/* IPTV section card repair — v4.3.3 */
.portal-section-iptv .xtream-record{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.portal-section-iptv .xtream-field,
.portal-section-iptv .xtream-status,
.portal-section-iptv .xtream-card-actions{
  width:100%;
  box-sizing:border-box;
}
.portal-section-iptv .xtream-field{flex:0 0 auto}
.portal-section-iptv .xtream-card-actions{margin-top:auto}
.portal-section-iptv .xtream-value{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.xtream-card-primary-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px;
  min-width:0;
}
.xtream-details-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:27px;
  padding:3px 8px;
  border:1px solid #4b4e53;
  border-radius:5px;
  background:#303237;
  color:#dfe6ef;
  font-size:9px;
  font-weight:800;
  line-height:1.2;
  text-decoration:none;
  white-space:nowrap;
}
.xtream-details-link:hover,
.xtream-details-link:focus-visible{
  border-color:var(--focus);
  color:#fff;
  outline:2px solid transparent;
}
.portal-archive .portal-section-iptv .xtream-record{min-height:0}
@media (max-width:420px){
  .portal-section-iptv .xtream-card-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .portal-section-iptv .xtream-card-primary-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
  }
  .portal-section-iptv .xtream-copy-button,
  .portal-section-iptv .xtream-details-link{width:100%;min-width:0}
}


/* Visitor broken-link/code reports — v4.4.0 */
.content-report{margin-top:7px;padding-top:6px;border-top:1px solid rgba(255,255,255,.06)}
.content-report-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:4px 9px;border:1px solid #74424a;border-radius:5px;background:#3c292d;color:#f2c6cd;font:inherit;font-size:9px;font-weight:800;line-height:1.2;cursor:pointer}
.content-report-toggle:hover,.content-report-toggle:focus-visible{border-color:#d35f70;background:#4a2d33;color:#fff;outline:2px solid transparent}
.content-report-toggle[disabled]{opacity:.7;cursor:default}
.content-report-form{margin-top:7px;padding:9px;border:1px solid #474a50;border-radius:7px;background:#242629;text-align:right}
.content-report-form[hidden]{display:none!important}
.content-report-form label{display:block;margin-bottom:7px;color:#d2d5da;font-size:10px;font-weight:700}
.content-report-form label>span{display:block;margin-bottom:4px}
.content-report-form small{color:#858a93;font-weight:400}
.content-report-form select,.content-report-form textarea{display:block;width:100%;max-width:100%;border:1px solid #4b4f56;border-radius:5px;background:#1d1f22;color:#e4e6ea;font:inherit;font-size:10px;padding:6px 7px;outline:none}
.content-report-form textarea{resize:vertical;min-height:54px}
.content-report-form select:focus,.content-report-form textarea:focus{border-color:var(--focus);box-shadow:0 0 0 2px rgba(53,116,240,.22)}
.content-report-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.content-report-submit,.content-report-cancel{min-height:27px;padding:4px 9px;border-radius:5px;font:inherit;font-size:9px;font-weight:800;cursor:pointer}
.content-report-submit{border:1px solid #397a48;background:#386d44;color:#fff}
.content-report-cancel{border:1px solid #4b4f56;background:#303237;color:#dce0e6}
.content-report-submit:disabled{opacity:.65;cursor:wait}
.content-report-status{min-height:18px;margin:7px 0 0;color:#9da2aa;font-size:10px}
.content-report-status.is-success{color:#75c780}.content-report-status.is-error{color:#ef8b98}
.content-report-trap{position:absolute!important;right:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.portal-program-detail .content-report{margin-top:12px}
.portal-program-detail .content-report-toggle{font-size:10px;min-height:32px;padding:5px 12px}
@media(max-width:420px){.content-report-toggle{width:100%}.content-report-actions{display:grid;grid-template-columns:1fr 1fr}.content-report-submit,.content-report-cancel{width:100%}}

/* Compact global layout — v4.5.0 */
.portal-page{
  width:min(calc(100% - 20px),920px);
  padding-top:38px;
  padding-bottom:14px;
  gap:8px;
}
.portal-layout{gap:8px}
.portal-sidebar{flex-basis:156px;border-radius:8px}
.portal-sidebar-title{padding:8px 9px;font-size:11px}
.portal-sidebar-nav{padding:5px;gap:4px}
.portal-sidebar-link{min-height:35px;padding:6px 7px;font-size:9.5px}
.portal-sidebar-badge{flex-basis:31px;height:22px}
.portal-main{gap:8px}
.portal-toolbar{padding:3px 0}
.portal-refresh,.portal-back-home{min-height:29px;padding:3px 9px;font-size:9.5px}
.portal-section{border-radius:8px}
.portal-section-header{min-height:38px;padding:6px 8px;gap:6px}
.portal-section-header h2,.portal-archive-title{font-size:12px}
.portal-section-icon{min-width:25px;height:23px;padding:0 5px}
.portal-section-content{padding:5px}
.portal-section-actions{gap:5px}
.portal-view-all{min-height:25px;padding:2px 7px;font-size:8.5px}
.portal-section-update,.portal-section-update strong{font-size:8.5px}
.portal-search-form{padding:5px;gap:5px;border-radius:7px}
.portal-search-icon{width:25px;height:26px}
.portal-search-input{height:29px;padding:4px 8px;font-size:10px}
.portal-search-button,.portal-search-clear{min-height:29px;padding:4px 9px;font-size:9px}
.xtream-list,.program-list{gap:4px}
.xtream-field{min-height:38px;padding-top:4px;padding-bottom:4px}
.xtream-status{min-height:24px;padding:3px 7px}
.xtream-card-actions{padding:4px 5px}
.program-card{border-radius:6px}
.program-body{padding:6px}
.program-title{font-size:10.5px;margin-bottom:3px}
.program-info{font-size:9px;line-height:1.45}
.program-publish-date,.program-entry-stat{font-size:8px}
.program-downloads{gap:4px;margin-top:5px}
.program-download{min-height:26px;padding:3px 8px;font-size:8.5px}
.portal-home .program-card{grid-template-columns:56px minmax(0,1fr);padding:5px;gap:6px}
.portal-home .program-cover{width:56px;height:56px;min-height:56px;border-radius:8px}
.portal-program-detail-content{padding:8px}
.portal-program-detail-info{font-size:10px;line-height:1.65}
.program-specs{gap:5px;margin-bottom:8px}
.program-specs>div{padding:6px}
.program-specs dd{font-size:10px}
.iptv-indexable-summary{padding:7px 9px;font-size:10.5px}
.portal-iptv-detail .xtream-list,
.portal-iptv-detail .xtream-record{max-width:560px}
.content-report-form{padding:7px}

@media (max-width:760px){
  .portal-page{width:calc(100% - 12px);padding-top:27px;padding-bottom:10px;gap:6px}
  .portal-layout,.portal-main{gap:6px}
  .portal-sidebar-title{padding:6px 7px;font-size:9.5px}
  .portal-sidebar-nav{padding:3px;gap:3px}
  .portal-sidebar-link{min-height:31px;padding:3px;font-size:8px}
  .portal-section-header{min-height:34px;padding:5px 7px}
  .portal-section-header h2,.portal-archive-title{font-size:10.5px}
  .portal-section-content{padding:3px}
  .portal-home .program-card{grid-template-columns:50px minmax(0,1fr);padding:4px;gap:5px}
  .portal-home .program-cover{width:50px;height:50px;min-height:50px}
  .program-title{font-size:9.5px}
  .program-info{font-size:8.5px}
  .portal-program-detail-content{padding:6px}
}

@media (max-width:480px){
  .portal-page{width:calc(100% - 10px);padding-top:22px}
  .portal-home .program-card{grid-template-columns:46px minmax(0,1fr);padding:3px;gap:4px}
  .portal-home .program-cover{width:46px;height:46px;min-height:46px;border-radius:7px}
  .portal-home .program-title{font-size:8.8px}
  .portal-home .program-info{font-size:8px;line-height:1.35}
  .portal-search-form{padding:4px}
}



/* Slightly smaller global layout — v4.5.1 */
.portal-page{
  width:min(calc(100% - 22px),880px);
  padding-top:34px;
  padding-bottom:12px;
  gap:7px;
}
.portal-layout,.portal-main{gap:7px}
.portal-sidebar{flex-basis:148px}
.portal-sidebar-title{padding:7px 8px;font-size:10.5px}
.portal-sidebar-nav{padding:4px;gap:3px}
.portal-sidebar-link{min-height:33px;padding:5px 6px;font-size:9px}
.portal-sidebar-badge{flex-basis:29px;height:21px}
.portal-section-header{min-height:36px;padding:5px 7px}
.portal-section-header h2,.portal-archive-title{font-size:11.5px}
.portal-section-icon{min-width:24px;height:22px}
.portal-section-content{padding:4px}
.portal-view-all{min-height:24px;padding:2px 6px;font-size:8px}
.portal-section-update,.portal-section-update strong{font-size:8px}
.portal-refresh,.portal-back-home{min-height:28px;padding:3px 8px;font-size:9px}
.portal-search-form{padding:4px}
.portal-search-icon{width:24px;height:25px}
.portal-search-input{height:28px;font-size:9.5px}
.portal-search-button,.portal-search-clear{min-height:28px;padding:3px 8px;font-size:8.5px}
.xtream-list,.program-list{gap:3px}
.xtream-field{min-height:36px;padding-top:3px;padding-bottom:3px}
.xtream-status{min-height:23px;padding:3px 6px}
.xtream-card-actions{padding:3px 4px}
.program-body{padding:5px}
.program-title{font-size:10px}
.program-info{font-size:8.6px;line-height:1.4}
.program-publish-date,.program-entry-stat{font-size:7.8px}
.program-download{min-height:25px;padding:3px 7px;font-size:8px}
.portal-home .program-card{grid-template-columns:52px minmax(0,1fr);padding:4px;gap:5px}
.portal-home .program-cover{width:52px;height:52px;min-height:52px;border-radius:7px}
.portal-program-detail-content{padding:7px}
.portal-program-detail-info{font-size:9.5px;line-height:1.6}
.program-specs{gap:4px;margin-bottom:7px}
.program-specs>div{padding:5px}
.program-specs dd{font-size:9.5px}
.iptv-indexable-summary{padding:6px 8px;font-size:10px}
.portal-iptv-detail .xtream-list,
.portal-iptv-detail .xtream-record{max-width:535px}
.content-report-form{padding:6px}

@media (max-width:760px){
  .portal-page{width:calc(100% - 14px);padding-top:25px;padding-bottom:9px;gap:5px}
  .portal-layout,.portal-main{gap:5px}
  .portal-sidebar-title{padding:5px 6px;font-size:9px}
  .portal-sidebar-link{min-height:29px;font-size:7.7px}
  .portal-section-header{min-height:32px;padding:4px 6px}
  .portal-section-header h2,.portal-archive-title{font-size:10px}
  .portal-section-content{padding:2px}
  .portal-home .program-card{grid-template-columns:47px minmax(0,1fr);padding:3px;gap:4px}
  .portal-home .program-cover{width:47px;height:47px;min-height:47px}
  .program-title{font-size:9px}
  .program-info{font-size:8px}
  .portal-program-detail-content{padding:5px}
}

@media (max-width:480px){
  .portal-page{width:calc(100% - 8px);padding-top:20px}
  .portal-home .program-card{grid-template-columns:43px minmax(0,1fr);padding:3px;gap:3px}
  .portal-home .program-cover{width:43px;height:43px;min-height:43px;border-radius:6px}
  .portal-home .program-title{font-size:8.4px}
  .portal-home .program-info{font-size:7.7px;line-height:1.32}
}

/* Mobile site-sections empty-space fix — v4.5.2 */
@media (max-width:760px){
  .portal-sidebar{
    flex:0 0 auto;
    flex-basis:auto;
    width:100%;
    height:auto;
    min-height:0;
    align-self:stretch;
  }
  .portal-sidebar-nav{
    height:auto;
    min-height:0;
    align-content:start;
  }
}


/* Natural compact page height — v4.6.2
 * End every page immediately after its content. This removes the forced
 * full-screen empty area while keeping normal scrolling when content is long.
 */
.portal-page{
  min-height:0;
  padding-bottom:3px;
}
.portal-home .portal-page,
.portal-archive .portal-page,
.portal-single-program .portal-page,
.portal-single-iptv .portal-page{
  min-height:0;
}
@media (max-width:760px){
  .portal-page{padding-bottom:2px}
}


/* Smaller homepage only — v4.6.3
 * Keeps archive and detail pages at their existing size.
 */
.portal-home .portal-page{
  width:min(calc(100% - 28px),760px);
  padding-top:24px;
  padding-bottom:2px;
  gap:5px;
}
.portal-home .portal-toolbar{padding:1px 0}
.portal-home .portal-refresh{min-height:25px;padding:2px 7px;font-size:8.5px}
.portal-home .portal-search-form{padding:3px;gap:3px}
.portal-home .portal-search-icon{width:22px;height:23px}
.portal-home .portal-search-input{height:25px;padding:3px 7px;font-size:8.8px}
.portal-home .portal-search-button,
.portal-home .portal-search-clear{min-height:25px;padding:3px 7px;font-size:8px}
.portal-home .portal-layout,
.portal-home .portal-main{gap:5px}
.portal-home .portal-sidebar{flex-basis:132px}
.portal-home .portal-sidebar-title{padding:5px 6px;font-size:9.5px}
.portal-home .portal-sidebar-nav{padding:3px;gap:3px}
.portal-home .portal-sidebar-link{min-height:29px;padding:4px 5px;font-size:8px}
.portal-home .portal-sidebar-badge{flex-basis:26px;height:19px}
.portal-home .portal-section{border-radius:7px}
.portal-home .portal-section-header{min-height:31px;padding:4px 6px;gap:4px}
.portal-home .portal-section-header h2{font-size:10px}
.portal-home .portal-section-icon{min-width:22px;height:20px;padding:0 4px}
.portal-home .portal-section-content{padding:2px}
.portal-home .portal-section-actions{gap:3px}
.portal-home .portal-view-all{min-height:22px;padding:1px 5px;font-size:7.5px}
.portal-home .portal-section-update,
.portal-home .portal-section-update strong{font-size:7.4px}
.portal-home .xtream-list,
.portal-home .program-list{gap:3px}
.portal-home .xtream-status{min-height:21px;padding:2px 5px;font-size:8.5px}
.portal-home .xtream-field{min-height:32px;padding:3px 5px 3px 27px}
.portal-home .xtream-field::before{width:21px;padding-top:5px;font-size:8.5px}
.portal-home .xtream-label{font-size:7.8px}
.portal-home .xtream-value{font-size:8.4px;line-height:1.28}
.portal-home .xtream-card-actions{padding:2px 3px;gap:3px}
.portal-home .xtream-copy-button,
.portal-home .content-report-toggle{min-height:23px;padding:2px 6px;font-size:7.8px}
.portal-home .program-card{grid-template-columns:45px minmax(0,1fr);padding:3px;gap:4px}
.portal-home .program-cover{width:45px;height:45px;min-height:45px;border-radius:6px}
.portal-home .program-body{padding:3px}
.portal-home .program-title{font-size:8.2px;margin-bottom:2px}
.portal-home .program-publish-date,
.portal-home .program-entry-stat{font-size:7px;margin-bottom:2px}
.portal-home .program-info{font-size:7.4px;line-height:1.28;-webkit-line-clamp:2}
.portal-home .program-downloads{gap:3px;margin-top:3px}
.portal-home .program-download{min-height:22px;padding:2px 5px;font-size:7.4px}

@media (max-width:760px){
  .portal-home .portal-page{width:calc(100% - 14px);padding-top:15px;gap:4px}
  .portal-home .portal-sidebar{flex-basis:auto}
  .portal-home .portal-sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portal-home .portal-sidebar-link{min-height:27px;padding:3px;font-size:7.5px}
  .portal-home .portal-section-header{min-height:29px;padding:3px 5px}
  .portal-home .portal-section-header h2{font-size:9.2px}
  .portal-home .portal-section-update{display:none}
  .portal-home .program-card{grid-template-columns:41px minmax(0,1fr);padding:2px;gap:3px}
  .portal-home .program-cover{width:41px;height:41px;min-height:41px}
  .portal-home .program-info{font-size:7.1px}
}

@media (max-width:420px){
  .portal-home .portal-page{width:calc(100% - 8px);padding-top:12px}
  .portal-home .portal-section-header{align-items:center}
  .portal-home .portal-view-all{font-size:7px}
  .portal-home .program-card{grid-template-columns:38px minmax(0,1fr)}
  .portal-home .program-cover{width:38px;height:38px;min-height:38px}
  .portal-home .program-title{font-size:7.8px}
  .portal-home .program-info{font-size:6.9px}
}


/* More compact site-wide layout — v4.6.4
 * Reduces width, card dimensions, images and spacing on the homepage,
 * archives and detail pages without forcing a fixed-height viewport.
 */
.portal-page{
  width:min(calc(100% - 28px),800px);
  padding-top:24px;
  padding-bottom:2px;
  gap:5px;
}
.portal-layout,.portal-main{gap:5px}
.portal-sidebar{flex-basis:132px}
.portal-sidebar-title{padding:5px 6px;font-size:9.5px}
.portal-sidebar-nav{padding:3px;gap:3px}
.portal-sidebar-link{min-height:29px;padding:4px 5px;font-size:8px}
.portal-sidebar-badge{flex-basis:26px;height:19px}
.portal-toolbar{padding:1px 0}
.portal-refresh,.portal-back-home{min-height:25px;padding:2px 7px;font-size:8.5px}
.portal-search-form{padding:3px;gap:3px}
.portal-search-icon{width:22px;height:23px}
.portal-search-input{height:25px;padding:3px 7px;font-size:8.8px}
.portal-search-button,.portal-search-clear{min-height:25px;padding:3px 7px;font-size:8px}
.portal-section{border-radius:7px}
.portal-section-header{min-height:31px;padding:4px 6px;gap:4px}
.portal-section-header h2,.portal-archive-title{font-size:10px}
.portal-section-icon{min-width:22px;height:20px;padding:0 4px}
.portal-section-content{padding:2px}
.portal-section-actions{gap:3px}
.portal-view-all{min-height:22px;padding:1px 5px;font-size:7.5px}
.portal-section-update,.portal-section-update strong{font-size:7.4px}
.xtream-list,.program-list{gap:3px}
.xtream-status{min-height:21px;padding:2px 5px;font-size:8.5px}
.xtream-field{min-height:32px;padding:3px 5px 3px 27px}
.xtream-field::before{width:21px;padding-top:5px;font-size:8.5px}
.xtream-label{font-size:7.8px}
.xtream-value{font-size:8.4px;line-height:1.28}
.xtream-card-actions{padding:2px 3px;gap:3px}
.xtream-copy-button,.content-report-toggle{min-height:23px;padding:2px 6px;font-size:7.8px}
.program-card{grid-template-columns:48px minmax(0,1fr);padding:3px;gap:4px}
.program-cover{width:48px;height:48px;min-height:48px;border-radius:6px}
.program-body{padding:3px}
.program-title{font-size:8.8px;margin-bottom:2px}
.program-publish-date,.program-entry-stat{font-size:7.2px;margin-bottom:2px}
.program-info{font-size:7.7px;line-height:1.3;-webkit-line-clamp:2}
.program-downloads{gap:3px;margin-top:3px}
.program-download{min-height:22px;padding:2px 5px;font-size:7.5px}
.portal-program-detail-content{padding:6px}
.portal-program-detail-header{gap:7px;margin-bottom:7px}
.portal-program-detail-cover{width:64px;height:64px;min-width:64px}
.portal-program-detail-title{font-size:13px}
.portal-program-detail-info{font-size:9px;line-height:1.55}
.program-specs{gap:4px;margin-bottom:6px}
.program-specs>div{padding:4px}
.program-specs dt{font-size:7.5px}
.program-specs dd{font-size:8.8px}
.portal-iptv-detail .xtream-list,
.portal-iptv-detail .xtream-record{max-width:500px}
.iptv-indexable-summary{padding:5px 7px;font-size:9px}
.content-report-form{padding:5px}
.portal-pagination{margin-top:5px;gap:3px}
.portal-pagination a,.portal-pagination span{min-width:24px;min-height:23px;padding:2px 5px;font-size:8px}

/* Homepage is slightly smaller than the rest. */
.portal-home .portal-page{width:min(calc(100% - 30px),700px)}
.portal-home .portal-sidebar{flex-basis:118px}
.portal-home .program-card{grid-template-columns:40px minmax(0,1fr)}
.portal-home .program-cover{width:40px;height:40px;min-height:40px}
.portal-home .program-title{font-size:7.9px}
.portal-home .program-info{font-size:7px}

@media (max-width:760px){
  .portal-page{width:calc(100% - 10px);padding-top:14px;gap:4px}
  .portal-layout,.portal-main{gap:4px}
  .portal-sidebar{flex-basis:auto;width:100%;height:auto;min-height:0}
  .portal-sidebar-nav{grid-template-columns:repeat(2,minmax(0,1fr));height:auto;min-height:0}
  .portal-sidebar-link{min-height:27px;padding:3px;font-size:7.5px}
  .portal-section-header{min-height:29px;padding:3px 5px}
  .portal-section-header h2,.portal-archive-title{font-size:9.2px}
  .portal-section-update{display:none}
  .program-card{grid-template-columns:43px minmax(0,1fr);padding:2px;gap:3px}
  .program-cover{width:43px;height:43px;min-height:43px}
  .program-title{font-size:8.2px}
  .program-info{font-size:7.2px;line-height:1.28}
  .portal-program-detail-cover{width:56px;height:56px;min-width:56px}
  .portal-program-detail-title{font-size:11.5px}
  .portal-program-detail-info{font-size:8.5px}
  .portal-home .portal-page{width:calc(100% - 8px);padding-top:12px}
  .portal-home .program-card{grid-template-columns:37px minmax(0,1fr)}
  .portal-home .program-cover{width:37px;height:37px;min-height:37px}
  .portal-home .program-title{font-size:7.6px}
  .portal-home .program-info{font-size:6.8px}
}

@media (max-width:420px){
  .portal-page{width:calc(100% - 6px);padding-top:9px}
  .portal-section-content{padding:1px}
  .portal-sidebar-title{padding:4px 5px;font-size:8.6px}
  .portal-sidebar-link{min-height:25px;font-size:7.1px}
  .program-card{grid-template-columns:39px minmax(0,1fr)}
  .program-cover{width:39px;height:39px;min-height:39px}
  .program-title{font-size:7.8px}
  .program-info{font-size:6.9px}
  .portal-home .program-card{grid-template-columns:35px minmax(0,1fr)}
  .portal-home .program-cover{width:35px;height:35px;min-height:35px}
}


/* Site sections box + balanced sizing — v4.6.5
 * Removes any unused height below the two section links and slightly
 * increases the overall site width after the stronger v4.6.4 reduction.
 */
.portal-page{
  width:min(calc(100% - 26px),840px);
}
.portal-home .portal-page{
  width:min(calc(100% - 28px),740px);
}
.portal-sidebar{
  flex:0 0 138px;
  align-self:flex-start;
  width:auto;
  height:fit-content;
  min-height:0;
  max-height:none;
  block-size:fit-content;
  min-block-size:0;
}
.portal-home .portal-sidebar{flex-basis:124px}
.portal-sidebar-nav{
  grid-auto-rows:max-content;
  align-content:start;
  height:auto;
  min-height:0;
  block-size:auto;
  min-block-size:0;
  padding-bottom:3px;
}
.portal-sidebar-title{padding-bottom:5px}
.portal-sidebar-link{min-height:28px}

@media (max-width:760px){
  .portal-page{width:calc(100% - 12px)}
  .portal-home .portal-page{width:calc(100% - 10px)}
  .portal-sidebar,
  .portal-home .portal-sidebar{
    flex:0 0 auto!important;
    flex-basis:auto!important;
    align-self:stretch;
    width:100%;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    block-size:auto!important;
    min-block-size:0!important;
  }
  .portal-sidebar-nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-template-rows:auto;
    grid-auto-rows:auto;
    align-content:start;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    block-size:auto!important;
    min-block-size:0!important;
    padding:3px;
  }
  .portal-sidebar-link{min-height:27px}
}

@media (max-width:420px){
  .portal-page{width:calc(100% - 8px)}
  .portal-home .portal-page{width:calc(100% - 6px)}
  .portal-sidebar-title{padding:4px 5px}
  .portal-sidebar-nav{padding:2px;gap:2px}
  .portal-sidebar-link{min-height:25px;padding:3px}
}


/* Slightly larger Latest APK Updates section — v4.6.8
 * Enlarges only the APK cards on the homepage while leaving IPTV and
 * all archive/detail pages unchanged.
 */
.portal-home .portal-section-apk .portal-section-header{
  min-height:34px;
  padding:5px 7px;
}
.portal-home .portal-section-apk .portal-section-header h2{font-size:10.8px}
.portal-home .portal-section-apk .portal-section-icon{
  min-width:24px;
  height:22px;
}
.portal-home .portal-section-apk .portal-section-content{padding:3px}
.portal-home .portal-section-apk .program-list{gap:4px}
.portal-home .portal-section-apk .program-card{
  grid-template-columns:48px minmax(0,1fr);
  padding:4px;
  gap:5px;
}
.portal-home .portal-section-apk .program-cover{
  width:48px;
  height:48px;
  min-height:48px;
  border-radius:7px;
}
.portal-home .portal-section-apk .program-body{padding:4px}
.portal-home .portal-section-apk .program-title{font-size:8.7px}
.portal-home .portal-section-apk .program-publish-date,
.portal-home .portal-section-apk .program-entry-stat{font-size:7.3px}
.portal-home .portal-section-apk .program-info{
  font-size:7.6px;
  line-height:1.34;
}
.portal-home .portal-section-apk .program-download{
  min-height:24px;
  padding:3px 6px;
  font-size:7.7px;
}

@media (max-width:760px){
  .portal-home .portal-section-apk .portal-section-header{min-height:31px;padding:4px 6px}
  .portal-home .portal-section-apk .portal-section-header h2{font-size:9.8px}
  .portal-home .portal-section-apk .program-card{grid-template-columns:42px minmax(0,1fr);padding:3px;gap:4px}
  .portal-home .portal-section-apk .program-cover{width:42px;height:42px;min-height:42px}
  .portal-home .portal-section-apk .program-title{font-size:8.1px}
  .portal-home .portal-section-apk .program-info{font-size:7.2px}
}

@media (max-width:420px){
  .portal-home .portal-section-apk .program-card{grid-template-columns:39px minmax(0,1fr)}
  .portal-home .portal-section-apk .program-cover{width:39px;height:39px;min-height:39px}
  .portal-home .portal-section-apk .program-title{font-size:7.9px}
  .portal-home .portal-section-apk .program-info{font-size:7px}
}



/* Three-language interface: Arabic is default, English and Russian use LTR. */
.portal-language-switcher{
  direction:ltr;
  display:inline-flex;
  align-items:center;
  gap:3px;
  padding:2px;
  border:1px solid #40444a;
  border-radius:6px;
  background:#25272b;
}
.portal-language-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:29px;
  min-height:25px;
  padding:2px 5px;
  border-radius:4px;
  color:#aeb3bb;
  font:800 9px/1 "Segoe UI",Arial,sans-serif;
  text-decoration:none;
}
.portal-language-link:hover,.portal-language-link:focus-visible{color:#fff;background:#343840;outline:none}
.portal-language-link.is-active{color:#fff;background:#3574f0;box-shadow:0 1px 4px rgba(0,0,0,.25)}
html[dir="ltr"] .portal-sidebar-link,
html[dir="ltr"] .portal-section-heading,
html[dir="ltr"] .portal-section-actions,
html[dir="ltr"] .program-body,
html[dir="ltr"] .program-header-meta,
html[dir="ltr"] .portal-search-summary,
html[dir="ltr"] .portal-search-empty,
html[dir="ltr"] .content-report-form{direction:ltr;text-align:left}
html[dir="ltr"] .xtream-status{direction:ltr;justify-content:flex-start}
html[dir="ltr"] .xtream-label{direction:ltr;text-align:left}
html[dir="ltr"] .portal-search-icon{right:auto;left:9px}
html[dir="ltr"] .portal-search-input{padding-right:8px;padding-left:31px}
html[dir="ltr"] .portal-back-home{direction:ltr}
@media(max-width:560px){
  .portal-language-link{min-width:27px;min-height:23px;font-size:8px}
  .portal-toolbar{gap:5px}
}


/* v4.9.0: hidden free automatic translator and Google toolbar cleanup. */
.codeandapk-google-translate-element{
  position:fixed!important;
  inset:auto auto -9999px -9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.goog-te-banner-frame.skiptranslate,
.goog-te-banner-frame,
#goog-gt-tt,
.goog-te-balloon-frame,
.goog-tooltip,
.goog-tooltip:hover{
  display:none!important;
  visibility:hidden!important;
}
html,body{top:0!important}
.goog-text-highlight{
  background:transparent!important;
  box-shadow:none!important;
}
.portal-language-switcher.notranslate{unicode-bidi:isolate}


/* v5.0.1: translator is embedded in the Java hero and every Google overlay stays hidden. */
html,body{top:0!important}
iframe.goog-te-banner-frame,
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
.VIpgJd-ZVi9od-ORHb-OEVmcd,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
.VIpgJd-ZVi9od-aZ2wEe-OiiCO,
.VIpgJd-yAWNEb-L7lbkb,
.goog-te-balloon-frame,
#goog-gt-tt,
.goog-tooltip,
.goog-tooltip:hover{display:none!important;visibility:hidden!important;height:0!important;max-height:0!important;opacity:0!important;pointer-events:none!important}
body>.skiptranslate:first-child{display:none!important;height:0!important;min-height:0!important}
.codeandapk-google-translate-element,.goog-te-gadget{position:fixed!important;left:-10000px!important;bottom:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}


/* v5.0.11: stack all program detail links below the main install button at equal size. */
.portal-program-detail-downloads{
  display:flex;
  flex-direction:column;
  flex-wrap:nowrap;
  align-items:stretch;
  width:100%;
}
.portal-program-detail-downloads .program-download{
  display:flex;
  flex:0 0 auto;
  width:100%;
  min-height:34px;
  box-sizing:border-box;
  padding:6px 14px;
}
