/* Approved demo proportions and motion; all selectors scoped to Finn. */
.fangst-finn{
 position:fixed;z-index:90;bottom:calc(95px + env(safe-area-inset-bottom));
 right:max(12px,env(safe-area-inset-right));width:min(250px,65vw);
 pointer-events:none!important;opacity:0;transform:translateX(120vw);
 transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .35s;
}
.fangst-finn *{pointer-events:none!important;box-sizing:border-box}
.fangst-finn.visible{opacity:1;transform:translateX(0)}
.fangst-finn.exit{transform:translateX(120vw);opacity:0}
.fangst-finn .fangst-finn-fish{
 display:block;width:190px;max-width:100%;height:auto;margin:0 0 0 auto;
 filter:drop-shadow(0 6px 9px #0019);transform-origin:65% 55%;
 animation:fangst-finn-swim 1.2s ease-in-out infinite alternate;
}
.fangst-finn.laugh .fangst-finn-fish{animation:fangst-finn-laugh .17s ease-in-out 7 alternate}
.fangst-finn.shake .fangst-finn-fish{animation:fangst-finn-shake .13s ease-in-out 6 alternate}
.fangst-finn .fangst-finn-bubble{
 background:#fff!important;color:#152b3e!important;border:3px solid #17618b!important;
 border-radius:20px;padding:12px 15px;font-family:system-ui,Arial,sans-serif;
 font-weight:750;font-size:14px;line-height:1.35;box-shadow:0 4px 14px #0003;
 position:relative;margin-bottom:10px;
}
.fangst-finn-bubble::after{content:'';position:absolute;right:24px;bottom:-14px;border-left:13px solid transparent;border-right:13px solid transparent;border-top:15px solid #fff}
.fangst-finn-setting{margin:14px 0}
.fangst-finn-setting label{display:flex;align-items:center;gap:12px;min-height:48px;cursor:pointer}
.fangst-finn-setting input{width:24px;height:24px;flex-shrink:0;accent-color:var(--lr-action,var(--turq,#17618b))}
@keyframes fangst-finn-swim{to{transform:rotate(4deg) translateY(-8px)}}
@keyframes fangst-finn-laugh{to{transform:translateY(-6px) rotate(3deg) scale(1.035)}}
@keyframes fangst-finn-shake{to{transform:rotate(-5deg)}}
@media(prefers-reduced-motion:reduce){.fangst-finn .fangst-finn-fish{animation:none!important}.fangst-finn{transition:none!important}}
/* Accessible independent switches inherit the current theme's card and text colors. */
.fangst-finn-setting input[role=switch]{appearance:none;-webkit-appearance:none;position:relative;width:48px;height:28px;border:2px solid currentColor;border-radius:999px;background:transparent;cursor:pointer;margin:0;color:inherit;transition:background .2s}
.fangst-finn-setting input[role=switch]::before{content:'';display:block;width:18px;height:18px;border-radius:50%;background:currentColor;position:absolute;top:3px;left:3px;transition:transform .2s}
.fangst-finn-setting input[role=switch]:checked{background:var(--lr-action,var(--turq,#17618b));color:inherit}
.fangst-finn-setting input[role=switch]:checked::before{transform:translateX(20px)}
.fangst-finn-setting input[role=switch]:focus-visible{outline:3px solid currentColor;outline-offset:4px}
