/* Full-width lobby, preserving the existing hero and feature art. */
body.redesign-v2.home-v3 #s2-card-main{display:none!important}
/* Home page: the Heads-up / 4-Player / 6-Player "Take a seat" row is removed (Shaun, 2026-09-30: "kill this row on the home page"). The same cards still show on the Tournaments and Cash Games pages (body.game-section-page). */
body.redesign-v2.home-v3:not(.game-section-page) #s2-card-opentables{display:none!important}
/* With that row gone, the status bar's 22px bottom margin and the promo row's 20px top margin stacked into a 42px gap; match the 20px gap above the status bar instead. */
body.redesign-v2.home-v3:not(.game-section-page) .home-status{margin-bottom:20px}
body.redesign-v2.home-v3:not(.game-section-page) #panel-computer .ls-promo-row{margin-top:0!important}
/* Hero hangs straight off the header (Shaun, 2026-10-01): no gap above it, square top corners, no top border. Desktop/tablet only; phones keep their own layout. */
@media(min-width:720px){body.redesign-v2.home-v3:not(.game-section-page) #lobby-main-card{padding-top:0!important}body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero{border-top:0;border-top-left-radius:0;border-top-right-radius:0}}
body.redesign-v2.home-v3 .lobby-scroll-body{padding-left:0!important}
body.redesign-v2.home-v3 #lobby-main-card{max-width:1600px!important;padding:16px 26px 22px!important;margin:auto!important}
body.redesign-v2.home-v3 #lobby-mobile-header{padding:0 28px!important;height:70px!important;min-height:70px!important;background:#0e0e0e!important}
body.redesign-v2.home-v3 .lmh-logo{width:164px!important}
body.redesign-v2.home-v3 #lobby-mobile-header .lmh-logo-img{width:155px!important;max-height:52px!important;translate:0 -1.3%}   /* the drawn logo centred, not its image box (site-header.css too) */
body.redesign-v2.home-v3 #lobby-mobile-header .lp-top-nav{display:flex!important;align-items:center;gap:8px;margin:0 auto 0 22px}
body.home-v3 .lp-top-nav>button,body.home-v3 .lp-top-nav>a{color:#b4b4b4!important;padding:23px 12px!important;border:0!important;border-radius:0!important;background:none!important;font:600 12px Inter,system-ui;white-space:nowrap;cursor:pointer;list-style:none;text-decoration:none}
body.home-v3:not(.s2-panel-active) .lp-top-nav .home-nav-play{color:#ffd34f!important;box-shadow:inset 0 -2px #ffd34f}
body.redesign-v2.home-v3 #s2-profile-hero:not(.hidden){display:flex!important;width:auto!important;min-width:120px;gap:10px!important;padding:0!important;margin:0 12px 0 0!important;background:none!important;border:0!important;grid-template-rows:none!important}
body.redesign-v2.home-v3 #s2-profile-hero .s2-profile-av-wrap,body.redesign-v2.home-v3 #s2-profile-hero .s2-profile-img{width:40px!important;height:40px!important}
body.redesign-v2.home-v3 #s2-profile-hero .s2-profile-info{display:flex;flex-direction:column;align-items:flex-start;padding:0!important;gap:0!important}
body.redesign-v2.home-v3 #s2-profile-hero :is(.lp-xp,.s2-profile-meta,.s2-profile-edit-btn){display:none!important}
body.redesign-v2.home-v3 #s2-profile-hero::after{display:none!important}
body.home-v3 #s2-profile-hero .lp-level{font-size:10px;background:none;padding:0;color:#b4b4b4}
body.home-v3 #lmh-play-now-btn{order:5;margin-left:12px;background:linear-gradient(#ffdf72,#ffcc3e)!important;color:#0b1117!important;border-color:#ffe184!important}
body.redesign-v2.home-v3 #lobby .ls-rail{gap:0!important}
body.redesign-v2.home-v3 #lobby .ls-rail>.ls-hero{min-height:344px;padding:26px 40px!important;border-radius:10px;margin:0!important}
body.redesign-v2.home-v3 #lobby .ls-hero-headline{font-size:clamp(38px,4.4vw,64px)!important;line-height:.99!important;letter-spacing:-2px!important}
body.redesign-v2.home-v3 #lobby .ls-hero-headline em{color:#ffd34f!important}
body.redesign-v2.home-v3 #lobby .ls-hero-sub{font-size:14px;line-height:1.55;margin:12px 0 22px!important}
body.redesign-v2.home-v3 #lobby .v2-hero-quote{margin-bottom:18px!important}
body.redesign-v2.home-v3 .v2-free{display:none!important}
body.redesign-v2.home-v3 #lobby .ls-hero-play-btn{background:linear-gradient(#ffdf72,#ffd34f)!important;color:#111!important;border-color:#ffd34f!important;min-width:220px!important;min-height:56px!important}
body.redesign-v2.home-v3 #lobby .ls-hero-link-btn{min-height:56px!important}
body.home-v3 .home-status{display:flex;gap:14px;margin:20px 0 22px;align-items:stretch}
body.home-v3 .home-status .lp-panel{display:grid;grid-template-columns:1.05fr 1.05fr 1fr;gap:14px;flex:1;margin:0;min-width:0}
body.home-v3 .home-status .lp-panel[hidden]{display:none}
body.home-v3 .home-status .lp-card{min-height:68px;border:1px solid #303d4e;border-radius:7px;display:flex;align-items:center;gap:12px;padding:11px 14px;background:linear-gradient(120deg,#181818,#0e0e0e);color:#f4f5f8;text-align:left;cursor:pointer}
body.home-v3 .home-status-link{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 17px;background:linear-gradient(120deg,#181818,#0e0e0e);border:1px solid #303d4e;border-radius:7px;color:#eee;font:500 12px Inter,system-ui;cursor:pointer}
body.home-v3 .home-status-link .material-symbols-rounded{font-size:24px;color:#ffd34f}
body.home-v3 .home-status .lp-days{gap:6px}.home-status .lp-chevron{display:none}
body.redesign-v2.home-v3 #s2-card-opentables{margin:0!important;padding:0!important;scroll-margin-top:85px}
body.redesign-v2.home-v3 .v2-section-title{margin:0 0 12px!important}
body.redesign-v2.home-v3 .v2-section-title h2{font-size:20px!important;letter-spacing:-.35px}
body.home-v3 .home-all-games{border:0;background:none;color:#ffd34f;font:600 12px Inter,system-ui;cursor:pointer}
body.redesign-v2.home-v3 #s2-card-opentables .lv2-qt-tabs{display:none!important}
body.redesign-v2.home-v3 #s2-card-opentables .lv2-qt-pane{gap:24px!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-card{--seat-art:url('lobby-art/seat-heads-up-v2-o.webp');position:relative;display:flex!important;flex-direction:column!important;min-height:220px!important;padding:16px 18px!important;border:1px solid #364052!important;border-radius:9px!important;background:linear-gradient(90deg,#161616da,#16161669 70%),var(--seat-art) center 58%/cover no-repeat!important;overflow:hidden}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-card[data-players="4"]{--seat-art:url('lobby-art/seat-four-player-v2-o.webp')}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-card[data-players="6"]{--seat-art:url('lobby-art/seat-six-player-o.webp')}
body.home-v3 .v2-fmt-card:hover{border-color:#d8bd84!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-head{margin-bottom:4px!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-seats{color:#a970ff!important;height:27px!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-title{font-size:22px!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-pitch{font-size:12px!important;margin:4px 0 17px!important;min-height:16px!important;color:#cbd3e2!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-facts{padding:0!important;border:0!important;gap:28px!important;margin-bottom:13px!important}
body.home-v3 .v2-fmt-facts b{color:#ffd34f!important;font-size:18px!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-foot{margin-top:auto!important;display:block!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-opps{display:none!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-cta{width:100%!important;min-height:35px!important;justify-content:center!important;border:1px solid #ffd34f!important;border-radius:6px!important;color:#ffd34f!important;background:#0e0e0ecc!important;font-size:14px!important;font-weight:650!important}
body.home-v3 .v2-fmt-cta .material-symbols-rounded{display:none!important}
body.redesign-v2.home-v3 .v2-more-title{margin-top:22px!important}.home-v3 .v2-more-title>span{display:none}
body.redesign-v2.home-v3 #lobby .ls-promo-card{min-height:202px!important;border-radius:9px}
body.redesign-v2.home-v3 #lobby .ls-promo-card-title{font-size:23px!important}
/* League's title is two lines, not three: its second line outruns the promo titles' 14ch cap (Shaun, 2026-10-17) */
body.redesign-v2.home-v3 #lobby .ls-promo-card-title.hv3-league-title{max-width:none}
/* The promo cards: no sub-text (Shaun, 2026-10-17: "kill the subtext on these"); the League card's
   status line (league-home.js #wc-home-league) goes with it */
body.redesign-v2.home-v3 #lobby .ls-promo-row .ls-promo-card-text{display:none}
/* The promo cards are just a title, centred top to bottom (Shaun, 2026-10-17: "vertically center text and link in card",
   then "kill the links on these 3 bottom cards"). The link stays as an invisible layer over the whole card, so the card is
   still one click, a tab stop with its focus ring, and read out by name. */
body.redesign-v2.home-v3 #lobby .ls-promo-row .ls-promo-card-body{justify-content:center}
body.redesign-v2.home-v3 #lobby .ls-promo-row .ls-promo-card-title{margin:0}
body.redesign-v2.home-v3 #lobby .ls-promo-row .ls-promo-card-btn{position:absolute;inset:0;display:block;margin:0;color:transparent;text-indent:100%;white-space:nowrap;overflow:hidden}
/* The top two cards too (Shaun, 2026-10-17: "kill these links too"): each card is itself the link, so only its words go */
body.home-v3 #lobby .wc-home-card .wc-primary{display:none}
/* and their words centred top to bottom, like the promo cards (Shaun, 2026-10-17: "center text vertically on these cards too") */
body.home-v3 #lobby .wc-home-card{display:flex;flex-direction:column;justify-content:center}
body.redesign-v2.home-v3 #lobby .ls-promo-row .ls-promo-card-btn::after{content:none}
body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img--chips)::before{background:url('membership/perk-bucks-v2-o.webp') right center/cover;opacity:1}
body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img--compete)::before{background:url('membership/final.webp?v=202610031714') right center/cover;opacity:1}
body.redesign-v2.home-v3 .ls-config-row.ls-promo-row{gap:18px!important}
body.redesign-v2.home-v3 .lobby-footer{margin-top:18px!important;padding-top:14px!important}
@media(max-width:1250px){body.home-v3 .home-status{flex-wrap:wrap}body.home-v3 .home-status .lp-panel{flex-basis:100%}body.home-v3 .home-status-link{flex:1}body.redesign-v2.home-v3 #s2-profile-hero:not(.hidden){min-width:40px;margin-right:0!important}body.home-v3 #s2-profile-hero .s2-profile-info{display:none!important}body.home-v3 .lp-top-nav>button,body.home-v3 .lp-top-nav>a{padding:23px 8px!important;font-size:11px}}
@media(max-width:1000px){body.redesign-v2.home-v3 #lobby-mobile-header{height:112px!important;flex-wrap:wrap;align-content:center;gap:0!important}body.redesign-v2.home-v3 #lobby-mobile-header .lp-top-nav{order:10;width:100%;margin:0!important;justify-content:space-between}body.home-v3 .lp-top-nav>button,body.home-v3 .lp-top-nav>a{padding:12px 8px!important}body.redesign-v2.home-v3 .lobby-scroll-body{padding-top:112px!important}body.redesign-v2.home-v3 #lobby .ls-hero-text{max-width:80%!important}body.redesign-v2.home-v3 #s2-card-opentables .lv2-qt-pane{gap:12px!important}body.home-v3 .v2-fmt-pitch{min-height:32px!important}}
@media(max-width:719px){body.redesign-v2.home-v3 #lobby-main-card{padding:12px!important}body.redesign-v2.home-v3 #lobby-mobile-header{padding:0 14px!important}body.home-v3 .lmh-mobile-banner{display:none!important}body.redesign-v2.home-v3 #lobby-mobile-header .lp-top-nav{overflow:visible;gap:0!important}body.home-v3 .lp-top-nav>button{font-size:10px!important;padding:12px 4px!important}body.home-v3 .lp-top-nav>button[data-nav-label="Leaderboard"],body.home-v3 .lp-top-nav>button[data-nav-label="Missions"]{display:none!important}body.redesign-v2.home-v3 #lobby .ls-rail>.ls-hero{min-height:400px;padding:24px 20px!important}body.redesign-v2.home-v3 #lobby .ls-hero-text{max-width:100%!important}body.redesign-v2.home-v3 #lobby .ls-hero-headline{font-size:42px!important}body.redesign-v2.home-v3 #lobby .ls-hero-actions{max-width:100%!important}body.redesign-v2.home-v3 #lobby .ls-hero-sub{font-size:12px}body.home-v3 .home-status .lp-panel{grid-template-columns:1fr}.home-status .lp-symbol{font-size:28px;color:#ffd34f}.home-status .lp-copy{flex:1}.home-status .lp-copy strong,.home-status .lp-copy small{display:block}.home-status .lp-copy small{font-size:11px;color:#b4b4b4}body.redesign-v2.home-v3 #s2-card-opentables .lv2-qt-pane{grid-template-columns:1fr!important}body.redesign-v2.home-v3 .ls-config-row.ls-promo-row{grid-template-columns:1fr!important}body.redesign-v2.home-v3 #lobby .ls-promo-card-title em{display:block!important;margin:0!important}body.home-v3 #s2-profile-hero{display:none!important}}
body.redesign-v2.home-v3 #lobby .ls-hero-headline em{-webkit-text-fill-color:#ffd34f!important}
body.redesign-v2.home-v3 #lobby-mobile-header #lmh-play-now-btn{background:linear-gradient(#ffdf72,#ffcc3e)!important;color:#0b1117!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-seats i{width:10px!important;height:10px!important;border:0!important;border-radius:50%!important;background:#a970ff!important;box-shadow:0 10px 0 2px #a970ff!important;margin:0 2px 10px!important}
body.redesign-v2.home-v3 #s2-card-opentables .v2-fmt-facts b{color:#ffd34f!important}
body.home-v3 .home-status-link:hover{border-color:#697a92}
body.home-v3 :is(.home-all-games,.home-status-link,.lp-top-nav a,.lp-top-nav button):focus-visible{outline:2px solid #ffd34f;outline-offset:3px}
body.home-v3 .v2-hq-slide[aria-hidden="true"]{visibility:hidden!important;opacity:0!important}
@media(max-width:1000px){body.redesign-v2.home-v3 .lobby-scroll-body{padding-top:0!important}}
@media(max-width:719px){body.home-v3 .home-status .lp-panel:not([hidden]){display:grid!important}body.home-v3 .home-status .lp-days{display:flex;gap:5px}body.home-v3 .home-status .lp-days span{border:1px solid #334153;border-radius:50%;width:21px;height:21px;text-align:center}body.home-v3 .home-status .lp-days .is-visited{background:#ffd34f;color:#171717}body.home-v3 .home-status .lp-action{padding:8px;background:#ffd34f;color:#171717;border-radius:5px;font-size:12px}body.home-v3 .home-status .lp-challenges>small{color:#b4b4b4;font-size:11px}}
/* Homepage cards flow directly beneath the status row. */
body.redesign-v2.home-v3:not(.game-section-page) #s2-card-opentables .v2-section-title,
body.redesign-v2.home-v3:not(.game-section-page) .v2-more-title{display:none!important}
body.redesign-v2.home-v3:not(.game-section-page) .ls-config-row.ls-promo-row{margin-top:20px!important}
/* Match header edges to the centered content and give hero art breathing room. */
@media(min-width:720px){body.redesign-v2.home-v3 #lobby-mobile-header{padding-left:max(26px,calc((100% - 1600px)/2 + 26px))!important;padding-right:max(26px,calc((100% - 1600px)/2 + 26px))!important}}
body.redesign-v2.home-v3 #lobby .ls-rail>.ls-hero{height:500px;min-height:500px;box-sizing:border-box!important}
body.redesign-v2.home-v3 #s2-panel .px-head[data-art=rewards]{min-height:461px!important;box-sizing:border-box!important;background-position:right top!important}
/* Leaderboard filters live inside the hero. */
body.redesign-v2.home-v3 #s2-panel .lb-head{position:relative;padding-bottom:82px!important}
body.redesign-v2.home-v3 #s2-panel .lb-head .lb-tabs{position:absolute;left:28px;bottom:22px;width:auto!important;max-width:calc(100% - 56px);margin:0!important;padding:0!important;gap:8px!important;border:0!important;background:none!important;overflow:visible!important;flex-wrap:wrap!important}
body.redesign-v2.home-v3 #s2-panel .lb-head .lb-tab{min-height:32px!important;padding:7px 10px!important;border:1px solid #ffffff22!important;border-radius:5px!important;background:#101010bb!important;color:#b8c6c8!important;font-size:11px!important;display:inline-flex;align-items:center;gap:6px}
body.redesign-v2.home-v3 #s2-panel .lb-head .lb-tab.active{background:#2a1d44dd!important;border-color:#7c3aed!important;color:#f0dfff!important}
body.redesign-v2.home-v3 #s2-panel .lb-head .lb-tab .material-symbols-rounded{font-size:15px!important}
@media(max-width:420px){body.redesign-v2.home-v3 #s2-panel .lb-head{padding-bottom:108px!important}}
body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img--rewards)::before{background:url('lobby-art/rewards-bill-v2-o.webp') right center/cover;opacity:1}
body.redesign-v2.home-v3 #lobby a.ls-promo-card-btn{text-decoration:none}
body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img--bots)::before{background:url('homepage-promos/cast-mystery.svg') right center/contain no-repeat;opacity:1}   /* MuckBot, Larry and Bob in the lab (assets/bot-lab/lab-v4) */
body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img--gto)::before{background:url('lobby-art/unified-v1/gto.webp') right center/cover;opacity:1}
body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img--larry)::before{background:url('league/larry-certified-v1.webp') right center/cover;opacity:1;filter:brightness(.8)}   /* Challenge Larry, middle card since 2026-10-15 */
/* Keep secondary artwork quieter than the main hero; copy stays crisp. The shade under the copy runs darker and further
   across than it did (Shaun, 2026-10-12: "a bit more left background muting so the text reads better whilst still showing the
   image"); the right side of the picture stays clear. */
/* The fade and the hover of the League and RoboLarry cards above (Shaun, 2026-10-12: "have them treated like the above two
   for the fade and the hover"; weekly-challenge.css, home-hover.css): the art at 68% under the same text-side fade, lit
   up on hover, no lift (lobby-design.css lifts promo cards elsewhere). The art is ::before (lazy, .bg-in), the fade
   ::after: the same solid-to-clear fade, stretched further right because their text runs wider across a narrower card. */
/* Then brighter (Shaun, 2026-10-12: "the hover states of those bottom 3 are how the default should be, and then the hover
   should be less blacked out"): the old hover is the resting look; hover lifts the art more and thins the fade. */
body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img)::before{opacity:1;filter:brightness(1.08) saturate(1.08);transition:filter .4s}
body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img)::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#131313 0%,#131313e6 34%,#131313c9 52%,#13131300 84%);transition:opacity .4s}
body.redesign-v2.home-v3 #lobby .ls-promo-card.is-clickable:has(.ls-promo-card-img):is(:hover,:focus-within)::before{filter:brightness(1.22) saturate(1.12)}
body.redesign-v2.home-v3 #lobby .ls-promo-card.is-clickable:has(.ls-promo-card-img):is(:hover,:focus-within)::after{opacity:.72}
/* Rewards hero: Super Larry guarding the chest (Shaun, 2026-10-03; was Nick). */
body.redesign-v2.home-v3 #s2-panel .px-head[data-art=rewards]{--header-image:url('lobby-art/unified-v1/rewards.webp')}
@media(max-width:719px){body.redesign-v2.home-v3 #s2-panel .px-head[data-art=rewards]{background-position:center,58% top!important}}   /* phones: keep Larry in frame, not just the chest */
/* Header: 10px of room above and below the logo / nav / account row (Shaun, 2026-10-01). Height follows the
   content. Desktop only: the tablet layout (<=1000px) has its own two-row header. Kept last so it wins. */
@media(min-width:1001px){body.redesign-v2.home-v3 #lobby-mobile-header{height:auto!important;min-height:0!important;padding-top:10px!important;padding-bottom:10px!important;align-items:center!important}}

/* Muck GTO link in the home status strip (lobby-home-v3.js) */
body.home-v3 .home-status-gto{text-decoration:none;color:#fff}body.home-v3 .home-status-gto span:last-child{display:flex;flex-direction:column;line-height:1.2}body.home-v3 .home-status-gto b{font-size:13px}body.home-v3 .home-status-gto small{font-size:11px;color:#b4b4b4;font-weight:500}
body.home-v3 .home-status-gto{justify-content:flex-start}
/* No half-built first paint: the lobby is revealed once lobby-home-v3.js has arranged it (body.home-ready).
   index.php also reveals it at DOMContentLoaded, and as a last resort it shows after 10s whatever happens. */
body.home-v3:not(.home-ready) #lobby{visibility:hidden;animation:muck-home-reveal 0s 10s forwards}
@keyframes muck-home-reveal{to{visibility:visible}}
/* A deep link to a lobby view keeps the home hidden until that view is open (index.php adds html.muck-deeplink,
   lobby-home-v3.js removes it); never longer than 4 s. */
html:is(.muck-deeplink,.muck-signin-link,.muck-freeroll-link) body.home-v3 #lobby{visibility:hidden;animation:muck-home-reveal 0s 4s forwards}
html,body.home-v3{background:var(--muck-bg,#0e0e0e)}
/* Status strip: the three progress cards and Muck GTO share one grid, so all four are the same width
   (Shaun, 2026-10-01). Two per row below 1250px, one per row on phones. */
body.home-v3 .home-status{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
body.home-v3 .home-status .lp-panel:not([hidden]){display:contents!important}
body.home-v3 .home-status-link{flex:none;justify-content:flex-start;min-width:0}
@media(max-width:1250px){body.home-v3 .home-status{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:719px){body.home-v3 .home-status{grid-template-columns:minmax(0,1fr);gap:10px}}
/* Three homepage feature cards; stack on phones. */
body.redesign-v2.home-v3:not(.game-section-page) .ls-config-row.ls-promo-row{grid-template-columns:repeat(3,minmax(0,1fr))!important;height:auto!important}
@media(max-width:719px){body.redesign-v2.home-v3:not(.game-section-page) .ls-config-row.ls-promo-row{grid-template-columns:minmax(0,1fr)!important}}
/* Retouched homepage artwork: preserve the full scene's height and right edge. */
body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero {height:clamp(420px,32vw,500px);min-height:420px;background:#061214!important}
body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero .ls-hero-art {background-image:url('lobby-art/poker-satire-bill-redraw-v1.webp');background-size:auto 100%;background-position:right center;background-repeat:no-repeat;transform:none;opacity:1}
@media(max-width:1099px) {
 body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero {height:auto;min-height:0;padding:30px 32px 330px!important}
 body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero .ls-hero-text {max-width:100%!important}
 body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero .ls-hero-art {background-size:max(100%, 960px) auto;background-position:right bottom}
 body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero::after {background:linear-gradient(180deg,#061214 0%,#061214 42%,transparent 65%)!important}
}
@media(max-width:719px) {
 body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero {padding:24px 20px calc(clamp(170px,52vw,240px) + 20px)!important}
 body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero .ls-hero-art {background-size:auto clamp(170px,52vw,240px)}
}
/* Muck GTO price (2026-10-02): normally $9.99/month, free for now */
body.redesign-v2 #lobby .ls-promo-price{margin:8px 0 0!important;font-size:11px!important;color:var(--muck-text-3)!important}
body.redesign-v2 #lobby .ls-promo-price s{text-decoration-thickness:1.5px}
body.redesign-v2 #lobby .ls-promo-price b{margin-left:4px;padding:3px 8px;border-radius:999px;background:var(--muck-gold-cta);color:var(--muck-gold-ink);font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
body.home-v3 .home-status-gto small s{color:var(--muck-text-3);margin-right:3px}
/* Cash leaderboard net chips (2026-10-02) */
.lb-net{font-variant-numeric:tabular-nums;font-weight:700}
.lb-net--up{color:var(--muck-green)!important}.lb-net--down{color:var(--muck-red)!important}
/* One gap between every card on the home page (Shaun, 2026-10-02: "spacing between cards should be uniform"):
   18px across and down on desktop and tablet, 12px on phones. Between 720 and 980px the three promo cards go two
   up with the third spanning underneath; three forced columns left the pair at a third of the width each. */
body.redesign-v2.home-v3:not(.game-section-page){--home-gap:18px}
body.redesign-v2.home-v3:not(.game-section-page) .home-status{gap:var(--home-gap);margin:var(--home-gap) 0}
body.redesign-v2.home-v3:not(.game-section-page) .ls-config-row.ls-promo-row{gap:var(--home-gap)!important}
@media(min-width:720px) and (max-width:980px){body.redesign-v2.home-v3:not(.game-section-page) .ls-config-row.ls-promo-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:719px){body.redesign-v2.home-v3:not(.game-section-page){--home-gap:12px}}
/* Promo cards: whole card clickable, a small lift on hover/focus. */
body.redesign-v2.home-v3 #lobby .ls-promo-card.is-clickable{cursor:pointer;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
body.redesign-v2.home-v3 #lobby .ls-promo-card.is-clickable .ls-promo-card-img{transition:transform .5s ease}
body.redesign-v2.home-v3 #lobby .ls-promo-card.is-clickable:is(:hover,:focus-within){transform:none;border-color:var(--muck-gold-muted);box-shadow:0 14px 30px #0008}
body.redesign-v2.home-v3 #lobby .ls-promo-card.is-clickable:is(:hover,:focus-within) .ls-promo-card-img{transform:scale(1.04)}

/* The account cluster ends exactly on the content edge: an old "right: .7rem" (from when it was absolutely
   positioned) was still nudging it 10px left. */
body.home-v3 #lobby-mobile-header #lobby-av-wrap{right:auto;left:auto;top:auto}

/* Status strip order (Shaun, 2026-10-02: "swap login bonus and muck gto"): Streak, Muck GTO, Missions, Login Bonus.
   The lp-panel is display:contents, so its cards are grid items of .home-status and can be ordered directly. */
body.home-v3 .home-status .lp-streak{order:1}
body.home-v3 .home-status .home-status-gto{order:2}
body.home-v3 .home-status .lp-challenges{order:3}
body.home-v3 .home-status .lp-bonus{order:4}
/* Phones: Play Now and Play with friends side by side (Shaun, 2026-10-03); the friends subtitle doesn't fit at half width. */
@media(max-width:719px){
  body.redesign-v2 #lobby .ls-hero-actions{flex-direction:row!important;gap:10px!important}
  body.redesign-v2 #lobby .ls-hero-actions>:is(.ls-hero-play-btn,.ls-hero-link-btn){flex:1 1 0!important;min-width:0!important;width:auto!important;height:56px!important;min-height:56px!important;justify-content:center!important;padding:0 12px!important}
  body.redesign-v2 #lobby .ls-hero-link-btn .ls-hero-link-text>span{display:none!important}
  body.redesign-v2 #lobby .ls-hero-link-btn .ls-hero-link-text strong{white-space:nowrap}
}
@media(max-width:379px){body.redesign-v2 #lobby .ls-hero-link-btn .ls-hero-link-icon{display:none!important}body.redesign-v2 #lobby .ls-hero-link-btn .ls-hero-link-text strong{white-space:normal;text-align:center;line-height:1.2}}
/* Phones: all four two across (Shaun, 2026-10-03: "i want all 4 double wide, u can kill the details button or the
   streak check marks if u need the room"). The tiles still open the same things when tapped. */
@media(max-width:719px){
  body.home-v3 .home-status{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.home-v3 .home-status :is(.lp-streak,.lp-bonus,.lp-challenges,.home-status-gto){min-height:68px;padding:11px 12px!important;gap:10px!important;min-width:0}
  body.home-v3 .home-status :is(.lp-days,.lp-action){display:none!important}
  body.home-v3 .home-status .lp-copy{min-width:0}
}
/* Members: gold avatar ring in the header (index.php sets <html data-member>). */
html[data-member] body.redesign-v2 #s2-profile-hero #s2-profile-avatar{border-color:#ffd34f!important;box-shadow:0 0 10px #ffd34f44}
/* Membership in the main nav: same pill as its neighbours, gold text. */
body.redesign-v2.home-v3 .lp-top-nav>a.nav-membership{color:#ffd34f!important}
body.redesign-v2.home-v3 .lp-top-nav>a.nav-membership:hover{color:#fff1b8!important}
@media(max-width:719px){body.home-v3 .lp-top-nav>a.nav-membership{display:none!important}}
/* Phones: the hero subtext runs the full width of the card (Shaun, 2026-10-03), not the old 275px column. */
@media(max-width:719px){body.redesign-v2.home-v3 #lobby .ls-hero-sub{max-width:none!important}}
@media(max-width:719px){body.home-v3 .lp-top-nav>a{font-size:10px!important;padding:12px 4px!important}}
/* Phones: one header row (logo + hamburger); every section link moves into the hamburger menu with the account items
   (assets/lobby-home-v3.js builds .lmh-mobile-nav; Shaun, 2026-10-03: "shouldnt all those be in the hamburger?"). */
.lmh-mobile-nav{display:none}
@media(max-width:719px){
  body.redesign-v2.home-v3 #lobby-mobile-header{height:65px!important;flex-wrap:nowrap!important}
  body.redesign-v2.home-v3 #lobby-mobile-header .lp-top-nav{display:none!important}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open{display:flex!important;flex-direction:column!important;align-items:stretch!important;position:fixed!important;left:12px!important;right:12px!important;bottom:auto!important;width:auto!important;max-height:calc(100dvh - 80px);overflow:auto;z-index:1000!important;padding:8px 8px max(8px,env(safe-area-inset-bottom))!important;gap:6px!important;border:1px solid #383b39!important;border-radius:14px!important;background:#161716!important;box-shadow:0 18px 40px -12px #000c!important}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open .lmh-mobile-nav{display:flex;flex-direction:column;padding-bottom:6px;margin-bottom:2px;border-bottom:1px solid #2a2c2a}
  body.redesign-v2.home-v3 .lmh-mobile-nav>a,body.redesign-v2.home-v3 .lmh-mobile-nav>button{display:flex;align-items:center;min-height:46px;padding:0 14px;border:0;border-radius:10px;background:none;color:#e6e7e2;font:600 15px Inter,system-ui,sans-serif;text-align:left;text-decoration:none;cursor:pointer}
  body.redesign-v2.home-v3 .lmh-mobile-nav>:is(a,button):is(:hover,:active){background:#232422}
  body.redesign-v2.home-v3 .lmh-mobile-nav>[aria-current=page]{color:#ffd34f;background:#2c281e}
  body.redesign-v2.home-v3 .lmh-mobile-menu-btn[aria-expanded=true]{border-color:#5c4e30!important;color:#ffd34f!important}
}

/* Give player quotes more presence and keep the pitch close to the headline. */
body.redesign-v2.home-v3 #lobby .v2-hq-slide{grid-template-columns:40px minmax(0,1fr)}
body.redesign-v2.home-v3 #lobby .v2-hq-slide img{width:40px;height:40px}
body.redesign-v2.home-v3 #lobby .v2-hq-slide blockquote{font-size:16px;line-height:1.4}
body.redesign-v2.home-v3 #lobby .v2-hq-slide figcaption{font-size:12px}
body.redesign-v2.home-v3 #lobby .ls-hero-headline{margin-bottom:12px!important}
body.redesign-v2.home-v3 #lobby .ls-hero-sub{margin-top:8px!important}
@media(max-width:719px){body.redesign-v2.home-v3 #lobby .v2-hq-slide blockquote{font-size:14px}}

/* ── Phone homepage fixes (Shaun, 2026-10-05: "buttons getting cut off, generally sizing weirdness with things very
   small") ── */
/* Testimonials: the old quote fades out before the next fades in (they overlapped mid-swap). */
body.redesign-v2 .v2-hq-slide { transition: opacity .35s ease, visibility 0s linear .35s !important; }
body.redesign-v2 .v2-hq-slide.is-active { transition: opacity .45s ease .35s, visibility 0s linear 0s !important; }
@media (max-width: 719px) {
  /* Hero buttons grow with their text instead of clipping it (fixed 56px before). */
  body.redesign-v2 #lobby .ls-hero-actions > :is(.ls-hero-play-btn, .ls-hero-link-btn) { height: auto !important; min-height: 56px !important; padding-top: 8px !important; padding-bottom: 8px !important; }
  body.redesign-v2 #lobby .ls-hero-play-btn .ls-hero-play-sub-guest { white-space: normal !important; line-height: 1.2; }
  body.redesign-v2 #lobby .ls-hero-link-btn .ls-hero-link-text strong { white-space: normal !important; }
  /* Status row: one size for every title and subtitle. */
  body.home-v3 .home-status :is(.lp-copy strong, .home-status-link strong, .home-status-link b) { font-size: 13px; line-height: 17px; }
  body.home-v3 .home-status-link { font-size: 13px; }
  body.home-v3 .home-status :is(.lp-copy small, .home-status-link small) { font-size: 11px; line-height: 15px; }
  /* Event cards size to their content, so the button never falls off the bottom. */
  body.home-v3 .wc-home-card { height: auto !important; }
  /* Footer: one readable size (the links were 9px next to 11px text). */
  body.redesign-v2 .lobby-footer, body.redesign-v2 .lobby-footer a, body.lobby-skin-2 .lobby-footer-legal { font-size: 11px; }
}

/* Panels open in one smooth step (index.php _s2Panel _enter): invisible and tall while loading, then fade up. */
body.redesign-v2 #s2-panel.s2-entering #s2-panel-body { opacity: 0 !important; min-height: calc(100vh - 80px); }
body.redesign-v2 #s2-panel.s2-shown #s2-panel-body { animation: s2-panel-in .22s cubic-bezier(.2,.8,.2,1) both; }
@keyframes s2-panel-in { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { body.redesign-v2 #s2-panel.s2-shown #s2-panel-body { animation: none; } }
/* Cash Games / Tournaments switch: the section fades up in one step (assets/game-sections.js). */
body.game-section-page #lobby.gs-enter :is(.gs-hero, #s2-card-opentables, .gs-guide) { animation: s2-panel-in .22s cubic-bezier(.2,.8,.2,1) both; }
@media (prefers-reduced-motion: reduce) { body.game-section-page #lobby.gs-enter :is(.gs-hero, #s2-card-opentables, .gs-guide) { animation: none; } }
/* The two cards under the hero (Sunday Freeroll, the challenge): the same button as the hero's "Play with friends"
   (Shaun, 2026-10-08: "ghost buttons with blackish background", then "make them the same as play w friend button"):
   dark teal-grey fill, grey-green line, 8px corners, 600 14px; gold line, text and tint on hover. */
body.home-v3 #lobby .wc-home-card .wc-primary { background: rgba(24, 35, 36, .9); color: var(--muck-text); border: 1px solid rgb(100, 113, 107); border-radius: 8px; box-shadow: none; font-weight: 600; font-size: 14px; }
body.home-v3 #lobby .wc-home-card:hover .wc-primary, body.home-v3 #lobby .wc-home-card .wc-primary:focus-visible { border-color: var(--muck-gold); color: var(--muck-gold); background: color-mix(in srgb, var(--muck-gold) 8%, #121412); }
/* Promo card art waits until the card is near the screen (Shaun, 2026-10-08: "should we load them progressively"): the
   cards sit below the first screen and their art was ~440 KB of the first visit. lobby-home-v3.js adds .bg-in about
   400 px before a card scrolls into view; the art rules above then apply. Last in the file so it wins while it matches. */
body.redesign-v2.home-v3 #lobby .ls-promo-card:not(.bg-in)::before{background-image:none!important}

/* Tablet widths (720–1099px): the hero's copy above the art is centered (Shaun, 2026-10-08): the quote as one unit
   (photo beside the text), headline, subline and buttons. */
@media (min-width:720px) and (max-width:1099px){
  body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-hero .ls-hero-text{width:100%!important;max-width:none!important;text-align:center!important}
  body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-hero .v2-hero-quote{max-width:none!important;margin-inline:auto!important}
  body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-hero .v2-hq-slide{justify-content:center;grid-template-columns:40px max-content!important;text-align:left}
  body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-hero :is(.ls-hero-headline,.ls-hero-sub){margin-inline:auto!important}
  body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-hero .ls-hero-actions{justify-content:center!important;margin-inline:auto!important}
}

/* 1099px and below: the Bill hero companion artwork places both players in
   the middle, and centered (Shaun, 2026-10-08: "the image should be centered... only from like 1099 down"). */
@media (max-width:1099px){
  body.redesign-v2.home-v3:not(.game-section-page) #lobby .ls-rail>.ls-hero .ls-hero-art{background-image:url('lobby-art/poker-satire-bill-mobile-redraw-v1.webp');background-position:center bottom}
}
/* What players say: three short reviews in a row, at the bottom of the homepage (index.php .v2-reviews; under the hero
   2026-10-09, in the hero from 10-12, the bottom since 10-15) */
body.redesign-v2.home-v3 #lobby .v2-reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:32px 0 0;padding-top:28px;border-top:1px solid var(--muck-line)}   /* a rule between the cards and what players say (Shaun, 2026-10-18) */
body.redesign-v2.home-v3 #lobby .v2-review{display:flex;gap:12px;align-items:flex-start;margin:0;padding:14px 16px;border:1px solid var(--muck-line,#2a2e2a);border-radius:12px;background:var(--muck-surface,#151815)}
body.redesign-v2.home-v3 #lobby .v2-review img{flex:none;width:40px;height:40px;border-radius:50%;object-fit:cover}
body.redesign-v2.home-v3 #lobby .v2-review > div{min-width:0}
body.redesign-v2.home-v3 #lobby .v2-review-stars{display:block;color:var(--muck-gold,#ffd34f);font-size:11px;letter-spacing:2px;line-height:1}
body.redesign-v2.home-v3 #lobby .v2-review blockquote{margin:5px 0 4px;color:var(--muck-text,#f3f2e9);font-size:14px;font-weight:600;line-height:1.35}
body.redesign-v2.home-v3 #lobby .v2-review figcaption{color:var(--muck-text-3,#8a8f88);font-size:12px}
body.redesign-v2.home-v3 #lobby .v2-review figcaption strong{color:var(--muck-text-2,#c9cbc4);font-weight:600}
body.redesign-v2.home-v3:not(.game-section-page) #lobby .v2-reviews{display:grid}
body.redesign-v2.home-v3.game-section-page #lobby .v2-reviews,body.redesign-v2.home-v3.s2-panel-active #lobby .v2-reviews{display:none}
/* Phones: one review at a time, the three stacked in one cell and crossfading (index.php rotates .is-active) */
@media(max-width:719px){
  body.redesign-v2.home-v3 #lobby .v2-reviews{grid-template-columns:1fr;gap:0}
  body.redesign-v2.home-v3 #lobby .v2-review{grid-area:1/1;padding:12px 14px;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility 0s linear .45s}
  body.redesign-v2.home-v3 #lobby .v2-review.is-active{opacity:1;visibility:visible;transition:opacity .45s ease .2s,visibility 0s linear 0s}
  body.redesign-v2.home-v3 #lobby .v2-review{justify-content:flex-start;text-align:left}   /* left aligned, the homepage centres on phones */
}
/* Footer (index.php .lf2, Shaun 2026-10-09: "make the footer more like this ... elevate it"): brand left, three link
   columns, X and the legal bits right, the play-money note along the bottom. Overrides the old one-line footer rules. */
body.redesign-v2 #lobby .lobby-footer.lf2{display:block!important;margin:var(--lf2-mt,28px) 0 0!important;padding:30px 0 22px!important;border:0!important;border-top:1px solid var(--muck-line,#2a2e2a)!important;border-radius:0!important;background:none!important;text-align:left!important;opacity:1!important;color:var(--muck-text-3,#8a8f88)!important;font-size:13px!important;line-height:1.5}
body.redesign-v2 #lobby .lf2 a{font-size:13px;color:var(--muck-text-2,#c9cbc4)!important;text-decoration:none}
body.redesign-v2 #lobby .lf2 a:hover{color:var(--muck-gold,#ffd34f)!important}
body.redesign-v2 #lobby .lf2-top{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(0,2.4fr) minmax(200px,1fr);gap:36px;align-items:start}
body.redesign-v2 #lobby .lf2-logo img{display:block;width:150px;height:auto}
body.redesign-v2 #lobby .lf2-tag{margin:12px 0 10px;color:var(--muck-text,#f3f2e9);font-size:14px;font-weight:600}
body.redesign-v2 #lobby .lf2 .lobby-rules-blurb{margin:0!important;padding:0!important;max-width:280px;font-size:12px;line-height:1.55;color:var(--muck-text-3,#8a8f88)!important;opacity:1!important;text-align:left!important}
body.redesign-v2 #lobby .lf2 .lobby-rules-blurb strong{color:var(--muck-text-2,#c9cbc4);font-weight:600}
body.redesign-v2 #lobby .lf2-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-left:36px;border-left:1px solid var(--muck-line,#2a2e2a)}
body.redesign-v2 #lobby .lf2-cols>div{display:flex;flex-direction:column;gap:9px;min-width:0}
body.redesign-v2 #lobby .lf2-cols h3{margin:0 0 4px;color:var(--muck-text,#f3f2e9);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
body.redesign-v2 #lobby .lf2-side{display:flex;flex-direction:column;align-items:flex-end;gap:12px;text-align:right}
body.redesign-v2 #lobby .lf2 .lf2-x{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px;border:1px solid var(--muck-line-strong,#3a3f3a);border-radius:8px;background:var(--muck-surface,#151815);color:var(--muck-text,#f3f2e9)!important;font-weight:700}
body.redesign-v2 #lobby .lf2 .lf2-x:hover{border-color:var(--muck-gold-muted,#a8893f)}
body.redesign-v2 #lobby .lf2-copy{margin:0;font-size:12px;line-height:1.6;color:var(--muck-text-3,#8a8f88)}
body.redesign-v2 #lobby .lf2-legal{display:flex;gap:16px;align-items:center;margin:0;font-size:12px}
body.redesign-v2 #lobby .lf2-legal a{font-size:12px!important}
body.redesign-v2 #lobby .lf2-legal span{color:var(--muck-text-3,#8a8f88)}
body.redesign-v2 #lobby .lf2 .lobby-footer-disclaimer{margin:26px 0 0!important;padding-top:18px;border-top:1px solid var(--muck-line,#2a2e2a);font-size:12px;color:var(--muck-text-3,#8a8f88)!important}
body.redesign-v2 #lobby .lf2 .lobby-footer-disclaimer a{font-size:12px}   /* its colour is site-footer.css's grey (2026-11-01: "kill the yellow text from this footer") */
/* Your balance, phones only: the desktop header already shows it (includes/site-footer.php) */
body.redesign-v2 #lobby .lf2 .lf2-balance{display:none}
@media(max-width:719px){
  body.redesign-v2 #lobby .lf2 .lf2-balance{display:flex;align-items:center;justify-content:space-between;gap:var(--muck-space-3);min-height:56px;margin:-24px 0 24px;border-bottom:1px solid var(--muck-line,#2a2e2a);font-size:14px}
  body.redesign-v2 #lobby .lf2 .lf2-balance-value{color:var(--muck-gold,#ffd34f);white-space:nowrap}
  body.redesign-v2 #lobby .lf2 .lf2-balance-value b{font-weight:700}
}
@media(max-width:1000px){
  body.redesign-v2 #lobby .lf2-top{grid-template-columns:1fr 1fr;gap:28px}
  body.redesign-v2 #lobby .lf2-cols{grid-column:1/-1;order:3;padding-left:0;border-left:0}
  body.redesign-v2 #lobby .lf2-side{align-items:flex-start;text-align:left}
}
@media(max-width:719px){
  body.redesign-v2 #lobby .lobby-footer.lf2{margin-top:var(--lf2-mt,22px)!important;padding:24px 0 18px!important}
  body.redesign-v2 #lobby .lf2-top{grid-template-columns:1fr;gap:24px}
  body.redesign-v2 #lobby .lf2-cols{grid-template-columns:1fr 1fr;gap:22px 16px;order:0}
  body.redesign-v2 #lobby .lf2-cols>div:last-child{grid-column:1/-1}
  body.redesign-v2 #lobby .lf2-cols>div{gap:0}   /* the links already carry tap-target padding (mobile-type.css) */
}
/* Plain info pages (index.php .info-prose, Fairness & Shuffling first; 2026-10-09): headings and paragraphs, no cards */
body.redesign-v2 .info-prose{max-width:760px;padding:8px 4px 40px!important;color:var(--muck-text-2,#c9cbc4)}
body.redesign-v2 .info-prose .info-title{margin:14px 0 12px;font:800 clamp(30px,3.4vw,44px)/1.05 var(--muck-font,Inter,sans-serif);letter-spacing:-1px;color:var(--muck-text,#f3f2e9)}
body.redesign-v2 .info-prose .info-lede{margin:0 0 8px;font-size:17px;line-height:1.6;color:var(--muck-text,#f3f2e9)}
body.redesign-v2 .info-prose h2{margin:34px 0 10px;font:800 21px/1.25 var(--muck-font,Inter,sans-serif);letter-spacing:-.2px;color:var(--muck-text,#f3f2e9)}
body.redesign-v2 .info-prose p{margin:0 0 14px;font-size:15px;line-height:1.75;color:var(--muck-text-2,#c9cbc4)}
body.redesign-v2 .info-prose strong{color:var(--muck-text,#f3f2e9);font-weight:700}
body.redesign-v2 .info-prose code{padding:1px 6px;border-radius:5px;background:var(--muck-surface-2,#1c201c);color:var(--muck-text,#f3f2e9);font-size:13px}
body.redesign-v2 .info-prose h3{margin:22px 0 8px;font:700 16px/1.35 var(--muck-font,Inter,sans-serif);color:var(--muck-text,#f3f2e9)}
body.redesign-v2 .info-prose .info-num{margin-right:6px;color:var(--muck-gold,#ffd34f);font-weight:800}
body.redesign-v2 .info-prose .terms-updated{margin:0 0 6px;font-size:13px;color:var(--muck-text-3,#8a8f88)}
body.redesign-v2 .info-prose em{color:var(--muck-text,#f3f2e9)}
body.redesign-v2 .info-prose a{color:var(--muck-gold,#ffd34f)}
@media(max-width:719px){body.redesign-v2 .info-prose .info-lede{font-size:16px}body.redesign-v2 .info-prose h2{font-size:19px;margin-top:28px}}
/* The play-money line under the hero buttons (index.php .ls-hero-legal, 2026-10-12) */
body.redesign-v2.home-v3 #lobby .ls-hero-legal{display:flex;align-items:center;gap:6px;margin:14px 0 0;color:var(--muck-text-3,#7d7d7d);font:500 12px/1.4 var(--muck-font,Inter,system-ui,sans-serif)}
body.redesign-v2.home-v3 #lobby .ls-hero-legal .material-symbols-rounded{font-size:15px}
body.game-section-page #lobby .ls-hero-legal{display:none}

/* Phone hero: Start Playing / Play Now without the play arrow (Shaun, 2026-10-14: "kill the arrow on the start playing button on the mobile homepage hero") */
@media(max-width:719px){body.redesign-v2.home-v3 #lobby #btn-play-computer .ls-hero-play-icon{display:none}}
/* Play Now's line for a trained newcomer: where it goes (index.php starter_room, Shaun 2026-10-14) */
body.redesign-v2.home-v3 #lobby .ls-hero-play-sub-starter{display:block;margin-top:2px;font:500 11px/1.2 var(--muck-font,Inter,system-ui,sans-serif);color:inherit;opacity:.75;white-space:normal}
/* Opened only to sit at a table (index.php muck-launching, lifted by lobby.js once it's up): no lobby flash first */
body.muck-launching::before{content:'';position:fixed;inset:0;z-index:2147482000;background:var(--muck-bg,#0b0b0b)}
/* a window (a game's rules, the pass) opened on the way: the cover goes just under it, still hiding the lobby (lobby.js _launchFromLink) */
body.muck-launching.muck-launching-under::before{z-index:var(--muck-launch-under-z,0)}
/* The lesson over the homepage (lobby.js _openLesson): a full-screen frame; the page behind doesn't scroll */
body.muck-lesson-open{overflow:hidden}
.muck-lesson-frame{position:fixed;inset:0;box-sizing:border-box;width:100%;height:100vh;height:100dvh;border:0;z-index:2147482500;background:var(--muck-bg,#0e0e0e)}
/* Saved to the home screen the page runs under the notch and the home bar (viewport-fit=cover); a frame can't see those
   insets, so its own edges keep the lesson out of them */
.muck-lesson-frame{border-top:env(safe-area-inset-top,0px) solid var(--muck-bg,#0e0e0e);border-bottom:env(safe-area-inset-bottom,0px) solid var(--muck-bg,#0e0e0e)}
/* Home-screen app: the header starts below the status bar and the notch, not under them (Shaun, 2026-10-15) */
body.redesign-v2 #lobby-mobile-header{margin-top:env(safe-area-inset-top,0px)}

/* The homepage hero's three ways in (index.php .hc-ctas: Play Cash, Play Tournaments, Play with Friends; Shaun,
   2026-10-15): the shared buttons at hero size, in a row, stacked on phones */
body.home-v3 #lobby .hc-ctas{display:flex;flex-wrap:wrap;gap:var(--muck-space-3);margin-top:var(--muck-space-5)}
body.home-v3 #lobby .hc-cta{min-height:56px;padding:0 var(--muck-space-6);font-size:16px}
@media(max-width:719px){body.home-v3 #lobby .hc-ctas{flex-direction:column}body.home-v3 #lobby .hc-cta{width:100%}}
@media(max-width:719px){body.home-v3 #lobby .wc-home-card--gto>img{object-position:28% center}}   /* phones: the wizard, not the owl */
/* Tablets and phones: the three hero buttons and the fine print centred under the centred copy; phones centre the copy
   too (Shaun, 2026-10-15: "buttons and text need centering on tablet/mobile") */
@media(max-width:1099px){
 body.home-v3:not(.game-section-page) #lobby .ls-hero .hc-ctas{justify-content:center}
 body.home-v3:not(.game-section-page) #lobby .ls-hero .ls-hero-legal{justify-content:center;text-align:center}
}
@media(max-width:719px){
 body.home-v3:not(.game-section-page) #lobby .ls-hero .ls-hero-text{text-align:center}
 body.home-v3:not(.game-section-page) #lobby .ls-hero .v2-hq-slide{justify-content:center}
}
/* "Texas Hold'em." on one line on phones (Shaun, 2026-10-15): it scales with the screen instead of wrapping */
@media(max-width:719px){body.home-v3 #lobby .ls-hero-headline .hc-line{display:block;white-space:nowrap;font-size:min(1em,12.5vw)}}

/* Phones: the account items sit in the hamburger menu itself, under the section links, with Shop: no cog opening a second
   menu over the first (Shaun, 2026-10-15: "we need to add shop to the mobile menu, and the mobile menu has a weird sign out
   double menu, that should be all smoothed out"). index.php #lobby-av-menu-shop; the !important looks read these vars. */
#lobby-av-menu-shop{display:none}
@media(max-width:719px){
  body.redesign-v2.home-v3:not(.costanza-guest) #lobby-av-wrap.lmh-mobile-open .lobby-icon-pill{display:none}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open > *{flex-shrink:0}   /* taller than the screen: it scrolls, nothing squeezes */
  body.redesign-v2.home-v3:not(.costanza-guest) #lobby-av-wrap.lmh-mobile-open #lobby-av-menu{display:flex;position:static;min-width:0;gap:0;
    --dlg-bg:transparent;--dlg-shadow:none;--avm-border:0;--avm-pad:0;--avm-fs:15px;--avm-ipad:0 14px;--avm-ir:10px;--avm-ic:#e6e7e2}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open #lobby-av-menu :is(.lobby-av-menu-hdr,.lobby-av-menu-hdr + .lobby-av-menu-divider){display:none}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open #lobby-av-menu .lobby-av-menu-item{min-height:46px;gap:12px}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open #lobby-av-menu .lobby-av-menu-item .material-symbols-rounded{font-size:20px}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open #lobby-av-menu .lobby-av-menu-divider{margin:4px 0}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open #lobby-av-menu-shop{display:flex}
  body.redesign-v2.home-v3 #lobby-av-wrap.lmh-mobile-open #lobby-av-menu-shop ~ #lobby-av-menu-chips{display:none}   /* Shop is the same store */
}

/* Signed out: no Meet the Bots / Challenge Larry / Missions row (index.php .hp-guest-off, Shaun 2026-10-15) */
body.redesign-v2 .ls-config-row.ls-promo-row.hp-guest-off{--promo-display:none}

/* Footer: two link columns when signed out (no Community, includes/site-footer.php); on phones no Community for anyone */
body.redesign-v2 #lobby .lf2-cols.lf2-cols--two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:719px){body.redesign-v2 #lobby .lf2-cols>.lf2-community{display:none}body.redesign-v2 #lobby .lf2-cols.lf2-cols--two>div:last-child{grid-column:auto}}

body.redesign-v2.home-v3 #lobby .ls-promo-card:has(.ls-promo-card-img--league)::before{background:url('league/home-league-v2.webp') right center/cover;opacity:1;filter:brightness(.8)}
body.home-v3 #lobby .wc-home-card--basics>img{inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:1}

/* Members' hero buttons: an icon each and a size down, so they sit quieter under the headline (Shaun, 2026-10-16: "styled
   a bit more with an icon ... so they arent so prominent. for logged in users"); same corners (index.php .hc-cta--icon) */
body.home-v3 #lobby .hc-cta.hc-cta--icon{min-height:44px;padding:0 calc(var(--muck-space-5) - 2px) 0 calc(var(--muck-space-5) - 4px);font-size:14px;gap:calc(var(--muck-space-2) - 4px)}   /* 2px less on the icon side: the thin icon reads lighter than the words, so even padding looked left-heavy (Shaun, 2026-10-17) */
body.home-v3 #lobby .hc-cta--icon .material-symbols-rounded{font-size:18px;line-height:1}
/* The words trimmed to their capitals, so the button centres the letters themselves, level with the icon (Shaun, 2026-10-17:
   "these icon/text dont look visually centered"; the line box left them a pixel or two high) */
body.home-v3 #lobby .hc-cta--icon .hc-cta-label{display:block;text-box:trim-both cap alphabetic}
@media(max-width:719px){body.home-v3 #lobby .hc-cta.hc-cta--icon{min-height:48px}}
/* Members' hero buttons (Shaun, 2026-10-17, from a mock-up): bigger, an icon and a label, as wide as their words ("kill all the extra space/chevron"). They sit in their own
   row under the copy (index.php .ls-hero--members / .hc-bottom), with the spacing the hero always had: under the line,
   left on desktop, centred under 1100px ("keep the formatting of those 3 buttons ... put the spacing back how it was"). */
body.home-v3 #lobby .ls-hero--members{flex-wrap:wrap;align-content:center}
body.home-v3 #lobby .ls-hero--members>.hc-bottom{position:relative;z-index:1;flex:0 0 100%}
/* The line's own 22px already sits above this row, so the buttons don't add their 24px on top: 24px in all, as signed out
   (Shaun, 2026-10-20: "this is a bit much spacing above the buttons too"; it was 46) */
body.home-v3 #lobby .ls-hero--members>.hc-bottom .hc-ctas{margin-top:2px}
@media(min-width:1100px){
 body.home-v3:not(.game-section-page) #lobby .ls-hero--members .hc-cta.hc-cta--icon{min-height:64px;gap:calc(var(--muck-space-3) - 4px);padding:0 calc(var(--muck-space-5) - 2px) 0 calc(var(--muck-space-5) - 4px);font-size:17px}
 body.home-v3:not(.game-section-page) #lobby .ls-hero--members .hc-cta--icon .material-symbols-rounded{font-size:22px}   /* a touch smaller (Shaun, 2026-10-17) */
}

/* Save your progress, after a free game left without deciding (index.php #fg-save, 2026-10-16): one job, the sign-up;
   Keep exploring is the small way out under it */
.fg-save{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;padding:var(--muck-space-4);background:rgba(0,0,0,.82)}   /* no blur: it smeared the page behind into the card (2026-10-16) */
.fg-save[hidden]{display:none}
html.fg-save-on,html.fg-save-on body{overflow:hidden}
.fg-save-card{box-sizing:border-box;width:min(420px,100%);padding:var(--muck-space-6) var(--muck-space-5) var(--muck-space-5);border:1px solid var(--muck-line-strong);border-radius:16px;background:var(--muck-surface-1);color:var(--muck-text);text-align:center}
.fg-save-icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--muck-surface-2);color:var(--muck-gold);font-size:28px}
.fg-save-card h2{margin:var(--muck-space-3) 0 var(--muck-space-2);font-size:24px;line-height:1.2}
.fg-save-sub{margin:0 0 var(--muck-space-4);color:var(--muck-text-2);font-size:15px;line-height:1.5}
.fg-save-sub b{color:var(--muck-gold)}
.fg-save-perks{margin:0 0 var(--muck-space-5);padding:0;list-style:none;text-align:left;display:grid;gap:var(--muck-space-2)}
.fg-save-perks li{display:flex;align-items:center;gap:var(--muck-space-2);font-size:14px;color:var(--muck-text)}
.fg-save-perks .material-symbols-rounded{font-size:18px;color:var(--muck-gold)}
.fg-save-skip{margin-top:var(--muck-space-3);padding:var(--muck-space-2);border:0;background:none;color:var(--muck-text-2);font:600 14px var(--muck-font);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.fg-save-skip:focus-visible{outline:2px solid var(--muck-gold);outline-offset:2px}
.fg-save-fine{margin:var(--muck-space-1) 0 0;color:var(--muck-text-3);font-size:12px;line-height:1.5}
.fg-save-card h2 b{color:var(--muck-gold)}
.fg-save-art{display:none}
/* A phone: a page of its own, not a box over the lobby (Shaun, 2026-10-22: "make the keep the muck bucks modal an actual
   page on mobile, not a modal"): full screen, Larry counting Muck Bucks across the top, the offer under him, the button
   and the way out at the bottom within thumb reach */
@media (max-width:600px){
  .fg-save{display:block;padding:0;background:var(--muck-bg);overflow-y:auto}
  .fg-save[hidden]{display:none}
  .fg-save-card{width:100%;min-height:100%;min-height:100dvh;display:flex;flex-direction:column;border:0;border-radius:0;box-shadow:none;background:var(--muck-bg);padding:0 var(--muck-space-5) calc(var(--muck-space-5) + env(safe-area-inset-bottom));text-align:left}
  .fg-save-art{display:block;width:calc(100% + 2 * var(--muck-space-5));margin:0 calc(-1 * var(--muck-space-5)) var(--muck-space-5);aspect-ratio:16/10;object-fit:cover;object-position:62% 40%;-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}
  .fg-save-icon{display:none}
  .fg-save-card h2{font-size:30px;line-height:1.15;letter-spacing:-.02em;margin:0 0 var(--muck-space-3)}
  .fg-save-sub{font-size:16px}
  .fg-save-perks{margin-bottom:auto;padding-bottom:var(--muck-space-6)}
  .fg-save-perks li{font-size:15px}
  .fg-save-skip,.fg-save-fine{text-align:center;align-self:center}
}

/* News (includes/site-footer.php, includes/News.php; Shaun, 2026-10-26: "add a news section on the footer"): the lobby's copy; a row under the
   columns, the latest headlines with their dates and All news; stacked on phones */
body.redesign-v2 #lobby .lf2-news{display:flex;align-items:baseline;gap:20px;margin:26px 0 0;padding-top:18px;border-top:1px solid var(--muck-line,#292929)}
body.redesign-v2 #lobby .lf2-news h3{flex:none;margin:0;color:var(--muck-text,#f3f2e9);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
body.redesign-v2 #lobby .lf2-news ul{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:8px 28px;min-width:0;margin:0;padding:0;list-style:none}
body.redesign-v2 #lobby .lf2-news li a{display:inline-flex;align-items:baseline;gap:10px}
body.redesign-v2 #lobby .lf2-news time{color:var(--muck-text-3,#8a8f88);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
body.redesign-v2 #lobby .lf2-news li span{color:var(--muck-text,#f3f2e9)}
body.redesign-v2 #lobby .lf2-news li a:hover span{color:var(--muck-gold,#ffd34f)}
body.redesign-v2 #lobby .lf2-news-all{flex:none;margin-left:auto;white-space:nowrap}
@media(max-width:719px){
  body.redesign-v2 #lobby .lf2-news{flex-direction:column;gap:10px}
  body.redesign-v2 #lobby .lf2-news ul{flex-direction:column;gap:0}
  body.redesign-v2 #lobby .lf2-news li a{padding:7px 0}
  body.redesign-v2 #lobby .lf2-news-all{margin-left:0;padding:7px 0}
}
/* Invite a Friend's badge: invites still to give, until seen (lobby-home-v3.js; the header on other pages has the same, gto-header.php) */
[data-inv-badge]::after{content:attr(data-inv-badge);display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;box-sizing:border-box;border-radius:var(--muck-radius-pill);background:var(--muck-gold);color:var(--muck-gold-ink);font:800 11px/1 var(--muck-font);vertical-align:1px}
/* "Hold'em Low." / "Worst hand wins." (Shaun, 2026-11-04): each line on one row at 339 wide, no "wins." alone underneath */
@media(max-width:719px){body.home-v3 #lobby .ls-hero-headline :is(.hc-line,em){white-space:nowrap;font-size:min(1em,calc((100vw - 64px)/7.4))}}
/* a hero button with the hidden attribute stays hidden (.mk-btn's inline-flex beat the browser's [hidden]); Private Game is
   hidden for now (Shaun, 2026-11-04: "kill the private table link from the hero for now") */
.hc-ctas > [hidden]{display:none}
/* the hero line's link (Shaun, 2026-11-06: "link degen variants to the games page") */
body.redesign-v2.home-v3 #lobby .ls-hero-sub a{color:var(--muck-gold);text-decoration:underline;text-underline-offset:3px}
