.mascot-widget{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));z-index:40;width:180px;font-family:var(--font);pointer-events:none}
.mascot-widget [hidden]{display:none!important}
.mascot-widget button,.mascot-widget a{pointer-events:auto;-webkit-tap-highlight-color:transparent}
.mascot-widget button{font-family:inherit;cursor:pointer}
.mascot-widget button:focus-visible,.mascot-widget a:focus-visible{outline:3px solid #1968b3;outline-offset:4px}
.mascot-character-zone{position:relative}
.mascot-trigger{display:block;width:100%;border:0;padding:0;background:none;color:var(--ink);text-align:center;touch-action:manipulation}
.mascot-hint{display:inline-block;padding:7px 11px;background:#fff;border:1px solid #dce3e9;border-radius:12px 12px 3px 12px;font-size:.875rem;font-weight:800;line-height:1.4;box-shadow:0 3px 14px #142b4017;position:relative;z-index:1;margin-bottom:-12px;transition:transform .2s}
.mascot-art{display:block;width:180px;height:252px;background-image:url('/assets/guilherme-sprite.webp');background-size:600% 100%;background-position:0% 50%;background-repeat:no-repeat;pointer-events:none;filter:drop-shadow(0 7px 5px #142b4020);transform-origin:50% 100%}
.mascot-minimize{position:absolute;right:-6px;top:37px;z-index:2;width:44px;height:44px;border:1px solid #dce3e9;border-radius:50%;background:#fff;color:var(--muted);font-size:1.5rem;line-height:1;box-shadow:0 3px 12px #142b4010}
.mascot-contact-row{display:flex;gap:7px;justify-content:flex-end;align-items:center;margin-top:-9px;position:relative;z-index:3}
.mascot-whatsapp{display:flex;justify-content:center;align-items:center;gap:9px;background:#146e4f;color:#fff;border:1px solid #ffffff70;border-radius:28px;padding:13px 18px;min-height:48px;box-shadow:0 4px 20px #142b4030;font-size:.875rem;font-weight:800;line-height:1.4;white-space:nowrap;width:100%}
.mascot-whatsapp:hover,.mascot-panel-whatsapp:hover{background:#0c533a}
.mascot-restore{flex:none;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--ink);border:1px solid var(--line);font-size:1.25rem;box-shadow:0 3px 14px #142b4017}
.mascot-panel{pointer-events:auto;position:absolute;right:calc(100% + 14px);bottom:55px;width:min(310px,calc(100vw - 40px));padding:26px 23px 20px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 45px #142b402a;text-align:left;max-height:calc(100dvh - 60px);overflow-y:auto}
.mascot-panel-close{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:38px;height:38px;border:0;background:none;font-size:1.5rem;color:var(--muted);border-radius:8px}
.mascot-panel .mascot-kicker{font-size:.75rem;letter-spacing:.09em;font-weight:800;color:var(--orange-dark);margin:8px 20px 10px 0}
.mascot-panel h2{font-size:1.5rem;line-height:1.22;letter-spacing:-.03em;margin:0 0 12px}
.mascot-panel p{font-size:1rem;line-height:1.6;margin:0 0 18px;color:var(--muted)}
.mascot-panel-whatsapp{display:flex;align-items:center;justify-content:center;gap:9px;font-size:.875rem;font-weight:800;padding:13px 10px;border-radius:6px;background:#146e4f;color:white;min-height:48px}
.mascot-widget.is-minimized{width:200px}
.mascot-widget.is-minimized .mascot-contact-row{margin-top:0}
.mascot-widget.is-open .mascot-hint{visibility:hidden}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.mascot-trigger:hover .mascot-hint{transform:translateY(-3px)}}
@media(max-width:620px){.mascot-widget{width:142px;right:max(12px,env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom))}.mascot-art{width:142px;height:198.8px}.mascot-hint{font-size:.875rem;padding:6px 8px;max-width:142px;line-height:1.3;margin-bottom:-7px}.mascot-minimize{width:38px;height:38px;top:45px;right:-5px}.mascot-whatsapp{padding:12px 13px;gap:6px;font-size:.875rem}.mascot-contact-row{margin-top:-6px}.mascot-panel{right:0;bottom:calc(100% + 10px);width:min(302px,calc(100vw - 24px));padding:24px 21px 16px;max-height:calc(100dvh - 300px)}.mascot-panel .mascot-kicker{font-size:.75rem}.mascot-widget.is-minimized{width:196px}}
@media(max-height:560px){.mascot-art{width:120px;height:168px}.mascot-widget{width:120px}.mascot-hint{display:none}.mascot-minimize{top:0}.mascot-panel{right:calc(100% + 12px);bottom:0;max-height:calc(100dvh - 35px);width:min(285px,calc(100vw - 162px))}}
@media(prefers-reduced-motion:reduce){.mascot-hint{transition:none}}
.mascot-pause{position:absolute;right:-6px;top:86px;z-index:2;width:44px;height:44px;border:1px solid #dce3e9;border-radius:50%;background:#fff;color:var(--muted);font-size:1.15rem;line-height:1;box-shadow:0 3px 12px #142b4010}
.mascot-pause:disabled{cursor:default;opacity:.6}
.mascot-art{will-change:auto}
.mascot-widget.is-moving .mascot-art{will-change:transform}
@media(max-width:620px){.mascot-pause{width:38px;height:38px;top:88px;right:-5px}}
@media(max-height:560px){.mascot-pause{top:45px}}
