@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@300;400;500;700;800&display=swap');

:root {
  --primary-color: #ffffff;
  --primary-dark: #f8f9fa;
  --primary-light: #e9ecef;
  --accent-color: #27ae60;
  --text-color: #000000;
  --bg-light: #fafafa;
  --card-border: #e0e0e0;
  --ps-blue: #003087;
  --ps-blue-dark: #00236b;
  --ps-blue-light: #0040a8;
  --header-h: 62px;
  --sidebar-w: 260px;
}
body.dark-mode {
  --primary-color: #0d0d0d;
  --primary-dark: #111111;
  --primary-light: #1a1a1a;
  --accent-color: #2ecc71;
  --text-color: #ffffff;
  --bg-light: #060606;
  --card-border: #333333;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{width:100%;overflow-x:hidden}
body{
  font-family:'Tajawal',sans-serif;
  background:var(--bg-light); color:var(--text-color);
  min-height:100vh; display:flex; flex-direction:column;
  transition:background .3s,color .3s;
}

/* ── Header ── */
.site-header{
  position:sticky;top:0;width:100%;z-index:900;
  background:var(--ps-blue);
  border-bottom:1px solid var(--ps-blue-dark);
  box-shadow:0 2px 20px rgba(0,0,55,0.3);
}
body.dark-mode .site-header{background:var(--ps-blue-dark);}
.header-inner{
  display:flex;align-items:center;
  padding:10px 20px;max-width:1400px;margin:0 auto;
  justify-content:space-between;gap:12px;
}
.header-brand{display:flex;align-items:center;gap:10px;}
.logo-text{
  font-size:1.4rem;font-weight:800;
  color:#fff;text-decoration:none;letter-spacing:-0.5px;
}
.logo-text:hover{color:rgba(255,255,255,0.85)}
.header-actions{display:flex;align-items:center;gap:8px;}

/* Header Nav Links */
.header-nav-links{display:flex;align-items:center;gap:4px;}
.header-nav-links a{
  padding:5px 12px;border-radius:6px;
  text-decoration:none;color:rgba(255,255,255,0.85);
  font-size:12px;font-weight:600;
  transition:all .2s;border:1px solid transparent;
}
.header-nav-links a:hover{
  background:rgba(255,255,255,0.15);
  border-color:rgba(255,255,255,0.3);
  color:#fff;
}

/* Search */
.header-search{
  flex:1;max-width:360px;
  display:flex;align-items:center;
  background:rgba(255,255,255,0.12);
  border:1.5px solid rgba(255,255,255,0.25);
  border-radius:24px;overflow:hidden;transition:all .2s;
}
.header-search:focus-within{
  background:rgba(255,255,255,0.2);
  border-color:rgba(255,255,255,0.6);
}
.header-search input{
  flex:1;padding:8px 16px;background:none;border:none;
  font-family:inherit;font-size:13px;color:#fff;outline:none;
}
.header-search input::placeholder{color:rgba(255,255,255,0.6)}
.header-search button{
  padding:0 14px;background:none;border:none;cursor:pointer;
  color:rgba(255,255,255,0.7);font-size:14px;transition:color .2s;
}
.header-search button:hover{color:#fff}

.hdr-btn{
  background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);
  cursor:pointer;color:#fff;font-size:16px;
  width:36px;height:36px;border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  transition:all .2s;
}
.hdr-btn:hover{background:rgba(255,255,255,0.25);}
.lang-btn{
  padding:5px 14px;border-radius:20px;
  border:1.5px solid rgba(255,255,255,0.4);
  background:rgba(255,255,255,0.1);color:#fff;
  font-family:'Tajawal',sans-serif;font-size:13px;font-weight:700;
  cursor:pointer;text-decoration:none;transition:all .2s;
}
.lang-btn:hover{background:rgba(255,255,255,0.25);border-color:#fff;}

/* Desktop sidebar always visible */
@media(min-width:1024px){
  .sidebar{transform:none!important;box-shadow:none;}
  .sidebar-overlay{display:none!important;}
  .main-wrap,.site-footer{margin-left:var(--sidebar-w);}
  [dir="rtl"] .main-wrap,[dir="rtl"] .site-footer{margin-left:0;margin-right:var(--sidebar-w);}
  .site-header{left:var(--sidebar-w);width:calc(100% - var(--sidebar-w));}
  [dir="rtl"] .site-header{left:0;right:var(--sidebar-w);}
}

/* ── Main Wrap ── */
.main-wrap{flex:1;overflow:visible;padding-bottom:20px;}

/* ── Featured AUTO-SCROLL ── */
.hm-featured{
  background:linear-gradient(180deg,var(--primary-dark) 0%,var(--bg-light) 100%);
  padding:14px 0 18px;
}
.hm-featured-inner{padding:0 16px;position:relative;}
.hm-featured-label{
  font-size:1rem;font-weight:700;color:var(--text-color);
  margin-bottom:10px;display:flex;align-items:center;gap:8px;
}
.hm-featured-label i{color:var(--accent-color);}
.hm-track-wrap{position:relative;overflow:hidden;}
.hm-track{
  display:flex;gap:12px;
  padding:4px 2px 10px;
  transition:transform .5s ease;
  will-change:transform;
}
.hm-fcard{
  flex:0 0 190px;min-width:190px;
  background:var(--primary-color);border:1px solid var(--card-border);
  border-radius:12px;overflow:hidden;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
  transition:transform .25s,box-shadow .25s,border-color .25s;
  text-decoration:none;color:inherit;display:block;
}
.hm-fcard:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(0,0,0,.12);border-color:var(--accent-color);}
.hm-fcard-img{position:relative;width:100%;padding-bottom:133%;overflow:hidden;background:var(--primary-dark);}
.hm-fcard-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.hm-fcard:hover .hm-fcard-img img{transform:scale(1.04);}
.img-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--card-border);}
.hm-fcard-plat{
  position:absolute;bottom:6px;left:6px;
  background:rgba(0,0,0,.72);color:var(--accent-color);
  font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px;
}
.hm-fcard-body{padding:8px 10px;}
.hm-fcard-title{
  font-weight:700;font-size:12px;line-height:1.35;height:32px;
  overflow:hidden;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;
}
.hm-fcard-meta{margin-top:5px;display:flex;justify-content:space-between;font-size:11px;color:#888;}
.hm-fcard-meta span{display:inline-flex;align-items:center;gap:3px;}
.hm-fcard-meta .fa-star{color:#ffc107;font-size:9px;}
.hm-nav-btn{
  position:absolute;top:50%;transform:translateY(-50%);
  width:34px;height:34px;border-radius:50%;
  border:1px solid var(--card-border);background:var(--primary-color);
  color:var(--text-color);display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:10;transition:all .2s;
}
.hm-nav-btn:hover{border-color:var(--accent-color);color:var(--accent-color);}
.hm-nav-prev{left:0;} .hm-nav-next{right:0;}

/* ── Sections ── */
.hm-section{padding:18px 0 6px;}
.hm-section-head{display:flex;justify-content:space-between;align-items:center;padding:0 18px 10px;}
.hm-section-title{font-size:1.05rem;font-weight:700;color:var(--text-color);display:flex;align-items:center;gap:8px;}
.hm-badge{font-size:9px;font-weight:700;padding:3px 7px;border-radius:10px;text-transform:uppercase;}
.hm-badge-new{background:linear-gradient(135deg,#ff4757,#ff6b81);color:#fff;}
.hm-badge-pop{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;}
.hm-viewall{
  font-size:12px;font-weight:600;color:var(--accent-color);
  text-decoration:none;display:inline-flex;align-items:center;gap:4px;
  padding:5px 12px;border-radius:6px;
  background:rgba(39,174,96,.08);transition:all .2s;
}
.hm-viewall:hover{background:var(--accent-color);color:#fff;}
.hm-scroll{
  display:flex;gap:12px;overflow-x:auto;scroll-behavior:smooth;
  scroll-snap-type:x mandatory;padding:4px 18px 12px;
}
.hm-scroll::-webkit-scrollbar{display:none;}
.hm-divider{height:1px;background:var(--card-border);margin:0 18px;opacity:.4;}

/* ── Cards ── */
.hm-card{
  flex:0 0 175px;min-width:175px;
  background:var(--primary-color);border:1px solid var(--card-border);
  border-radius:10px;overflow:hidden;scroll-snap-align:start;
  transition:transform .2s,box-shadow .2s,border-color .2s;
  text-decoration:none;color:inherit;display:block;
}
.hm-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,.1);border-color:var(--accent-color);}
.hm-card-img{position:relative;width:100%;padding-bottom:133%;overflow:hidden;background:var(--primary-dark);}
.hm-card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.hm-card:hover .hm-card-img img{transform:scale(1.03);}
.hm-card-badge{position:absolute;top:6px;right:6px;font-size:9px;font-weight:700;padding:2px 7px;border-radius:6px;z-index:2;}
[dir="rtl"] .hm-card-badge{right:auto;left:6px;}
.hm-card-badge-new{background:linear-gradient(135deg,#ff4757,#ff3838);color:#fff;}
.hm-card-badge-pop{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;}
.hm-card-plat{position:absolute;bottom:6px;left:6px;background:rgba(0,0,0,.7);color:var(--accent-color);font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;}
[dir="rtl"] .hm-card-plat{left:auto;right:6px;}
.hm-card-body{padding:8px 10px;}
.hm-card-title{font-weight:700;font-size:11px;line-height:1.35;height:30px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.hm-card-meta{margin-top:5px;display:flex;justify-content:space-between;font-size:10px;color:#888;}
.hm-card-meta span{display:inline-flex;align-items:center;gap:2px;}
.hm-card-meta .fa-star{color:#ffc107;}

/* ── Games Grid ── */
.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:12px;padding:4px 16px 20px;}
.games-grid .hm-card{flex:none;min-width:0;width:100%;}

/* ── Platform Bar ── */
.platform-bar{padding:14px 18px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.platform-bar-title{font-size:1.1rem;font-weight:800;color:var(--text-color);display:flex;align-items:center;gap:8px;}
.platform-bar-title i{color:var(--accent-color);}
.game-count{font-size:13px;color:#888;font-weight:500;}
.game-count strong{color:var(--accent-color);}

/* ── Search ── */
.hm-search-wrap{padding:20px 18px;}
.search-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.search-results-header h2{font-size:1.05rem;color:var(--text-color);}
.search-results-header h2 span{color:var(--accent-color);}
.clear-search-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border:1px solid var(--card-border);border-radius:6px;background:none;color:#888;font-size:12px;text-decoration:none;cursor:pointer;transition:all .2s;}
.clear-search-btn:hover{border-color:var(--accent-color);color:var(--accent-color);}
.hm-search-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px;}
.hm-search-grid .hm-card{flex:none;min-width:0;width:100%;}
.no-results{text-align:center;padding:50px 20px;color:#888;}
.no-results i{font-size:40px;margin-bottom:12px;color:var(--card-border);display:block;}
.no-results h3{font-size:1.1rem;margin-bottom:6px;color:var(--text-color);}

/* ── Pagination ── */
.pagination-wrap{padding:16px 18px;display:flex;justify-content:center;flex-wrap:wrap;gap:5px;}
.page-btn{min-width:34px;height:34px;padding:0 10px;border:1px solid var(--card-border);background:var(--primary-color);color:var(--text-color);border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;transition:all .2s;text-decoration:none;}
.page-btn:hover{border-color:var(--accent-color);color:var(--accent-color);}
.page-btn.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color);}

/* ── Game Detail ── */
.game-detail{max-width:900px;margin:0 auto;padding:20px 16px;}
.game-detail-hero{display:flex;gap:20px;margin-bottom:24px;align-items:flex-start;}
.game-cover{width:200px;flex-shrink:0;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.15);}
.game-cover img{width:100%;display:block;}
.game-cover .img-placeholder{height:266px;display:flex;align-items:center;justify-content:center;font-size:3rem;color:var(--card-border);background:var(--primary-dark);}
.game-info h1{font-size:1.4rem;font-weight:800;margin-bottom:8px;}
.game-meta{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;}
.game-meta-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;background:var(--primary-dark);font-size:12px;font-weight:600;border:1px solid var(--card-border);}
.game-meta-chip i{color:var(--accent-color);font-size:11px;}
.download-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;border-radius:10px;background:var(--accent-color);color:#fff;font-size:15px;font-weight:700;text-decoration:none;margin-top:14px;transition:opacity .2s,transform .2s;}
.download-btn:hover{opacity:.9;transform:translateY(-1px);}

/* ── Static Pages ── */
.static-page{max-width:800px;margin:0 auto;padding:30px 20px;}
.static-page h1{font-size:1.6rem;font-weight:800;margin-bottom:6px;color:var(--text-color);}
.static-page .page-date{font-size:13px;color:#888;margin-bottom:24px;}
.static-page h2{font-size:1.1rem;font-weight:700;margin:24px 0 8px;color:var(--text-color);}
.static-page p{font-size:14px;line-height:1.8;color:#555;margin-bottom:12px;}
body.dark-mode .static-page p{color:#bbb;}
.static-page a{color:var(--accent-color);}
.static-page .contact-form{background:var(--primary-dark);border:1px solid var(--card-border);border-radius:12px;padding:24px;margin-top:20px;}
.static-page .contact-form input,.static-page .contact-form textarea{width:100%;padding:10px 14px;background:var(--primary-color);border:1.5px solid var(--card-border);border-radius:8px;font-family:inherit;font-size:14px;color:var(--text-color);margin-bottom:12px;transition:border-color .2s;}
.static-page .contact-form input:focus,.static-page .contact-form textarea:focus{outline:none;border-color:var(--accent-color);}
.static-page .contact-form textarea{min-height:120px;resize:vertical;}
.static-page .contact-form button{padding:11px 28px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;}

/* ── Footer ── */
.site-footer{margin-top:30px;padding:20px;border-top:1px solid var(--card-border);background:var(--primary-color);text-align:center;font-size:13px;color:#888;}
.site-footer a{color:var(--accent-color);text-decoration:none;}
.footer-links{display:flex;justify-content:center;gap:16px;margin-top:8px;flex-wrap:wrap;}
.footer-links a{font-size:12px;color:#888;text-decoration:none;transition:color .2s;}
.footer-links a:hover{color:var(--accent-color);}

/* ── Responsive ── */
@media(max-width:768px){
  .header-search{display:none;}
  .header-nav-links{display:none;}
  .hm-nav-btn{display:none;}
  .hm-fcard{flex:0 0 155px;min-width:155px;}
  .hm-card{flex:0 0 145px;min-width:145px;}
  .games-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px;padding:4px 10px 16px;}
  .hm-search-grid{grid-template-columns:repeat(2,1fr);}
  .game-detail-hero{flex-direction:column;}
  .game-cover{width:100%;max-width:200px;}
}
@media(min-width:1100px){
  .hm-fcard{flex:0 0 210px;min-width:210px;}
  .hm-card{flex:0 0 190px;min-width:190px;}
  .games-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;}
}
@keyframes spin{to{transform:rotate(360deg)}}
.spinner{width:34px;height:34px;border:3px solid var(--card-border);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite;margin:40px auto;}/* ── Sidebar ── */
.sidebar{
  position:fixed;top:0;left:0;width:var(--sidebar-w);
  height:100%;
  background:#fff;
  z-index:1000;overflow-y:auto;
  transform:translateX(-100%);
  transition:transform .28s ease;
  padding-top:var(--header-h);
  border-right:1px solid #e8e8e8;
  box-shadow:1px 0 6px rgba(0,0,0,.05);
}
body.dark-mode .sidebar{background:#111;border-right-color:#222;}
[dir="rtl"] .sidebar{left:auto;right:0;transform:translateX(100%);}
.sidebar.open{transform:translateX(0);}
.sidebar-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.4);
  z-index:999;opacity:0;visibility:hidden;transition:all .3s;
}
.sidebar-overlay.visible{opacity:1;visibility:visible;}

/* Close button */
.sidebar-close-btn{
  display:none;position:absolute;top:10px;right:10px;
  background:none;border:none;cursor:pointer;
  font-size:16px;color:#888;padding:6px;border-radius:6px;
}
.sidebar-close-btn:hover{background:#f3f4f6;color:#333;}
@media(max-width:1023px){.sidebar-close-btn{display:block;}}

/* Groups */
.sb-group{border-bottom:1px solid #f0f0f0;}
body.dark-mode .sb-group{border-bottom-color:#1e1e1e;}
.sb-group-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 16px;cursor:pointer;
  transition:background .15s;
}
.sb-group-header strong{font-size:13px;font-weight:700;color:#111;}
body.dark-mode .sb-group-header strong{color:#fff;}
.sb-group-header:hover{background:#fafafa;}
body.dark-mode .sb-group-header:hover{background:#1a1a1a;}
.sb-chevron{font-size:11px;color:#aaa;transition:transform .3s;}
.sb-chevron.collapsed{transform:rotate(180deg);}

/* Group body */
.sb-group-body{overflow:hidden;transition:max-height .3s ease;}

/* Items */
.sb-item{
  display:flex;align-items:center;gap:8px;
  padding:8px 16px 8px 20px;
  text-decoration:none;
  color:#555;font-size:13px;
  transition:all .15s;
}
body.dark-mode .sb-item{color:#999;}
.sb-item:hover{background:#fafafa;color:#111;}
body.dark-mode .sb-item:hover{background:#1a1a1a;color:#fff;}
.sb-item.active{color:var(--accent-color);font-weight:600;}
.sb-bullet{
  width:6px;height:6px;border-radius:50%;
  background:#ccc;flex-shrink:0;transition:background .15s;
}
.sb-item:hover .sb-bullet,.sb-item.active .sb-bullet{background:var(--accent-color);}
.sb-soon-item{color:#aaa;}
body.dark-mode .sb-soon-item{color:#666;}
.sb-soon{
  margin-left:6px;font-size:10px;font-weight:600;
  color:#aaa;
}

/* Footer links */
.sb-footer-links{
  padding:14px 16px;
  display:flex;gap:14px;flex-wrap:wrap;
  border-top:1px solid #f0f0f0;
}
body.dark-mode .sb-footer-links{border-top-color:#222;}
.sb-footer-links a{
  font-size:11px;color:#aaa;text-decoration:none;transition:color .2s;
}
.sb-footer-links a:hover{color:var(--accent-color);}

/* Desktop sidebar always visible */
@media(min-width:1024px){
  .sidebar{transform:none!important;box-shadow:none;}
  .sidebar-overlay{display:none!important;}
  .main-wrap,.site-footer{margin-left:var(--sidebar-w);}
  [dir="rtl"] .main-wrap,[dir="rtl"] .site-footer{margin-left:0;margin-right:var(--sidebar-w);}
  .site-header{left:var(--sidebar-w);width:calc(100% - var(--sidebar-w));}
  [dir="rtl"] .site-header{left:0;right:var(--sidebar-w);}
}

/* ── Main Wrap ── */
.main-wrap{flex:1;overflow:visible;padding-bottom:20px;}

/* ── Featured AUTO-SCROLL ── */
.hm-featured{
  background:linear-gradient(180deg,var(--primary-dark) 0%,var(--bg-light) 100%);
  padding:14px 0 18px;
}
.hm-featured-inner{padding:0 16px;position:relative;}
.hm-featured-label{
  font-size:1rem;font-weight:700;color:var(--text-color);
  margin-bottom:10px;display:flex;align-items:center;gap:8px;
}
.hm-featured-label i{color:var(--accent-color);}
.hm-track-wrap{position:relative;overflow:hidden;}
.hm-track{
  display:flex;gap:12px;
  padding:4px 2px 10px;
  transition:transform .5s ease;
  will-change:transform;
}
.hm-fcard{
  flex:0 0 190px;min-width:190px;
  background:var(--primary-color);border:1px solid var(--card-border);
  border-radius:12px;overflow:hidden;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
  transition:transform .25s,box-shadow .25s,border-color .25s;
  text-decoration:none;color:inherit;display:block;
}
.hm-fcard:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(0,0,0,.12);border-color:var(--accent-color);}
.hm-fcard-img{position:relative;width:100%;padding-bottom:133%;overflow:hidden;background:var(--primary-dark);}
.hm-fcard-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.hm-fcard:hover .hm-fcard-img img{transform:scale(1.04);}
.img-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--card-border);}
.hm-fcard-plat{
  position:absolute;bottom:6px;left:6px;
  background:rgba(0,0,0,.72);color:var(--accent-color);
  font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px;
}
.hm-fcard-body{padding:8px 10px;}
.hm-fcard-title{
  font-weight:700;font-size:12px;line-height:1.35;height:32px;
  overflow:hidden;display:-webkit-box;
  -webkit-line-clamp:2;-webkit-box-orient:vertical;
}
.hm-fcard-meta{margin-top:5px;display:flex;justify-content:space-between;font-size:11px;color:#888;}
.hm-fcard-meta span{display:inline-flex;align-items:center;gap:3px;}
.hm-fcard-meta .fa-star{color:#ffc107;font-size:9px;}
.hm-nav-btn{
  position:absolute;top:50%;transform:translateY(-50%);
  width:34px;height:34px;border-radius:50%;
  border:1px solid var(--card-border);background:var(--primary-color);
  color:var(--text-color);display:flex;align-items:center;justify-content:center;
  cursor:pointer;z-index:10;transition:all .2s;
}
.hm-nav-btn:hover{border-color:var(--accent-color);color:var(--accent-color);}
.hm-nav-prev{left:0;} .hm-nav-next{right:0;}

/* ── Sections ── */
.hm-section{padding:18px 0 6px;}
.hm-section-head{display:flex;justify-content:space-between;align-items:center;padding:0 18px 10px;}
.hm-section-title{font-size:1.05rem;font-weight:700;color:var(--text-color);display:flex;align-items:center;gap:8px;}
.hm-badge{font-size:9px;font-weight:700;padding:3px 7px;border-radius:10px;text-transform:uppercase;}
.hm-badge-new{background:linear-gradient(135deg,#ff4757,#ff6b81);color:#fff;}
.hm-badge-pop{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;}
.hm-viewall{
  font-size:12px;font-weight:600;color:var(--accent-color);
  text-decoration:none;display:inline-flex;align-items:center;gap:4px;
  padding:5px 12px;border-radius:6px;
  background:rgba(39,174,96,.08);transition:all .2s;
}
.hm-viewall:hover{background:var(--accent-color);color:#fff;}
.hm-scroll{
  display:flex;gap:12px;overflow-x:auto;scroll-behavior:smooth;
  scroll-snap-type:x mandatory;padding:4px 18px 12px;
}
.hm-scroll::-webkit-scrollbar{display:none;}
.hm-divider{height:1px;background:var(--card-border);margin:0 18px;opacity:.4;}

/* ── Cards ── */
.hm-card{
  flex:0 0 175px;min-width:175px;
  background:var(--primary-color);border:1px solid var(--card-border);
  border-radius:10px;overflow:hidden;scroll-snap-align:start;
  transition:transform .2s,box-shadow .2s,border-color .2s;
  text-decoration:none;color:inherit;display:block;
}
.hm-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,.1);border-color:var(--accent-color);}
.hm-card-img{position:relative;width:100%;padding-bottom:133%;overflow:hidden;background:var(--primary-dark);}
.hm-card-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.hm-card:hover .hm-card-img img{transform:scale(1.03);}
.hm-card-badge{position:absolute;top:6px;right:6px;font-size:9px;font-weight:700;padding:2px 7px;border-radius:6px;z-index:2;}
[dir="rtl"] .hm-card-badge{right:auto;left:6px;}
.hm-card-badge-new{background:linear-gradient(135deg,#ff4757,#ff3838);color:#fff;}
.hm-card-badge-pop{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;}
.hm-card-plat{position:absolute;bottom:6px;left:6px;background:rgba(0,0,0,.7);color:var(--accent-color);font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;}
[dir="rtl"] .hm-card-plat{left:auto;right:6px;}
.hm-card-body{padding:8px 10px;}
.hm-card-title{font-weight:700;font-size:11px;line-height:1.35;height:30px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.hm-card-meta{margin-top:5px;display:flex;justify-content:space-between;font-size:10px;color:#888;}
.hm-card-meta span{display:inline-flex;align-items:center;gap:2px;}
.hm-card-meta .fa-star{color:#ffc107;}

/* ── Games Grid ── */
.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:12px;padding:4px 16px 20px;}
.games-grid .hm-card{flex:none;min-width:0;width:100%;}

/* ── Platform Bar ── */
.platform-bar{padding:14px 18px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
.platform-bar-title{font-size:1.1rem;font-weight:800;color:var(--text-color);display:flex;align-items:center;gap:8px;}
.platform-bar-title i{color:var(--accent-color);}
.game-count{font-size:13px;color:#888;font-weight:500;}
.game-count strong{color:var(--accent-color);}

/* ── Search ── */
.hm-search-wrap{padding:20px 18px;}
.search-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.search-results-header h2{font-size:1.05rem;color:var(--text-color);}
.search-results-header h2 span{color:var(--accent-color);}
.clear-search-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border:1px solid var(--card-border);border-radius:6px;background:none;color:#888;font-size:12px;text-decoration:none;cursor:pointer;transition:all .2s;}
.clear-search-btn:hover{border-color:var(--accent-color);color:var(--accent-color);}
.hm-search-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px;}
.hm-search-grid .hm-card{flex:none;min-width:0;width:100%;}
.no-results{text-align:center;padding:50px 20px;color:#888;}
.no-results i{font-size:40px;margin-bottom:12px;color:var(--card-border);display:block;}
.no-results h3{font-size:1.1rem;margin-bottom:6px;color:var(--text-color);}

/* ── Pagination ── */
.pagination-wrap{padding:16px 18px;display:flex;justify-content:center;flex-wrap:wrap;gap:5px;}
.page-btn{min-width:34px;height:34px;padding:0 10px;border:1px solid var(--card-border);background:var(--primary-color);color:var(--text-color);border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;transition:all .2s;text-decoration:none;}
.page-btn:hover{border-color:var(--accent-color);color:var(--accent-color);}
.page-btn.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color);}

/* ── Game Detail ── */
.game-detail{max-width:900px;margin:0 auto;padding:20px 16px;}
.game-detail-hero{display:flex;gap:20px;margin-bottom:24px;align-items:flex-start;}
.game-cover{width:200px;flex-shrink:0;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.15);}
.game-cover img{width:100%;display:block;}
.game-cover .img-placeholder{height:266px;display:flex;align-items:center;justify-content:center;font-size:3rem;color:var(--card-border);background:var(--primary-dark);}
.game-info h1{font-size:1.4rem;font-weight:800;margin-bottom:8px;}
.game-meta{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;}
.game-meta-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;background:var(--primary-dark);font-size:12px;font-weight:600;border:1px solid var(--card-border);}
.game-meta-chip i{color:var(--accent-color);font-size:11px;}
.download-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 28px;border-radius:10px;background:var(--accent-color);color:#fff;font-size:15px;font-weight:700;text-decoration:none;margin-top:14px;transition:opacity .2s,transform .2s;}
.download-btn:hover{opacity:.9;transform:translateY(-1px);}

/* ── Static Pages ── */
.static-page{max-width:800px;margin:0 auto;padding:30px 20px;}
.static-page h1{font-size:1.6rem;font-weight:800;margin-bottom:6px;color:var(--text-color);}
.static-page .page-date{font-size:13px;color:#888;margin-bottom:24px;}
.static-page h2{font-size:1.1rem;font-weight:700;margin:24px 0 8px;color:var(--text-color);}
.static-page p{font-size:14px;line-height:1.8;color:#555;margin-bottom:12px;}
body.dark-mode .static-page p{color:#bbb;}
.static-page a{color:var(--accent-color);}
.static-page .contact-form{background:var(--primary-dark);border:1px solid var(--card-border);border-radius:12px;padding:24px;margin-top:20px;}
.static-page .contact-form input,.static-page .contact-form textarea{width:100%;padding:10px 14px;background:var(--primary-color);border:1.5px solid var(--card-border);border-radius:8px;font-family:inherit;font-size:14px;color:var(--text-color);margin-bottom:12px;transition:border-color .2s;}
.static-page .contact-form input:focus,.static-page .contact-form textarea:focus{outline:none;border-color:var(--accent-color);}
.static-page .contact-form textarea{min-height:120px;resize:vertical;}
.static-page .contact-form button{padding:11px 28px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;}

/* ── Footer ── */
.site-footer{margin-top:30px;padding:20px;border-top:1px solid var(--card-border);background:var(--primary-color);text-align:center;font-size:13px;color:#888;}
.site-footer a{color:var(--accent-color);text-decoration:none;}
.footer-links{display:flex;justify-content:center;gap:16px;margin-top:8px;flex-wrap:wrap;}
.footer-links a{font-size:12px;color:#888;text-decoration:none;transition:color .2s;}
.footer-links a:hover{color:var(--accent-color);}

/* ── Responsive ── */
@media(max-width:768px){
  .header-search{display:none;}
  .header-nav-links{display:none;}
  .hm-nav-btn{display:none;}
  .hm-fcard{flex:0 0 155px;min-width:155px;}
  .hm-card{flex:0 0 145px;min-width:145px;}
  .games-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px;padding:4px 10px 16px;}
  .hm-search-grid{grid-template-columns:repeat(2,1fr);}
  .game-detail-hero{flex-direction:column;}
  .game-cover{width:100%;max-width:200px;}
}
@media(min-width:1100px){
  .hm-fcard{flex:0 0 210px;min-width:210px;}
  .hm-card{flex:0 0 190px;min-width:190px;}
  .games-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;}
}
@keyframes spin{to{transform:rotate(360deg)}}
.spinner{width:34px;height:34px;border:3px solid var(--card-border);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite;margin:40px auto;}

/* ── User Auth Pages ─────────────────────────────── */
.auth-wrap{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:30px 16px;}
.auth-box{background:var(--primary-color);border:1px solid var(--card-border);border-radius:14px;padding:32px;width:100%;max-width:380px;box-shadow:0 10px 40px rgba(0,0,0,.1);}
.auth-logo{text-align:center;margin-bottom:20px;}
.auth-logo h1{font-size:1.6rem;font-weight:800;color:var(--accent-color);}
.auth-logo p{font-size:13px;color:#888;margin-top:3px;}
.auth-tabs{display:flex;background:var(--primary-dark);border-radius:8px;padding:3px;margin-bottom:20px;}
body.dark-mode .auth-tabs{background:#1a1a1a;}
.auth-tab{flex:1;padding:8px;text-align:center;border-radius:6px;font-size:13px;font-weight:600;text-decoration:none;color:#888;transition:all .2s;}
.auth-tab.active{background:var(--accent-color);color:#fff;}
.auth-error{background:rgba(231,76,60,.1);border:1px solid rgba(231,76,60,.25);color:#e74c3c;border-radius:8px;padding:10px 13px;font-size:13px;margin-bottom:14px;display:flex;align-items:center;gap:7px;}
.auth-group{margin-bottom:14px;}
.auth-group label{display:block;font-size:11px;font-weight:700;color:#888;margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px;}
.auth-group input{width:100%;padding:10px 13px;background:var(--primary-dark);border:1.5px solid var(--card-border);border-radius:8px;font-family:inherit;font-size:14px;color:var(--text-color);transition:border-color .2s;}
body.dark-mode .auth-group input{background:#1a1a1a;}
.auth-group input:focus{outline:none;border-color:var(--accent-color);}
.auth-btn{width:100%;padding:12px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;}
.auth-btn:hover{opacity:.9;}

/* ── Header User Menu ────────────────────────────── */
.hdr-request-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:7px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:12px;font-weight:600;text-decoration:none;transition:all .2s;}
.hdr-request-btn:hover{background:rgba(255,255,255,.22);}
.hdr-req-text{display:none;}
@media(min-width:768px){.hdr-req-text{display:inline;}}
.hdr-login-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 13px;border-radius:7px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;}
.hdr-login-btn:hover{background:rgba(255,255,255,.25);}
.hdr-user-wrap{position:relative;}
.hdr-user-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:7px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;}
.hdr-user-btn:hover{background:rgba(255,255,255,.22);}
.hdr-avatar{width:24px;height:24px;border-radius:50%;background:var(--accent-color);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;}
.hdr-uname{display:none;}
@media(min-width:768px){.hdr-uname{display:inline;}}
.hdr-dropdown{position:absolute;right:0;top:calc(100% + 6px);background:var(--primary-color);border:1px solid var(--card-border);border-radius:8px;min-width:150px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.15);z-index:200;display:none;}
.hdr-dropdown.open{display:block;}
.hdr-dropdown a{display:flex;align-items:center;gap:8px;padding:10px 14px;text-decoration:none;color:var(--text-color);font-size:13px;transition:background .15s;}
.hdr-dropdown a:hover{background:var(--primary-dark);}
.hdr-dropdown a i{color:var(--accent-color);width:14px;}

/* ── Game Detail Page ────────────────────────────── */
.gd-wrap{max-width:1000px;margin:0 auto;padding:16px 16px 30px;}
.gd-breadcrumb{font-size:12px;color:#888;margin-bottom:16px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.gd-breadcrumb a{color:var(--accent-color);text-decoration:none;}
.gd-breadcrumb i{font-size:9px;}
.gd-hero{display:flex;gap:24px;margin-bottom:24px;align-items:flex-start;}
.gd-left{flex-shrink:0;width:200px;}
.gd-cover{border-radius:12px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.2);}
.gd-cover img{width:100%;display:block;}
.gd-cover-placeholder{width:100%;height:266px;background:var(--primary-dark);display:flex;align-items:center;justify-content:center;font-size:4rem;color:var(--card-border);}
.gd-trailer-btn{width:100%;margin-top:10px;padding:11px;background:var(--primary-dark);border:1px solid var(--card-border);border-radius:10px;color:var(--text-color);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;}
.gd-trailer-btn:hover{border-color:var(--accent-color);color:var(--accent-color);}
.gd-info{flex:1;min-width:0;}
.gd-platform-badge{display:inline-block;padding:3px 12px;border-radius:20px;font-size:11px;font-weight:700;color:#fff;margin-bottom:10px;}
.gd-title{font-size:1.5rem;font-weight:800;color:var(--text-color);line-height:1.2;margin-bottom:10px;}
.gd-rating-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;}
.gd-stars i{color:#ffc107;font-size:16px;}
.gd-rating-val{font-size:1.1rem;font-weight:700;color:var(--text-color);}
.gd-rating-count{font-size:12px;color:#888;}
.gd-rate-btn{padding:5px 12px;border-radius:6px;background:rgba(39,174,96,.1);border:1px solid rgba(39,174,96,.3);color:var(--accent-color);font-size:12px;font-weight:600;text-decoration:none;transition:all .2s;}
.gd-rate-btn:hover{background:var(--accent-color);color:#fff;}
.gd-meta-row{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px;}
.gd-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:20px;background:var(--primary-dark);border:1px solid var(--card-border);font-size:12px;font-weight:600;color:var(--text-color);}
.gd-chip i{color:var(--accent-color);font-size:11px;}
.gd-genres-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:14px;}
.gd-genres-label{font-size:11px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.5px;}
.gd-genre-tag{padding:4px 12px;border-radius:20px;background:var(--primary-dark);border:1px solid var(--card-border);font-size:12px;color:var(--text-color);text-decoration:none;transition:all .2s;}
.gd-genre-tag:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color);}
.gd-social-btns{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px;}
.gd-fav-btn,.gd-like-btn,.gd-dislike-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;border:1.5px solid var(--card-border);background:var(--primary-color);color:#888;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;}
.gd-fav-btn:hover,.gd-fav-btn.active{border-color:#e74c3c;color:#e74c3c;background:rgba(231,76,60,.08);}
.gd-like-btn:hover,.gd-like-btn.active{border-color:var(--accent-color);color:var(--accent-color);background:rgba(39,174,96,.08);}
.gd-dislike-btn:hover,.gd-dislike-btn.active{border-color:#888;color:#888;}
.gd-download-btns{display:flex;gap:8px;flex-wrap:wrap;}
.gd-btn{display:inline-flex;align-items:center;gap:7px;padding:11px 20px;border-radius:10px;font-size:14px;font-weight:700;text-decoration:none;transition:all .2s;}
.gd-btn-download{background:var(--accent-color);color:#fff;box-shadow:0 4px 14px rgba(39,174,96,.3);}
.gd-btn-download:hover{opacity:.9;transform:translateY(-1px);}
.gd-btn-hotfix{background:#f39c12;color:#fff;box-shadow:0 4px 14px rgba(243,156,18,.3);}
.gd-btn-hotfix:hover{opacity:.9;transform:translateY(-1px);}
.gd-btn-update{background:#3498db;color:#fff;box-shadow:0 4px 14px rgba(52,152,219,.3);}
.gd-btn-update:hover{opacity:.9;transform:translateY(-1px);}
.gd-section{background:var(--primary-color);border:1px solid var(--card-border);border-radius:12px;padding:20px;margin-bottom:16px;}
.gd-section-title{font-size:1rem;font-weight:700;color:var(--text-color);margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.gd-section-title i{color:var(--accent-color);}
.gd-description{font-size:14px;line-height:1.9;color:#666;}
body.dark-mode .gd-description{color:#aaa;}
.gd-write-review{background:var(--primary-dark);border:1px solid var(--card-border);border-radius:10px;padding:16px;margin-bottom:14px;}
.gd-write-review h4{font-size:13px;font-weight:700;color:var(--text-color);margin-bottom:10px;}
.star-picker i{font-size:24px;color:#888;cursor:pointer;margin-right:3px;transition:color .15s;}
.star-picker i:hover,.star-picker i.fas{color:#ffc107;}
#reviewComment{width:100%;margin-top:10px;padding:10px 12px;background:var(--primary-color);border:1.5px solid var(--card-border);border-radius:8px;font-family:inherit;font-size:13px;color:var(--text-color);resize:vertical;}
#reviewComment:focus{outline:none;border-color:var(--accent-color);}
.gd-submit-review-btn{margin-top:8px;padding:9px 20px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;}
.gd-review-item{padding:14px 0;border-bottom:1px solid var(--card-border);}
.gd-review-item:last-child{border-bottom:none;}
.gd-admin-reply{padding:12px;background:rgba(39,174,96,.04);border:1px solid rgba(39,174,96,.15);border-radius:8px;margin-top:8px;}
.gd-review-header{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px;}
.gd-review-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent-color);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff;flex-shrink:0;}
.admin-avatar{background:#4f8ef7;}
.admin-badge{font-size:9px;font-weight:700;padding:2px 7px;border-radius:10px;background:rgba(79,142,247,.15);color:#4f8ef7;}
.gd-review-stars i{font-size:11px;color:#ffc107;}
.gd-review-time{margin-left:auto;font-size:11px;color:#888;}
.gd-review-text{font-size:13px;line-height:1.6;color:var(--text-color);}
/* Trailer Modal */
.trailer-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:9999;align-items:center;justify-content:center;padding:20px;}
.trailer-inner{position:relative;width:100%;max-width:800px;}
.trailer-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:6px;}
.trailer-video{position:relative;padding-bottom:56.25%;height:0;}
.trailer-video iframe{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:8px;}
@media(max-width:768px){
  .gd-hero{flex-direction:column;align-items:center;}
  .gd-left{width:160px;}
  .gd-download-btns{flex-direction:column;}
  .gd-btn{justify-content:center;}
}
