/* BTS Social Boost Pro – Front-end */
.bts-social-boost,.bts-mobile-bar{--bts-bg:#111827;--bts-accent:#5273db;box-sizing:border-box;font-family:inherit}
.bts-social-boost *,.bts-mobile-bar *{box-sizing:border-box}

/* Slim Top Social Bar — normal document flow, never floating over content */
.bts-mobile-bar.bts-top-social-bar{
  position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
  z-index:50!important;display:flex!important;align-items:center;gap:14px;width:100%!important;
  min-height:48px;margin:0!important;padding:6px clamp(16px,4vw,48px)!important;
  background:var(--bts-top-bg,#1f2937)!important;border:0!important;border-bottom:1px solid var(--bts-top-border,rgba(255,255,255,.10))!important;
  box-shadow:0 2px 10px rgba(0,0,0,.10)!important;overflow:hidden;
}
.bts-mobile-label{flex:0 0 auto;color:rgba(255,255,255,.78)!important;font-size:12px!important;font-weight:800!important;letter-spacing:.12em!important;text-transform:uppercase!important;white-space:nowrap}
.bts-mobile-bar .bts-social-links{margin-left:auto!important;display:flex!important;flex:0 1 auto;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;overflow-x:auto;scrollbar-width:none}
.bts-mobile-bar .bts-social-links::-webkit-scrollbar{display:none}
.bts-mobile-bar .bts-social-links a{flex:0 0 34px!important;width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;margin:0!important;border:1px solid var(--bts-top-border,rgba(255,255,255,.12))!important;border-radius:9px!important;background:var(--bts-top-icon-bg,rgba(255,255,255,.07))!important;color:var(--bts-top-icon,#fff)!important;text-decoration:none!important;display:flex!important;align-items:center!important;justify-content:center!important;box-shadow:none!important;transform:none!important}
.bts-mobile-bar .bts-social-links a:hover{background:var(--bts-top-icon-bg,rgba(255,255,255,.15))!important;filter:brightness(1.15);transform:none!important;box-shadow:none!important}
.bts-mobile-bar .bts-social-links a span{font-size:17px!important;line-height:1!important}.bts-mobile-bar .bts-social-links a em{display:none!important}

.bts-social-hub{padding:55px 20px;background:#f5f7fb}.bts-social-inner{max-width:900px;margin:auto;text-align:center}.bts-social-inner h2{font-size:32px;margin:8px 0 24px}.bts-social-links{display:flex;gap:10px;flex-wrap:wrap}.hub-links{justify-content:center}.bts-social-links a{text-decoration:none;color:#182033;background:#fff;border:1px solid #e5e8ee;padding:12px 16px;border-radius:12px;display:flex;align-items:center;gap:8px;transition:.2s}.bts-social-links a:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.1)}.bts-social-links em{font-style:normal;font-weight:650}
.bts-social-cta{padding:55px 20px;background:linear-gradient(135deg,#10172a,#263b69);color:#fff;text-align:center}.bts-social-cta>div{max-width:650px;margin:auto}.bts-social-cta h2{font-size:32px;margin:8px 0}.bts-social-cta p{opacity:.8}.bts-cta-button{display:inline-block;margin-top:10px;padding:13px 20px;background:#fff;color:#111827;border-radius:10px;text-decoration:none;font-weight:700}.bts-eyebrow{font-size:11px;font-weight:800;letter-spacing:1.5px}
@media(max-width:700px){.bts-mobile-bar.bts-top-social-bar{min-height:46px;padding:5px 14px!important;gap:10px}.bts-mobile-label{font-size:11px!important}.bts-mobile-bar .bts-social-links{gap:6px!important}.bts-mobile-bar .bts-social-links a{flex-basis:34px!important;width:34px!important;height:34px!important}.bts-social-inner h2,.bts-social-cta h2{font-size:25px}}


/* BTS template integration contract — sections inherit the active BTS template palette. */
.bts-social-template-slot{width:100%;clear:both}
.bts-social-template-slot .bts-social-hub{background:var(--bts-light,#f3f8f8);color:var(--bts-text,#3b4a4f);padding:72px 20px}
.bts-social-template-slot .bts-social-inner{max-width:1180px}
.bts-social-template-slot .bts-social-inner h2{font-family:var(--bts-heading-font,inherit);color:var(--bts-dark,#102a35);font-size:clamp(32px,4vw,54px);line-height:1.12}
.bts-social-template-slot .bts-eyebrow{color:var(--bts-primary,#0f6670)}
.bts-social-template-slot .hub-links a{border-radius:var(--bts-radius,18px);border-color:color-mix(in srgb,var(--bts-primary,#0f6670) 18%,#fff);color:var(--bts-dark,#102a35)}
.bts-social-template-slot .hub-links a:hover{border-color:var(--bts-primary,#0f6670)}
.bts-social-template-slot .bts-social-cta{background:linear-gradient(135deg,var(--bts-dark,#102a35),var(--bts-primary,#0f6670));padding:72px 20px}
.bts-social-template-slot .bts-cta-button{border-radius:var(--bts-button-radius,var(--bts-radius,18px));color:var(--bts-dark,#102a35)}
.bts-floating-review{position:fixed;right:18px;bottom:82px;z-index:9999;display:inline-flex;align-items:center;gap:9px;padding:12px 16px;border-radius:999px;background:var(--bts-primary,#0f6670);color:#fff!important;text-decoration:none!important;font:700 14px/1 var(--bts-body-font,inherit);box-shadow:0 12px 32px rgba(0,0,0,.22);transition:transform .2s ease,filter .2s ease}
.bts-floating-review:hover{transform:translateY(-2px);filter:brightness(1.06)}
/* Keep clear of common bottom-right "back to top" controls used by WordPress themes. */
body.admin-bar .bts-floating-review{bottom:82px}
@media(max-width:700px){.bts-social-template-slot .bts-social-hub,.bts-social-template-slot .bts-social-cta{padding:54px 16px}.bts-floating-review{right:14px;bottom:92px;padding:11px 14px}.bts-floating-review span{display:none}.bts-floating-review{width:48px;height:48px;justify-content:center;padding:0;font-size:20px}}


/* v1.5.0 display styles */
.bts-social-hub.bts-style-minimal{background:#fff;padding:44px 20px;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}
.bts-social-hub.bts-style-minimal .hub-links{gap:16px}.bts-social-hub.bts-style-minimal .hub-links a{padding:6px 2px;border:0;background:transparent;border-radius:0;box-shadow:none;font-weight:700;color:inherit}.bts-social-hub.bts-style-minimal .hub-links a:hover{transform:none;color:var(--bts-primary,#0f6670);box-shadow:none}.bts-social-hub.bts-style-minimal .hub-links a span{font-size:20px}
.bts-social-hub.bts-style-classic{background:#f0f3f7}.bts-social-hub.bts-style-classic .hub-links{gap:15px}.bts-social-hub.bts-style-classic .hub-links a{width:56px;height:56px;padding:0;border-radius:50%;justify-content:center;background:#172033;color:#fff;border-color:#172033}.bts-social-hub.bts-style-classic .hub-links a em{display:none}.bts-social-hub.bts-style-classic .hub-links a:hover{transform:translateY(-3px) scale(1.03)}
.bts-floating-review-left{left:18px;right:auto}.bts-floating-review-right{right:18px;left:auto}
@media(max-width:700px){.bts-floating-review-left{left:14px;right:auto}.bts-floating-review-right{right:14px;left:auto}.bts-floating-review-left{bottom:92px}.bts-social-hub.bts-style-classic .hub-links a{width:50px;height:50px}}

.bts-floating-review{border:0;cursor:pointer}.bts-review-modal{position:fixed;inset:0;z-index:10000;display:none}.bts-review-modal.is-open{display:block}.bts-review-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}.bts-review-dialog{position:relative;z-index:1;width:min(92vw,420px);margin:12vh auto;background:#fff;border-radius:22px;padding:28px;text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.3);font-family:var(--bts-body-font,inherit)}.bts-review-dialog h3{margin:8px 0;font-size:24px;color:#1f2937}.bts-review-dialog p{margin:0 0 20px;color:#64748b;line-height:1.55}.bts-review-star{font-size:28px}.bts-review-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:28px;color:#64748b;cursor:pointer}.bts-review-options{display:grid;gap:10px}.bts-review-options a{display:block;padding:14px 16px;border-radius:12px;background:#0f6670;color:#fff!important;text-decoration:none!important;font-weight:700}.bts-review-later{margin-top:16px;border:0;background:transparent;color:#64748b;cursor:pointer;font:inherit}.bts-review-later:hover{text-decoration:underline}


/* === v1.5.6 MOBILE REVIEW INTERACTION HARD FIX ===
   The floating review control belongs to this plugin and must remain a real
   touch target even when a theme uses fixed mobile CTA/back-to-top layers. */
.bts-floating-review{
  position:fixed !important;
  z-index:2147483646 !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
  -webkit-tap-highlight-color:transparent;
  -webkit-user-select:none;
  user-select:none;
  isolation:isolate;
  transform:translateZ(0);
}
.bts-review-modal{z-index:2147483647 !important;}
@media (max-width:700px){
  .bts-floating-review{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    min-height:52px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
  }
}


/* === v1.5.11 MOBILE REVIEW FINE POSITION FIX === */
.bts-floating-review{ -webkit-touch-callout:none; touch-action:manipulation !important; }
@media(max-width:700px){
  /* Lift the review button slightly to clear the mobile CTA bar while preserving
     comfortable separation from the Back to Top control above. */
  .bts-floating-review{bottom:74px !important; z-index:2147483646 !important;}
  .bts-review-modal,.bts-review-modal *{pointer-events:auto !important;}
}

/* === v1.5.10 SINGLE-PATH MOBILE TAP FIX ===
   The plugin owns the review trigger interaction. Keep a stable native touch
   target and avoid synthetic click forwarding from theme-level scripts. */
@media(max-width:700px){
  .bts-floating-review{
    -webkit-appearance:none!important;
    appearance:none!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
  }
}
/* Keep an enabled Top Social Bar visible even before profiles are connected. */
.bts-top-social-placeholder{color:rgba(255,255,255,.72)!important;font-size:12px!important;font-weight:650!important;white-space:nowrap}
.bts-top-social-empty .bts-social-links{margin-left:auto!important}
