/* September release: shared, borderless controls and compact game details. */
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,.button,.register,.secondary,.event-links a,.account-booking-actions a{
 border:0!important;box-shadow:none;letter-spacing:0;text-transform:none;
}
button:focus-visible,.button:focus-visible,.register:focus-visible,.secondary:focus-visible,.event-links a:focus-visible{
 outline:0!important;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;
}
button:disabled{cursor:default;opacity:.5}
button[hidden],.game[hidden],.game-group[hidden],[hidden].game-pagination{display:none!important}
.game[data-pointer-open]:focus{outline:none!important;box-shadow:none!important}
.game:focus-visible{outline:2px solid var(--green);outline-offset:4px;box-shadow:none;background:#fff}
.filter{background:#f0f3f1;color:#4b5850;box-shadow:none!important}
.filter[aria-pressed=true]{background:#e3f1e8;color:#21643d}
.dialog .secondary,.account-tab,.game-pagination button{background:#edf3ef;color:#286340}
.dialog .secondary:hover,.game-pagination button:hover{background:#e1ece5}
.dialog .register,.dialog .secondary{min-height:44px;border-radius:10px;font-size:14px;font-weight:600}
.form-error:empty{display:none!important}
.form-error:not(:empty){margin:12px 0!important;min-height:0!important}
#waitlist-form>.register{width:100%;margin-top:14px}
#account-dialog .account-panel{gap:0}
#account-dialog .account-panel>.register{margin-top:18px;width:100%}
#account-dialog .account-copy{font-size:14px;line-height:1.55;margin:12px 0 18px;color:#59665e}
#account-dialog .account-tabs{gap:6px;padding:4px;background:#f2f5f3;border-radius:10px}
#account-dialog .account-tab{background:transparent;border-radius:7px}
#account-dialog .account-tab.active{background:#dfede4;color:#205b36}
#account-dialog .account-switches button,#account-dialog .account-actions button{background:transparent;color:#286340}
#event-dialog{width:min(520px,calc(100% - 24px));border:0;border-radius:18px}
#event-dialog .dialog-inner{padding:20px}
#event-dialog .dialog-head{gap:12px;align-items:flex-start}
#event-dialog .dialog-close:focus-visible{background:#dcece1;color:#205b36;text-decoration:none}
#event-dialog .detail-venue-photo{width:52px;height:62px;border-radius:9px}
#event-dialog h2{font-size:21px;line-height:1.25;margin:0 0 6px;overflow-wrap:anywhere}
#event-dialog #detail-subtitle{font-size:13px;line-height:1.5;color:#56635b}
#event-dialog .dialog-head+.detail-copy{margin:12px 0 0;font-size:13px;color:#56635b}
#event-dialog .event-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:6px;margin:10px 0 14px}
#event-dialog .event-links a,#event-dialog .event-links #share-link{
 display:flex;align-items:center;justify-content:center;grid-column:auto;grid-row:auto;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:8px 6px;min-height:48px;
 background:#eef4f0;border:0;border-radius:8px;color:#2d6140;font:600 12px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:center;
}
#event-dialog .event-links input{grid-column:1/-1}
#event-dialog .detail-meta{border:0;background:#f2f6f3;border-radius:10px;padding:12px 2px;margin:12px 0;gap:10px 0}
#event-dialog .detail-meta div{border:0;padding:0 10px}
#event-dialog .detail-meta span{font-size:12px;color:#607066}
#event-dialog .detail-meta strong{font-size:13px;margin-top:3px}
#event-dialog .game-rules{margin:14px 0}
#event-dialog .game-rules h3{font-size:14px}
#event-dialog .game-rules ul{font-size:13px;line-height:1.5;color:#56635b;margin:8px 0;padding-left:17px}
#event-dialog .game-rules li{margin-top:5px}
#event-dialog .roster-disclosure{margin:14px 0;padding:12px 0}
#event-dialog .host-card{margin-top:12px;min-height:0}
#event-dialog .detail-host-photo{width:40px;height:40px;margin-right:10px;border:0}
#event-dialog>.join-options{display:flex;gap:8px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:0;background:#f7faf8}
#event-dialog>.join-options>button{flex:1;min-width:0;margin:0}
.roster{background:#edf6ef!important;border:0!important}
.roster h3{color:#286340}
.roster.team-b{background:#fff8db!important;border:0!important}
.roster.team-b h3{color:#765900}
.game-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin:20px 0 30px}
.game-pagination button{padding:10px 16px;min-height:42px;border-radius:9px;font-size:13px;font-weight:600}
#game-page-label{font-size:13px;color:#59665e;text-align:center}
.game-thumb.venue-placeholder{object-fit:contain;background:#f0f5f1;padding:8px}
.contact-intro{font-size:15px;line-height:1.6}
.contact-intro a{display:block;width:fit-content;max-width:100%;overflow-wrap:anywhere}
.contact-form{row-gap:16px}
.contact-form .form-error:empty{display:none!important}
.contact-form button{margin-top:0;justify-self:start;padding:10px 20px}
.site-footer{display:block!important;padding-top:24px;padding-bottom:28px;color:#59665e}
.footer-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:13px}
.footer-heading a{color:#286340;text-decoration:none;font-weight:600}
.footer-heading a:hover{text-decoration:underline}
.safety-notice{max-width:850px;font-size:12px;line-height:1.65;margin:14px 0 0}
.studio-view .toolbar>.segments{flex-wrap:wrap;gap:4px;background:#eff3f0;border-radius:10px;padding:4px}
.studio-view .segments button{font-size:13px;padding:9px 12px;background:transparent}
.studio-view .segments .selected{background:#dfeee4;color:#24613b}
.stripe-freshness{font-size:12px;color:#59665e;margin:8px 0 0}
.stripe-freshness.error{color:#a23535}
@media(max-width:700px){
 #event-dialog .dialog-inner{padding:16px}
 #event-dialog h2{font-size:19px}
 #event-dialog>.join-options{padding-inline:16px}
 #event-dialog .detail-meta{grid-template-columns:1fr 1fr}
 .game-pagination{gap:10px}
 .game-pagination button{padding-inline:12px}
 .game-info .game-address{font-size:12px;color:#59665e}
 .game-host{font-size:11px;color:#59665e}
 .privacy-note,#booking-dialog .privacy-note{font-size:13px;color:#59665e;line-height:1.5}
 .site-footer{padding-inline:16px}
 .studio-view .toolbar{flex-wrap:wrap;gap:12px}
}

/* Optional card summary and scalable player-capacity bar. */
.game-info .game-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;white-space:normal;width:100%;margin:2px 0 4px;font-size:12px;line-height:1.4;color:#59665e}
.game-info .game-description[hidden]{display:none!important}
.game-info .capacity-continuous{display:flex;gap:0;background:#e4eae6;border-radius:3px;overflow:hidden}
.game-info .capacity-continuous span{flex:none;min-width:0}

/* Compact overview: keep the host in view on a phone, with details on demand. */
#event-dialog .dialog-inner{padding:16px}
#event-dialog .dialog-head{padding-right:44px;gap:10px}
#event-dialog .detail-venue-photo{display:none}
#event-dialog h2{font-size:19px;line-height:1.22;margin-bottom:6px}
#event-dialog #detail-subtitle{font-size:12px;line-height:1.45}
#event-dialog .detail-location-actions{display:flex;align-items:center;gap:10px;margin:10px 0}
#event-dialog .detail-location-actions>.detail-copy{flex:1;min-width:0;margin:0;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
#event-dialog .event-links{display:flex;flex:0 0 auto;gap:4px;margin:0;flex-wrap:wrap;max-width:144px}
#event-dialog .event-links a,#event-dialog .event-links #share-link{width:44px;height:44px;min-height:44px;padding:11px;border-radius:10px;text-decoration:none}
#event-dialog .event-links svg{width:22px;height:22px;flex-shrink:0}
#event-dialog .event-links :is(a,button):focus-visible{background:#dcece1;outline:2px solid #286340!important;outline-offset:2px}
#event-dialog .event-links input{font-size:16px;flex-basis:100%}
#event-dialog .share-status{font-size:12px;color:#286340;margin:4px 0}
#event-dialog .share-status:empty{display:none}
#event-dialog .detail-meta{grid-template-columns:1fr 1.25fr .8fr;padding:10px 0;margin:10px 0;gap:0}
#event-dialog .detail-meta div{padding:0 8px}
#event-dialog .detail-meta span{font-size:11px}
#event-dialog .detail-meta strong{font-size:12px;line-height:1.4}
#event-dialog .detail-meta+.detail-copy{font-size:13px;line-height:1.45;margin:10px 0;overflow-wrap:anywhere}
#event-dialog .minimum-notice{font-size:12px;color:#56635b;margin:8px 0}
#event-dialog .game-rules{margin:0;padding:0;border:0}
#event-dialog .game-rules summary,#event-dialog .roster-disclosure summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;gap:8px;cursor:pointer;list-style:none;font-size:13px;font-weight:600}
#event-dialog .game-rules summary::-webkit-details-marker{display:none}
#event-dialog .game-rules summary:after{content:'+';font-size:20px;font-weight:400;color:#7c8980}
#event-dialog .game-rules[open] summary:after{content:'−'}
#event-dialog .game-rules ul{margin:0 0 10px}
#event-dialog .roster-disclosure{margin:0;padding:0;border-block:1px solid #e8ece9}
#event-dialog .host-card{margin:10px 0 0;min-height:40px}
#event-dialog .host-card strong{margin-top:2px;line-height:1.4;font-size:13px}
#event-dialog>.join-options{padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
#event-dialog>.join-options>button{font-size:13px;min-height:44px}
