/* Botão flutuante do WhatsApp (direita) + aba "Rastrear pedido" (esquerda). Ficam nas bordas, acima das barras de compra. */
.fw-wa{position:fixed;right:14px;bottom:24px;z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}
.fw-wa>*{pointer-events:auto}
.fw-wa__btn{width:56px;height:56px;border-radius:50%;background:#128c4a;color:#fff;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.28);border:0;cursor:pointer;text-decoration:none}
.fw-wa__btn:hover{background:#0e7a40}
.fw-wa__btn svg{width:30px;height:30px;fill:currentColor}
.fw-wa__btn:focus-visible,.fw-tab:focus-visible,.fw-dica__x:focus-visible,.fw-d button:focus-visible,.fw-d input:focus-visible,.fw-d a:focus-visible{outline:3px solid #1f1f27;outline-offset:2px;box-shadow:0 0 0 5px #fff}
.fw-dica{position:relative;max-width:232px;background:#fff;color:#1f1f27;border:1px solid #e6e6ec;border-radius:14px;padding:12px 34px 12px 14px;box-shadow:0 8px 24px rgba(0,0,0,.18);font:600 14px/1.35 Inter,system-ui,sans-serif;animation:fw-in .35s ease both}
.fw-dica a{color:#0b6b38;font-weight:700;text-decoration:underline}
.fw-dica__x{position:absolute;top:2px;right:2px;width:44px;height:44px;border:0;background:transparent;color:#52525e;font-size:22px;line-height:1;cursor:pointer;border-radius:10px}
.fw-dica[hidden]{display:none}
@keyframes fw-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.fw-tab{position:fixed;left:0;top:46%;z-index:50;width:48px;min-height:64px;padding:8px 4px;border:0;border-radius:0 14px 14px 0;background:#7c3aed;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.25);font:700 10px/1.1 Inter,system-ui,sans-serif;text-align:center}
.fw-tab:hover{background:#6d28d9}
.fw-tab svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.fw-ov{position:fixed;inset:0;z-index:1000;background:rgba(31,31,39,.55)}
.fw-d{position:fixed;left:0;top:0;bottom:0;z-index:1001;width:min(400px,100vw);background:#fff;color:#1f1f27;overflow:auto;padding:20px 18px 28px;box-shadow:8px 0 30px rgba(0,0,0,.25);font:400 15px/1.45 Inter,system-ui,sans-serif;animation:fw-sl .22s ease both}
@keyframes fw-sl{from{transform:translateX(-30px);opacity:0}to{transform:none;opacity:1}}
.fw-d[hidden],.fw-ov[hidden]{display:none}
.fw-d h2{margin:0 40px 6px 0;font:800 22px/1.2 "Hanken Grotesk",Inter,system-ui,sans-serif}
.fw-d p{margin:0 0 14px;color:#52525e}
.fw-d__x{position:absolute;top:8px;right:8px;width:44px;height:44px;border:0;border-radius:10px;background:transparent;color:#1f1f27;font-size:26px;line-height:1;cursor:pointer}
.fw-d label{display:block;font-weight:700;margin:12px 0 4px}
.fw-d input{width:100%;min-height:48px;padding:10px 12px;border:1.5px solid #8a8a96;border-radius:10px;font:inherit;font-size:16px;background:#fff;color:#1f1f27}
.fw-d .fw-go{width:100%;min-height:48px;margin-top:16px;border:0;border-radius:10px;background:#7c3aed;color:#fff;font:700 16px Inter,system-ui,sans-serif;cursor:pointer}
.fw-d .fw-go:disabled{opacity:.6;cursor:default}
.fw-msg{margin-top:12px;font-weight:600}
.fw-msg.err{color:#b00020}
.fw-res{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:12px}
.fw-res li{border:1px solid #e6e6ec;border-radius:14px;padding:14px;background:#fafafb}
.fw-res b{display:block;font-size:16px}
.fw-res .fw-pill{display:inline-block;margin:6px 0;padding:3px 10px;border-radius:999px;background:#ede9fe;color:#4c1d95;font-weight:700;font-size:13px}
.fw-res .fw-pill.ok{background:#dcfce7;color:#14532d}
.fw-res .fw-pill.warn{background:#fef3c7;color:#78350f}
.fw-res .fw-pill.bad{background:#fee2e2;color:#7f1d1d}
.fw-res small{display:block;color:#52525e}
.fw-res a{display:inline-block;margin-top:8px;color:#4c1d95;font-weight:700;text-decoration:underline;min-height:24px}
.fw-page{max-width:520px;margin:0 auto;padding:28px 16px 80px}
.fw-page .fw-d{position:static;width:auto;box-shadow:none;animation:none;padding:0}
@media(max-width:899px){.fw-wa{bottom:92px}}
.fw-wa.fw-alto{bottom:92px}
@media(max-width:560px){.fw-wa{right:10px}.fw-tab{top:42%}}
@media(prefers-reduced-motion:reduce){.fw-dica,.fw-d{animation:none}}
