/* Gerador de QR Code de avaliação v2 (tokens do tema: claro e escuro) */
.gqr .v2-narrow { max-width:780px; }
.gqr-hero { padding-bottom:clamp(40px,6vw,80px); }
.gqr-hero .v2-wrap { max-width:1040px; }
.gqr-top { text-align:center; max-width:720px; margin:0 auto clamp(24px,3.5vw,40px); }
.gqr-h1 { font:800 clamp(1.9rem,4.4vw,3.1rem)/1.08 'Inter',system-ui,sans-serif; letter-spacing:-.03em; color:var(--text); margin:.6rem 0 .9rem; text-wrap:balance; }
.gqr-sub { color:var(--muted); font-size:clamp(1rem,1.6vw,1.15rem); line-height:1.55; margin:0; text-wrap:pretty; }
.gqr-hero .v2-crumb { text-align:center; }

/* Cartão da ferramenta */
.gqr-card { background:var(--surface); border:1px solid var(--border); border-radius:28px; padding:clamp(18px,3vw,32px); box-shadow:var(--shadow); }
.gqr-passos { list-style:none; display:flex; justify-content:center; gap:8px; margin:0 0 22px; padding:0; }
.gqr-passos li { display:flex; align-items:center; gap:8px; padding:6px 14px 6px 6px; border-radius:99px; font:600 .82rem/1 'Inter',sans-serif; color:var(--subtle); background:var(--bg2); transition:color .25s, background .25s; }
.gqr-passos b { width:24px; height:24px; border-radius:50%; display:grid; place-items:center; background:var(--surf2); color:var(--muted); font-size:.75rem; transition:background .25s, color .25s; }
.gqr-passos li.on { color:var(--text); }
.gqr-passos li.on b { background:var(--blue); color:#fff; }
.gqr-passos li.ok b { background:color-mix(in srgb, var(--blue) 22%, transparent); color:var(--blue); }

/* Busca */
.gqr-busca { display:grid; grid-template-columns:1.5fr 1fr auto; gap:0; align-items:stretch; border:1px solid var(--border); border-radius:18px; background:var(--bg); padding:6px; transition:border-color .2s, box-shadow .2s; }
.gqr-busca:focus-within { border-color:var(--blue); box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 16%, transparent); }
.gqr-in { display:flex; flex-direction:column; justify-content:center; gap:2px; padding:8px 16px; min-width:0; cursor:text; }
.gqr-in-c { border-left:1px solid var(--border); }
.gqr-in span { font:600 .72rem/1.2 'Inter',sans-serif; letter-spacing:.02em; color:var(--subtle); }
.gqr-in input { border:0; outline:0; background:transparent; color:var(--text); font-size:16px; padding:2px 0; min-width:0; width:100%; }
.gqr-in input::placeholder { color:var(--subtle); opacity:.75; }
.gqr-busca .v2-btn { min-height:54px; border-radius:13px; white-space:nowrap; padding-inline:22px; }
.gqr-erro { margin:12px 4px 0; color:#e5484d; font-weight:600; font-size:.92rem; }
.gqr-nota { text-align:center; margin-top:16px; color:var(--subtle); font-size:.85rem; }

/* Resultados */
.gqr-stage { margin-top:22px; animation:gqrIn .28s ease both; }
@keyframes gqrIn { from { opacity:0; transform:translateY(6px); } }
.gqr-h { font:700 1rem/1.3 'Inter',sans-serif; color:var(--text); margin:0 0 10px 4px; }
.gqr-res { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; }
.gqr-res button { width:100%; display:flex; align-items:center; gap:14px; text-align:left; padding:12px 14px; border:1px solid transparent; border-radius:14px; background:transparent; color:var(--text); cursor:pointer; font:inherit; transition:background .15s, border-color .15s; }
.gqr-res li + li button { position:relative; }
.gqr-res button:hover, .gqr-res button:focus-visible { background:var(--bg2); border-color:var(--border); outline:none; }
.gqr-res button::after { content:''; width:8px; height:8px; border-right:2px solid var(--subtle); border-top:2px solid var(--subtle); transform:rotate(45deg); margin-left:auto; flex-shrink:0; transition:transform .15s, border-color .15s; }
.gqr-res button:hover::after { transform:translateX(3px) rotate(45deg); border-color:var(--blue); }
.gqr-ico { width:42px; height:42px; border-radius:12px; display:grid; place-items:center; flex-shrink:0; }
.gqr-ico img { width:22px; height:22px; filter:brightness(0) invert(1); }
.gqr-tx { min-width:0; }
.gqr-res strong { display:block; font-size:.98rem; line-height:1.3; }
.gqr-res small { display:block; color:var(--muted); font-size:.84rem; line-height:1.4; margin-top:2px; }
.gqr-res em { font-style:normal; font-size:.74rem; color:var(--blue); font-weight:600; }
.gqr-vazio { padding:18px; border:1px dashed var(--border); border-radius:14px; color:var(--muted); font-size:.94rem; line-height:1.6; }
.gqr-vazio strong { display:block; color:var(--text); margin-bottom:4px; }
.gqr-skel { height:66px; border-radius:14px; background:linear-gradient(90deg,var(--bg2) 0%,var(--surf2) 50%,var(--bg2) 100%); background-size:200% 100%; animation:gqrSk 1.2s infinite; }
@keyframes gqrSk { to { background-position:-200% 0; } }

/* Resultado final */
.gqr-grid { display:grid; grid-template-columns:1fr minmax(0,400px); gap:clamp(24px,4vw,48px); align-items:start; padding-top:6px; }
.gqr-nome { font:800 clamp(1.35rem,2.6vw,1.8rem)/1.15 'Inter',sans-serif; letter-spacing:-.02em; color:var(--text); margin:.4rem 0 .3rem; }
.gqr-end { color:var(--muted); margin:0 0 1.6rem; font-size:.95rem; line-height:1.5; }
.gqr-lbl { display:block; font-weight:600; font-size:.85rem; margin-bottom:8px; color:var(--text); }
.gqr-link { display:flex; gap:8px; }
.gqr-link input { flex:1; min-width:0; min-height:48px; padding:0 14px; border-radius:12px; border:1px solid var(--border); background:var(--bg); color:var(--muted); font:500 .8rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; }
.gqr-link .v2-btn { min-height:48px; white-space:nowrap; }
.gqr-dica { color:var(--subtle); font-size:.86rem; line-height:1.5; margin:10px 0 0; }
.gqr .gqr-gerar { display:none; }
.gqr [hidden] { display:none !important; }
.gqr-card { scroll-margin-top:96px; }
.gqr-voltar { display:block; margin-top:22px; background:none; border:0; color:var(--blue); font:600 .9rem/1 inherit; cursor:pointer; padding:8px 0; }
.gqr-voltar::before { content:'‹ '; }

.gqr-preview { padding:14px; border:1px solid var(--border); border-radius:20px; background:var(--bg); text-align:center; }
.gqr-tabs { display:flex; gap:4px; padding:4px; border-radius:12px; background:var(--bg2); margin-bottom:12px; }
.gqr-tabs button { flex:1; padding:9px 6px; border:0; border-radius:9px; background:transparent; color:var(--muted); font:600 .8rem/1.2 inherit; cursor:pointer; transition:background .2s, color .2s; }
.gqr-tabs button[aria-selected="true"] { background:var(--surface); color:var(--text); box-shadow:0 1px 3px rgba(0,0,0,.14); }
.gqr-canvas { border-radius:14px; overflow:hidden; background:#fff; display:grid; place-items:center; aspect-ratio:1/1; }
.gqr-canvas canvas { display:block; max-width:100%; max-height:100%; width:auto; height:auto; }
.gqr-fmt { color:var(--subtle); font-size:.8rem; line-height:1.45; margin:10px 4px 12px; min-height:2.3em; }
.gqr-preview .v2-btn { width:100%; min-height:52px; }

.gqr-usos { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:1.5rem; }
.gqr-usos div { padding:22px; border:1px solid var(--border); border-radius:18px; background:var(--surface); }
.gqr-usos strong { display:block; margin-bottom:6px; color:var(--text); }
.gqr-usos p { margin:0; color:var(--muted); font-size:.92rem; line-height:1.55; }

@media (max-width:860px) {
  .gqr-grid { grid-template-columns:1fr; }
  .gqr-preview { order:-1; max-width:420px; margin:0 auto; width:100%; }
  .gqr-usos { grid-template-columns:1fr 1fr; }
}
@media (max-width:640px) {
  .gqr-card { border-radius:22px; padding:16px; }
  .gqr-busca { grid-template-columns:1fr; padding:6px; }
  .gqr-in { padding:10px 12px; }
  .gqr-in-c { border-left:0; border-top:1px solid var(--border); }
  .gqr-busca .v2-btn { width:100%; margin-top:6px; }
  .gqr-passos li { padding-right:10px; font-size:.76rem; }
  .gqr-link { flex-direction:column; }
  .gqr-usos { grid-template-columns:1fr; }
  .gqr-top { text-align:left; } .gqr-hero .v2-crumb { text-align:left; } .gqr-nota { text-align:left; }
}
@media (prefers-reduced-motion:reduce) { .gqr-stage, .gqr-skel { animation:none; } }

/* Pagamento Pix */
.gqr-pag { margin-top:12px; text-align:left; padding:16px; border:1px solid var(--border); border-radius:16px; background:var(--surface); animation:gqrIn .25s ease both; }
.gqr-pag-t { font:700 1rem/1.3 'Inter',sans-serif; color:var(--text); margin:0 0 8px; }
.gqr-pag-lista { list-style:none; margin:0 0 14px; padding:0; display:grid; gap:4px; }
.gqr-pag-lista li { color:var(--muted); font-size:.88rem; padding-left:20px; position:relative; }
.gqr-pag-lista li::before { content:'✓'; position:absolute; left:0; color:#1fa971; font-weight:700; }
.gqr-pag-lbl { display:block; font-weight:600; font-size:.82rem; color:var(--text); margin-bottom:6px; }
.gqr-pag input { width:100%; min-height:48px; padding:0 14px; border-radius:12px; border:1px solid var(--border); background:var(--bg); color:var(--text); font-size:16px; margin-bottom:10px; }
.gqr-pag input:focus { outline:0; border-color:var(--blue); box-shadow:0 0 0 4px color-mix(in srgb, var(--blue) 16%, transparent); }
.gqr-pag .v2-btn { width:100%; min-height:50px; }
.gqr-pag-nota { color:var(--subtle); font-size:.8rem; line-height:1.45; margin:10px 0 0; text-align:center; }
#gqrPag2 { text-align:center; }
#gqrPixImg { display:block; margin:4px auto 12px; width:220px; height:220px; border-radius:12px; background:#fff; padding:8px; }
.gqr-pag-esp { display:flex; align-items:center; justify-content:center; gap:8px; color:var(--muted); font-size:.88rem; margin:12px 0 0; }
.gqr-dot { width:9px; height:9px; border-radius:50%; background:#f5a524; animation:gqrPulse 1.2s infinite; }
@keyframes gqrPulse { 50% { opacity:.3; } }
.gqr-pago { display:flex; align-items:center; gap:8px; justify-content:center; color:#1fa971; font-weight:700; font-size:.9rem; margin:0 0 10px; }
.gqr-preview .gqr-baixar-mais { display:grid; gap:8px; }
/* Página de venda */
.gqr-selos { list-style:none; display:flex; flex-wrap:wrap; justify-content:center; gap:8px 10px; margin:18px 0 0; padding:0; }
.gqr-selos li { display:inline-flex; align-items:center; gap:6px; padding:7px 13px; border-radius:99px; border:1px solid var(--border); background:var(--surface); color:var(--muted); font:600 .8rem/1 'Inter',sans-serif; }
.gqr-selos li::before { content:'✓'; color:#1fa971; font-weight:800; }
.gqr-sec-top { max-width:720px; margin:0 0 clamp(22px,3vw,34px); }
.gqr-lead { color:var(--muted); font-size:clamp(1rem,1.5vw,1.1rem); line-height:1.65; margin:.6rem 0 0; }
.gqr-tres { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.gqr-tres div, .gqr-formatos div { padding:24px; border:1px solid var(--border); border-radius:20px; background:var(--surface); }
.gqr-tres i { display:grid; place-items:center; width:42px; height:42px; border-radius:12px; font-style:normal; font-size:1.1rem; background:color-mix(in srgb, var(--blue) 14%, transparent); color:var(--blue); margin-bottom:12px; }
.gqr-tres strong, .gqr-formatos strong { display:block; color:var(--text); font-size:1.05rem; margin-bottom:6px; }
.gqr-tres p, .gqr-formatos p { margin:0; color:var(--muted); font-size:.93rem; line-height:1.6; }
.gqr-como { list-style:none; counter-reset:gc; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.gqr-como li { counter-increment:gc; position:relative; padding:26px 22px 22px; border-radius:20px; background:var(--surface); border:1px solid var(--border); }
.gqr-como li::before { content:counter(gc); display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:var(--blue); color:#fff; font:800 .95rem/1 'Inter',sans-serif; margin-bottom:14px; }
.gqr-como strong { display:block; color:var(--text); font-size:1.05rem; margin-bottom:6px; }
.gqr-como p { margin:0; color:var(--muted); font-size:.93rem; line-height:1.6; }
.gqr-centro { text-align:center; margin:clamp(22px,3vw,32px) 0 0; }
.gqr-formatos { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.gqr-mock { display:block; height:150px; border-radius:14px; margin-bottom:16px; background:var(--bg2); position:relative; overflow:hidden; }
.gqr-mock::after { content:''; position:absolute; background:#fff; border-radius:8px; box-shadow:0 8px 24px rgba(0,0,0,.18); background-image:repeating-conic-gradient(#1B1E3A 0 25%, #fff 0 50%); background-size:12px 12px; }
.gqr-mock-qr::after { width:96px; height:96px; left:50%; top:50%; transform:translate(-50%,-50%); }
.gqr-mock-disp::after { width:84px; height:112px; left:50%; top:50%; transform:translate(-50%,-50%); background:linear-gradient(#1B1E3A 0 26%, transparent 26%), repeating-conic-gradient(#1B1E3A 0 25%, #fff 0 50%) 50% 70%/10px 10px; background-color:#fff; }
.gqr-mock-etq::after { width:130px; height:78px; left:50%; top:50%; transform:translate(-50%,-50%); background:linear-gradient(90deg, transparent 52%, #fff 52%), repeating-conic-gradient(#000 0 25%, #fff 0 50%) 6px 6px/8px 8px; background-color:#fff; }
.gqr-preco { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(24px,5vw,56px); align-items:center; }
.gqr-preco p { color:var(--muted); line-height:1.65; }
.gqr-preco-card { padding:clamp(24px,3vw,32px); border-radius:24px; background:var(--surface); border:2px solid var(--blue); box-shadow:var(--shadow); }
.gqr-preco-v { margin:0; font:800 clamp(2.6rem,6vw,3.4rem)/1 'Inter',sans-serif; letter-spacing:-.03em; color:var(--text) !important; }
.gqr-preco-v small { font-size:.4em; font-weight:700; margin-right:4px; vertical-align:.9em; color:var(--muted); }
.gqr-preco-s { margin:6px 0 18px; font-size:.9rem; }
.gqr-preco-card ul { list-style:none; margin:0 0 20px; padding:0; display:grid; gap:8px; }
.gqr-preco-card li { padding-left:24px; position:relative; color:var(--text); font-size:.95rem; }
.gqr-preco-card li::before { content:'✓'; position:absolute; left:0; color:#1fa971; font-weight:800; }
.gqr-preco-card .v2-btn { width:100%; min-height:52px; }
.gqr-comp { border:1px solid var(--border); border-radius:20px; overflow:hidden; background:var(--surface); }
.gqr-comp-l { display:grid; grid-template-columns:1fr 1.2fr 1.2fr; }
.gqr-comp-l span { padding:14px 18px; font-size:.92rem; line-height:1.45; color:var(--muted); border-top:1px solid var(--border); }
.gqr-comp-l span:first-child { color:var(--text); font-weight:600; }
.gqr-comp-l span:nth-child(2) { color:var(--text); background:color-mix(in srgb, var(--blue) 7%, transparent); }
.gqr-comp-h span { border-top:0; font-weight:700; color:var(--text); font-size:.85rem; }
.gqr-texto p { color:var(--muted); line-height:1.75; margin:0 0 1rem; }
.gqr-texto strong { color:var(--text); }
.gqr-texto blockquote { margin:0 0 1.2rem; padding:16px 20px; border-left:3px solid var(--blue); border-radius:0 14px 14px 0; background:var(--surface); color:var(--text); font-style:italic; line-height:1.6; }
@media (max-width:860px) {
  .gqr-tres, .gqr-como, .gqr-formatos, .gqr-preco { grid-template-columns:1fr; }
  .gqr-comp-l { grid-template-columns:1fr 1fr; }
  .gqr-comp-l span:first-child { grid-column:1 / -1; padding-bottom:4px; background:var(--bg2); }
  .gqr-comp-h span:first-child { display:none; }
}
/* Respiro entre os cards e o botão (o tema zera margem de <p> dentro de .v2) */
.gqr .gqr-centro { margin:clamp(32px,4vw,48px) 0 0 !important; }
.gqr .gqr-lead { margin-top:.75rem !important; }
