/* Página "Bots do Falafy" (/bots/, /en/bots/). Só tokens do Noite Viva (site.css :root).
   Movimento: sem JS tudo aparece no estado final; com JS (classe .bt-motion no <html>, posta por
   bots.js só quando não há "reduzir movimento") os blocos saem de um estado visível e se revelam. */

.bt{ --bt-lime-12: color-mix(in srgb, var(--lime) 12%, transparent); --bt-lime-25: color-mix(in srgb, var(--lime) 25%, transparent); --bt-coral-12: color-mix(in srgb, var(--coral) 12%, transparent); }
.bt .wrap{ position:relative; }
.bt-pill{ display:inline-block; font-size:12.5px; font-weight:700; color:var(--on-lime); background:var(--lime); padding:4px 10px; border-radius:999px; margin-bottom:20px; }
.bt-h2{ font-size:clamp(26px,3.2vw,40px); line-height:1.05; letter-spacing:-0.025em; margin-bottom:28px; }
.bt-h3{ font-size:20px; margin:32px 0 14px; }
.bt-lead{ font-size:clamp(15px,1.5vw,18px); max-width:62ch; margin:-12px 0 32px; }
.bt-section{ padding:clamp(44px,6vw,80px) 0 0; scroll-margin-top:84px; }
.bt-section:last-of-type{ padding-bottom:clamp(56px,7vw,96px); }
.bt-faint{ color:var(--faint); }

/* ---------- hero ---------- */
.bt-hero{ padding:clamp(28px,5vw,64px) 0 0; }
.bt-hero-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(28px,4vw,64px); align-items:center; }
.bt-hero h1{ font-size:clamp(38px,5.6vw,72px); line-height:1; letter-spacing:-0.035em; max-width:12ch; margin-bottom:22px; }
.bt-ctas{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:22px; }
.bt-ctas .btn{ border-radius:999px; }
.bt-ctas .btn-ghost{ background:var(--panel); border-color:var(--panel); }
.bt-ctas .btn-ghost svg{ color:var(--lime); }
.bt-trust{ display:flex; gap:8px; align-items:flex-start; font-size:13.5px; color:var(--faint); }
.bt-trust svg{ flex:none; margin-top:2px; }
@media (max-width:960px){ .bt-hero-grid{ grid-template-columns:minmax(0,1fr); } }
@media (max-width:480px){ .bt-ctas .btn{ flex:1 1 100%; } }

