/* One home for each game, shared by Modern and Classic themes. */
body:has(#dirView:not(.hidden)) #themeToggle{position:static!important;display:block;margin:0 auto 20px}
#dirView .yg-main{max-width:1280px;margin:0 auto;padding:30px 22px 70px!important}
#dirView .directory-heading{display:flex;gap:24px;align-items:end;justify-content:space-between;margin:8px 0 24px}
#dirView .directory-heading h1{font-size:clamp(28px,4vw,42px);letter-spacing:-1.3px;color:#20243c;margin:6px 0 10px;line-height:1.12}
#dirView .directory-heading p{font-size:15px;color:#62667a;margin:0;line-height:1.6;max-width:610px}
#dirView .directory-eyebrow{font-size:11px;font-weight:700;color:#655399;letter-spacing:2px;text-transform:uppercase}
#dirView .directory-region{flex-shrink:0;display:grid;gap:7px;font-size:12px;color:#525770}
#dirView .directory-region select{min-height:44px;font-size:14px;min-width:190px}
#dirView .directory-region-controls{display:flex;gap:8px}
#dirView .directory-note{font-size:12px;line-height:1.6;color:#676b7d;margin:0 0 18px}
#dirGames{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#dirView .game-card{overflow:hidden;border:1px solid #ddddea;border-radius:18px;background:#fff;color:#242940;box-shadow:0 6px 20px #29223f06;display:flex;flex-direction:column;min-width:0}
#dirView .game-card-art{height:115px;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(125deg,#e6ddf5,#f5f0fd);color:#65468c}
#dirView .game-card-art[data-game=pool]{background:linear-gradient(125deg,#cce8dd,#eef9f3);color:#1c5a48}
#dirView .game-card-art[data-game=checkers]{background:linear-gradient(125deg,#f2d7cf,#fff1e9);color:#a44e42}
#dirView .game-card-art[data-game=spades]{background:linear-gradient(125deg,#d7e0ef,#f0f4fc);color:#34456c}
#dirView .game-card-art[data-game=dominoes]{background:linear-gradient(125deg,#f1e4c4,#fcf7eb);color:#7a6333}
#dirView .game-card-symbol{font-size:65px;line-height:1;font-family:'Segoe UI Symbol',serif;text-shadow:0 4px 0 #ffffff80}
#dirView .game-card-format{font-size:11px;font-weight:600;background:#ffffffb8;border:1px solid #ffffffb8;border-radius:20px;padding:7px 10px}
#dirView .game-card-body{padding:20px;display:flex;flex-direction:column;flex:1}
#dirView .game-card h2{font-size:23px;letter-spacing:-.5px;margin:0 0 7px;color:#242940}
#dirView .game-card-description{font-size:13px;line-height:1.6;color:#66697e;margin:0;min-height:42px}
#dirView .game-card-count{font-size:12px;color:#526657;padding:12px 0;margin:0}
#dirView .game-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}
#dirView .game-card-actions .yg-btn{font:600 13px Verdana,sans-serif;min-height:44px;padding:10px 6px;border:1px solid #d9d9e7;border-radius:9px;background:#fff;color:#41435e;box-shadow:none;white-space:normal;text-align:center}
#dirView .game-card-actions .practice-action{grid-column:1/-1;background:#584185;color:#fff;border-color:#584185}
#dirView .game-card-actions .yg-btn:hover{background:#f0edf7}
#dirView .game-card-actions .practice-action:hover{background:#443164}
#dirView .game-card-actions .yg-btn:disabled{opacity:.55;cursor:wait}
#dirView .directory-chat{margin:0 0 22px}
#dirView .directory-chat .yg-panel-title{font-size:14px}
#dirView .directory-chat .dir-game a{font-size:14px;display:inline-block;padding:7px 0}
#dirView .directory-footer{display:grid;grid-template-columns:1fr;gap:18px;margin-top:26px}
#dirView .directory-footer .yg-panel{margin:0;min-width:0}
#dirView .directory-footer .yg-panel-title{font-size:14px}
#dirView #resumeGame{margin:0 0 20px}
#dirView :focus-visible,.practice-choices :focus-visible{outline:3px solid #197f9f;outline-offset:3px}
.practice-choices{display:grid;gap:10px;font-size:14px;line-height:1.6}
.practice-choices p{margin:0 0 6px}.practice-choices a.yg-btn{min-height:46px;font-size:14px;justify-content:space-between;white-space:normal}
.practice-choices small{font-size:11px;font-weight:normal}
@media(max-width:1000px){#dirGames{grid-template-columns:repeat(2,minmax(0,1fr))}#dirView .directory-heading{align-items:start}}
@media(max-width:620px){#dirView .yg-main{padding:18px 12px 65px!important}#dirView .directory-heading{flex-direction:column;gap:18px}#dirView .directory-region{width:100%}#dirView .directory-region-controls select{flex:1;min-width:0}#dirGames,#dirView .directory-footer{grid-template-columns:1fr}#dirView .game-card-art{height:90px}#dirView .game-card-symbol{font-size:52px}#dirView .game-card-description{min-height:0}}

#dirView .directory-social{display:grid;grid-template-columns:3fr 2fr;gap:18px}#directoryFriends{max-height:290px;overflow:auto;font-size:13px}#dirView .directory-social .yg-btn{min-height:36px}#dirView .directory-social .yg-panel-title{display:flex;align-items:center;justify-content:space-between;gap:8px}@media(max-width:760px){#dirView .directory-social{grid-template-columns:1fr}}

.games-advertising{margin:160px 0 24px;min-width:0;max-width:100%;text-align:center}.games-advertising:empty{display:none}.ait-ad-label{display:block;font-size:10px;letter-spacing:1px;text-transform:uppercase;margin-bottom:12px}.games-advertising ins{display:block;width:100%;min-height:100px}.ait-ad-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:12px;font-size:11px}.ait-ad-choices button{border:0;background:none;color:inherit;text-decoration:underline;font:inherit;cursor:pointer}.ait-ad-choices button[hidden]{display:none}.ait-ad-unfilled{margin-top:24px}.ait-ad-unfilled>ins,.ait-ad-unfilled>.ait-ad-label{display:none!important}@media print{.games-advertising{display:none!important}}
/* Public welcome page. Scoped so the signed-in lobby and game tables retain their layouts. */
#authView.welcome-page{--welcome-ink:#172f2e;--welcome-muted:#516561;--welcome-green:#176553;max-width:1320px!important;margin:0 auto;padding:0 40px!important;color:var(--welcome-ink);font:16px/1.65 'Segoe UI',system-ui,sans-serif}
body:has(.welcome-page:not(.hidden)){background:#f7f8f3}
body:has(.welcome-page:not(.hidden)) #themeToggle{position:static!important;display:block;margin:10px auto 30px}
#authView a{color:#176553}#authView a:hover{text-decoration:underline}#authView :focus-visible{outline:3px solid #af611b;outline-offset:5px}#authView h1,#authView h2,#authView h3{color:var(--welcome-ink);line-height:1.15}#authView p{margin:0 0 16px}#authView h2{font-size:clamp(27px,3vw,40px);letter-spacing:-1.3px;margin:0 0 18px}#authView h3{font-size:24px;margin:0 0 12px;letter-spacing:-.6px}
#authView .welcome-skip{position:absolute;left:12px;top:-100px;background:white;padding:14px;z-index:3000}#authView .welcome-skip:focus{top:12px}
#authView .welcome-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;border-bottom:1px solid #d8e0d6}#authView .welcome-brand{display:flex;align-items:center;gap:14px;font-size:29px;font-weight:900;letter-spacing:-1.5px;color:#173d35;text-decoration:none}#authView .welcome-brand span{font-size:12px;letter-spacing:3px;border-left:1px solid #aabbb0;padding-left:15px;font-weight:650}#authView .welcome-nav nav{display:flex;gap:28px;align-items:center;font-size:14px;font-weight:600}#authView .welcome-signin{border:1px solid #c4d3c5;padding:9px 18px;border-radius:100px}
#authView .welcome-hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:54px;padding:70px 0 60px}#authView .welcome-kicker{font-size:11px;font-weight:750;letter-spacing:1.8px;text-transform:uppercase;color:#496b5b;margin-bottom:14px}#authView h1{font-size:clamp(38px,4vw,62px);letter-spacing:-2.6px;margin:0 0 24px;line-height:1.05}#authView h1 em{font-style:normal;color:#35785a}#authView .welcome-lead{max-width:510px;font-size:18px;color:var(--welcome-muted);line-height:1.65}#authView .welcome-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 16px}#authView .welcome-primary,#authView .welcome-secondary{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;border-radius:9px;padding:12px 20px;font-size:15px;font-weight:700;text-decoration:none}#authView .welcome-primary{background:#176553;color:#fff;box-shadow:0 3px 0 #10483d}#authView .welcome-primary:hover{background:#104f40}#authView .welcome-secondary{border:1px solid #bfcfc2;background:#fff;color:#214d3d}#authView .welcome-account{font-size:13px;color:var(--welcome-muted);max-width:480px}#authView .welcome-account a{text-decoration:underline}#authView .welcome-points{display:flex;flex-wrap:wrap;list-style:none;padding:0;gap:18px;font-size:12px;font-weight:650;color:#3e5d49;margin:26px 0 0}#authView .welcome-points li:before{content:'✓';margin-right:6px}
#authView .welcome-hero-visual{margin:0;background:#173b32;border:1px solid #234a3e;border-radius:20px;overflow:hidden;box-shadow:0 20px 45px #233b3020}#authView .welcome-visual-heading{display:flex;justify-content:space-between;color:#dbeddc;padding:18px 22px;font-size:12px;letter-spacing:1px}#authView .welcome-hero-visual img{display:block;width:100%;height:auto;aspect-ratio:1905/938}#authView .welcome-hero-visual figcaption{font-size:11px;color:#bed5c6;padding:10px 22px;border-bottom:1px solid #ffffff20}#authView .welcome-pool-copy{padding:22px}#authView .welcome-pool-copy h2{font-size:28px;color:#f5f6dd;letter-spacing:-.8px;margin-bottom:10px}#authView .welcome-pool-copy p{font-size:14px;color:#c9dacf;line-height:1.6}#authView .welcome-pool-copy a{color:#e6edbc;font-size:14px;font-weight:700}
#authView .welcome-section-heading{display:flex;gap:42px;align-items:end;justify-content:space-between;margin-bottom:26px}#authView .welcome-section-heading>p{max-width:370px;font-size:15px;color:var(--welcome-muted)}#authView .welcome-section-heading h2{margin-bottom:0}#authView .welcome-games{padding:40px 0 65px;border-top:1px solid #d8e0d6;scroll-margin-top:24px}#authView .welcome-game-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}#authView .welcome-game{border:1px solid #d8e0d6;border-radius:16px;overflow:hidden;background:white}#authView .welcome-preview{display:block;position:relative;background:#eef1eb}#authView .welcome-preview img{display:block;width:100%;height:auto;aspect-ratio:1905/938;object-fit:contain}#authView .welcome-preview span{position:absolute;bottom:10px;right:10px;padding:5px 9px;background:#173b32;color:white;border-radius:5px;font-size:11px}#authView .welcome-game-copy{padding:26px}#authView .welcome-game-copy .welcome-kicker{font-size:10px;letter-spacing:1px}#authView .welcome-game-copy h3{font-size:29px}#authView .welcome-game-copy p{font-size:15px;color:var(--welcome-muted)}#authView .welcome-game-copy .welcome-tagline{color:#243f35;font-weight:650;margin-bottom:8px}#authView .welcome-text-link{display:inline-block;padding:9px 0;font-size:14px;font-weight:700}
#authView .welcome-how{padding:50px 0;border-top:1px solid #d8e0d6;scroll-margin-top:24px}#authView .welcome-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin:32px 0;padding:0}#authView .welcome-steps li>span{display:block;color:#60795b;font-size:14px;letter-spacing:2px;margin-bottom:18px}#authView .welcome-steps h3,#authView .welcome-benefits h3{font-size:21px}#authView .welcome-steps p,#authView .welcome-benefits p{font-size:15px;color:var(--welcome-muted)}#authView .welcome-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:30px;background:#eaf0e3;border-radius:16px}
#authView .welcome-faq{max-width:880px;margin:30px auto 60px}#authView .welcome-faq h2{margin-bottom:28px}#authView details{border-bottom:1px solid #d2decd;padding:17px 0}#authView summary{font-size:17px;cursor:pointer;font-weight:600;min-height:30px}#authView details p{margin:15px 0 0;color:var(--welcome-muted);font-size:15px}#authView .welcome-join{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:34px 40px;border-radius:18px;background:#e8edda}#authView .welcome-join h2{margin-bottom:12px}#authView .welcome-join p{margin-bottom:0}#authView .welcome-join .welcome-kicker{margin-bottom:10px}#authView .welcome-join>a{flex-shrink:0}#authView .welcome-footer{display:flex;gap:24px;flex-wrap:wrap;align-items:center;padding:36px 0;font-size:12px;color:var(--welcome-muted)}#authView .welcome-footer>span{margin-right:auto}
@media(max-width:1000px){#authView.welcome-page{padding:0 25px!important}#authView .welcome-hero{gap:28px;padding:46px 0}#authView h1{font-size:45px}#authView .welcome-steps{gap:20px}#authView .welcome-nav nav{gap:18px}}
@media(max-width:720px){#authView.welcome-page{padding:0 18px!important}#authView .welcome-nav{padding:18px 0;gap:12px}#authView .welcome-nav nav>a:not(.welcome-signin){display:none}#authView .welcome-brand{font-size:25px;gap:9px}#authView .welcome-brand span{font-size:10px;padding-left:10px;letter-spacing:2px}#authView .welcome-hero{grid-template-columns:1fr;gap:30px;padding:35px 0}#authView h1{font-size:44px;letter-spacing:-1.8px}#authView .welcome-lead{font-size:17px}#authView .welcome-hero-visual{max-width:540px}#authView .welcome-section-heading{display:block}#authView .welcome-section-heading>p{margin:18px 0 0;max-width:none}#authView .welcome-game-grid,#authView .welcome-steps,#authView .welcome-benefits{grid-template-columns:1fr}#authView .welcome-game-copy{padding:22px}#authView .welcome-steps{gap:18px}#authView .welcome-steps li>span{margin-bottom:8px}#authView .welcome-benefits{gap:16px;padding:24px}#authView .welcome-join{padding:28px;display:block}#authView .welcome-join>a{margin-top:22px}#authView .welcome-faq{margin-top:10px}#authView .welcome-footer{gap:14px}#authView .welcome-footer>span{width:100%}}
@media(max-width:380px){#authView h1{font-size:38px}#authView .welcome-actions>a{width:100%}#authView .welcome-points{gap:10px}#authView .welcome-signin{padding:8px 11px}}

#dirView .directory-about{display:inline-block;margin-top:10px;font-size:13px;font-weight:600}

.welcome-guide-link{display:block!important;margin-top:12px;font-size:13px;font-weight:600;text-underline-offset:4px}.welcome-guide-link:focus-visible{outline:3px solid #947124;outline-offset:4px}
