/* RESET */
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Poppins',sans-serif;background:#f9f9f9;color:#222;line-height:1.6}
img{max-width:100%;display:block}

/* NAVBAR */
.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.nav-logo{height:32px}
.nav-links{display:flex;gap:1rem;list-style:none}
.nav-links a{text-decoration:none;color:#222;font-weight:600}
.nav-links a.active{color:#ff5a5f}
.nav-toggle{display:none;flex-direction:column;gap:4px;cursor:pointer;background:none;border:0}
.nav-toggle span{width:25px;height:3px;background:#333;border-radius:2px}

/* HERO */
.hero{text-align:center;padding:2rem 1rem;background:linear-gradient(135deg,#ff5a5f,#ff9966);color:#fff}
.hero h1{font-size:2rem;margin-bottom:.5rem}
.hero p{margin-bottom:1rem}
.hero input{padding:.6rem 1rem;border-radius:20px;border:0;max-width:400px;width:100%}

/* SECTIONS */
.section{padding:2rem 1rem}
.section-title{margin-bottom:1rem;font-size:1.5rem;text-align:center}

/* GRIDS */
.game-grid,.category-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 6px rgba(0,0,0,.08);cursor:pointer;transition:transform .2s}
.card:hover{transform:translateY(-4px)}
.card h3{text-align:center;padding:.6rem;font-size:.95rem}
.card-img-wrapper{aspect-ratio:4/3;overflow:hidden;position:relative}
.card-img-wrapper img{width:100%;height:100%;object-fit:cover}
.card-overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,.4);opacity:0;transition:.3s}
.card:hover .card-overlay{opacity:1}
.play-btn{background:#ff5a5f;color:#fff;border:0;border-radius:20px;padding:.4rem .8rem;font-weight:600;cursor:pointer}
.play-large{padding:.8rem 1.4rem;font-size:1rem}

/* SKELETON */
.skeleton-img{width:100%;aspect-ratio:4/3;background:#e0e0e0}
.skeleton-text{height:14px;margin:.5rem auto;background:#ddd;width:70%}

/* GAME DETAIL */
.game-detail{max-width:1000px;margin:2rem auto;background:#fff;padding:1rem;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.game-hero{display:flex;flex-wrap:wrap;gap:1rem}
.game-cover{flex:1 1 400px;border-radius:8px}
.game-info{flex:1 1 250px}

/* CATEGORY HEADER */
.category-header{text-align:center;padding:1.5rem}
.category-header input{margin-top:1rem;padding:.5rem 1rem;border-radius:20px;border:1px solid #ddd;max-width:300px;width:100%}

/* FOOTER */
.footer{text-align:center;padding:1rem;background:#fff;border-top:1px solid #eee;margin-top:2rem}

/* RESPONSIVE */
@media(max-width:768px){
  .nav-toggle{display:flex}
  .nav-links{display:none;flex-direction:column;position:absolute;top:60px;right:0;background:#fff;padding:1rem;box-shadow:0 4px 8px rgba(0,0,0,.1)}
  .nav-links.active{display:flex}
  .game-hero{flex-direction:column;align-items:center}
}
