/* The lobby uses the real game sprites and shared public header/footer. */
body:has(#mainContent.home-child-v147){background:#fcf9f0;color:#123f32}
#lobby.page:has(#mainContent.home-child-v147){width:100%;max-width:none;margin:0;padding:0;overflow-x:clip}
.page>main#mainContent.home-child-v147{--child-green:#006b47;--child-ink:#123f32;--child-line:#e8dcc2;--child-paper:#fcf9f0;display:block;max-width:none;width:100%;padding:0;margin:0;background:var(--child-paper);color:var(--child-ink)}
#mainContent.home-child-v147 [hidden]{display:none!important}
.page #mainContent.home-child-v147>.home-layout-slot{width:min(940px,92%);margin:0 auto}
.page #mainContent.home-child-v147>.home-layout-slot[data-home-block=howto]{margin-block:15px 18px}
#mainContent.home-child-v147 .child-home-header{margin:0;width:100%;max-width:none}
#mainContent.home-child-v147 .child-home-adventure{text-align:center;padding:15px 0 0}
#mainContent.home-child-v147 .child-home-welcome h1{font-size:clamp(28px,3.2vw,40px);font-weight:900;line-height:1.35;margin:0;color:var(--child-ink);letter-spacing:0}
#mainContent.home-child-v147 .child-home-welcome>p{margin:1px 0 0;font-size:18px;line-height:1.65}
#mainContent.home-child-v147 .child-home-welcome .child-returning-member{font-size:14px;margin-top:6px;color:#507259}
#mainContent.home-child-v147 .child-access-choices{display:flex;align-items:stretch;justify-content:center;gap:16px;width:min(100%,620px);max-width:none;margin:16px auto 12px}
#mainContent.home-child-v147 .child-access-choices .access-choice{display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:91px;max-width:200px;padding:9px 10px;border:1.5px solid var(--child-line);border-radius:19px;background:#fdfaf3;color:var(--child-ink);font:inherit;text-align:center;text-decoration:none;box-shadow:none;position:relative}
#mainContent.home-child-v147 .child-access-choices .access-choice:hover{border-color:#448568;background:#f3f7e9}
#mainContent.home-child-v147 .child-access-choices .access-choice[aria-pressed=true]{border:2px solid var(--child-green);background:linear-gradient(110deg,#e4f7d8,#edfae4)}
#mainContent.home-child-v147 .access-choice-icon{display:block;width:29px;height:29px;flex:none}
#mainContent.home-child-v147 .access-choice-label{font-size:17px;line-height:1.45}
#mainContent.home-child-v147 .access-choice small{font-size:12px;line-height:1.35;color:#305843}
#mainContent.home-child-v147 .access-selected-check{position:absolute;right:-8px;top:-8px;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;border:3px solid var(--child-paper);background:var(--child-green);color:white;font-size:20px;line-height:1}
#mainContent.home-child-v147 .child-access-choices.is-member{margin-block:10px}
#mainContent.home-child-v147 .child-access-choices.is-member .access-login{flex-direction:row;gap:9px;max-width:none;flex:0 1 auto;min-height:44px;padding:7px 19px;border-radius:30px;background:#eef5e7}
#mainContent.home-child-v147 .child-access-choices.is-member .access-choice-icon{width:22px;height:22px}
#mainContent.home-child-v147 .child-access-choices.is-member .access-choice-label{font-size:14px}
#mainContent.home-child-v147 .platform-notice{max-width:600px;margin:12px auto;padding:10px 14px;border-radius:12px;background:#f7edd9;color:#684711;font-size:14px;line-height:1.6}
#mainContent.home-child-v147 .platform-notice:empty{display:none}
#mainContent.home-child-v147 .child-home-roster{margin:0;padding:0;min-width:0}
#mainContent.home-child-v147 .child-home-roster>h2{font-size:26px;font-weight:850;line-height:1.5;margin:0 0 2px;color:var(--child-ink)}
#mainContent.home-child-v147 .child-carousel-shell{position:relative;max-width:880px;margin:0 auto;padding:0 54px}
#mainContent.home-child-v147 .characters{--hero-gap:13px;display:flex;align-items:stretch;gap:var(--hero-gap);width:100%;min-width:0;margin:0;padding:12px 1px 4px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;scroll-behavior:smooth}
#mainContent.home-child-v147 .characters::-webkit-scrollbar{display:none}
#mainContent.home-child-v147 .char-card{position:relative;flex:0 0 calc((100% - 3 * var(--hero-gap))/4);width:auto;min-width:0;min-height:210px;aspect-ratio:auto;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 3px 6px;border:1.5px solid var(--child-line);border-radius:20px;background:#fdfaf3;overflow:visible;box-shadow:none;color:var(--child-ink);scroll-snap-align:start;transform:none;transition:background .18s,border-color .18s}
#mainContent.home-child-v147 .char-card:hover{border-color:#70a382;background:#f3f7e9;transform:none;box-shadow:none}
#mainContent.home-child-v147 .char-card.selected{border:2px solid var(--child-green);padding:0 3px 6px;background:linear-gradient(125deg,#e5f8d8,#effbe7);box-shadow:none;transform:none}
#mainContent.home-child-v147 .char-card.selected:after{content:'✓';position:absolute;right:-7px;top:-8px;display:grid;place-items:center;width:30px;height:30px;border:3px solid var(--child-paper);border-radius:50%;background:var(--child-green);color:white;font-size:21px;line-height:1;z-index:1}
#mainContent.home-child-v147 .char-card:disabled{opacity:1;filter:none;cursor:default}
#mainContent.home-child-v147 .char-card:disabled:before{content:'🔒';position:absolute;top:8px;left:8px;font-size:12px;line-height:1;padding:4px;border-radius:50%;background:#f1eadb;z-index:1}
#mainContent.home-child-v147 .sprite-preview{display:block;flex:0 0 182px;min-height:0;max-width:100%;width:100%;height:182px;object-fit:contain;margin:0;pointer-events:none}
#mainContent.home-child-v147 .char-copy{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;padding:0;margin:0;line-height:1.4}
#mainContent.home-child-v147 .char-copy strong{font-size:17px;font-weight:800;white-space:normal;overflow-wrap:anywhere;margin:0}
#mainContent.home-child-v147 :is(.char-copy small,.char-tag,.char-stats){display:none}
#mainContent.home-child-v147 .child-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:48px;height:54px;padding:0;border:1.5px solid var(--child-line);border-radius:50%;background:#faf1dd;color:var(--child-ink);box-shadow:0 4px 12px #785b2312;cursor:pointer;z-index:2}
#mainContent.home-child-v147 .child-carousel-arrow:hover{background:#edf4e1;border-color:#81a47d}
#mainContent.home-child-v147 .child-carousel-arrow:disabled{opacity:.35;cursor:default}
#mainContent.home-child-v147 .child-carousel-previous{inset-inline-start:0}
#mainContent.home-child-v147 .child-carousel-next{inset-inline-end:0}
#mainContent.home-child-v147:dir(rtl) .child-carousel-arrow svg{transform:rotate(180deg)}
#mainContent.home-child-v147 .child-carousel-count{margin:4px 0 0;font-size:12px;line-height:1.7;color:#45654e;font-variant-numeric:tabular-nums}
#mainContent.home-child-v147 .guest-note{margin:2px auto 0;max-width:460px;color:#6e705c;background:none;padding:0;font-size:11px;line-height:1.7}
#mainContent.home-child-v147 .loading-banner{min-height:44px;display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap;font-size:13px;border:0;border-radius:12px;background:#f3eedf;padding:8px}
#mainContent.home-child-v147 .loading-banner.ready{display:none}
#mainContent.home-child-v147 #retryLoad{min-height:44px;border-radius:10px;padding:7px 14px;border:1px solid #c8b999;color:var(--child-ink);background:#fffdf8;font:inherit}
#mainContent.home-child-v147 #adventureAccess{padding:0;margin:8px 0 0}
#mainContent.home-child-v147 .child-play-access{display:flex;flex-direction:column;align-items:center;gap:0;margin:0;padding:0;border:0;background:none}
#mainContent.home-child-v147 #guestAccessPanel{max-width:100%;padding:0;margin:0}
#mainContent.home-child-v147 #playTermsRow{min-height:44px;display:flex;align-items:center;justify-content:center;gap:9px;margin:0;padding:0 8px;font-size:12px;line-height:1.6;background:none;border:0;color:#4e6652}
#mainContent.home-child-v147 #playTerms{width:20px;height:20px;flex:0 0 20px;margin:0;accent-color:var(--child-green);cursor:pointer}
#mainContent.home-child-v147 #playTermsRow a{display:inline-flex;min-height:44px;align-items:center;color:#275e43;text-underline-offset:3px}
#mainContent.home-child-v147 :is(.terms-status,.guest-access-status){font-size:12px;line-height:1.6;margin:0 0 8px}
#mainContent.home-child-v147 #startGame{display:flex;direction:ltr;align-items:center;justify-content:center;gap:11px;width:min(100%,365px);min-width:0;min-height:62px;margin:0;padding:10px 20px;border:1px solid #00633f;border-radius:34px;background:linear-gradient(110deg,#007447,#005f40);box-shadow:0 5px 14px #125c3515;color:#fffdf3;font-size:27px;font-weight:850;line-height:1.35;letter-spacing:0}
#mainContent.home-child-v147 #startGame:hover:not(:disabled){background:#075739;transform:translateY(-1px)}
#mainContent.home-child-v147 #startGame:disabled{opacity:.6;cursor:wait}
#mainContent.home-child-v147 #startGame>svg{flex:none}
#mainContent.home-child-v147 .child-jump-hint{display:flex;justify-content:center;align-items:center;gap:7px;margin:6px 0 0;font-size:13px;font-weight:700;line-height:1.7;color:#214c37}
#mainContent.home-child-v147 .child-howto{margin:0;border:1px solid var(--child-line);border-radius:17px;background:#f9f0dd;overflow:hidden;color:#54421f}
#mainContent.home-child-v147 .child-howto summary{display:flex;align-items:center;gap:12px;min-height:49px;padding:9px 17px;cursor:pointer;list-style:none;font-size:15px}
#mainContent.home-child-v147 .child-howto summary::-webkit-details-marker{display:none}
#mainContent.home-child-v147 .child-howto summary::marker{content:''}
#mainContent.home-child-v147 .child-howto-chevron{margin-inline-start:auto;font-size:22px;line-height:1}
#mainContent.home-child-v147 .child-howto[open] .child-howto-chevron{transform:rotate(180deg)}
#mainContent.home-child-v147 .child-howto-content{padding:0 18px 17px;text-align:start;font-size:14px;line-height:1.8}
#mainContent.home-child-v147 .child-howto-content p{margin:7px 0}
#mainContent.home-child-v147 .child-howto-keyboard{font-size:12px;color:#6c644e}
#mainContent.home-child-v147 .tutorial-start{min-height:44px;padding:8px 16px;border:1px solid #b9c9a8;border-radius:12px;background:#eff5e5;color:var(--child-ink);box-shadow:none;font-size:14px}
#mainContent.home-child-v147 :is(button,a,summary,input,[tabindex]):focus-visible{outline:3px solid #c68620;outline-offset:3px}
@media(min-width:1100px){#mainContent.home-child-v147 .child-carousel-shell{max-width:870px}#mainContent.home-child-v147 .char-card{min-height:222px}#mainContent.home-child-v147 .sprite-preview{height:194px;flex-basis:194px}}
@media(max-width:600px){
 .page #mainContent.home-child-v147>.home-layout-slot{width:100%}
 .page #mainContent.home-child-v147>.home-layout-slot[data-home-block=howto]{width:92%;margin-block:14px 14px}
 #mainContent.home-child-v147 .child-home-adventure{padding-top:11px}
 #mainContent.home-child-v147 .child-home-welcome{padding-inline:12px}
 #mainContent.home-child-v147 .child-home-welcome h1{font-size:29px}
 #mainContent.home-child-v147 .child-home-welcome>p{font-size:16px}
 #mainContent.home-child-v147 .child-home-welcome .child-returning-member{font-size:12px}
 #mainContent.home-child-v147 .child-access-choices{gap:9px;width:92%;margin:15px auto 12px}
 #mainContent.home-child-v147 .child-access-choices .access-choice{min-height:86px;border-radius:16px;padding:7px 4px}
 #mainContent.home-child-v147 .access-choice-label{font-size:16px}
 #mainContent.home-child-v147 .access-choice-icon{width:27px;height:27px}
 #mainContent.home-child-v147 .access-choice small{font-size:10px}
 #mainContent.home-child-v147 .child-home-roster>h2{font-size:23px;line-height:1.55}
 #mainContent.home-child-v147 .child-carousel-shell{width:100%;max-width:none;padding:0}
 #mainContent.home-child-v147 .characters{--hero-gap:14px;padding:12px calc((100% - 66%)/2) 5px;scroll-padding-inline:calc((100% - 66%)/2)}
 #mainContent.home-child-v147 .char-card{flex:0 0 calc((100vw - 0px) * .66);min-height:222px;scroll-snap-align:center;border-radius:20px}
 #mainContent.home-child-v147 .sprite-preview{height:194px;flex-basis:194px;min-height:0}
 #mainContent.home-child-v147 .char-copy strong{font-size:18px}
 #mainContent.home-child-v147 .child-carousel-arrow{width:44px;height:48px;background:#faf1e0ee;box-shadow:0 2px 12px #5e4a2420}
 #mainContent.home-child-v147 .child-carousel-previous{inset-inline-start:6px}
 #mainContent.home-child-v147 .child-carousel-next{inset-inline-end:6px}
 #mainContent.home-child-v147 .child-carousel-count{margin-top:3px}
 #mainContent.home-child-v147 .guest-note{font-size:10px;padding-inline:12px}
 #mainContent.home-child-v147 #adventureAccess{margin-top:4px;padding-inline:6%}
 #mainContent.home-child-v147 #startGame{min-height:59px;width:100%;font-size:25px;padding-inline:12px}
 #mainContent.home-child-v147 #playTermsRow{min-height:44px;font-size:11px}
 #mainContent.home-child-v147 .child-jump-hint{font-size:12px;margin-top:6px}
 #mainContent.home-child-v147 .child-howto summary{min-height:46px;font-size:14px;padding:8px 13px}
 #mainContent.home-child-v147 .platform-notice{margin-inline:4%}
 #mainContent.home-child-v147 .loading-banner{margin-inline:4%}
}
@media(max-width:350px){#mainContent.home-child-v147 .child-home-welcome h1{font-size:26px}#mainContent.home-child-v147 .child-home-welcome>p{font-size:14px}#mainContent.home-child-v147 .access-choice-label{font-size:14px}#mainContent.home-child-v147 .child-access-choices{gap:8px}#mainContent.home-child-v147 #startGame{font-size:22px}#mainContent.home-child-v147 .char-card{min-height:210px}#mainContent.home-child-v147 .sprite-preview{height:182px;flex-basis:182px;min-height:0}}
@media(prefers-reduced-motion:reduce){#mainContent.home-child-v147 .characters{scroll-behavior:auto}#mainContent.home-child-v147 :is(.char-card,.access-choice,#startGame){transition:none;animation:none}#mainContent.home-child-v147 #startGame:hover{transform:none}}

#mainContent.home-child-v147 #startGame>[data-home-start-label]{display:block;flex:0 1 auto;width:auto;height:auto;min-width:0;margin:0;padding:0;border-radius:0;background:transparent;color:inherit;font:inherit;line-height:1.35;white-space:nowrap}
