/* ═══════════════════════════════════════════════
   DALFAST GAMES PLATFORM — category grid + monetization UI
═══════════════════════════════════════════════ */
.pg-filters { display:flex; gap:0.5rem; flex-wrap:wrap; margin-bottom:2rem; justify-content:center; }
.pg-filter { padding:0.5rem 1rem; border-radius:100px; border:1.5px solid var(--border); background:white; font-size:0.82rem; font-weight:600; color:var(--ink-muted); cursor:pointer; transition:all var(--t); font-family:inherit; white-space:nowrap; }
.pg-filter:hover { border-color:var(--teal); }
.pg-filter.active { background:var(--teal); border-color:var(--teal); color:white; }

.pg-category { margin-bottom:2.5rem; }
.pg-cat-head { display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; margin-bottom:1rem; flex-wrap:wrap; }
.pg-cat-title { font-family:var(--font-display); font-size:1.35rem; font-weight:800; color:var(--ink); }
.pg-cat-desc { font-size:0.85rem; color:var(--ink-soft); margin-top:0.2rem; }
.pg-cat-count { font-size:0.72rem; font-weight:700; color:var(--teal); background:var(--cyan-glow); padding:0.3rem 0.75rem; border-radius:100px; white-space:nowrap; }

.pg-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(155px,1fr)); gap:0.875rem; }
.pg-tile { background:white; border:1.5px solid var(--border); border-radius:var(--r-md); overflow:hidden; cursor:pointer; transition:all var(--t) var(--ease); display:flex; flex-direction:column; }
.pg-tile-playable:hover { transform:translateY(-4px); box-shadow:0 14px 32px rgba(11,126,168,0.16); border-color:var(--border-md); }
.pg-tile-soon { opacity:0.62; }
.pg-tile-soon:hover { opacity:0.78; }
.pg-tile-icon { aspect-ratio:16/9; display:flex; align-items:center; justify-content:center; font-size:2.5rem; background:linear-gradient(135deg,var(--surface-2),var(--cyan-glow)); }
.pg-tile-playable:hover .pg-tile-icon { transform:scale(1.05); }
.pg-tile-body { padding:0.75rem 0.875rem; flex:1; display:flex; flex-direction:column; }
.pg-tile-title { font-size:0.85rem; font-weight:700; color:var(--ink); line-height:1.25; margin-bottom:0.5rem; flex:1; }
.pg-tile-foot { display:flex; align-items:center; justify-content:space-between; }
.pg-badge { font-size:0.6rem; font-weight:800; padding:0.15rem 0.5rem; border-radius:100px; text-transform:uppercase; letter-spacing:0.03em; }
.pg-free { background:rgba(43,217,160,0.15); color:#14916B; }
.pg-pro { background:linear-gradient(135deg,#0B7EA8,#4DCFE0); color:white; }
.pg-soon { background:rgba(107,122,132,0.12); color:var(--ink-muted); }
.pg-tile-arrow { font-size:0.72rem; font-weight:700; color:var(--teal); }
.pg-tile-soon .pg-tile-arrow { color:var(--ink-muted); }

/* Ad slots */
.pg-ad-slot { border:1.5px dashed var(--border-str); border-radius:var(--r-md); background:repeating-linear-gradient(45deg,var(--surface-2),var(--surface-2) 10px,var(--surface-3) 10px,var(--surface-3) 20px); padding:2rem; text-align:center; margin:2rem 0; }
.pg-ad-slot > span { font-size:0.7rem; text-transform:uppercase; letter-spacing:0.1em; font-weight:700; color:var(--ink-muted); }
.pg-ad-note { font-size:0.75rem; color:var(--ink-muted); margin-top:0.3rem; opacity:0.7; }
/* Hidden for PRO users */
body.is-pro .pg-ad-slot { display:none; }

@media(max-width:680px){ .pg-grid { grid-template-columns:repeat(auto-fill,minmax(130px,1fr)); gap:0.625rem; } .pg-tile-icon { font-size:2rem; } }
