.gigu-companion{position:fixed;z-index:10000;right:18px;bottom:10px;width:220px;height:270px;pointer-events:none;display:flex;align-items:flex-end;justify-content:center;isolation:isolate;animation:gigu-float 3.8s ease-in-out infinite}.gigu-companion[hidden],.gigu-companion-reopen[hidden]{display:none}.gigu-companion-avatar{position:relative;z-index:1;display:block;width:auto;height:224px;max-width:170px;object-fit:contain;object-position:bottom;filter:drop-shadow(0 5px 8px #142c3826);pointer-events:none}.gigu-companion-message{position:absolute;z-index:2;right:100px;bottom:151px;width:max-content;max-width:min(250px,calc(100vw - 125px));padding:11px 14px;border:1px solid #b7d7d4;border-radius:15px 15px 15px 4px;background:#fffefa;color:#294452;box-shadow:0 7px 22px #173a4a1a;font:600 14px/1.55 system-ui,-apple-system,"Noto Sans JP",sans-serif;letter-spacing:.01em;pointer-events:none}.gigu-companion-close{position:absolute;z-index:3;top:10px;right:8px;width:30px;height:30px;border:1px solid #b7d7d4;border-radius:50%;background:#fffefa;color:#294452;box-shadow:0 2px 9px #173a4a20;font:20px/1 system-ui,sans-serif;cursor:pointer;pointer-events:auto}.gigu-companion-reopen{position:fixed;z-index:10000;right:14px;bottom:14px;border:1px solid #9cc9c1;border-radius:20px;background:#fffefa;color:#294452;padding:9px 14px;box-shadow:0 5px 18px #173a4a20;font:700 13px system-ui,-apple-system,"Noto Sans JP",sans-serif;cursor:pointer}.gigu-pop .gigu-companion-message{animation:gigu-bubble-in .24s ease-out}@keyframes gigu-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes gigu-bubble-in{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.gigu-companion{right:5px;bottom:6px;width:164px;height:205px}.gigu-companion-avatar{height:166px;max-width:126px}.gigu-companion-message{right:70px;bottom:112px;max-width:min(210px,calc(100vw - 88px));padding:9px 11px;font-size:12px}.gigu-companion-close{top:5px;right:5px;width:27px;height:27px}.gigu-companion-reopen{right:8px;bottom:8px}}@media(prefers-reduced-motion:reduce){.gigu-companion,.gigu-pop .gigu-companion-message{animation:none}}
