/* Hub-owned treatment for the working-demo catalogue. */
.hub-playground{background:radial-gradient(ellipse at 78% 0,rgba(45,212,191,.11),transparent 34%),#0b1120}
.hub-lab-hero{padding-block:72px 54px;border-bottom:1px solid rgba(148,163,184,.18)}
.hub-lab-hero__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:72px;align-items:center}
.hub-lab-hero .section-head{max-width:720px}
.hub-lab-hero h1{font-family:var(--font-display,ui-sans-serif,sans-serif);font-size:clamp(42px,6vw,74px);line-height:1.02;letter-spacing:-3px;margin:18px 0 24px;color:var(--text,#eef2f8)}
.hub-lab-hero h1 span{color:var(--accent,#2dd4bf)}
.hub-lab-hero .section-head>p{max-width:650px;font-size:18px;line-height:1.7;color:var(--muted,#a8b5c8)}
.hub-lab-route{display:grid;grid-template-columns:44px 1fr;padding:24px 28px;border:1px solid rgba(148,163,184,.24);border-radius:16px;background:rgba(16,24,39,.82);box-shadow:0 24px 70px rgba(0,0,0,.2)}
.hub-lab-route>span,.hub-lab-route>div{padding-block:18px;border-bottom:1px solid rgba(148,163,184,.18)}
.hub-lab-route>span:nth-last-of-type(1),.hub-lab-route>div:last-child{border-bottom:0}
.hub-lab-route>span{font:800 12px/1.5 var(--font-display,ui-sans-serif,sans-serif);letter-spacing:1px;color:var(--accent,#2dd4bf)}
.hub-lab-route strong{display:block;font-family:var(--font-display,ui-sans-serif,sans-serif);font-size:20px;color:var(--text,#eef2f8)}
.hub-lab-route p{margin:6px 0 0;color:var(--muted,#a8b5c8);font-size:14px;line-height:1.55}
.hub-playground .filter-bar{position:sticky;top:84px;z-index:5;box-shadow:0 12px 35px rgba(0,0,0,.2)}
.hub-playground .entry-shot img{background:#080f1b}
@media(max-width:900px){.hub-lab-hero__grid{grid-template-columns:1fr;gap:34px}.hub-lab-hero{padding-block:48px 40px}.hub-playground .filter-bar{position:static}.hub-lab-route{grid-template-columns:38px 1fr}}
@media(max-width:560px){.hub-lab-hero h1{font-size:42px;letter-spacing:-1.7px}.hub-lab-hero .section-head>p{font-size:16px}.hub-lab-route{padding:12px 18px}.hub-lab-hero .hero__cta{align-items:stretch}.hub-lab-hero .hero__cta .btn{justify-content:center}}
@media(prefers-reduced-motion:reduce){.hub-playground *{scroll-behavior:auto!important}}
/* Rendered from data/catalogue.json: a template's pattern and player count, and what left the gallery. */
.hub-playground .game-card p.entry-facts{flex:none;font-size:var(--fs-sm);color:var(--text-muted);margin:0}
.hub-playground .moved-title{font-size:var(--fs-lg);margin:0 0 var(--sp-3)}
.hub-playground .moved-list{margin:0;padding-left:1.2em;color:var(--text-body);display:grid;gap:var(--sp-2)}
.hub-playground .moved-list a{color:var(--accent-ink)}
.hub-playground .entry-foot{flex-wrap:wrap}
.hub-playground .entry-foot .demo-card__link{margin-left:auto}
