/* Scrollprise v34.9 — product-card Ask Scrollprise assistant. */
.sp-card-assistant-trigger {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 34px;
  margin: 10px 0 0;
  padding: 0 12px;
  border: 1px solid #111;
  border-radius: 999px;
  background: #111;
  color: #fff;
  font: inherit;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: none;
}
.sp-card-assistant-trigger::before { content: "✦"; font-size: 11px; }
.sp-card-assistant-trigger:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }

.sp-assistant-backdrop {
  position: fixed;
  z-index: 2147483000;
  inset: 0;
  display: grid;
  place-items: end center;
  padding: 18px;
  background: rgba(0,0,0,.42);
  backdrop-filter: blur(8px);
}
.sp-assistant-backdrop[hidden] { display: none !important; }

.sp-assistant-sheet {
  width: min(680px, 100%);
  max-height: min(82vh, 760px);
  overflow: auto;
  padding: 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 28px;
  background: linear-gradient(180deg,#111613,#1d211f);
  color: #f7f7f3;
  box-shadow: 0 30px 90px rgba(0,0,0,.38);
}
.sp-assistant-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
.sp-assistant-brand { display:flex; align-items:center; gap:10px; }
.sp-assistant-mark {
  display:grid; place-items:center; width:34px; height:34px; flex:0 0 auto;
  border:1px solid rgba(255,255,255,.24); border-radius:50%; font-size:16px;
}
.sp-assistant-kicker { margin:0; color:#fff; font-size:12px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.sp-assistant-sub { margin:3px 0 0; color:#b6beb8; font-size:11px; line-height:1.35; }
.sp-assistant-close {
  width:34px; height:34px; border:1px solid rgba(255,255,255,.14); border-radius:50%;
  background:transparent; color:#fff; font-size:20px; line-height:1; cursor:pointer;
}
.sp-assistant-product { margin:18px 0 0; color:#f3f4ef; font-size:18px; font-weight:760; line-height:1.1; letter-spacing:-.02em; }
.sp-assistant-prompts { display:flex; gap:8px; overflow-x:auto; margin:15px -2px 0; padding:2px 2px 4px; scrollbar-width:none; }
.sp-assistant-prompts::-webkit-scrollbar { display:none; }
.sp-assistant-prompt {
  flex:0 0 auto; min-height:40px; padding:0 13px; border:1px solid rgba(255,255,255,.10); border-radius:12px;
  background:#5a5d5b; color:#fff; font:inherit; font-size:11px; cursor:pointer;
}
.sp-assistant-answer {
  min-height:66px; margin:14px 0 0; padding:14px 15px; border:1px solid rgba(255,255,255,.09); border-radius:16px;
  background:rgba(255,255,255,.055); color:#e8ece8; font-size:13px; line-height:1.5;
}
.sp-assistant-answer[data-state="idle"] { color:#aeb6b0; }
.sp-assistant-answer[data-state="loading"] { color:#d9ded9; }
.sp-assistant-answer[data-state="error"] { color:#f1d8d3; }
.sp-assistant-form { display:grid; grid-template-columns:1fr 48px; gap:8px; margin-top:12px; }
.sp-assistant-input {
  width:100%; min-width:0; height:50px; padding:0 15px; border:1px solid rgba(255,255,255,.10); border-radius:14px;
  background:#f2f2f0; color:#111; font:inherit; font-size:13px; outline:none;
}
.sp-assistant-input:focus { border-color:rgba(255,255,255,.46); box-shadow:0 0 0 3px rgba(255,255,255,.07); }
.sp-assistant-send {
  display:grid; place-items:center; width:48px; height:50px; border:0; border-radius:14px; background:#f2f2f0; color:#111;
  font-size:22px; cursor:pointer;
}
.sp-assistant-send:disabled { opacity:.45; cursor:wait; }
.sp-assistant-meta { margin:10px 2px 0; color:#8e9790; font-size:9px; line-height:1.4; }
.sp-assistant-followups { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.sp-assistant-followup {
  min-height:31px; padding:0 10px; border:1px solid rgba(255,255,255,.12); border-radius:999px; background:transparent;
  color:#d8ddd9; font:inherit; font-size:9px; cursor:pointer;
}
body.sp-assistant-open { overflow:hidden; }

@media (min-width: 760px) {
  .sp-assistant-backdrop { place-items:center; }
  .sp-assistant-sheet { padding:24px; }
}

@media (max-width: 700px) {
  .sp-assistant-backdrop { padding:0; place-items:end stretch; }
  .sp-assistant-sheet {
    width:100%; max-height:86vh; padding:18px 16px calc(18px + env(safe-area-inset-bottom));
    border-radius:25px 25px 0 0; border-left:0; border-right:0; border-bottom:0;
  }
  .sp-card-assistant-trigger { min-height:32px; font-size:8px; }
  .sp-assistant-product { font-size:17px; }
}
