/*
 * TSO Clubhouse v4.6.0 — native TSO Theme compatibility layer.
 * This file is loaded after the shared Clubhouse framework and before
 * module-specific CSS. It styles the Clubhouse itself rather than fighting
 * the surrounding WordPress theme.
 */
body.tso-clubhouse-active .tso-clubhouse-page,
body.tso-clubhouse-active .tso-conversations-app{
  width:100%;
  max-width:none;
  margin:0;
}
body.tso-clubhouse-active .tso-clubhouse-wrap{
  width:min(1320px,calc(100% - 40px));
  max-width:1320px;
  margin-inline:auto;
}

/* National League Challenge: one coherent page shell. */
body.tso-clubhouse-active .tso-nlc-page{
  padding:28px 0 72px!important;
  background:radial-gradient(circle at 50% 0,#0d3562 0,#050033 48%,#020018 100%)!important;
}
body.tso-clubhouse-active .tso-nlc-page .tso-clubhouse-wrap{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.tso-clubhouse-active .tso-nlc-hero{
  min-height:260px;
  margin:0 0 16px;
  padding:42px 44px;
  border-radius:24px;
}
body.tso-clubhouse-active .tso-nlc-hero-copy{max-width:760px;padding-right:210px}
body.tso-clubhouse-active .tso-nlc-tabs{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  overflow:visible;
  gap:7px;
  padding:9px;
  margin:0 0 22px;
  box-shadow:0 12px 32px rgba(0,0,0,.24);
}
body.tso-clubhouse-active .tso-nlc-tabs a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  text-align:center;
  line-height:1.2;
}
body.tso-clubhouse-active .tso-nlc-dashboard{display:grid;gap:18px}
body.tso-clubhouse-active .tso-nlc-primary-card,
body.tso-clubhouse-active .tso-nlc-info-card,
body.tso-clubhouse-active .tso-nlc-round-head,
body.tso-clubhouse-active .tso-nlc-board,
body.tso-clubhouse-active .tso-nlc-office,
body.tso-clubhouse-active .tso-nlc-empty{
  margin:0;
  border-color:rgba(255,215,0,.34);
}
body.tso-clubhouse-active .tso-nlc-primary-card{padding:30px}
body.tso-clubhouse-active .tso-nlc-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}
body.tso-clubhouse-active .tso-nlc-stat-grid>div{min-height:105px;display:flex;flex-direction:column;justify-content:center}
body.tso-clubhouse-active .tso-nlc-btn,
body.tso-clubhouse-active .tso-nlc-sticky button{
  min-height:48px;
  border:2px solid #ffd700!important;
}
body.tso-clubhouse-active .tso-nlc-btn:hover,
body.tso-clubhouse-active .tso-nlc-btn:focus-visible,
body.tso-clubhouse-active .tso-nlc-sticky button:hover,
body.tso-clubhouse-active .tso-nlc-sticky button:focus-visible{
  background:#071d33!important;
  color:#ffd700!important;
}
body.tso-clubhouse-active .tso-nlc-board{overflow:hidden}
body.tso-clubhouse-active .tso-nlc-board>div{min-width:0}
body.tso-clubhouse-active .tso-nlc-rules-copy{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Private/member forms: readable controls without a white page shell. */
body.tso-clubhouse-active :is(.tso-clubhouse-form,.tso-form-aside) input,
body.tso-clubhouse-active :is(.tso-clubhouse-form,.tso-form-aside) select,
body.tso-clubhouse-active :is(.tso-clubhouse-form,.tso-form-aside) textarea{
  width:100%;
  background:#f7f9fc;
  color:#071d33;
  border:2px solid #c4cfdd;
  border-radius:10px;
}
body.tso-clubhouse-active :is(.tso-clubhouse-form,.tso-form-aside) input:focus,
body.tso-clubhouse-active :is(.tso-clubhouse-form,.tso-form-aside) select:focus,
body.tso-clubhouse-active :is(.tso-clubhouse-form,.tso-form-aside) textarea:focus{
  outline:3px solid rgba(255,215,0,.35);
  border-color:#ffd700;
}

@media(max-width:1050px){
  body.tso-clubhouse-active .tso-nlc-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
  body.tso-clubhouse-active .tso-nlc-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.tso-clubhouse-active .tso-nlc-hero-copy{padding-right:170px}
  body.tso-clubhouse-active .tso-nlc-hero-shrimpie{width:190px;height:190px}
}
@media(max-width:760px){
  body.tso-clubhouse-active .tso-nlc-page{padding:14px 0 50px!important}
  body.tso-clubhouse-active .tso-clubhouse-wrap{width:calc(100% - 20px)}
  body.tso-clubhouse-active .tso-nlc-hero{min-height:0;padding:28px 22px 210px}
  body.tso-clubhouse-active .tso-nlc-hero-copy{padding-right:0}
  body.tso-clubhouse-active .tso-nlc-hero-shrimpie{right:50%;transform:translateX(50%);bottom:-18px;width:200px;height:200px}
  body.tso-clubhouse-active .tso-nlc-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.tso-clubhouse-active .tso-nlc-primary-card{grid-template-columns:1fr;padding:22px}
  body.tso-clubhouse-active .tso-nlc-stat-grid{grid-template-columns:1fr 1fr}
  body.tso-clubhouse-active .tso-nlc-two-col,
  body.tso-clubhouse-active .tso-nlc-rules-copy{grid-template-columns:1fr}
  body.tso-clubhouse-active .tso-nlc-round-head{align-items:flex-start;gap:12px;flex-direction:column}
}
@media(max-width:430px){
  body.tso-clubhouse-active .tso-nlc-tabs{grid-template-columns:1fr}
  body.tso-clubhouse-active .tso-nlc-stat-grid{grid-template-columns:1fr}
}

/* v4.6.1 — shared, full-width Clubhouse layout on the TSO Theme. */
body.tso-clubhouse-active main,
body.tso-clubhouse-active .site-main,
body.tso-clubhouse-active .tso-main,
body.tso-clubhouse-active .entry-content{
  width:100%;
  max-width:none;
}
body.tso-clubhouse-active .entry-content{
  margin:0;
  padding:0;
}
body.tso-clubhouse-active .tso-clubhouse-page,
body.tso-clubhouse-active .tso-conversations-app{
  font-size:16px;
  line-height:1.55;
}
body.tso-clubhouse-active .tso-clubhouse-page img,
body.tso-clubhouse-active .tso-conversations-app img{
  max-width:100%;
  height:auto;
}
body.tso-clubhouse-active .tso-clubhouse-hero,
body.tso-clubhouse-active .tso-clubhouse-mini-hero{
  height:auto;
  min-height:0;
}
body.tso-clubhouse-active .tso-clubhouse-nav,
body.tso-clubhouse-active .tso-clubhouse-subnav{
  max-width:100%;
}
body.tso-clubhouse-active :is(.tso-clubhouse-grid,.tso-dashboard-grid,.tso-arcade-grid,.tso-leaderboard-grid){
  min-width:0;
}
body.tso-clubhouse-active :is(.tso-clubhouse-card,.tso-dashboard-card,.tso-arcade-card,.tso-leaderboard-card){
  min-width:0;
  overflow-wrap:anywhere;
}
@media (max-width:760px){
  body.tso-clubhouse-active .tso-clubhouse-wrap{width:calc(100% - 20px)!important}
  body.tso-clubhouse-active :is(.tso-clubhouse-hero,.tso-clubhouse-mini-hero){padding-left:20px;padding-right:20px}
  body.tso-clubhouse-active :is(.tso-clubhouse-grid,.tso-dashboard-grid,.tso-arcade-grid,.tso-leaderboard-grid){grid-template-columns:1fr}
}
.tso-feature-coming-soon{max-width:900px;margin:40px auto;padding:48px 30px;text-align:center;border:1px solid rgba(255,215,0,.45);border-radius:24px;background:linear-gradient(135deg,#071d33,#002366);color:#fff}.tso-feature-coming-soon>span{display:inline-block;padding:7px 12px;border-radius:999px;background:rgba(255,215,0,.14);color:#ffd700;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.tso-feature-coming-soon h1{color:#ffd700}.tso-nlc-tabs .tso-nlc-back{background:#071d33!important;color:#fff!important;border:1px solid rgba(255,215,0,.45)!important}.tso-nlc-tabs .tso-nlc-back:hover{background:#ffd700!important;color:#071d33!important}

/* v4.8.0 live beta notice */
.tso-clubhouse-beta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:14px 18px;border:1px solid rgba(255,215,0,.55);border-radius:16px;background:linear-gradient(135deg,rgba(255,215,0,.14),rgba(0,35,102,.82));color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.tso-clubhouse-beta div{display:grid;gap:3px}.tso-clubhouse-beta strong{color:#ffd700;font-size:1rem}.tso-clubhouse-beta span{line-height:1.45}.tso-clubhouse-beta a{flex:0 0 auto;display:inline-block;padding:10px 15px;border-radius:999px;background:#ffd700;color:#002366!important;text-decoration:none!important;font-weight:900}.tso-clubhouse-beta a:hover{background:#fff}
@media(max-width:700px){.tso-clubhouse-beta{align-items:flex-start;flex-direction:column}.tso-clubhouse-beta a{width:100%;text-align:center}}
