/* ============ POP-UP DIAGNÓSTICO ============ */
.qz-font{font-family:'Inter',system-ui,sans-serif}
#quiz{position:fixed;inset:0;z-index:120;display:flex;align-items:flex-start;justify-content:center;background:rgba(2,4,10,.78);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:12px;overflow-y:auto}
#quiz[hidden]{display:none}
.qz-panel{position:relative;width:100%;max-width:700px;margin:auto 0;border-radius:24px;border:1px solid rgba(110,140,255,.35);background:linear-gradient(180deg,#2c3fd0 0%,#1b2896 22%,#070914 46%,#05060b 100%);box-shadow:0 30px 90px rgba(0,0,0,.6);color:#fff;padding-bottom:18px;animation:qzIn .28s ease}
@keyframes qzIn{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.qz-x{position:absolute;top:14px;right:16px;width:36px;height:36px;border:0;background:transparent;color:#c9d2f5;font-size:28px;line-height:1;border-radius:50%}
.qz-x:hover{background:rgba(255,255,255,.1);color:#fff}
.qz-head{padding:26px 48px 0;text-align:center}
.qz-head h2{margin:0;font-size:28px;font-weight:800;letter-spacing:-.5px}
.qz-head p{margin:8px auto 0;max-width:470px;font-size:15px;line-height:21px;color:#aab4dd}
.qz-warn{text-align:left;background:#f4f3ee;color:#0b0b0b;border:1.5px solid #4c6fff;border-left:5px solid #4c6fff;border-radius:12px;padding:16px 22px;margin:22px auto 0;max-width:580px;font-family:'Inter',system-ui,sans-serif}
.qz-warn-t{display:flex;align-items:center;gap:8px;font-weight:800;font-size:17px}
.qz-warn p{margin:8px 0 0;font-weight:700;font-size:16px;line-height:26px;color:#0b0b0b}
.qz-card{margin:30px 16px 0;background:#0a0a0c;border:1px solid #1e2129;border-radius:22px;padding:22px 20px 22px}
.qz-top{display:flex;align-items:center;gap:12px;min-height:32px}
.qz-back{width:32px;height:32px;border-radius:50%;border:1px solid #2a2e3a;background:transparent;color:#5b78ff;display:flex;align-items:center;justify-content:center}
.qz-back:hover{border-color:#5b78ff}
.qz-back[hidden]{display:none}
.qz-step{font-size:12px;font-weight:700;letter-spacing:3px;color:#5b78ff}
.qz-pct{margin-left:auto;font-size:12px;font-weight:700;letter-spacing:2px;color:#5b78ff}
.qz-bar{height:4px;border-radius:4px;background:#1f222a;margin:14px 0 22px;overflow:hidden}
.qz-bar i{display:block;height:100%;width:11%;background:#4c6fff;border-radius:4px;transition:width .35s ease}
.qz-q{font-size:20px;line-height:28px;font-weight:800;letter-spacing:-.3px;color:#fff}
.qz-q span{color:#4c6fff}
.qz-sub{margin-top:4px;font-size:14px;line-height:20px;color:#9aa3b5}
.qz-opts{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.qz-opt{display:flex;align-items:center;gap:14px;width:100%;min-height:54px;padding:10px 14px;border-radius:12px;border:1px solid #1f232c;background:#0d0e12;color:#e8ebf2;font-family:'Inter',system-ui,sans-serif;font-size:16px;text-align:left;transition:border-color .15s,background .15s}
.qz-opt:hover{border-color:#3a4a9a}
.qz-opt .k{flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid #262a35;background:#0a0b10;color:#5b78ff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}
.qz-opt.on{border-color:#4c6fff;background:rgba(76,111,255,.12)}
.qz-opt.on .k{background:#4c6fff;border-color:#4c6fff;color:#fff}
.qz-okrow{display:flex;align-items:center;gap:14px;margin-top:20px}
.qz-ok{height:44px;padding:0 22px;border-radius:10px;border:0;background:#4c6fff;color:#fff;font-family:'Inter',system-ui,sans-serif;font-weight:800;font-size:15px;display:flex;align-items:center;gap:8px;transition:background .15s,opacity .15s}
.qz-ok:hover{background:#6380ff}
.qz-ok:disabled{background:#26336f;color:#b9c3ee;cursor:not-allowed}
.qz-ok.wide{width:100%;justify-content:center;height:50px}
.qz-hint{font-size:13px;color:#9aa3b5}
.qz-search{position:relative;margin-top:18px}
.qz-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#aab2c2;pointer-events:none}
.qz-in{width:100%;height:50px;border-radius:12px;border:1px solid #1f232c;background:#0d0e12;color:#fff;font-family:'Inter',system-ui,sans-serif;font-size:16px;padding:0 16px;outline:none;transition:border-color .15s,box-shadow .15s}
.qz-in::placeholder{color:#5f6778}
.qz-in:focus{border-color:#4c6fff;box-shadow:0 0 0 3px rgba(76,111,255,.18)}
.qz-search .qz-in{padding-left:44px}
.qz-sugg{margin-top:6px;border:1px solid #1f232c;border-radius:12px;background:#0d0e12;overflow:hidden}
.qz-sugg button{display:block;width:100%;text-align:left;padding:12px 16px;border:0;background:transparent;color:#e8ebf2;font-family:inherit;font-size:15px}
.qz-sugg button:hover,.qz-sugg button.act{background:rgba(76,111,255,.15)}
.qz-lbl{margin:18px 0 8px;font-size:11px;font-weight:700;letter-spacing:2.5px;color:#aeb6c6}
.qz-chips{display:flex;flex-wrap:wrap;gap:8px}
.qz-chip{height:36px;padding:0 14px;border-radius:18px;border:1px solid #23262f;background:#0d0e12;color:#e8ebf2;font-family:inherit;font-size:14px}
.qz-chip:hover{border-color:#4c6fff}
.qz-note{margin-top:14px;font-size:13px;color:#9aa3b5}
.qz-phone{display:flex;gap:8px}
.qz-ddi{flex-shrink:0;height:50px;padding:0 14px;border-radius:12px;border:1px solid #1f232c;background:#0d0e12;display:flex;align-items:center;gap:8px;font-size:15px;color:#e8ebf2}
.qz-err{margin-top:6px;font-size:13px;color:#ff8a70;min-height:0}
.qz-done{text-align:center;padding:14px 6px 6px}
.qz-done .ic{width:76px;height:76px;margin:0 auto;border-radius:50%;background:rgba(76,111,255,.18);border:2px solid #4c6fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 30px rgba(76,111,255,.5)}
.qz-done h3{margin:18px 0 8px;font-size:24px;font-weight:800}
.qz-done p{margin:0 auto;max-width:440px;font-size:16px;line-height:24px;color:#b9c1d3}
.qz-wa{display:inline-flex;align-items:center;gap:10px;height:50px;padding:0 24px;border-radius:10px;background:#25d366;color:#04210f;font-weight:800;font-size:16px;margin-top:20px}
.qz-lgpd{margin-top:12px;font-size:12px;line-height:17px;color:#7f889b;text-align:center}
.qz-lgpd a{color:#aab8ff;text-decoration:underline}
/* pop-up no celular: inteiro na tela, sem rolar */
@media (max-width:820px){
  #quiz{padding:0!important;align-items:flex-end!important;overflow:hidden!important}
  .qz-panel{border-radius:18px 18px 0 0!important;min-height:0!important;max-height:100vh;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding-bottom:max(8px,env(safe-area-inset-bottom))!important}
  .qz-x{top:6px!important;right:6px!important}
  .qz-head{padding:14px 44px 0 16px!important;flex-shrink:0}
  .qz-head h2{font-size:19px!important}
  .qz-head p{font-size:12.5px!important;line-height:17px!important;margin-top:3px!important}
  .qz-warn{padding:8px 12px!important;margin-top:10px!important;border-left-width:4px!important}
  .qz-warn-t{font-size:13px!important;gap:6px!important}
  .qz-warn-t svg{width:15px;height:15px}
  .qz-warn p{font-size:12px!important;line-height:16.5px!important;margin-top:3px!important}
  .qz-card{margin:12px 8px 0!important;padding:12px 12px 14px!important;border-radius:16px!important;overflow-y:auto;min-height:0;-webkit-overflow-scrolling:touch}
  .qz-top{min-height:28px}
  .qz-back{width:28px;height:28px}
  .qz-bar{margin:9px 0 12px!important}
  .qz-q{font-size:16.5px!important;line-height:22px!important}
  .qz-sub{font-size:12.5px!important;line-height:17px!important}
  .qz-opts{gap:7px!important;margin-top:12px!important}
  .qz-opts.many{display:grid!important;grid-template-columns:1fr 1fr}
  .qz-opt{min-height:44px!important;padding:6px 10px!important;font-size:14px!important;gap:10px!important;border-radius:10px!important}
  .qz-opts.many .qz-opt{font-size:12.5px!important;line-height:16px;padding:6px 8px!important;gap:7px!important}
  .qz-opt .k{width:24px!important;height:24px!important;font-size:11px!important;border-radius:6px!important}
  .qz-okrow{margin-top:12px!important}
  .qz-ok{height:42px!important}
  .qz-ok.wide{height:46px!important}
  .qz-lbl{margin:9px 0 5px!important}
  .qz-in{height:44px!important;font-size:16px!important}
  .qz-ddi{height:44px!important}
  .qz-search{margin-top:12px!important}
  .qz-chip{height:32px!important;font-size:13px!important;padding:0 10px!important}
  .qz-chips{gap:6px!important}
  .qz-note{margin-top:8px!important}
  .qz-err{margin-top:3px!important;font-size:12px!important}
  .qz-lgpd{margin-top:8px!important}
  .qz-done{padding:6px 0 4px!important}
  .qz-done .ic{width:60px!important;height:60px!important}
  .qz-done h3{font-size:20px!important;margin:12px 0 6px!important}
  .qz-done p{font-size:14px!important;line-height:20px!important}
  .qz-hint{display:none}
  .qz-warn{max-width:none!important;margin-right:0!important}
}
#qteaser .qz-warn{margin-left:0;margin-right:0;max-width:none}
#qteaser .qz-q{font-size:21px}
@media (max-width:820px){
  #quiz{padding:0;align-items:stretch}
  .qz-panel{border-radius:0;min-height:100%;max-width:none;border:0}
  .qz-head{padding:22px 44px 0 20px;text-align:left}
  .qz-head h2{font-size:22px}
  .qz-head p{font-size:14px;margin-left:0}
  .qz-warn{padding:12px 14px;margin-top:16px}
  .qz-warn-t{font-size:15px}
  .qz-warn p{font-size:14px;line-height:21px}
  .qz-card{margin:20px 10px 0;padding:18px 14px}
  .qz-q{font-size:18px;line-height:25px}
  #qteaser{margin-top:30px;padding:26px 16px!important}
  #qteaser h3{font-size:24px!important}
}
