/* Game Lab directory and public project galleries. */
.gl-controls{display:flex;flex-wrap:wrap;gap:24px;align-items:end;margin-bottom:24px;min-width:0}
.gl-filters{display:flex;flex:1 1 460px;gap:8px;overflow-x:auto;min-width:0;scrollbar-width:thin;padding:6px 4px 12px;overscroll-behavior-x:contain}
.gl-filters button{flex:none;border:1px solid var(--line);border-radius:999px;background:white;color:var(--ink);padding:9px 18px;font-size:13px;cursor:pointer;white-space:nowrap}
.gl-filters button[aria-pressed=true]{background:#15171c;border-color:#15171c;color:white}
.gl-search{font-size:12px;color:var(--muted);display:grid;gap:6px;flex:0 1 250px;max-width:100%;padding-bottom:12px}
.gl-search input{width:100%;min-width:0;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink);font-size:14px}
.gl-search input:focus{border-color:var(--ink)}
.gl-pager{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 28px}
.gl-pager>div{display:flex;gap:9px}.gl-pager button{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:white;font-size:20px;cursor:pointer;color:var(--ink)}
.gl-pager button:disabled{opacity:.3;cursor:default}.gl-count{font-size:13px;margin-top:18px!important}.gl-pager .gl-count{margin:0!important}
.gl-family{font-size:11px!important;letter-spacing:.06em;text-transform:uppercase;margin:0 0 12px!important}
.gl-description{margin-top:18px;font-size:13px}.gl-description summary{cursor:pointer;color:var(--muted);padding-block:6px}.gl-description p{margin-top:12px!important}
.gl-card-actions{display:flex;gap:24px;flex-wrap:wrap}.gl-card-actions .bp-text-link{margin-top:16px}
.gl-grid [hidden],.gl-empty[hidden]{display:none!important}.gl-grid .bp-card{padding-bottom:0}.gl-empty{padding:40px 0}
.gl-hero-image{margin-top:0;margin-bottom:50px}.gl-hero-image>img{display:block;width:100%;height:clamp(280px,36vw,490px);object-fit:cover;border-radius:24px;background:#f0f5fc}.gl-hero-image figcaption{font-size:12px;color:var(--muted);margin-top:12px}
.gl-grid .bp-card-art{aspect-ratio:16/10}.gl-grid .bp-card-art img{transition:none}
@media(max-width:900px){.gl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.gl-grid{grid-template-columns:1fr}.gl-controls{gap:8px}.gl-filters{flex-basis:100%;width:100%}.gl-search{flex-basis:100%}.gl-hero-image>img{height:auto;aspect-ratio:4/3;border-radius:20px}.gl-hero-image{margin-bottom:36px}.gl-pager{margin-bottom:24px}}
/* Keep genuine game frames legible instead of enlarging and cropping a thumbnail. */
.gl-split-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,5vw,72px)}
.gl-split-hero .bp-intro{display:block}.gl-split-hero h1{font-size:clamp(38px,3.6vw,54px)}
.gl-split-hero .bp-lead{margin-top:24px;font-size:16px}.gl-split-hero .gl-hero-image{width:100%;margin:0}
.gl-split-hero .gl-hero-image>img{height:auto;aspect-ratio:16/10;object-fit:contain;background:#f5f6f8;border-radius:20px}
@media(max-width:900px){.gl-split-hero{grid-template-columns:1fr;gap:32px}.gl-split-hero .gl-hero-image{max-width:720px}.gl-split-hero h1{font-size:clamp(38px,5vw,52px)}}
@media(max-width:600px){.gl-split-hero .bp-lead{font-size:15px;margin-top:20px}}
