/* Thrive Bow Leaderboard Styles v1.4.5 */
/* Brand */
:root {
  --tb-primary: #E0CA83;
  --tb-accent:  #7C5B27;
  --tb-bg:      #000000;
  --tb-card:    #0b0b0b;
  --tb-text:    #f5f5f5;
  --tb-muted:   #a3a3a3;
  --tb-radius:  16px;
  --tb-shadow:  0 10px 24px rgba(0,0,0,.5);
  --tb-gstart:  #7C5B27;
  --tb-gend:    #E0CA83;
}

.tb-leaderboard.full-black,
html, body, #page, .site, .site-content, .wp-site-blocks, .entry-content, .container, .wrap { background: var(--tb-bg) !important; }

/* Title bigger (≈ +75%) */
.tb-leaderboard { color: var(--tb-text); width: 100%; margin: 0; padding: 1rem 0; }
.tb-lb-header.centered { display:flex; flex-direction: column; align-items: center; text-align: center; }
.tb-lb-title {
  font-size: clamp(3rem, 5vw, 4.2rem);  /* up from ~2.4rem */
  font-weight: 800;
  background: linear-gradient(90deg, var(--tb-gstart), var(--tb-gend));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: .6rem;
}

/* Controls */
.tb-lb-controls { display:flex; gap:.75rem; font-size:.9rem; color:var(--tb-muted); flex-wrap:wrap; justify-content:center; margin-bottom:1rem; }
.tb-lb-toggle select { background:#111; color:var(--tb-text); border:1px solid #282828; border-radius:10px; padding:.45rem .7rem; }

/* Challenge bigger (text only; buttons unchanged) */
.tb-lb-challenge-wrap { display:flex; justify-content:center; margin-bottom:1rem; }
.tb-lb-challenge { text-align:center; background:#0f0f0f; border:1px solid #1e1e1e; border-radius:12px; padding:.8rem 1rem; color:var(--tb-primary); font-weight:700; width:fit-content; min-width:300px; }
.tb-lb-challenge-text { font-size: clamp(1.75rem, 3.2vw, 2.8rem); } /* ~+75% */
.tb-lb-challenge-edit { display:none; gap:.5rem; justify-content:center; margin-top:.5rem; }
.tb-lb-challenge-input { background:#111; border:1px solid #282828; color:var(--tb-text); padding:.5rem .7rem; border-radius:10px; width:260px; }
.tb-lb-challenge-actions { display:flex; gap:.5rem; justify-content:center; }

/* Uniform buttons */
.tb-btn, .tb-lb-csv {
  display:inline-flex; align-items:center; justify-content:center;
  padding:.7rem 1.15rem; border-radius:12px; border:none; font-weight:700; text-decoration:none;
  background: linear-gradient(90deg, var(--tb-gstart), var(--tb-gend)); color:#000; box-shadow: var(--tb-shadow);
}
.tb-btn.tb-primary, .tb-lb-csv { background: linear-gradient(90deg, var(--tb-gstart), var(--tb-gend)); color:#000; }
.tb-btn:focus, .tb-lb-csv:focus { outline: none; }
.tb-btn:focus-visible, .tb-lb-csv:focus-visible { box-shadow: 0 0 0 3px rgba(224,202,131,.45), var(--tb-shadow); }
.tb-btn.tb-ghost { background: transparent; color: var(--tb-primary); border: 1px solid var(--tb-primary); }
.tb-btn.tb-danger { background: #b84545; color: #fff; border: 1px solid #b84545; } /* solid red; submit has no red outline */

/* Form layout: actions centered on a new row */
.tb-lb-form { background: var(--tb-card); padding: 1rem; border-radius: var(--tb-radius); box-shadow: var(--tb-shadow); margin: 0 auto 1rem; width:90%; max-width:900px; display:grid; grid-template-columns:1fr 1fr; gap:.6rem; }
.tb-lb-form label { display:flex; flex-direction:column; font-size:1rem; color:var(--tb-muted); }
.tb-lb-form input { padding:.7rem .8rem; border:1px solid #282828; background:#111; color:var(--tb-text); border-radius:10px; font-size:1rem; }
.tb-lb-actions { grid-column:1 / -1; display:flex; justify-content:center; }
.tb-lb-actions-inner { display:flex; gap:.6rem; align-items:center; justify-content:center; }
.tb-size-lg { font-size:1rem; padding:.75rem 1.25rem; }

.tb-lb-form .tb-lb-msg { grid-column:1/-1; text-align:center; color: var(--tb-muted); }

/* Table */
.tb-lb-table-wrap { background: var(--tb-card); border-radius: var(--tb-radius); box-shadow: var(--tb-shadow); overflow-x:auto; width:90%; max-width:900px; margin:0 auto; }
.tb-lb-table { width:100%; border-collapse:collapse; }
.tb-lb-table th, .tb-lb-table td { padding:1rem 1rem; border-bottom:1px solid #1f1f1f; text-align:left; }
.tb-lb-table th { color:var(--tb-primary); }
.tb-lb-table td { color:var(--tb-text); }

@media (max-width:900px){
  .tb-lb-form { grid-template-columns:1fr; }
}
