:root{color-scheme:dark;--bg:#111214;--panel:#1a1c1f;--ink:#f6f2eb;--muted:#a5a9b0;--coral:#ff8b90;--teal:#97d5cc;--line:#303237;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;height:auto}[hidden]{display:none!important}a:focus-visible,button:focus-visible{outline:2px solid var(--teal);outline-offset:5px}::selection{background:var(--coral);color:#111}a,button{-webkit-tap-highlight-color:transparent}.wrap{width:min(1600px,calc(100% - 80px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;background:var(--teal);color:#111;padding:15px;z-index:20}.skip-link:focus{top:10px}
.preview-bar{display:flex;justify-content:center;gap:20px;padding:9px 16px;background:#202225;color:#b0b4bb;font-size:9px;font-weight:700;letter-spacing:1.3px}.preview-bar a{color:var(--teal);letter-spacing:.1px}.site-header{position:sticky;top:0;z-index:10;background:var(--bg);box-shadow:0 6px 14px #0002;gap:20px;min-height:69px}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:inherit;min-height:inherit;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:900;letter-spacing:-1px}.dotcom{color:#b7b9be}.brand-icon{display:block;width:64px;height:53px;overflow:hidden;flex-shrink:0}.expression-reel{display:block;position:relative;width:100%;height:100%}.expression-face{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}.expression-face:nth-child(2){transform:translateY(105%)}.expression-reel.rolling .expression-face:first-child{transform:translateY(-105%);transition:transform 250ms cubic-bezier(.3,.1,.3,1)}.expression-reel.rolling .expression-face:nth-child(2){transform:translateY(0);transition:transform 250ms cubic-bezier(.3,.1,.3,1)}.site-header nav{display:flex;gap:30px;align-items:center;font-size:12px;font-weight:700;color:#d8d9dc}.site-header nav a:hover{color:var(--coral)}.nav-shop{border:1px solid #55585e;border-radius:5px;padding:12px 17px}
.intro{position:relative;isolation:isolate;overflow:hidden;border:1px solid #39423b;border-radius:10px;background:#121e1a;margin-block:24px;height:250px;display:flex;align-items:center}.hero-art{position:absolute;right:0;top:0;width:70%;height:100%;object-fit:cover;object-position:center 43%;z-index:-2}.intro::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#121e1a 26%,#121e1af0 34%,#121e1a85 44%,transparent 61%);z-index:-1}.hero-copy{padding:24px 32px;max-width:55%}.eyebrow{margin:0 0 13px;font-size:9px;font-weight:800;letter-spacing:1.8px;color:var(--teal);line-height:1.6}h1{font-size:clamp(32px,3vw,44px);line-height:1.08;letter-spacing:-1.6px;margin:0;font-weight:850}em{font-style:normal;color:var(--coral)}.hero-play{display:inline-flex;align-items:center;gap:18px;font-size:11px;font-weight:700;margin-top:20px;padding:11px 14px;border:1px solid #d5e4d26b;border-radius:4px;background:#111b1ab3;line-height:1.5}.hero-play:hover{background:var(--coral);color:#111;border-color:var(--coral)}.text-link{display:inline-block;font-size:12px;font-weight:700;padding-bottom:5px;border-bottom:1px solid #5d6469}.text-link:hover{color:var(--coral);border-color:var(--coral)}.collection-heading{margin-top:30px;margin-bottom:18px}.collection-heading h2{font-size:25px;letter-spacing:-.7px}
.shelf-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start;padding-bottom:40px}.library,.games{min-width:0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:13px}h2{margin:0;font-size:34px;letter-spacing:-1.3px;line-height:1.1}.games h2{font-size:25px;letter-spacing:-.7px}.section-note{color:var(--muted);font-size:11px;line-height:1.5}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px}.game-card{position:relative;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden;transition:border-color 160ms,transform 160ms}.game-card:hover{border-color:#61666d;transform:translateY(-3px)}.preview-media{position:relative;aspect-ratio:4/3;background:#11161d;overflow:hidden}.preview-cover{display:block;position:absolute;inset:0}.preview-cover img,.preview-cover video{position:absolute;width:100%;height:100%;object-fit:cover}.preview-cover video{opacity:0;pointer-events:none;transition:opacity 180ms;background:#10131a}.is-previewing video{opacity:1}.is-previewing .preview-cover img{opacity:0}#pig-shove-card video,#pigs-and-boargons-card video{object-fit:contain}.preview-badge{position:absolute;left:12px;top:12px;padding:6px 8px;border-radius:3px;background:#121719cf;color:#e4eae8;font-size:8px;letter-spacing:1px;font-weight:700;text-transform:uppercase;pointer-events:none}.preview-toggle{position:absolute;right:10px;top:9px;border:1px solid #ffffff4d;background:#111b;color:white;min-width:38px;min-height:38px;padding:8px 10px;border-radius:30px;font-size:10px}.preview-toggle.is-compact{font-size:12px;padding:8px}.preview-toggle:hover{background:#34383d}.card-body{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:center;align-content:start;padding:14px}h3{margin:0;font-size:18px;letter-spacing:-.5px;line-height:1.14}.long-title{font-size:16px}.preview-subtitle{display:block;font-size:.85em;margin-top:2px}.card-body p{grid-column:1/-1;margin:0;font-size:11.5px;line-height:1.6;color:#aeb2b9}.play-link{font-size:11px;font-weight:800;padding:10px;min-height:39px;display:flex;align-items:center;justify-content:center;background:#303338;border:1px solid #464a50;border-radius:5px}.play-link::after{content:' ↗';margin-left:5px}.play-link:hover{background:var(--coral);color:#141518;border-color:var(--coral)}.preview-controls{position:absolute;right:10px;top:9px;display:flex;align-items:center;gap:6px;z-index:3}.preview-controls .pin-button,.preview-controls .preview-toggle{position:static;display:grid;place-items:center;width:38px;height:38px;min-width:38px;min-height:38px;padding:0;border:1px solid #ffffff66;border-radius:50%;background:#111c;color:#fff;font-size:12px}.pin-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transform:rotate(35deg);pointer-events:none}.pin-button[aria-pressed="true"]{background:#e5e7e8;color:#171b20}
.pin-button:hover{background:#394047;color:#fff}
.game-promotions{min-width:0}.rail-slots{display:flex;flex-direction:column;gap:24px}.promo-slot{min-width:0}.house-ad{display:block;position:relative;width:300px;height:600px;border-radius:9px;overflow:hidden;background:#142539;border:1px solid #394754}.house-ad>img{width:100%;height:100%;object-fit:cover}.ad-heading{position:absolute;inset:0 0 auto;padding:25px 24px 35px;background:linear-gradient(#07121f80,transparent)}.promo-kicker{display:block;font-size:9px;letter-spacing:1.4px;color:#c3eae3;margin-bottom:13px;font-weight:700}.ad-heading h3{font-size:32px;line-height:1.06;letter-spacing:-1px;color:#fff8ef}.ad-bottom{position:absolute;inset:auto 0 0;padding:36px 24px 24px;background:linear-gradient(transparent,#08101ee6 48%)}.ad-bottom p{font-size:12px;line-height:1.6;color:#e1e5ed;margin:0 0 13px}.ad-cta{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 15px;border:1px solid #f4eee275;border-radius:4px;color:#fff8ef;font-size:12px;font-weight:700;background:#ffffff10}.house-ad:hover .ad-cta{background:#f5eee8;color:#111214}.merge-ad{background:#251139;border-color:#52385c}.merge-ad .ad-bottom{background:linear-gradient(transparent,#210e34ed 48%)}.shop-ad{height:auto;background:#ddd;border-color:#c7c9c9;color:#191b1f;display:flex;flex-direction:column}.shop-heading{padding:24px 22px 16px}.shop-ad .promo-kicker{color:#555b5c;font-size:8px;letter-spacing:1px;margin-bottom:10px}.shop-ad h3{font-size:28px;line-height:1.08;letter-spacing:-1px}.shop-ad>img{position:static;width:100%;height:auto;object-fit:contain}.shop-bottom{padding:18px 22px 22px}.shop-bottom p{font-size:13px;font-weight:700;line-height:1.6;margin:0 0 15px}.shop-bottom p span{font-size:11px;font-weight:400;color:#595e64}.shop-ad .ad-cta{background:#20252a;color:#fff;border-color:#20252a}.shop-ad:hover .ad-cta{background:#424a50;color:#fff}
.personal{margin-top:-3px;margin-bottom:18px}.personal-columns{display:flex;gap:12px 24px;flex-wrap:wrap}.personal-columns>div{display:flex;align-items:center;gap:12px;min-width:0;max-width:100%}.personal-columns h3{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#9ba4a6;margin:0;flex-shrink:0}.mini-list{display:flex;gap:7px;flex-wrap:wrap}.mini-game{display:flex;align-items:center;border:1px solid #42464c;background:#212428;border-radius:5px;max-width:100%}.mini-link{font-size:11px;padding:8px 10px;overflow-wrap:anywhere}.unpin-button{align-self:stretch;width:29px;flex-shrink:0;border:0;border-left:1px solid #42464c;background:none;color:#b8bdc4;font-size:17px}.unpin-button:hover{background:#43484e}
.merch-section{background:#edeae3;color:#191b1e;padding:60px 0 65px}.merch-section .section-heading{margin-bottom:28px}.merch-section .eyebrow{color:#52635d;margin-bottom:10px}.merch-section em{color:#b93446}.merch-intro{font-size:12px;line-height:1.8;color:#585b60;max-width:310px}.merch-intro p{margin:0 0 12px}.merch-section .text-link{border-color:#999}.merch-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.merch-card{border:1px solid #cecbc5;background:#f7f5ef;border-radius:7px;overflow:hidden}.merch-image{display:block}.merch-image img{aspect-ratio:4/3;object-fit:contain;background:#ddd}.merch-info{padding:17px}.merch-info h3{font-size:20px}.merch-info>span{display:block;font-size:11px;color:#686b70;margin-top:6px}.merch-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:13px}.merch-links a{font-size:11px;font-weight:700;min-height:35px;display:flex;align-items:center}.merch-links a:hover{text-decoration:underline}
.future-section{padding-top:36px;margin-top:34px;border-top:1px solid var(--line)}.future-section .section-heading{margin-bottom:20px}.future-section h2{font-size:24px;letter-spacing:-.7px}.future-section .eyebrow{display:none}.future-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px}.future-card{min-width:0;border:1px solid var(--line);border-radius:9px;background:#17191c;overflow:hidden}.future-card>img{aspect-ratio:16/9;object-fit:cover;opacity:.85}.future-body{padding:15px 14px 17px}.future-card h3{font-size:16px;line-height:1.2;letter-spacing:-.3px}.future-card p{font-size:11px;line-height:1.6;color:#a2a8b1;margin:9px 0 12px;min-height:53px}.future-status{display:inline-block;font-size:8px;letter-spacing:1px;text-transform:uppercase;color:#c1aaac}.creator{margin-top:48px;display:grid;grid-template-columns:75px minmax(0,1fr) auto;gap:28px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:30px;margin-bottom:0;background:#191b1e}.creator-icon{width:75px}.creator .eyebrow{margin-bottom:9px}.creator h2{font-size:29px;letter-spacing:-1px}.creator p:last-child{font-size:12px;line-height:1.8;color:var(--muted);max-width:680px;margin:13px 0 0}.button{display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;min-height:44px;padding:12px 18px;border:1px solid #494d54;border-radius:5px;background:#26292e;white-space:nowrap}.button:hover{border-color:var(--coral);color:var(--coral)}.creator-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}footer{padding-block:14px 24px}
#motion-toggle{border:1px solid #43474e;border-radius:4px;background:none;color:#adb3bc;padding:9px 11px;font-size:10px}#motion-toggle:disabled{opacity:.8;cursor:default}.pvsb-cookie-note{display:block;text-align:center;color:#a7acb4;font-size:10px;line-height:1.7;margin:0}
@media(max-width:1279px){.wrap{width:calc(100% - 64px)}.grid,.future-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 16px}.shelf-layout{gap:28px}.card-body{padding:13px 12px;gap:8px}.card-body h3,.card-body .long-title{font-size:17px}.merch-grid{gap:14px}.creator{grid-template-columns:65px minmax(0,1fr) auto}.creator-icon{width:65px}}
@media(max-width:959px){.shelf-layout{grid-template-columns:minmax(0,1fr);gap:34px}.grid,.future-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rail-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.house-ad{width:100%;height:360px}.ad-heading{padding:20px}.ad-heading h3{font-size:27px}.ad-bottom{padding:30px 20px 20px}.shop-ad{height:360px}.shop-heading{padding:20px 18px 12px}.shop-ad h3{font-size:25px}.shop-ad>img{height:150px;object-fit:contain}.shop-bottom{padding:12px 18px 18px;margin-top:auto}.shop-bottom p{margin-bottom:10px}.future-card p{min-height:88px}.site-header nav{gap:20px}}
@media(max-width:900px){.grid,.future-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.brand{font-size:22px}.brand-icon{width:56px;height:47px}.merch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rail-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-promo-slot{display:none}.house-ad{height:360px}.house-ad>img{object-position:center 43%}.ad-heading h3{font-size:28px}.future-card p{min-height:71px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.grid,.future-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.intro{height:250px}.hero-copy{padding:20px;max-width:60%}.intro h1{font-size:33px;letter-spacing:-1.2px}.hero-play{font-size:10px;gap:8px;padding:10px}.hero-art{width:80%}.intro::after{background:linear-gradient(90deg,#121e1a 15%,#121e1af0 33%,#121e1a60 57%,transparent 75%)}.site-header{min-height:65px}.site-header nav>a:not(.nav-shop){display:none}.card-body h3,.card-body .long-title{font-size:18px}.section-heading{gap:18px}.merch-section .section-heading{display:block}.merch-intro{max-width:none;margin-top:22px}.future-section .section-note{max-width:125px;font-size:10px}.creator{padding:24px;grid-template-columns:65px minmax(0,1fr)}.creator-actions{grid-column:2;justify-self:start;flex-direction:row;flex-wrap:wrap;align-items:center}.creator h2{font-size:25px}.ad-heading{padding:18px}.ad-heading h3{font-size:24px}.ad-bottom{padding:26px 18px 18px}.ad-bottom p{font-size:11px}.ad-cta{font-size:11px;padding:11px}.promo-kicker{font-size:8px}.house-ad{height:370px}}
@media(max-width:460px){.wrap{width:calc(100% - 32px)}.preview-bar{font-size:7px;letter-spacing:.7px;gap:12px}.site-header{gap:12px;min-height:61px}.brand{font-size:21px;gap:7px}.brand-icon{width:49px;height:41px}.nav-shop{padding:10px 11px;font-size:10px}.intro{height:320px;margin-block:18px 24px;align-items:flex-start}.hero-copy{padding:20px;max-width:100%;width:100%}.intro h1{font-size:29px;letter-spacing:-1px;max-width:290px}.hero-copy .eyebrow{font-size:7px;margin-bottom:10px}.hero-art{width:100%;height:190px;top:auto;bottom:0;object-fit:cover;object-position:70% center;mask-image:linear-gradient(180deg,transparent,#000 24%)}.intro::after{background:linear-gradient(180deg,#121e1a 0%,#121e1a 29%,#121e1a95 45%,transparent 62%)}.hero-play{margin-top:12px;font-size:10px;background:#121e1af0;padding:9px 11px}.collection-heading{margin-top:24px;margin-bottom:16px}.collection-heading h2{font-size:24px}.eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:12px}.grid{grid-template-columns:1fr;gap:24px}.card-body{grid-template-columns:minmax(0,1fr) auto;padding:15px 16px}.card-body .play-link{min-height:40px}.pin-button{right:10px;top:-40px;min-height:31px}.card-body h3,.card-body .long-title{font-size:23px}.card-body p{font-size:13px;min-height:0}.games h2{font-size:25px}.section-note{font-size:10px}.shelf-layout{padding-bottom:32px;gap:28px}.personal-columns{gap:15px}.personal-columns>div{min-width:0;flex-basis:100%;align-items:flex-start}.personal-columns h3{padding-top:10px}.mini-link{font-size:11px}.merch-section{padding-block:40px}.merch-section h2{font-size:35px}.merch-grid{gap:12px}.merch-info{padding:12px}.merch-info h3{font-size:17px}.merch-links{gap:0;margin-top:10px}.merch-links a{width:100%;min-height:35px;font-size:10px}.future-section{padding-top:28px}.future-section h2{font-size:23px}.future-grid{gap:18px 12px}.future-body{padding:12px}.future-card h3{font-size:15px;min-height:36px}.future-card p{display:none}.future-status{font-size:7px;margin-top:9px}.rail-slots{grid-template-columns:1fr;gap:20px}.house-ad{height:210px}.house-ad>img{width:48%;position:absolute;right:0;object-position:center 44%}.ad-heading{padding:21px 18px;width:59%;background:linear-gradient(90deg,#142539 82%,transparent)}.merge-ad .ad-heading{background:linear-gradient(90deg,#251139 82%,transparent)}.ad-heading h3{font-size:24px}.ad-bottom{padding:12px 18px 20px;width:59%;background:linear-gradient(90deg,#142539 82%,transparent)}.merge-ad .ad-bottom{background:linear-gradient(90deg,#251139 82%,transparent)}.ad-bottom p{display:none}.ad-cta{padding:11px 8px;font-size:10px;background:#182a3e}.merge-ad .ad-cta{background:#2e1944}.promo-kicker{font-size:7px;margin-bottom:11px}.creator{grid-template-columns:1fr;gap:18px;margin-top:32px}.creator-icon{width:65px}.creator-actions{grid-column:1}.creator h2{font-size:27px}.pvsb-cookie-note{font-size:10px}}
@media(max-width:360px){.merch-info h3{font-size:15px}.brand{font-size:18px}.brand-icon{width:44px;height:38px}.intro h1{font-size:27px}.site-header .nav-shop{padding-inline:9px}.ad-heading h3{font-size:23px}.ad-heading,.ad-bottom{padding-left:14px;padding-right:14px}}
html[data-motion="off"]{scroll-behavior:auto}html[data-motion="off"] *,html[data-motion="off"] *::before,html[data-motion="off"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.game-card:hover{transform:none}}

/* Promotional cards share the same calm, fixed layout across the rotation. */
.game-ad .ad-heading{background:linear-gradient(#07121fd9,transparent)}.game-ad .ad-bottom{background:linear-gradient(transparent,#08101ef2 44%)}.game-ad .promo-kicker{line-height:1.5}.leaderboard-panel{border:1px solid #414b50;border-radius:9px;padding:21px;background:linear-gradient(150deg,#202b30,#161a20);width:300px;min-height:330px}.leaderboard-heading .promo-kicker{font-size:8px;margin-bottom:10px}.leaderboard-heading h3{font-size:25px;letter-spacing:-.7px;line-height:1.08;margin-bottom:15px}.leaderboard-panel select{width:100%;font:inherit;font-size:12px;color:#f6f2eb;background:#151c21;border:1px solid #56616b;border-radius:4px;padding:10px 8px;margin-bottom:13px}.leaderboard-panel select:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.leaderboard-content{min-height:124px}.leaderboard-status{font-size:10px;color:#b5bec4;line-height:1.5;margin:0 0 10px}.leaderboard-panel[data-state="live"] .leaderboard-status{color:var(--teal)}.leaderboard-rows{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:0}.leaderboard-rows li{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #3b444b;font-size:12px}.leaderboard-rank{color:#a7b2b9;font-size:10px}.leaderboard-name{font-weight:700;overflow-wrap:anywhere}.leaderboard-score{font-variant-numeric:tabular-nums;font-weight:700;color:#f2d699;font-size:12px}.leaderboard-play{font-size:11px}.leaderboard-play:hover{background:#f5eee8;color:#111214}.leaderboard-refresh{font-size:9px;color:#99a5af;margin:12px 0 0;line-height:1.5}.shop-promo-slot{order:4}.game-promo-slot:nth-of-type(1){order:1}.leaderboard-panel{order:2}.game-promo-slot:nth-of-type(2){order:3}
@media(max-width:959px){.rail-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.leaderboard-panel{width:100%;height:auto;min-height:360px}.shop-ad{height:360px}.game-promo-slot{order:1}.game-promo-slot:nth-of-type(2){order:2}.leaderboard-panel{order:3}.shop-promo-slot{order:4}.shop-ad>img{object-fit:contain;background:#ddd}}
@media(max-width:900px){.rail-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-promo-slot{display:block;grid-column:1/-1;max-width:360px;justify-self:center;width:100%}}
@media(max-width:460px){.rail-slots{grid-template-columns:1fr}.leaderboard-panel{min-height:0;height:auto;padding:22px}.leaderboard-content{min-height:124px}.game-ad .ad-heading,.game-ad .ad-bottom{background:linear-gradient(90deg,#142539 82%,transparent)}.game-ad.merge-ad .ad-heading,.game-ad.merge-ad .ad-bottom{background:linear-gradient(90deg,#251139 82%,transparent)}.shop-ad{height:auto}.shop-ad>img{position:static;width:100%;height:auto}.shop-heading{padding:22px 22px 12px}.shop-bottom{padding:16px 22px 22px}.shop-ad .ad-cta{font-size:12px;padding:13px 15px}}

/* V7: the promotion viewport follows the full shelf, with its own looping scroll. */
.rail-slots{display:flex;flex-direction:column;gap:24px;overflow-y:auto;overscroll-behavior-y:contain;overflow-anchor:none;scrollbar-width:none;scroll-behavior:auto;padding:0;width:300px;max-width:100%}
.rail-slots::-webkit-scrollbar{display:none}
.rail-slots:focus-visible{outline:2px solid var(--teal);outline-offset:5px}
.rail-slots>.promo-slot{order:0;flex:none;width:100%;max-width:none;display:block}
.pin-move{position:absolute;bottom:10px;left:10px;z-index:3;padding:7px 10px;border:1px solid #ffffff70;border-radius:20px;color:#fff;background:#172027e8;font-size:11px;touch-action:none;cursor:grab;min-height:32px}
.pin-move:active{cursor:grabbing}.game-card.is-dragging{outline:2px solid #c6d8de;outline-offset:-3px;transform:none;opacity:.8}.game-card.is-pinned{border-color:#647079}
.leaderboard-panel{--board-accent:#efbe58;--board-bg:#3c3014;background:linear-gradient(145deg,var(--board-bg),#151921 80%);border-color:var(--board-accent);padding:0;overflow:hidden;min-height:490px}
.leaderboard-heading{padding:25px 22px 20px;background:linear-gradient(90deg,var(--board-bg),#10151ab3),var(--board-art) center 42%/cover;border-bottom:1px solid #ffffff25}
.leaderboard-heading h3{font-size:30px;margin:0;max-width:225px;line-height:1.06}
.leaderboard-heading .promo-kicker{color:var(--board-accent);font-size:9px;letter-spacing:1.5px}
.leaderboard-panel select{margin:18px 20px 13px;width:calc(100% - 40px)}
.leaderboard-content{margin:0 20px;min-height:222px}.leaderboard-rows li{padding:12px 0}.leaderboard-rows li:first-child{background:#ffffff0a}.leaderboard-score{color:var(--board-accent);font-size:14px}.leaderboard-panel[data-state="live"] .leaderboard-status{color:var(--board-accent)}
.leaderboard-play{margin:0 20px;background:var(--board-accent);color:#17191d;border:0}.leaderboard-refresh{margin:13px 20px 20px}
@media(max-width:959px){.rail-slots{width:100%;max-width:620px;margin-inline:auto}.rail-slots .house-ad{width:100%}.rail-slots .game-ad{height:520px}.rail-slots .shop-ad{height:auto}.rail-slots .shop-ad>img{height:auto}.leaderboard-panel{width:100%}.leaderboard-heading h3{max-width:none}.game-promotions{padding-top:5px}}
@media(max-width:460px){.rail-slots .game-ad{height:240px}.leaderboard-panel{padding:0;min-height:490px}}

/* V8: contain recycled content so it cannot enlarge the document's scroll bounds. */
.game-promotions{contain:layout paint;min-height:0}
.rail-slots{contain:layout paint;min-height:0;overflow-x:hidden}
.promotion-controls{display:none}
@media(min-width:960px) and (max-width:1279px){
  .shelf-layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px}
  .grid,.future-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 14px}
  .rail-slots,.leaderboard-panel,.house-ad{width:260px}
  .house-ad.game-ad{height:520px}.ad-heading{padding:22px 18px}.ad-heading h3{font-size:29px}.ad-bottom{padding:30px 18px 20px}
  .card-body{grid-template-columns:minmax(0,1fr) auto;gap:8px 6px;padding:12px 10px}.card-body h3{font-size:16px}.play-link{padding:9px 7px;font-size:10px}
  .preview-badge{left:8px;top:10px;font-size:7px;padding:5px}.preview-controls{right:7px;gap:4px}.preview-controls .pin-button,.preview-controls .preview-toggle{width:32px;height:32px;min-width:32px;min-height:32px}
}
@media(max-width:959px){
  .game-promotions{padding-top:0}
  .promotion-controls{display:flex;align-items:center;gap:10px;margin-bottom:14px}.promotion-controls span{flex:1;font-size:14px;font-weight:700}
  .promotion-controls button{width:44px;height:44px;border-radius:50%;border:1px solid #59616a;background:#222930;color:#fff;font-size:20px}
  .rail-slots{flex-direction:row;align-items:flex-start;width:100%;max-width:none;margin:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;overscroll-behavior-y:auto;touch-action:pan-x pan-y pinch-zoom}
  .rail-slots>.promo-slot{flex:0 0 min(300px,100%);width:min(300px,100%)}
  .rail-slots .game-ad{height:534px;width:100%}.rail-slots .game-ad>img{position:static;width:100%;height:100%;object-fit:cover}
  .rail-slots .ad-heading{width:100%;padding:24px 20px 35px;background:linear-gradient(#07121fd9,transparent)}
  .rail-slots .ad-heading h3{font-size:30px}.rail-slots .promo-kicker{font-size:8px}
  .rail-slots .ad-bottom{width:100%;padding:36px 20px 22px;background:linear-gradient(transparent,#08101ef2 44%)}
  .rail-slots .ad-bottom p{display:block;font-size:12px}.rail-slots .ad-cta{font-size:11px;padding:12px}
  .rail-slots .shop-ad{height:auto}.rail-slots .shop-ad>img{position:static;width:100%;height:auto}
  .leaderboard-panel{min-height:534px}.leaderboard-heading h3{max-width:225px}
}

/* Match narrow-strip cards to the natural merch height; retain game poster ratio. */
@media(max-width:959px){
  .rail-slots{--promo-height:434px}
  .rail-slots>.promo-slot{height:var(--promo-height)}
  .rail-slots>.game-promo-slot{flex-basis:calc(var(--promo-height) * 300 / 534);width:calc(var(--promo-height) * 300 / 534)}
  .rail-slots .game-ad,.rail-slots .shop-ad{height:100%}
  .rail-slots .shop-ad>*{flex:none}.rail-slots .shop-ad>img{aspect-ratio:4/3}
  .rail-slots .ad-heading{padding:19px 16px 28px}.rail-slots .ad-heading h3{font-size:24px}
  .rail-slots .ad-bottom{padding:28px 16px 18px}.rail-slots .ad-bottom p{font-size:11px}
  .rail-slots .game-ad .ad-cta{font-size:10px;padding:10px}
  .rail-slots>.leaderboard-panel{display:flex;flex-direction:column;min-height:0}
  .rail-slots .leaderboard-heading{padding:16px 20px}.rail-slots .leaderboard-heading h3{font-size:24px}
  .rail-slots .leaderboard-panel select{flex:none;margin:10px 20px;padding:8px}
  .rail-slots .leaderboard-content{min-height:0;flex:1}
  .rail-slots .leaderboard-rows{margin-bottom:10px}.rail-slots .leaderboard-rows li{padding:7px 0}
  .rail-slots .leaderboard-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .rail-slots .leaderboard-play{flex:none;padding:10px 12px}
  .rail-slots .leaderboard-refresh{margin:10px 20px 14px}
}

/* Pinned-card dragging: lifted preview, quiet placeholder, animated neighbors. */
#game-grid{position:relative}
#game-grid.is-reordering .game-card{transition:none;transform:none}
#game-grid .game-card.is-dragging{opacity:.24;outline:2px dashed #b5c9cf;outline-offset:-3px}
.drag-preview{position:fixed;left:0;top:0;z-index:30;pointer-events:none;overflow:hidden;border:1px solid #bfd2d8;border-radius:10px;background:var(--panel);box-shadow:0 20px 55px #0009;transform-origin:center;will-change:transform}
.pin-dragging{scroll-behavior:auto!important}.pin-dragging *{cursor:grabbing!important;user-select:none}
