/*
Theme Name: GameApk Online
Description: Dark game discovery theme with Latest Games, game pages and related games. No categories.
Version: 1.0
Text Domain: gameapk
*/
:root{--bg:#0d0f16;--panel:#161a25;--panel2:#1d2230;--line:#282e3f;--text:#eceef5;--mute:#9aa3b8;--accent:#7b5cff;--accent2:#b39dff;--star:#ffb547;--r:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 Figtree,system-ui,-apple-system,Segoe UI,sans-serif;animation:pg .35s ease both}
@keyframes pg{from{opacity:0}to{opacity:1}}
h1,h2,h3{font-family:"Bricolage Grotesque",Figtree,system-ui,sans-serif;line-height:1.15;margin:0}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
:focus-visible{outline:3px solid var(--accent2);outline-offset:2px}
.wrap{width:min(1320px,100% - 2rem);margin:0 auto}
.btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--accent);color:#fff;border:0;border-radius:999px;padding:.65rem 1.3rem;font:600 .95rem inherit;cursor:pointer;transition:transform .2s,background .2s}
.btn:hover{background:#6544ee;transform:translateY(-2px)}.btn.ghost{background:transparent;border:1px solid var(--line)}.btn.ghost:hover{background:var(--panel2)}
/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(13,15,22,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;gap:1.5rem;min-height:68px}
.logo{font:800 1.4rem "Bricolage Grotesque",sans-serif}.logo span{color:var(--accent2)}
.nav{display:flex;gap:1.5rem;margin-right:auto}.nav a{color:var(--mute);padding:.4rem 0;border-bottom:2px solid transparent}.nav a:hover,.nav a.on{color:var(--text);border-color:var(--accent)}
.search{display:flex;background:var(--panel);border:1px solid var(--line);border-radius:999px;overflow:hidden}
.search input{background:none;border:0;color:var(--text);padding:.55rem 1rem;width:220px;font:inherit}.search input:focus{outline:none}
.search button{background:none;border:0;color:var(--mute);padding:0 1rem;cursor:pointer;font-size:1rem}
.menu-btn{display:none;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:.5rem .8rem;cursor:pointer}
/* latest */
.latest{margin:2rem 0 3rem;padding:1.6rem;border-radius:24px;background:radial-gradient(900px 300px at 0 0,rgba(123,92,255,.28),transparent),var(--panel);border:1px solid #3a3470}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.2rem;flex-wrap:wrap}
.sec-head h2{font-size:clamp(1.6rem,3vw,2.4rem)}.sec-head p{margin:.3rem 0 0;color:var(--mute)}
.rail{display:flex;gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.8rem}
.rail::-webkit-scrollbar{height:8px}.rail::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}
.wide{position:relative;flex:0 0 min(82vw,420px);scroll-snap-align:start;border-radius:var(--r);overflow:hidden;aspect-ratio:16/10;background:var(--panel2)}
@media(min-width:1100px){.rail{overflow:visible}.wide{flex:1 1 0}}
.wide img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.wide:hover img{transform:scale(1.06)}
.wide .ov{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:end;padding:1.1rem;background:linear-gradient(transparent 35%,rgba(5,6,10,.92))}
.wide h3{font-size:1.3rem}.badge{position:absolute;top:.8rem;left:.8rem;background:var(--accent);padding:.15rem .7rem;border-radius:999px;font-weight:700;font-size:.8rem}
.meta{color:var(--mute);font-size:.88rem;display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}.star{color:var(--star);font-weight:700}
/* grid + cards */
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
@media(min-width:768px){.grid{grid-template-columns:repeat(3,1fr);gap:1.3rem}}@media(min-width:1024px){.grid{grid-template-columns:repeat(4,1fr)}}@media(min-width:1360px){.grid{grid-template-columns:repeat(5,1fr)}}
@media(max-width:480px){.grid.one{grid-template-columns:1fr}}
.card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,border-color .25s}
.card:hover,.card:focus-within{transform:translateY(-4px);border-color:var(--accent)}
.thumb{position:relative;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(100deg,var(--panel2) 30%,#262c3d 50%,var(--panel2) 70%) 0 0/200% 100%;animation:sk 1.4s linear infinite}
@keyframes sk{to{background-position:-200% 0}}
.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover .thumb img{transform:scale(1.08)}
.thumb .btn{position:absolute;left:50%;bottom:.8rem;transform:translate(-50%,12px);opacity:0;transition:.25s}
.card:hover .thumb .btn,.card:focus-within .thumb .btn{opacity:1;transform:translate(-50%,0)}
@media(hover:none){.thumb .btn{opacity:1;transform:translate(-50%,0)}}
.card .body{padding:.9rem 1rem 1.1rem;display:flex;flex-direction:column;gap:.4rem;flex:1}
.card h3{font-size:1.08rem}.card p{margin:0;color:var(--mute);font-size:.88rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pill{background:var(--panel2);border-radius:999px;padding:.1rem .65rem;font-size:.78rem;color:var(--accent2)}
.pager{display:flex;gap:.4rem;justify-content:center;margin:2.2rem 0;flex-wrap:wrap}
.pager a,.pager span{padding:.5rem .95rem;border-radius:10px;background:var(--panel);border:1px solid var(--line)}.pager .current{background:var(--accent);border-color:var(--accent)}
.empty{text-align:center;padding:4rem 1rem;background:var(--panel);border:1px dashed var(--line);border-radius:var(--r)}
/* single */
.hero{position:relative;min-height:440px;display:flex;align-items:end;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 10%,var(--bg))}
.hero .wrap{position:relative;z-index:2;padding:3rem 0 1.5rem}.hero h1{font-size:clamp(2.2rem,6vw,4.2rem);margin:.6rem 0}
.hero .meta{font-size:1rem;color:var(--text)}.hero .btn{margin-top:1.2rem}
.cols{display:grid;gap:2rem;margin:2rem 0}@media(min-width:900px){.cols{grid-template-columns:2fr 1fr}}
.info{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:1.3rem;align-self:start}
.info dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.6rem 1rem}.info dt{color:var(--mute)}.info dd{margin:0}
.tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:1rem}
.shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.shots a{border-radius:12px;overflow:hidden;aspect-ratio:16/9;background:var(--panel2)}.shots img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.shots a:hover img{transform:scale(1.05)}
.block{margin:2.5rem 0}.block>h2{margin-bottom:1rem;font-size:1.7rem}.prose p{color:#c9cee0;max-width:75ch}
.site-footer{margin-top:4rem;border-top:1px solid var(--line);padding:2rem 0;color:var(--mute);text-align:center}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* whole card clickable */
.card h3 a::after{content:"";position:absolute;inset:0;z-index:2}
.card{cursor:pointer}
/* mobile */
body{overflow-x:hidden}
@media(max-width:760px){
 .bar{flex-wrap:wrap;gap:.6rem 1rem;padding:.6rem 0}
 .logo{font-size:1.2rem}
 .menu-btn{display:block;margin-left:auto}
 .search{order:3;width:100%}.search input{flex:1;width:100%;min-width:0}
 .nav{display:none;order:4;width:100%;flex-direction:column;gap:.2rem;margin:0}
 .open .nav{display:flex}.nav a{padding:.6rem 0}
 .latest{padding:1rem;border-radius:18px;margin:1rem 0 2rem}
 .wide{flex-basis:78vw}
 .grid{gap:.7rem}.card .body{padding:.7rem .75rem .9rem}.card h3{font-size:.98rem}.card p{font-size:.82rem}
 .meta{gap:.4rem .6rem;font-size:.8rem}
 .hero{min-height:320px}.hero .wrap{padding:2rem 0 1rem}
 .shots{grid-template-columns:1fr}
 .sec-head .btn{padding:.5rem 1rem}
 .pager a,.pager span{padding:.45rem .75rem}
}
@media(max-width:360px){.grid{grid-template-columns:1fr}}
