/**
 * v115-additions.css
 * Size guide mobile bars, login/signup/2FA mobile fill, password toggles,
 * privacy policy, header logo, now-playing multi-platform.
 */

/* SIZE GUIDE — no white side bars on mobile */
.cb-size-guide { padding-left:0!important; padding-right:0!important; max-width:100%!important; overflow-x:hidden!important; }
.cb-size-guide .cb-page-header, .cb-size-guide .sg-group { padding-left:clamp(1rem,4vw,2.5rem)!important; padding-right:clamp(1rem,4vw,2.5rem)!important; box-sizing:border-box!important; }
.sg-table-wrap { overflow-x:auto!important; overflow-y:visible!important; margin:0!important; padding-left:clamp(1rem,4vw,2.5rem)!important; padding-right:clamp(1rem,4vw,2.5rem)!important; width:100%!important; box-sizing:border-box!important; }
.sg-table { min-width:420px!important; width:100%!important; }
.sg-table th,.sg-table td { padding:.6rem .7rem!important; font-size:clamp(.52rem,2vw,.82rem)!important; white-space:nowrap; }
@media(max-width:480px){
  .sg-gender-toggle{width:100%!important;}
  .cb-size-guide .sg-tab{flex:1!important;min-width:0!important;text-align:center!important;}
  .sg-table{min-width:300px!important;}
  .sg-table th,.sg-table td{padding:.45rem .5rem!important;font-size:.52rem!important;}
}

/* MOBILE FILL — all pages stretch to screen width */
.cb-page,.cb-static-page,.cb-signin-page,.cb-signup-page,.cb-2fa-page,.cb-contact-page,.cb-dashboard-page,.cb-privacy-page {
  width:100%!important; max-width:100%!important; box-sizing:border-box!important;
  padding-left:clamp(.9rem,4vw,2.5rem)!important; padding-right:clamp(.9rem,4vw,2.5rem)!important;
}

/* SIGN IN responsive */
.cb-signin-page .cb-signin-wrap,.cb-signin-page .woocommerce,.cb-signin-page .woocommerce-page { width:100%!important; max-width:100%!important; box-sizing:border-box!important; }
.cb-signin-grid { grid-template-columns:1fr!important; }
@media(min-width:800px){ .cb-signin-grid{ grid-template-columns:minmax(0,1fr) minmax(200px,280px)!important; } }
.cb-signin-page input[type="text"],.cb-signin-page input[type="email"],.cb-signin-page input[type="password"],
.woocommerce-form-login input,.woocommerce-form-register input {
  width:100%!important; max-width:100%!important; box-sizing:border-box!important;
  font-size:clamp(.68rem,2.5vw,.9rem)!important; padding:.55rem .75rem!important;
}
.woocommerce-form-login label,.woocommerce-form-register label,.woocommerce-form label { font-size:clamp(.58rem,2vw,.78rem)!important; }
.woocommerce button.button,.woocommerce input[type="submit"],.woocommerce-form .button {
  width:100%!important; font-size:clamp(.6rem,2vw,.8rem)!important; padding:.65rem 1rem!important; box-sizing:border-box!important;
}

/* SIGN UP responsive */
.cb-signup-page .cb-form-input { width:100%!important; max-width:100%!important; box-sizing:border-box!important; font-size:clamp(.68rem,2.5vw,.9rem)!important; }
.cb-signup-page .cb-form-row--2 { grid-template-columns:1fr!important; }

/* 2FA responsive */
.cb-2fa-form { flex-direction:row!important; flex-wrap:wrap!important; gap:8px!important; justify-content:center!important; }
.cb-2fa-input { font-size:clamp(1rem,5vw,1.4rem)!important; width:clamp(120px,40vw,160px)!important; padding:clamp(8px,2.5vw,12px) 8px!important; }
.cb-2fa-btn { font-size:clamp(.62rem,2.5vw,.78rem)!important; padding:clamp(8px,2.5vw,12px) clamp(12px,4vw,22px)!important; }
@media(max-width:360px){ .cb-2fa-form{flex-direction:column!important;align-items:stretch!important;} .cb-2fa-input,.cb-2fa-btn{width:100%!important;} }

/* CONTACT responsive */
.cb-contact-grid { display:grid!important; grid-template-columns:1fr!important; gap:2rem!important; }
@media(min-width:760px){ .cb-contact-grid{ grid-template-columns:minmax(0,1.6fr) minmax(180px,1fr)!important; } }
.cb-contact-page input,.cb-contact-page textarea,.cb-contact-page select { width:100%!important; max-width:100%!important; box-sizing:border-box!important; font-size:clamp(.68rem,2.5vw,.9rem)!important; }

/* PASSWORD TOGGLE — right-side button, consistent across all forms */
.cb-pw-wrap { position:relative!important; display:block!important; }
.cb-pw-wrap input[type="password"],.cb-pw-wrap input[type="text"] { width:100%!important; padding-right:2.4rem!important; box-sizing:border-box!important; }
.cb-pw-toggle {
  position:absolute!important; right:.5rem!important; top:50%!important; transform:translateY(-50%)!important;
  background:none!important; border:none!important; cursor:pointer!important;
  font-size:.8rem!important; color:#bbb!important; padding:0!important; line-height:1!important;
  transition:color .15s!important; z-index:2!important; user-select:none;
}
.cb-pw-toggle:hover,.cb-pw-toggle[data-visible="true"] { color:var(--cb-hamburger-pink,#ff4fa3)!important; }

/* WC password fields */
.woocommerce .password-input { position:relative!important; }
.woocommerce .password-input input { padding-right:2.4rem!important; }

/* PRIVACY POLICY */
.cb-privacy-page { max-width:820px!important; margin:0 auto!important; }
.cb-privacy-body h2 { font-size:clamp(.7rem,2vw,.92rem)!important; font-weight:700!important; margin:1.8rem 0 .5rem!important; color:var(--cb-color-heading,#333)!important; }
.cb-privacy-body p,.cb-privacy-body li { font-size:clamp(.56rem,1.5vw,.72rem)!important; line-height:1.7!important; color:#555!important; }
.cb-privacy-body ul { padding-left:1.4rem!important; }
.cb-privacy-body a { color:var(--cb-hamburger-pink,#ff4fa3)!important; }

/* HEADER LOGO — no clip at bottom */
.cb-site-brand,.cb-brand-link,#headerLogoDiv { overflow:visible!important; }

/* FOOTER */
.cb-site-footer {
  text-align: center;
  padding: 2rem clamp(.9rem,4vw,2.5rem) 3rem;
  border-top: 1px solid var(--cb-border-soft, #eee);
  margin-top: 2rem;
  font-family: 'JetBrains Mono', monospace;
}
.cb-footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .4rem 1.2rem;
  margin-bottom: .8rem;
}
.cb-footer-links a {
  font-size: clamp(.44rem, 1.2vw, .56rem);
  color: var(--cb-soft, #888);
  text-decoration: none;
  letter-spacing: .04em;
}
.cb-footer-links a:hover { color: var(--cb-hamburger-pink, #ff4fa3); }
.cb-footer-copy {
  font-size: clamp(.4rem, 1.1vw, .5rem);
  color: #bbb;
  margin: 0;
}
