.faq-root{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:2147483000;font-family:Inter,system-ui,sans-serif}
.faq-fab{touch-action:manipulation;-webkit-tap-highlight-color:transparent;width:52px;height:52px;border-radius:50%;border:0;cursor:pointer;font-size:22px;font-weight:600;color:#fff;background:#141414;box-shadow:0 6px 20px rgba(0,0,0,.25)}
.faq-code .faq-fab{background:#2dd4bf;color:#06201c}
.faq-panel{position:absolute;right:0;bottom:64px;width:340px;max-width:calc(100vw - 32px);max-height:min(560px,calc(100vh - 110px));display:flex;flex-direction:column;background:#fff;color:#141414;border:1px solid #e5e3dc;border-radius:14px;box-shadow:0 16px 48px rgba(0,0,0,.28);overflow:hidden}
.faq-panel[hidden],#faq-form[hidden],#faq-lista[hidden]{display:none}
.faq-head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid #e5e3dc;font-size:.9rem}
.faq-head button{background:none;border:0;cursor:pointer;font-size:1rem;color:#6f6d64}
.faq-body{overflow-y:auto;padding:8px 16px 16px}
.faq-item{border-bottom:1px solid #eeece6;padding:10px 0}
.faq-item summary{cursor:pointer;font-weight:500;font-size:.9rem;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";float:right;color:#6f6d64}
.faq-item[open] summary::after{content:"–"}
.faq-item p{margin:8px 0 0;font-size:.85rem;line-height:1.5;color:#4a4840}
.faq-link{margin-top:14px;background:none;border:0;padding:0;cursor:pointer;font-size:.88rem;font-weight:500;color:#b5651d;text-decoration:underline;text-align:left}
#faq-form label{display:block;font-size:.8rem;color:#6f6d64;margin-top:10px}
#faq-form input:not(.hp),#faq-form textarea{display:block;width:100%;margin-top:4px;padding:9px 10px;font:inherit;font-size:16px;color:#141414;background:#fff;border:1px solid #d9d6cc;border-radius:8px;box-sizing:border-box}
.faq-intro{font-size:.85rem;margin:8px 0 0;color:#4a4840}
.faq-estado{min-height:1.2em;font-size:.82rem;margin:8px 0 0}
.faq-estado.erro{color:#b3261e}.faq-estado.ok{color:#1b7a3a}
.faq-acoes{display:flex;gap:8px;justify-content:flex-end;margin-top:6px}
.faq-acoes button{padding:9px 16px;border-radius:8px;font:inherit;font-size:.88rem;cursor:pointer}
.faq-pri{background:#141414;color:#fff;border:0}.faq-sec{background:#fff;color:#141414;border:1px solid #d9d6cc}
.faq-pri[disabled]{opacity:.6;cursor:wait}
@media (max-width:480px){.faq-panel{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));width:auto;max-width:none}}
