/* 27.1 In-flow contextual help widget. Navy/gold, matches the facelift.
   Floating button bottom-right on shop/category/product/cart/checkout; opens a
   small panel of page-specific Q&A + call/message shortcuts + Winner's Circle link. */
.rbp-help{
  --navy:#15233d; --navy2:#1a2c4a; --gold:#c89a44; --gold-bright:#e3bd6a;
  --line:#e2d8c4; --paper:#faf6ee; --ink:#1a2130; --light:#eef1f6;
  position:fixed; right:22px; bottom:22px; z-index:99990;
  font-family:inherit;
}

/* --- Floating button --- */
.rbp-help-fab{
  display:inline-flex; align-items:center; gap:9px; cursor:pointer;
  background:var(--gold); color:#0d1626; border:1.5px solid var(--gold);
  font-weight:800; font-size:.95rem; letter-spacing:.01em; line-height:1;
  padding:13px 20px 13px 16px; border-radius:999px;
  box-shadow:0 6px 20px rgba(21,35,61,.28);
  transition:background .15s ease, transform .12s ease, box-shadow .15s ease;
}
.rbp-help-fab:hover{ background:var(--gold-bright); border-color:var(--gold-bright); transform:translateY(-1px); box-shadow:0 10px 26px rgba(21,35,61,.34); }
.rbp-help-fab-q{
  display:inline-flex; align-items:center; justify-content:center;
  width:24px; height:24px; border-radius:50%;
  background:var(--navy); color:#fff; font-weight:800; font-size:1rem;
}
/* When the panel is open, the button steps back (panel sits where it was) */
.rbp-help.is-open .rbp-help-fab{ opacity:0; pointer-events:none; }

/* --- Panel --- */
.rbp-help-panel{
  position:absolute; right:0; bottom:0;
  width:360px; max-width:calc(100vw - 32px);
  background:#fff; border:1px solid var(--line); border-radius:14px;
  box-shadow:0 18px 50px rgba(21,35,61,.34); overflow:hidden;
}
.rbp-help-panel[hidden]{ display:none; }

.rbp-help-head{
  display:flex; align-items:center; justify-content:space-between;
  background:var(--navy); color:#fff; padding:14px 16px;
}
.rbp-help-title{ font-weight:800; font-size:1.02rem; letter-spacing:.01em; }
.rbp-help-close{
  background:transparent; border:0; color:#cfd6e4; cursor:pointer;
  font-size:1.5rem; line-height:1; padding:0 2px; transition:color .12s ease;
}
.rbp-help-close:hover{ color:var(--gold-bright); }

.rbp-help-body{ max-height:min(56vh,440px); overflow:auto; }
.rbp-help-faqs{ list-style:none; margin:0; padding:0; }
.rbp-help-faqs li{ border-bottom:1px solid var(--line); }
.rbp-help-faqs details{ margin:0; }
.rbp-help-faqs summary{
  cursor:pointer; list-style:none; padding:13px 16px;
  font-weight:700; color:var(--navy); font-size:.92rem; line-height:1.3;
  display:flex; align-items:flex-start; gap:10px; transition:background .12s ease;
}
.rbp-help-faqs summary::-webkit-details-marker{ display:none; }
.rbp-help-faqs summary::before{
  content:"+"; flex:0 0 auto; width:18px; height:18px; margin-top:1px;
  display:inline-flex; align-items:center; justify-content:center;
  color:var(--gold); font-weight:800; font-size:1.05rem; transition:transform .15s ease;
}
.rbp-help-faqs details[open] summary::before{ content:"\2212"; } /* minus */
.rbp-help-faqs summary:hover{ background:var(--paper); }
.rbp-help-a{
  padding:0 16px 15px 42px; color:var(--ink); font-size:.9rem; line-height:1.5;
}
.rbp-help-a a{ color:var(--navy); font-weight:700; text-decoration:underline; text-underline-offset:2px; }
.rbp-help-a a:hover{ color:var(--gold); }

/* --- CTA footer --- */
.rbp-help-cta{ background:var(--paper); border-top:1px solid var(--line); padding:14px 16px; }
.rbp-help-cta-lead{ display:block; color:#55607a; font-size:.82rem; margin-bottom:10px; }
.rbp-help-cta-btns{ display:flex; gap:8px; }
.rbp-help-btn{
  flex:1 1 0; text-align:center; text-decoration:none; font-weight:800;
  font-size:.82rem; text-transform:uppercase; letter-spacing:.03em; line-height:1.1;
  padding:.7em .6em; border-radius:6px; border:1.5px solid var(--navy); transition:all .15s ease;
}
.rbp-help-btn.call{ background:var(--navy); color:#fff; }
.rbp-help-btn.call:hover{ background:var(--navy2); border-color:var(--navy2); }
.rbp-help-btn.msg{ background:#fff; color:var(--navy); }
.rbp-help-btn.msg:hover{ background:var(--navy); color:#fff; }
.rbp-help-wc{
  display:block; text-align:center; margin-top:11px; text-decoration:none;
  color:var(--gold); font-weight:800; font-size:.88rem; letter-spacing:.01em;
}
.rbp-help-wc:hover{ color:#a97f30; }

/* --- Mobile --- */
@media(max-width:600px){
  .rbp-help{ right:14px; bottom:14px; }
  .rbp-help-fab-label{ display:none; }     /* collapse to a round ? button */
  .rbp-help-fab{ padding:13px; }
  .rbp-help-panel{ position:fixed; right:14px; left:14px; bottom:14px; width:auto; max-width:none; }
}

/* Respect reduced motion */
@media(prefers-reduced-motion:reduce){
  .rbp-help-fab, .rbp-help-faqs summary::before{ transition:none; }
}