/* demo: um canal com a enquete pronta (estado final sem JS) */
.bt-demo{ position:relative; background:var(--sidebar); border:1px solid var(--border); border-radius:18px; overflow:hidden; box-shadow:0 30px 80px -40px rgba(0,0,0,.8); }
.bt-demo-head{ padding:14px 20px; border-bottom:1px solid var(--border); font-weight:600; color:var(--text); font-size:14.5px; }
.bt-demo-head span{ color:var(--faint); }
.bt-demo-body{ padding:16px 20px 6px; display:flex; flex-direction:column; gap:14px; min-height:300px; }
.bt-msg{ display:flex; gap:12px; align-items:flex-start; transition:opacity .35s ease, transform .35s ease; }
.bt-msg p{ color:var(--text); font-size:14px; }
.bt-msg strong{ font-weight:600; }
.bt-msg-main{ flex:1; min-width:0; }
.bt-av{ flex:none; width:32px; height:32px; border-radius:50%; background:var(--border-2); color:var(--muted); display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700; }
.bt-av-bot{ background:var(--lime); color:var(--on-lime); }
.bt-msg-user p{ padding-top:6px; }
.bt-cmd{ font-family:'IBM Plex Mono', ui-monospace, monospace; font-size:12.5px; color:var(--lime); background:var(--bt-lime-12); padding:2px 8px; border-radius:6px; }
.bt-tag{ font-size:10.5px; font-weight:700; color:var(--on-lime); background:var(--lime); padding:1px 6px; border-radius:4px; vertical-align:2px; }
.bt-embed{ margin-top:8px; background:var(--main); border:1px solid var(--border); border-inline-start:4px solid var(--lime); border-radius:10px; padding:14px 16px 12px; }
.bt-q{ font-weight:600; margin-bottom:12px; }
.bt-opts{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.bt-opt{ position:relative; display:flex; justify-content:space-between; align-items:center; gap:10px; padding:9px 12px; border-radius:8px; background:var(--panel); font-size:13.5px; font-weight:600; color:var(--text); overflow:hidden; }
.bt-bar{ position:absolute; inset:0 auto 0 0; width:var(--w); background:var(--border-2); border-radius:8px; transition:width .7s cubic-bezier(.2,.8,.2,1); }
.bt-opt.is-top .bt-bar{ background:color-mix(in srgb, var(--lime) 22%, var(--panel)); }
.bt-opt-name, .bt-opt-count{ position:relative; }
.bt-opt-count{ font-size:12.5px; color:var(--muted); white-space:nowrap; }
.bt-opt.is-top .bt-opt-count{ color:var(--lime); }
.bt-opt-count b{ font-weight:700; }
.bt-foot{ font-size:12px; color:var(--faint); margin-top:10px; }
.bt-demo-input{ margin:10px 20px 18px; padding:11px 14px; border-radius:10px; background:var(--panel); font-size:13.5px; color:var(--faint); display:flex; align-items:center; min-height:42px; }
.bt-typed{ font-family:'IBM Plex Mono', ui-monospace, monospace; color:var(--text); }
.bt-typed:empty{ display:none; }
.bt-typed:not(:empty) ~ .bt-ph{ display:none; }
.bt-caret{ display:none; width:2px; height:16px; background:var(--lime); margin-inline-start:2px; }
.bt-cursor{ position:absolute; left:72%; top:44%; pointer-events:none; opacity:0; transition:left .9s cubic-bezier(.4,0,.2,1), top .9s cubic-bezier(.4,0,.2,1), opacity .3s ease, transform .15s ease; }
.bt-cursor.is-click{ transform:scale(.82); }
/* passos da animação (só com JS; sem JS nada disto vale) */
.bt-demo.is-anim .bt-caret{ display:inline-block; animation:bt-blink 1s steps(1) infinite; }
.bt-demo.is-anim[data-step="type"] .bt-msg{ opacity:0; transform:translateY(8px); }
.bt-demo.is-anim[data-step="user"] .bt-msg-bot{ opacity:0; transform:translateY(8px); }
.bt-demo.is-anim[data-step="type"] .bt-cursor, .bt-demo.is-anim[data-step="user"] .bt-cursor{ opacity:0; }
.bt-demo.is-anim[data-step="click"] .bt-cursor, .bt-demo.is-anim[data-step="hold"] .bt-cursor{ opacity:1; }
.bt-opt.is-pulse{ box-shadow:0 0 0 2px var(--lime) inset; }
@keyframes bt-blink{ 50%{ opacity:0; } }

/* ---------- revelar ao rolar (estado de repouso visível) ---------- */
.bt-motion [data-reveal]:not(.is-in){ opacity:.35; transform:translateY(14px); }
.bt-motion [data-reveal]{ transition:opacity .6s ease, transform .6s cubic-bezier(.2,.8,.2,1); }
.bt-motion .bt-does:not(.is-in) .bt-ico{ background:var(--panel); color:var(--faint); }

/* ---------- o que um bot faz ---------- */
.bt-does{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:24px; }
.bt-does h3{ font-size:16px; font-family:var(--font-body); font-weight:700; letter-spacing:0; margin:14px 0 6px; color:var(--text); }
.bt-does p{ font-size:14px; }
.bt-ico{ width:40px; height:40px; border-radius:50%; background:var(--panel); color:var(--lime); display:flex; align-items:center; justify-content:center; transition:background .4s ease calc(var(--i) * 140ms), color .4s ease calc(var(--i) * 140ms), box-shadow .4s ease calc(var(--i) * 140ms); }
.bt-does.is-in .bt-ico{ box-shadow:0 0 0 6px var(--bt-lime-12); }
@media (max-width:1000px){ .bt-does{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:640px){ .bt-does{ grid-template-columns:repeat(2, minmax(0,1fr)); gap:20px; } }

/* ---------- três passos com linha tracejada ---------- */
.bt-steps{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:32px; }
.bt-steps li{ position:relative; }
.bt-steps h3{ font-size:18px; font-family:var(--font-body); font-weight:700; letter-spacing:0; margin:16px 0 8px; color:var(--text); }
.bt-steps p{ font-size:14.5px; max-width:44ch; }
.bt-step-n{ position:relative; z-index:1; width:38px; height:38px; border-radius:50%; background:var(--panel); color:var(--text); display:flex; align-items:center; justify-content:center; font-family:var(--font-head); font-weight:800; }
.bt-steps li:first-child .bt-step-n{ background:var(--lime); color:var(--on-lime); box-shadow:0 0 0 6px var(--bt-lime-12); }
.bt-step-line{ position:absolute; top:18px; inset-inline-start:52px; width:calc(100% - 52px); height:2px; background:repeating-linear-gradient(90deg, var(--border-2) 0 6px, transparent 6px 12px); transform-origin:left center; }
.bt-motion .bt-steps:not(.is-in) .bt-step-line{ transform:scaleX(0); }
.bt-motion .bt-step-line{ transition:transform 1s cubic-bezier(.4,0,.2,1) calc(var(--i) * 500ms + 200ms); }
@media (max-width:760px){
  .bt-steps{ grid-template-columns:minmax(0,1fr); gap:26px; }
  .bt-step-line{ top:46px; inset-inline-start:18px; width:2px; height:calc(100% - 26px); background:repeating-linear-gradient(180deg, var(--border-2) 0 6px, transparent 6px 12px); transform-origin:center top; }
  .bt-motion .bt-steps:not(.is-in) .bt-step-line{ transform:scaleY(0); }
  .bt-steps li{ padding-inline-start:56px; }
  .bt-step-n{ position:absolute; inset-inline-start:0; top:0; }
  .bt-steps h3{ margin-top:6px; }
}

/* ---------- abas Manual / Com IA ---------- */
.bt-tabs{ scroll-margin-top:96px; display:inline-flex; gap:4px; padding:4px; border-radius:999px; background:var(--sidebar); border:1px solid var(--border); margin-bottom:22px; }
.bt-tabs button{ display:inline-flex; align-items:center; gap:8px; font:600 14.5px var(--font-body); color:var(--muted); background:transparent; border:0; border-radius:999px; padding:9px 22px; cursor:pointer; transition:background .25s ease, color .25s ease; }
.bt-tabs button svg{ width:16px; height:16px; }
.bt-tabs button[aria-selected="true"]{ background:var(--lime); color:var(--on-lime); }
.bt-tabs button:not([aria-selected="true"]):hover{ color:var(--text); }
.bt-panel + .bt-panel{ margin-top:40px; }
.bt-tabs-on .bt-panel + .bt-panel{ margin-top:0; }
.bt-tabs-on .bt-panel-t{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.bt-panel-t{ font-size:20px; margin-bottom:14px; }
.bt-panel.is-entering{ animation:bt-slide .45s cubic-bezier(.2,.8,.2,1); }
@keyframes bt-slide{ from{ opacity:0; transform:translateX(var(--from, 24px)); } to{ opacity:1; transform:none; } }
.bt-panel-grid{ display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); gap:28px; align-items:start; }
@media (max-width:900px){ .bt-panel-grid{ grid-template-columns:minmax(0,1fr); } }
.bt-side h4{ font-size:17px; font-family:var(--font-body); font-weight:700; margin:4px 0 12px; color:var(--text); }
.bt-how{ margin:0 0 18px; padding-inline-start:20px; display:flex; flex-direction:column; gap:10px; color:var(--muted); font-size:14.5px; }
.bt-how li::marker{ color:var(--lime); font-weight:700; }
.bt-how code{ overflow-wrap:anywhere; }
.bt-note{ font-size:13.5px; color:var(--faint); margin-top:14px; }
.bt-warn{ display:flex; gap:10px; align-items:flex-start; padding:12px 16px; border-radius:12px; background:var(--bt-coral-12); border:1px solid color-mix(in srgb, var(--coral) 30%, transparent); color:var(--text); font-size:14px; margin-top:16px; }
.bt-warn svg{ flex:none; color:var(--coral); }

/* cartões de código e prompt */
.bt-card{ background:var(--sidebar); border:1px solid var(--border); border-radius:16px; overflow:hidden; min-width:0; }
.bt-card-head{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:10px 12px 10px 18px; border-bottom:1px solid var(--border); font-size:13px; font-weight:600; color:var(--muted); }
.bt-copy{ display:inline-flex; align-items:center; gap:6px; font:600 12.5px var(--font-body); color:var(--text); background:var(--panel); border:1px solid var(--border-2); border-radius:8px; padding:6px 10px; cursor:pointer; transition:border-color .15s ease, color .15s ease; flex:none; }
.bt-copy:hover{ border-color:var(--lime); color:var(--lime); }
.bt-copy.is-done{ background:var(--lime); color:var(--on-lime); border-color:var(--lime); }
.bt-code, .bt-prompt{ margin:0; padding:16px 18px; overflow:auto; max-height:520px; font:13px/1.6 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color:var(--text); tab-size:2; }
.bt-code code, .bt-prompt code{ background:none; border:0; padding:0; font:inherit; color:inherit; white-space:pre; }
.bt-prompt code{ white-space:pre-wrap; }
.bt-prompt{ color:var(--muted); max-height:420px; }
.bt-prompt .hl{ color:var(--lime); }
.bt-code .c{ color:var(--faint); }
.bt-code .s{ color:var(--ceu); }
.bt-code .k{ color:var(--lime); }
.bt-code .ln{ display:inline; }
.bt-motion .bt-code:not(.is-in) .ln{ opacity:.25; }
.bt-motion .bt-code .ln{ transition:opacity .25s ease calc(var(--i) * 22ms); }

/* ---------- loja ---------- */
.bt-store-box{ position:relative; border:1px solid var(--border); border-radius:24px; padding:clamp(24px,4vw,48px); background:radial-gradient(120% 80% at 100% 0%, var(--bt-lime-12), transparent 60%), var(--sidebar); }
.bt-store-box .bt-card{ background:var(--rail); }
.bt-flow{ list-style:none; margin:0 0 8px; padding:0; display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:20px; position:relative; }
.bt-flow::before{ content:""; position:absolute; top:26px; inset-inline:12% 12%; height:2px; background:repeating-linear-gradient(90deg, var(--border-2) 0 6px, transparent 6px 12px); }
.bt-flow::after{ content:""; position:absolute; top:22px; inset-inline-start:12%; width:10px; height:10px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 5px var(--bt-lime-25); opacity:0; }
.bt-motion .bt-flow.is-in::after{ animation:bt-travel 4.8s cubic-bezier(.45,0,.55,1) 1.2s infinite; }
@keyframes bt-travel{ 0%{ inset-inline-start:12%; opacity:0; } 8%{ opacity:1; } 92%{ opacity:1; } 100%{ inset-inline-start:calc(88% - 10px); opacity:0; } }
.bt-flow li{ position:relative; text-align:center; }
.bt-flow-ico{ position:relative; z-index:1; width:54px; height:54px; margin:0 auto 14px; border-radius:16px; background:var(--panel); border:1px solid var(--border-2); color:var(--lime); display:flex; align-items:center; justify-content:center; transition:background .4s ease calc(var(--i) * 300ms), color .4s ease calc(var(--i) * 300ms), box-shadow .4s ease calc(var(--i) * 300ms); }
.bt-flow.is-in .bt-flow-ico{ background:var(--lime); color:var(--on-lime); box-shadow:0 0 0 6px var(--bt-lime-12); }
.bt-flow h3{ font-size:16px; font-family:var(--font-body); font-weight:700; letter-spacing:0; color:var(--text); margin-bottom:6px; display:flex; gap:8px; justify-content:center; align-items:center; }
.bt-flow-n{ font-size:12px; color:var(--faint); }
.bt-flow p{ font-size:13.5px; max-width:30ch; margin:0 auto; }
.bt-store-grid{ display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); gap:28px; align-items:start; }
.bt-notes{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; }
.bt-notes li{ display:flex; gap:10px; align-items:flex-start; font-size:14.5px; color:var(--muted); }
.bt-notes svg{ flex:none; color:var(--lime); margin-top:3px; }
@media (max-width:900px){
  .bt-store-grid{ grid-template-columns:minmax(0,1fr); }
  .bt-flow{ grid-template-columns:minmax(0,1fr); gap:18px; }
  .bt-flow::before{ top:12px; bottom:12px; inset-inline-start:26px; width:2px; height:auto; background:repeating-linear-gradient(180deg, var(--border-2) 0 6px, transparent 6px 12px); }
  .bt-flow::after{ display:none; }
  .bt-flow li{ text-align:start; display:grid; grid-template-columns:54px minmax(0,1fr); column-gap:16px; }
  .bt-flow-ico{ grid-row:span 2; margin:0; }
  .bt-flow h3{ justify-content:flex-start; margin-top:4px; }
  .bt-flow p{ margin:0; max-width:none; }
}

/* ---------- galeria de ideias ---------- */
.bt-ideas{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:16px; align-items:start; }
.bt-idea{ background:var(--sidebar); border:1px solid var(--border); border-radius:18px; transition:border-color .2s ease; min-width:0; }
.bt-idea:hover, .bt-idea[open]{ border-color:var(--border-2); }
.bt-idea[open]{ grid-column:1 / -1; }
.bt-idea summary{ list-style:none; cursor:pointer; display:flex; flex-direction:column; gap:8px; padding:14px 14px 18px; border-radius:18px; }
.bt-idea summary::-webkit-details-marker{ display:none; }
.bt-idea[open] summary{ display:grid; grid-template-columns:minmax(0,260px) minmax(0,1fr); grid-template-rows:auto auto 1fr; column-gap:22px; }
.bt-idea[open] .bt-idea-pv{ grid-row:1 / span 3; }
.bt-idea-pv{ display:flex; align-items:center; justify-content:center; height:118px; border-radius:12px; background:var(--main); overflow:hidden; margin-bottom:6px; }
.bt-idea-title{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:0 4px; flex-wrap:wrap; }
.bt-idea-title strong{ color:var(--text); font-size:16px; }
.bt-idea-text{ font-size:14px; color:var(--muted); padding:0 4px; }
.bt-idea-open{ display:inline-flex; align-items:center; gap:6px; font-size:13.5px; font-weight:600; color:var(--lime); padding:4px 4px 0; }
.bt-idea-open svg{ width:15px; height:15px; transition:transform .2s ease; }
.bt-idea:hover .bt-idea-open svg{ transform:translateX(3px); }
.bt-idea[open] .bt-idea-open svg{ transform:rotate(90deg); }
.bt-idea-body{ padding:0 18px 20px; display:flex; flex-direction:column; gap:10px; min-width:0; }
.bt-idea-body .bt-code{ background:var(--rail); border:1px solid var(--border); border-radius:12px; }
.bt-label-row{ display:flex; justify-content:space-between; align-items:center; gap:12px; }
.bt-label{ font-size:12.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--faint); }
.bt-idea-prompt{ background:var(--rail); border:1px solid var(--border); border-radius:12px; padding:14px 16px; font-size:14px; color:var(--text); }
.bt-badge{ font-size:11.5px; font-weight:700; color:var(--lime); background:var(--bt-lime-12); padding:3px 9px; border-radius:999px; white-space:nowrap; }
.bt-badge.is-soon{ color:var(--muted); background:var(--panel); }
@media (max-width:1000px){ .bt-ideas{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width:640px){
  .bt-ideas{ grid-template-columns:minmax(0,1fr); }
  .bt-idea[open] summary{ display:flex; }
}

/* prévias: cada uma anima no hover (e quando o card está aberto) */
.pv{ width:100%; padding:14px 16px; font-size:12.5px; color:var(--text); }
.pv b{ font-weight:600; }
.pv i{ font-style:normal; color:var(--muted); }
.pv-poll{ display:flex; flex-direction:column; gap:7px; }
.pv-poll span{ position:relative; display:flex; justify-content:space-between; padding:5px 8px; border-radius:6px; background:var(--panel); overflow:hidden; }
.pv-poll span::before{ content:""; position:absolute; inset:0 auto 0 0; width:var(--w); background:var(--border-2); transition:width .6s cubic-bezier(.2,.8,.2,1); }
.pv-poll span:first-child::before{ background:color-mix(in srgb, var(--lime) 25%, var(--panel)); }
.pv-poll span:first-child i{ color:var(--lime); }
.pv-poll b, .pv-poll i{ position:relative; }
.bt-idea:hover .pv-poll span:first-child::before, .bt-idea[open] .pv-poll span:first-child::before{ width:92%; }
.bt-idea:hover .pv-poll span:nth-child(2)::before{ width:40%; }
.pv-dice{ display:flex; justify-content:center; }
.die{ position:relative; width:46px; height:46px; border-radius:10px; background:var(--text); transition:transform .7s cubic-bezier(.3,1.4,.5,1); }
.die i{ position:absolute; width:9px; height:9px; border-radius:50%; background:var(--rail); }
.die i:nth-child(1){ top:8px; left:8px; } .die i:nth-child(2){ top:18.5px; left:18.5px; } .die i:nth-child(3){ bottom:8px; right:8px; }
.bt-idea:hover .die, .bt-idea[open] .die{ transform:rotate(360deg) scale(1.08); }
.pv-welcome{ display:flex; align-items:center; gap:12px; }
.pv-welcome .av{ flex:none; width:36px; height:36px; border-radius:50%; background:var(--border-2); display:flex; align-items:center; justify-content:center; font-weight:700; }
.pv-welcome > span:last-child{ display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
.pv-welcome em{ font-style:normal; font-size:11px; font-weight:700; color:var(--lime); background:var(--bt-lime-12); padding:2px 8px; border-radius:999px; transition:transform .3s cubic-bezier(.3,1.6,.5,1), background .3s ease, color .3s ease; }
.bt-idea:hover .pv-welcome em, .bt-idea[open] .pv-welcome em{ transform:scale(1.15); background:var(--lime); color:var(--on-lime); }
.pv-roles{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.pv-roles span{ text-align:center; padding:6px 0; border-radius:999px; background:var(--panel); font-weight:600; transition:background .3s ease, color .3s ease; }
.pv-roles .on{ background:var(--bt-lime-12); color:var(--lime); }
.bt-idea:hover .pv-roles span:nth-child(4), .bt-idea[open] .pv-roles span:nth-child(4){ background:var(--bt-lime-12); color:var(--lime); transition-delay:.1s; }
.bt-idea:hover .pv-roles span:nth-child(2){ background:var(--bt-lime-12); color:var(--lime); transition-delay:.25s; }
.pv-xp{ display:flex; flex-direction:column; gap:8px; }
.pv-xp .row{ display:flex; justify-content:space-between; }
.pv-xp .track{ height:8px; border-radius:999px; background:var(--panel); overflow:hidden; }
.pv-xp .fill{ display:block; height:100%; width:66%; background:var(--lime); border-radius:999px; transition:width .8s cubic-bezier(.2,.8,.2,1); }
.bt-idea:hover .pv-xp .fill, .bt-idea[open] .pv-xp .fill{ width:94%; }
.pv-alert{ display:flex; align-items:center; gap:12px; }
.pv-alert svg{ flex:none; width:18px; height:18px; color:var(--muted); }
.pv-alert > span:not(.dot){ flex:1; display:flex; flex-direction:column; }
.pv-alert .dot{ width:10px; height:10px; border-radius:50%; background:var(--lime); }
.bt-idea:hover .pv-alert .dot, .bt-idea[open] .pv-alert .dot{ animation:bt-ping 1s ease-out infinite; }
@keyframes bt-ping{ 0%{ box-shadow:0 0 0 0 var(--bt-lime-25); } 100%{ box-shadow:0 0 0 10px transparent; } }
.pv-ai{ display:flex; flex-direction:column; gap:8px; }
.pv-ai .q{ align-self:flex-start; padding:5px 10px; border-radius:8px; background:var(--panel); color:var(--muted); }
.pv-ai .a{ align-self:flex-end; display:inline-flex; align-items:center; gap:6px; padding:5px 12px; border-radius:999px; background:var(--bt-lime-12); color:var(--lime); transition:transform .4s cubic-bezier(.2,.8,.2,1); }
.pv-ai .a svg{ width:12px; height:12px; }
.bt-idea:hover .pv-ai .a, .bt-idea[open] .pv-ai .a{ transform:translateX(-14px); }
.pv-ticket{ display:flex; flex-direction:column; gap:8px; }
.pv-ticket span{ height:14px; border-radius:6px; background:var(--panel); transition:box-shadow .3s ease; }
.pv-ticket .short{ width:60%; }
.bt-idea:hover .pv-ticket span:nth-of-type(1){ box-shadow:0 0 0 1px var(--border-2) inset; }
.pv-shop{ display:flex; flex-direction:column; gap:10px; }
.pv-shop .item{ display:flex; align-items:center; gap:10px; }
.pv-shop .item svg{ flex:none; color:var(--lime); }
.pv-shop .item > span{ display:flex; flex-direction:column; }
.pv-shop .pay{ align-self:flex-start; display:inline-flex; align-items:center; gap:6px; font-weight:700; padding:5px 12px; border-radius:8px; background:var(--panel); transition:background .3s ease, color .3s ease; }
.pv-shop .pay svg{ width:0; transition:width .3s ease; }
.bt-idea:hover .pv-shop .pay, .bt-idea[open] .pv-shop .pay{ background:var(--lime); color:var(--on-lime); }
.bt-idea:hover .pv-shop .pay svg, .bt-idea[open] .pv-shop .pay svg{ width:14px; }

/* ---------- chamada final ---------- */
.bt-cta{ display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; border:1px solid var(--border); border-radius:24px; padding:clamp(24px,4vw,40px); background:var(--sidebar); }
.bt-cta .bt-h2{ margin-bottom:8px; }
.bt-cta .btn{ border-radius:999px; }
@media (max-width:480px){ .bt-cta .btn{ width:100%; } }

/* ---------- reduzir movimento: estado final, sem animação ---------- */
@media (prefers-reduced-motion: reduce){
  .bt *, .bt *::before, .bt *::after{ transition:none !important; animation:none !important; }
}
