.club-login,.club-lobby,.club-game-results{background:#15261f;border:1px solid #736444;border-radius:12px;padding:16px;color:#eae7d9;text-align:left;box-sizing:border-box;max-width:100%;}
.club-login h2,.club-lobby h2{margin:0 0 12px;font-size:20px}.club-login input,.club-lobby input,.club-dialog select{width:100%;box-sizing:border-box;min-height:40px;margin:8px 0;background:#102018;color:#eee;border:1px solid #736444;border-radius:8px;padding:8px;font-size:16px}.club-login button,.club-lobby button,.club-dialog button{padding:8px 12px;margin:4px;min-height:36px;border-radius:8px;background:#2b4535;border:1px solid #8d794d;color:#eee;cursor:pointer}.club-login code{display:block;overflow-wrap:anywhere;font-size:18px;margin:16px 0}.club-guest .menu-play-options,.club-guest .dt-nav{display:none}.club-person{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:5px 0}.club-messages{max-height:190px;overflow:auto;overflow-wrap:anywhere;border-top:1px solid #736444;margin-top:12px}.club-messages p{margin:8px 0;font-size:14px}.club-active .menu-shell,.club-guest .menu-shell{height:auto;min-height:calc(100svh - 120px)}.club-active .menu-actions{padding-top:16px}.club-active .menu-spacer,.club-guest .menu-spacer{min-height:220px;flex:0 0 220px}.club-lobby{margin-top:16px;width:100%;max-width:720px}.club-account{display:flex;gap:8px;align-items:center;font-size:13px}.club-player #session-controls,.club-player #session-open,.club-player #session-invite,.club-player #session-close,.club-player #connection,.club-player #participants{display:none!important}.club-dialog{width:min(560px,90vw)}.club-dialog label{display:block}.club-player #panel-nav{display:none!important}
@media(max-width:720px){.club-active .menu-spacer,.club-guest .menu-spacer{min-height:150px;flex-basis:150px}.club-account{position:static}.club-lobby{padding:12px}.club-active .menu-shell{padding-bottom:20px}.club-player .deck-desktop-link{display:none!important}}
.club-player #owner,.club-player #admission{display:none!important}
.club-guest .dt-nav{display:none!important}.club-guest #panel-nav{display:none!important}

/* Account controls share the top row; navigation stays below on small screens. */
body.dt-tools .dt-tools-header:has(.club-account){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand account" "nav nav";padding-top:max(10px,env(safe-area-inset-top));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
body.dt-tools .dt-tools-header:has(.club-account) .dt-tools-brand{grid-area:brand;min-width:0;white-space:normal}
body.dt-tools .dt-tools-header:has(.club-account) .dt-tools-brand span{overflow-wrap:anywhere}
body.dt-tools .dt-tools-header:has(.club-account) .dt-nav{grid-area:nav;min-width:0;width:100%;justify-content:center}
body.dt-tools .dt-tools-header .club-account{grid-area:account;justify-self:end;position:static;min-width:0;max-width:100%;justify-content:flex-end}
.club-account span{min-width:0;overflow-wrap:anywhere;text-align:right}
.club-account button{flex:none;min-height:44px}
@media(min-width:1051px){body.dt-tools .dt-tools-header:has(.club-account){grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"brand nav account";padding-inline:max(24px,calc((100% - 1332px)/2))}}
@media(max-width:700px){body.dt-tools .dt-tools-header:has(.club-account){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.club-account{gap:6px;font-size:12px}.club-account button{padding:8px}.club-account span{max-width:100%}body.dt-tools .dt-tools-header:has(.club-account) .dt-tools-brand{gap:6px;font-size:16px}body.dt-tools .dt-tools-header:has(.club-account) .dt-tools-emblem{width:36px;height:36px}}

/* Let the document grow and scroll when lobby/forms exceed the visible viewport. */
body.dt-tools.menu-page{height:auto;min-height:100svh;min-height:100dvh;overflow:visible}
body.dt-tools.menu-page > main.menu-shell{flex:1 0 auto;height:auto;min-height:0;overflow:visible;box-sizing:border-box;padding-bottom:max(20px,env(safe-area-inset-bottom))}
body.dt-tools.menu-page:is(.club-active,.club-guest) .menu-shell{height:auto;min-height:0}
body.dt-tools.menu-page .menu-spacer{flex:1 0 clamp(80px,20svh,220px);min-height:clamp(80px,20svh,220px)}
body.dt-tools.menu-page .menu-actions{flex:none;min-width:0}
body.dt-tools > main{padding-bottom:max(24px,env(safe-area-inset-bottom))}
body.dt-tools .menu-dialog{box-sizing:border-box;max-height:calc(100svh - 24px);max-height:calc(100dvh - 24px);padding-bottom:max(16px,env(safe-area-inset-bottom))}
.club-login,.club-lobby{overflow-wrap:anywhere}

.club-beta-guide,.club-beta-note{padding:16px;border:1px solid #725d3e;border-radius:12px;background:#151b1de8;overflow-wrap:anywhere}.club-beta-guide h2{margin:0 0 8px}.club-beta-guide p{margin:8px 0}.club-beta-note a{display:block;margin-top:8px}.club-deck-summary{margin:4px 0 12px}.club-dialog details{max-width:100%;overflow-wrap:anywhere}.club-dialog details p{margin:4px 0}
.club-beta.club-player :is(#owner,#admission,#session-controls,#session-open,#session-invite,#session-close,#connection,#participants):not([hidden]){display:block!important}
.club-dialog input,.club-dialog textarea{box-sizing:border-box;max-width:100%;width:100%;min-height:44px;background:#102018;color:#eee;border:1px solid #736444;border-radius:8px;padding:8px;font:inherit}
.club-dialog textarea{min-height:100px;resize:vertical}.club-dialog input[type=checkbox],.club-login input[type=checkbox]{width:20px;min-height:20px;height:20px;margin:8px;vertical-align:middle}.club-dialog a{color:#e1c892}.club-dialog details{margin:16px 0}.club-login label{display:block}.club-dialog button{max-width:100%;white-space:normal;min-height:44px}
@media(max-width:400px){body.dt-tools .dt-tools-header:has(.club-account){grid-template-columns:1fr;grid-template-areas:"brand" "account" "nav"}.club-account{flex-wrap:wrap;justify-self:start!important}.club-account span{text-align:left}}
