/* TVS Waitlist — Checkout Block & Countdown
 * Loaded as a proper WP stylesheet so Elementor / page builders
 * don't strip it when rendering shortcode output.
 * --tvs-brand is injected inline per-block as a style attribute.
 */

/* ── Countdown banner ─────────────────────────────────────────────────── */
.tvs-cd-banner{background:#1a1a18!important;padding:22px 28px!important;margin:0 0 28px!important;font-family:Helvetica,Arial,sans-serif!important;box-sizing:border-box!important;}
.tvs-cd-inner{display:flex!important;align-items:center!important;gap:32px!important;flex-wrap:wrap!important;}
.tvs-cd-left{flex:0 0 auto!important;}
.tvs-cd-right{flex:1!important;min-width:220px!important;}
.tvs-cd-eyebrow{margin:0 0 10px!important;font-size:11px!important;letter-spacing:1.5px!important;text-transform:uppercase!important;color:rgba(255,255,255,.45)!important;display:block!important;}
.tvs-cd-timer{display:flex!important;align-items:center!important;gap:6px!important;}
.tvs-cd-unit{text-align:center!important;}
.tvs-cd-num{display:block!important;font-size:34px!important;font-weight:700!important;color:var(--tvs-brand,#F1C349)!important;line-height:1!important;min-width:50px!important;font-family:Helvetica,Arial,sans-serif!important;}
.tvs-cd-label{display:block!important;font-size:10px!important;letter-spacing:1px!important;text-transform:uppercase!important;color:rgba(255,255,255,.35)!important;margin-top:2px!important;}
.tvs-cd-sep{font-size:26px!important;font-weight:700!important;color:rgba(255,255,255,.2)!important;margin-bottom:14px!important;line-height:1!important;}
.tvs-cd-msg{margin:0 0 10px!important;font-size:14px!important;line-height:22px!important;color:rgba(255,255,255,.7)!important;}
.tvs-cd-trust{margin:0!important;display:flex!important;gap:14px!important;flex-wrap:wrap!important;padding:0!important;list-style:none!important;}
.tvs-cd-trust span{font-size:12px!important;color:var(--tvs-brand,#F1C349)!important;font-weight:600!important;}
.tvs-cd-launch{margin:0!important;font-size:15px!important;font-weight:600!important;color:var(--tvs-brand,#F1C349)!important;}
.tvs-cd-block{margin-bottom:22px!important;}
.tvs-cd-block.is-compact .tvs-cd-num{font-size:26px!important;min-width:40px!important;}
.tvs-cd-block.is-compact .tvs-cd-sep{font-size:20px!important;margin-bottom:12px!important;}

/* ── Checkout block ───────────────────────────────────────────────────── */
.tvs-co-block{background:#1a1a18!important;font-family:Helvetica,Arial,sans-serif!important;margin:0 0 32px!important;color:#fff!important;box-sizing:border-box!important;}
.tvs-co-block *{box-sizing:border-box!important;}

/* Strip */
.tvs-co-strip{background:var(--tvs-brand,#F1C349)!important;padding:13px 28px!important;font-size:14px!important;line-height:21px!important;color:#1a1a18!important;font-family:Helvetica,Arial,sans-serif!important;}
.tvs-co-strip strong{font-weight:700!important;margin-right:4px!important;color:#1a1a18!important;}
.tvs-co-dot{display:inline-block!important;width:8px!important;height:8px!important;border-radius:50%!important;background:#1a1a18!important;margin-right:9px!important;vertical-align:middle!important;}

/* Body */
.tvs-co-body{display:flex!important;gap:40px!important;padding:28px!important;flex-wrap:wrap!important;}
.tvs-co-col{flex:1!important;min-width:260px!important;}
.tvs-co-col-side{border-left:1px solid rgba(255,255,255,.08)!important;padding-left:32px!important;}

/* Section headings */
.tvs-co-h{margin:0 0 14px!important;font-size:11px!important;letter-spacing:1.5px!important;text-transform:uppercase!important;color:var(--tvs-brand,#F1C349)!important;font-weight:700!important;display:block!important;font-family:Helvetica,Arial,sans-serif!important;}

/* Product image items */
.tvs-co-items{display:flex!important;gap:14px!important;margin:0 0 18px!important;}
.tvs-co-item{flex:1!important;margin:0!important;text-align:center!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(241,195,73,.18)!important;padding:14px 10px!important;}
.tvs-co-item-solo{max-width:180px!important;}
.tvs-co-item img{width:100%!important;max-width:100px!important;height:auto!important;margin:0 auto 10px!important;display:block!important;}
.tvs-co-item figcaption{display:block!important;}
.tvs-co-item figcaption strong{display:block!important;font-size:12px!important;color:var(--tvs-brand,#F1C349)!important;margin-bottom:3px!important;font-weight:700!important;}
.tvs-co-item figcaption span{display:block!important;font-size:11px!important;color:rgba(255,255,255,.4)!important;line-height:1.4!important;}

/* Benefit list */
.tvs-co-list{margin:0!important;padding:0!important;list-style:none!important;}
.tvs-co-list li{position:relative!important;padding-left:22px!important;margin-bottom:9px!important;font-size:14px!important;line-height:21px!important;color:rgba(255,255,255,.72)!important;font-family:Helvetica,Arial,sans-serif!important;}
.tvs-co-list li:before{content:"\2713"!important;position:absolute!important;left:0!important;color:var(--tvs-brand,#F1C349)!important;font-weight:700!important;}

/* Steps */
.tvs-co-steps{margin:0 0 18px!important;padding-left:18px!important;}
.tvs-co-steps li{font-size:13px!important;line-height:20px!important;color:rgba(255,255,255,.6)!important;margin-bottom:8px!important;}
.tvs-co-steps strong{color:#fff!important;display:block!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.5px!important;margin-bottom:2px!important;}

/* Refund note */
.tvs-co-refund{margin:0!important;font-size:13px!important;line-height:20px!important;color:rgba(255,255,255,.45)!important;border-top:1px solid rgba(255,255,255,.08)!important;padding-top:14px!important;}

/* Footer */
.tvs-co-foot{border-top:1px solid rgba(255,255,255,.08)!important;padding:14px 28px!important;display:flex!important;gap:22px!important;flex-wrap:wrap!important;}
.tvs-co-foot span{font-size:12px!important;color:var(--tvs-brand,#F1C349)!important;font-weight:600!important;}

/* Mobile */
@media(max-width:700px){
  .tvs-cd-banner{padding:18px 16px!important;}
  .tvs-cd-num{font-size:26px!important;min-width:38px!important;}
  .tvs-co-strip{padding:12px 18px!important;font-size:13px!important;line-height:20px!important;}
  .tvs-co-body{padding:20px 18px!important;gap:24px!important;}
  .tvs-co-col-side{border-left:none!important;border-top:1px solid rgba(255,255,255,.08)!important;padding-left:0!important;padding-top:22px!important;}
  .tvs-co-foot{padding:13px 18px!important;gap:14px!important;}
}
