/* Keep the invitation path short, with optional choices behind disclosures. */
#multiplayer{width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:26px;scroll-padding:18px}
#multiplayer h1{font-size:37px;margin:4px 0 10px;line-height:1.05}
#multiplayer>.data-note{margin:0 0 18px;padding:0;border:0;font-size:12px;line-height:1.5}
#lobby-identity{margin:0 0 14px;border:2px solid #91a187;padding:0 12px;background:#f0f1e3}
#lobby-identity summary{padding:13px 0;font-size:12px;font-weight:700;overflow-wrap:anywhere}
#lobby-identity[open]{padding-bottom:12px}
.disclosure-action{float:right;font-size:11px;font-weight:600;color:#496a50;margin-left:10px;text-decoration:underline;text-underline-offset:3px}
#multiplayer summary{cursor:pointer;min-height:44px}
#multiplayer summary:focus-visible,#share-panel button:focus-visible,#share-panel input:focus-visible,#entry-share:focus-visible{outline:3px solid #b76735;outline-offset:3px}
#host-settings{padding:14px;margin:0 0 14px}
#host-city-choice{margin-bottom:18px}
#host-city-choice summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}
#host-city-choice summary::-webkit-details-marker{display:none}
#host-city-choice summary>span:first-child{min-width:0}
#host-city-choice small{display:block;font:800 9px var(--px-micro,monospace);letter-spacing:.7px;margin-bottom:7px;color:#53695a}
#host-city-summary{display:block;font-size:16px;line-height:1.4;overflow-wrap:anywhere}
#host-city-choice .disclosure-action{float:none;flex:none;margin:0}
#host-cities{margin-top:10px}
#multiplayer .visibility-note{margin:12px 0 16px;font-size:11px}
#host-options{border-top:1px solid #38534630}
#host-options summary{padding:15px 0 1px;font-size:12px;font-weight:700}
#host-options-summary{float:right;font-size:11px;font-weight:500;color:#53695a}
#multiplayer .lobby-create-footer{position:sticky;bottom:-26px;padding:12px 0 18px;background:var(--px-paper,#fff9e8);z-index:2}
#multiplayer .lobby-create-footer .primary{margin:0;min-height:48px;font-size:15px}
.lobby-create-footer>small{display:block;margin-top:10px;font-size:10px;text-align:center;color:#53695a}
#multiplayer .private-room-label{margin:4px 0 10px;line-height:1.5}
#multiplayer .join-row{gap:8px}
#multiplayer #room-code{font-size:14px;letter-spacing:0;text-transform:none;min-height:48px}
#room-code[aria-invalid=true]{outline:2px solid #a65246;outline-offset:2px}
#multiplayer #join-room{font-size:12px;padding:10px 14px;min-height:48px}
#multiplayer #room-message{line-height:1.5;margin:12px 0;color:#805e34}
#multiplayer #room-message:empty{display:none}
#multiplayer #public-rooms{margin-top:24px}
.public-room-create{font-size:12px!important;min-height:44px}
#multiplayer[data-intent=join] #room-connected{display:none}
#multiplayer[data-intent=create] #room-connected{display:none}
#multiplayer .host-lighting span{font-size:12px}
#multiplayer .host-visibility small{font-size:10px}
/* The poster wordmark replaces the old title and decorative mark. */
#entry-lobby{background:#fff9e8;background-image:none}
#entry-lobby #entry-title{width:min(100%,420px);margin:18px auto 20px;font-size:0;line-height:1;text-shadow:none}
.game-logo{display:block;width:100%;height:auto;user-select:none}
.brand .game-logo{width:168px}
#entry-lobby .entry-reassurance{font-size:10px;color:#53695a;margin:20px 0 0;line-height:1.5}
#entry-lobby .entry-solo{min-height:44px;margin:12px 9px 0}
#share-room>small{display:block}
#share-panel{width:min(460px,calc(100vw - 24px));padding:28px;max-height:calc(100dvh - 28px)}
#share-panel [hidden],.leaderboard [hidden]{display:none!important}
#share-panel h1{font-size:38px;line-height:1.05;margin:12px 0}
.share-mark{display:grid;place-items:center;width:48px;height:48px;font-size:32px;background:#efd5e1;border:2px solid #385346;box-shadow:3px 3px #385346;margin:18px 0}
#share-description{font-size:13px;line-height:1.6;margin:12px 0}
#share-context{padding:11px 13px;background:#e6edd8;border:1px solid #8fa17b;font-size:12px;font-weight:700;line-height:1.5}
#invite-link{width:100%;padding:13px 10px;font-size:14px;min-height:46px;color:#29483b}
#share-panel .primary,#share-panel .secondary{min-height:46px;font-size:13px;margin:12px 0 0}
#invite-code-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;font-size:11px}
#invite-code{padding:10px 12px;min-height:44px;border:2px dashed #7c916f;background:#ecf0df;font:800 18px var(--px-micro,monospace);letter-spacing:3px;user-select:all}
#invite-status{font-size:12px;line-height:1.5;min-height:18px;color:#496a50;margin:12px 0 0}
#share-panel #invite-done{background:transparent;box-shadow:none;border:1px solid #38534630}
#share-panel .share-fineprint{font-size:10px;line-height:1.5;text-align:center;color:#53695a;margin:12px 0 0}
.leaderboard-sharing{display:flex;gap:8px}
.leaderboard-sharing button{flex:1;font-size:12px;min-height:44px}
@media(max-width:600px){
 #multiplayer{padding:22px 18px}#multiplayer h1{font-size:32px}
 #multiplayer .lobby-create-footer{bottom:-22px;padding-bottom:16px}
 #host-settings{padding:12px}#host-city-summary{font-size:14px}
 #share-panel{padding:24px 20px}#share-panel h1{font-size:34px}
 #share-room{min-width:52px}#share-room>small{font-size:6px;letter-spacing:.5px}
}
@media(max-width:360px){#multiplayer #join-room{padding:10px;font-size:11px}#multiplayer #room-code{font-size:12px}#lobby-identity summary{font-size:11px}.leaderboard-sharing{flex-direction:column;gap:0}}
