/* An editorial game library: a featured lead tile, compact shelves, and clear captions. */
body.yo7-library :is(h1,h2,h3,h4,h5,h6){text-transform:capitalize!important}
body.yo7-library .section{margin-bottom:42px}
body.yo7-library .section-heading{align-items:end;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid #ffffff14}
body.yo7-library .section-heading h2{color:#f7f7fa;font-size:clamp(21px,2vw,28px);font-weight:750;letter-spacing:-.035em}
body.yo7-library .section-heading h2::before{content:'';display:inline-block;width:7px;height:7px;margin:0 10px 4px 0;border-radius:50%;background:#9d87ff;box-shadow:0 0 15px #9d87ff}
body.yo7-library .game-card:nth-child(n){border:1px solid #ffffff12;border-radius:10px;background:#1b1b20;box-shadow:none;overflow:hidden;transition:border-color .2s,transform .2s}
body.yo7-library .game-card:nth-child(n):hover{border-color:#a69cff;box-shadow:none;transform:translateY(-3px)}
body.yo7-library .game-card .game-play{display:flex;flex-direction:column;height:100%;overflow:hidden}
body.yo7-library .game-card .game-play img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transform:none;transition:transform .35s}
body.yo7-library .game-card:hover .game-play img{transform:scale(1.03)}
body.yo7-library .game-card:nth-child(n) .card-caption{position:static;display:flex;flex-direction:column;justify-content:center;gap:7px;min-height:74px;margin:0;padding:13px 42px 13px 14px;transform:none;background:#1b1b20;color:#f5f5f8!important;font-size:14px;line-height:1.25;text-shadow:none}
body.yo7-library .game-card .favorite{top:auto;bottom:15px;right:12px;width:30px;height:30px;opacity:1;transform:none;background:#303039;border:1px solid #ffffff1c;border-radius:8px}
body.yo7-library .game-card .favorite svg{width:16px;height:16px}
body.home.yo7-library .top-picks{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:1fr;gap:12px}
body.home.yo7-library .top-picks .game-card:first-child{grid-row:span 2}
body.home.yo7-library .top-picks .game-card:first-child .game-play{position:relative;min-height:100%}
body.home.yo7-library .top-picks .game-card:first-child .game-play img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body.home.yo7-library .top-picks .game-card:first-child .card-caption{position:relative;z-index:1;justify-content:flex-end;flex:1;min-height:250px;padding:30px 50px 24px 24px;background:linear-gradient(0deg,#111 0%,#111b 34%,transparent 80%);font-size:clamp(18px,2vw,28px)}
body.home.yo7-library .top-picks .game-card:first-child .favorite{bottom:24px;right:18px}
body.home.yo7-library .game-row[data-desktop-style],body.home.yo7-library .game-row{grid-auto-columns:clamp(180px,19vw,245px);gap:14px}
body.yo7-library .yo7-player-stage{border:1px solid #ffffff20;border-radius:14px;overflow:hidden;background:#111}
body.yo7-library .yo7-player-toolbar{border:1px solid #ffffff12;border-radius:0 0 14px 14px;background:#202026}
@media(max-width:650px){
 body.yo7-library .section{margin-bottom:32px}body.yo7-library .section-heading h2{font-size:20px}
 body.home.yo7-library .top-picks{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body.home.yo7-library .top-picks .game-card:first-child{grid-column:1/-1;grid-row:auto}
 body.home.yo7-library .top-picks .game-card:first-child .card-caption{min-height:210px;font-size:22px}
 body.home.yo7-library .game-row[data-mobile-style],body.home.yo7-library .game-row[data-desktop-style],body.home.yo7-library .game-row{grid-auto-columns:165px;gap:10px}
 body.yo7-library .game-card:nth-child(n) .card-caption{font-size:12px;min-height:67px;padding:10px 37px 10px 10px}
}
/* Override the reference theme's named mosaic and overlay captions. */
body.home.yo7-library .top-picks{grid-template-areas:none!important;grid-template-columns:2fr 1fr 1fr!important;grid-template-rows:none!important;grid-auto-rows:1fr!important;height:auto!important}
body.home.yo7-library .top-picks .game-card:nth-child(n){grid-area:auto!important;aspect-ratio:auto!important;height:auto!important}
body.home.yo7-library .top-picks .game-card:first-child{grid-row:span 2!important}
body.home.yo7-library .top-picks .game-card:nth-child(n) .card-caption,body.home.yo7-library .game-row .game-card:nth-child(n) .card-caption,body.yo7-library .game-grid .game-card:nth-child(n) .card-caption,body.home.yo7-library .yo7-discover .game-card:nth-child(n) .card-caption{position:static!important;display:flex!important;flex-direction:column;justify-content:center;gap:7px;min-height:74px;inset:auto!important;transform:none!important;background:#1b1b20!important;color:#f5f5f8!important;padding:13px 42px 13px 14px!important;font-size:14px;line-height:1.25;text-shadow:none!important}
body.home.yo7-library .top-picks .game-card:first-child .card-caption{position:relative!important;justify-content:flex-end;min-height:250px;background:linear-gradient(0deg,#111 0%,#111b 34%,transparent 80%)!important;padding:30px 50px 24px 24px!important;font-size:clamp(18px,2vw,28px)}
@media(max-width:650px){body.home.yo7-library .top-picks{grid-template-columns:repeat(2,minmax(0,1fr))!important}body.home.yo7-library .top-picks .game-card:first-child{grid-column:1/-1!important;grid-row:auto!important}body.home.yo7-library .top-picks .game-card:first-child .card-caption{min-height:210px}body.home.yo7-library .top-picks .game-card:nth-child(n) .card-caption,body.home.yo7-library .game-row .game-card:nth-child(n) .card-caption{font-size:12px;min-height:67px;padding:10px 37px 10px 10px!important}}
body.home.yo7-library .top-picks .game-card:first-child .game-play{display:flex!important;flex-direction:column!important;height:100%!important}
body.home.yo7-library .top-picks .game-card:first-child .game-play img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover}
body.home.yo7-library .top-picks .game-card:first-child .card-caption{min-height:0!important;flex:1 1 auto!important;display:flex!important;justify-content:flex-end!important}
body.home.yo7-library .top-picks .game-card:nth-child(n) .game-play{display:flex!important;flex-direction:column!important;height:100%!important}
body.home.yo7-library .top-picks .game-card:not(:first-child) .game-play img{position:static!important;width:100%!important;height:auto!important;aspect-ratio:16/10!important;flex:0 0 auto;object-fit:cover}
body.home.yo7-library .top-picks .game-card:nth-child(n) .card-caption{flex:1 1 auto!important}
body.home.yo7-library .top-picks .game-card:nth-child(6){grid-column:1/-1!important}
body.home.yo7-library .top-picks .game-card:nth-child(6) .game-play{flex-direction:row!important;min-height:120px}
body.home.yo7-library .top-picks .game-card:nth-child(6) .game-play img{width:35%!important;max-height:160px!important;aspect-ratio:auto!important;object-fit:cover}
@media(max-width:650px){body.home.yo7-library .top-picks .game-card:nth-child(6){grid-column:auto!important}body.home.yo7-library .top-picks .game-card:nth-child(6) .game-play{flex-direction:column!important;min-height:0}body.home.yo7-library .top-picks .game-card:nth-child(6) .game-play img{width:100%!important;max-height:none!important;aspect-ratio:16/10!important}}
/* Compact, readable cards for touch screens. */
@media(max-width:650px){
 body.home.yo7-library .top-picks{grid-auto-flow:row!important;grid-auto-rows:auto!important;overflow:visible!important;gap:10px!important}
 body.home.yo7-library .top-picks .game-card:nth-child(n),body.yo7-library .game-grid .game-card:nth-child(n){min-width:0;border-radius:12px}
 body.home.yo7-library .top-picks .game-card:nth-child(n) .card-caption,body.home.yo7-library .game-row .game-card:nth-child(n) .card-caption,body.home.yo7-library .yo7-discover .game-card:nth-child(n) .card-caption,body.yo7-library .game-grid .game-card:nth-child(n) .card-caption{min-height:54px!important;padding:10px 12px!important;text-align:left!important;justify-content:flex-start!important;white-space:normal!important;overflow-wrap:anywhere;font-size:13px!important;line-height:1.3!important}
 body.home.yo7-library .top-picks .game-card:first-child .card-caption{min-height:210px!important;justify-content:flex-end!important;padding:20px 18px!important;font-size:19px!important}
 body.home.yo7-library .top-picks .game-card:nth-child(6){grid-column:1/-1!important}
 body.home.yo7-library .top-picks .game-card:nth-child(6) .game-play{flex-direction:row!important;min-height:108px!important;align-items:stretch}
 body.home.yo7-library .top-picks .game-card:nth-child(6) .game-play img{width:42%!important;max-height:none!important;height:auto!important;aspect-ratio:auto!important;object-fit:cover}
 body.home.yo7-library .top-picks .game-card:nth-child(6) .card-caption{justify-content:center!important;padding:12px 48px 12px 14px!important}
 body.yo7-library .game-card .favorite,body.home.yo7-library .top-picks .favorite,body.home.yo7-library .game-row .favorite{top:8px!important;bottom:auto!important;right:8px!important;width:40px!important;height:40px!important;display:grid;place-items:center;border-radius:10px;background:#111b!important}
 body.yo7-library .game-card .favorite svg{width:18px;height:18px}
 body.home.yo7-library .game-row[data-mobile-style],body.home.yo7-library .game-row[data-desktop-style],body.home.yo7-library .game-row{grid-auto-columns:min(44vw,180px)!important;gap:10px!important;scroll-padding-left:2px}
}
@media(max-width:650px){
 body.home.yo7-library .top-picks .game-card:nth-child(n) .card-caption,body.home.yo7-library .game-row .game-card:nth-child(n) .card-caption,body.home.yo7-library .yo7-discover .game-card:nth-child(n) .card-caption,body.yo7-library .game-grid .game-card:nth-child(n) .card-caption{align-items:flex-start!important}
}
@media(max-width:650px){
 body.home.yo7-library .top-picks .game-card:first-child,
 body.home.yo7-library .top-picks .game-card:nth-child(6){grid-column:auto!important;grid-row:auto!important}
 body.home.yo7-library .top-picks .game-card:first-child .game-play,
 body.home.yo7-library .top-picks .game-card:nth-child(6) .game-play{display:flex!important;flex-direction:column!important;min-height:0!important}
 body.home.yo7-library .top-picks .game-card:first-child .game-play img,
 body.home.yo7-library .top-picks .game-card:nth-child(6) .game-play img{position:static!important;inset:auto!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:16/10!important;object-fit:cover}
 body.home.yo7-library .top-picks .game-card:first-child .card-caption,
 body.home.yo7-library .top-picks .game-card:nth-child(6) .card-caption{position:static!important;flex:1 1 auto!important;min-height:54px!important;justify-content:flex-start!important;padding:10px 12px!important;background:#1b1b20!important;color:#f5f5f8!important;font-size:13px!important;line-height:1.3!important}
}
@media(hover:none){
 body.yo7-library .game-card:nth-child(n):hover{transform:none;box-shadow:none}
 body.yo7-library .game-card:hover .game-play img{transform:none}
}
@media(max-width:650px){
 body.k9-hero-home.yo7-library.yo7-search-open:not(.yo7-layout-preview)>main{padding-top:calc(122px + var(--k9-admin) + var(--k9-app) + 16px)!important}
}
/* Full-bleed game artwork with a consistent readable title overlay. */
body.home.yo7-library .top-picks{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:auto!important}
body.home.yo7-library .top-picks .game-card:nth-child(n){grid-column:auto!important;grid-row:auto!important;aspect-ratio:16/10!important}
body.yo7-library .game-card:nth-child(n){padding:0!important;border:0!important;background:#151515!important}
body.yo7-library .game-card:nth-child(n) .game-play,
body.home.yo7-library .top-picks .game-card:nth-child(n) .game-play{position:relative!important;display:block!important;min-height:0!important;height:100%!important;padding:0!important}
body.yo7-library .game-card:nth-child(n) .game-play img,
body.home.yo7-library .top-picks .game-card:nth-child(n) .game-play img{position:static!important;inset:auto!important;display:block!important;width:100%!important;height:100%!important;max-height:none!important;aspect-ratio:16/10!important;object-fit:cover!important}
body.yo7-library .game-card:nth-child(n) .card-caption,
body.home.yo7-library .top-picks .game-card:nth-child(n) .card-caption,
body.home.yo7-library .game-row .game-card:nth-child(n) .card-caption,
body.home.yo7-library .yo7-discover .game-card:nth-child(n) .card-caption,
body.yo7-library .game-grid .game-card:nth-child(n) .card-caption{position:absolute!important;inset:auto 0 0!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;min-height:0!important;margin:0!important;padding:34px 10px 12px!important;background:linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.55) 48%,transparent)!important;color:#fff!important;text-align:center!important;font-size:14px!important;line-height:1.25!important;text-shadow:0 1px 3px #000!important;transform:none!important}
body.yo7-library .game-card:nth-child(n) .favorite{top:8px!important;right:8px!important;bottom:auto!important}
@media(max-width:650px){
 body.home.yo7-library .top-picks{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.yo7-library .game-card:nth-child(n) .card-caption,body.home.yo7-library .top-picks .game-card:nth-child(n) .card-caption,body.home.yo7-library .game-row .game-card:nth-child(n) .card-caption,body.home.yo7-library .yo7-discover .game-card:nth-child(n) .card-caption,body.yo7-library .game-grid .game-card:nth-child(n) .card-caption{padding:30px 8px 10px!important;font-size:12px!important;text-align:center!important}
}
/* Preserve the earlier Card & Brain shelf layout. */
body.home.yo7-library .k9-layout-cards .game-card:nth-child(n){aspect-ratio:auto!important;border:1px solid #ffffff12!important;background:#1b1b20!important}
body.home.yo7-library .k9-layout-cards .game-card:nth-child(n) .game-play{display:flex!important;flex-direction:row!important;align-items:center!important;gap:14px!important;padding:8px!important}
body.home.yo7-library .k9-layout-cards .game-card:nth-child(n) .game-play img{width:60px!important;height:60px!important;aspect-ratio:1!important;flex:0 0 60px!important;border-radius:7px!important}
body.home.yo7-library .k9-layout-cards .game-card:nth-child(n) .card-caption{position:static!important;inset:auto!important;align-items:flex-start!important;justify-content:center!important;min-height:0!important;padding:0 28px 0 0!important;background:none!important;text-align:left!important;text-shadow:none!important;font-size:13px!important}
body.home.yo7-library .k9-layout-cards .game-card:nth-child(n) .favorite{top:24px!important;right:10px!important;width:26px!important;height:26px!important}
/* Round artwork and names below for Match. Pop. Repeat. */
body.home.yo7-library .k9-layout-match .game-row{grid-auto-columns:140px!important;grid-template-rows:auto!important;gap:16px!important}
body.home.yo7-library .k9-layout-match .game-card:nth-child(n){height:auto!important;aspect-ratio:auto!important;overflow:visible!important;background:transparent!important}
body.home.yo7-library .k9-layout-match .game-card:nth-child(n) .game-play{display:flex!important;flex-direction:column!important;align-items:center!important;height:auto!important;overflow:visible!important}
body.home.yo7-library .k9-layout-match .game-card:nth-child(n) .game-play img{width:120px!important;height:120px!important;max-width:100%!important;aspect-ratio:1!important;flex:0 0 auto!important;border:2px solid #ffffff30!important;border-radius:50%!important;object-fit:cover!important}
body.home.yo7-library .k9-layout-match .game-card:nth-child(n) .card-caption{position:static!important;inset:auto!important;align-items:center!important;justify-content:flex-start!important;min-height:0!important;padding:10px 4px 0!important;background:none!important;text-align:center!important;text-shadow:none!important;font-size:12px!important}
body.home.yo7-library .k9-layout-match .game-card:nth-child(n) .yo7-hover-preview{inset:0 auto auto 50%!important;width:120px!important;height:120px!important;max-width:100%!important;transform:translateX(-50%);border-radius:50%}
@media(max-width:650px){
 body.home.yo7-library .k9-layout-cards .game-row{grid-auto-columns:270px!important;grid-template-rows:repeat(3,78px)!important}
 body.home.yo7-library .k9-layout-match .game-row{grid-auto-columns:120px!important;gap:10px!important}
 body.home.yo7-library .k9-layout-match .game-card:nth-child(n) .game-play img,body.home.yo7-library .k9-layout-match .game-card:nth-child(n) .yo7-hover-preview{width:100px!important;height:100px!important}
}
