/* Blue AI medallion: self-contained entry decoration, no chat behavior changes. */
.fm-ai-entry{position:relative;-webkit-tap-highlight-color:transparent;transition:transform .18s ease,filter .18s ease!important}
.fm-ai-entry .fm-ai-mark{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 32px!important;width:32px!important;height:32px!important;box-sizing:border-box!important;margin:0!important;border:3px solid #2c61a5!important;border-radius:50%!important;background:radial-gradient(circle at 36% 68%,#198bb8 0,#1165a9 48%,#0859a5 74%)!important;color:white!important;box-shadow:0 5px 9px #10274535,inset 0 0 0 3px #087ac44d!important;font-style:normal!important;vertical-align:middle;isolation:isolate}
.fm-ai-mark strong{position:relative;z-index:1;font:850 11px/1 system-ui,sans-serif!important;letter-spacing:-.7px!important;color:#f7fcff!important;text-shadow:0 1px 1px #fff8,0 0 7px #b7e8ff70;pointer-events:none}
.fm-ai-mark svg{position:absolute!important;inset:9%!important;width:82%!important;height:82%!important;color:#d3f0ff!important;animation:fmAiOrbit 9s linear infinite;pointer-events:none}
.fm-ai-mark:after{content:'';position:absolute;inset:3px;border-radius:50%;background:linear-gradient(120deg,transparent 30%,#ffffff20 48%,transparent 65%);opacity:.4;animation:fmAiGleam 4.8s ease-in-out infinite;pointer-events:none}
#fm-footer-navigation#fm-footer-navigation{overflow:visible!important}
#fm-footer-navigation#fm-footer-navigation [data-helpdesk]{overflow:visible!important;justify-content:center!important;background:transparent!important;gap:0!important}
#fm-footer-navigation#fm-footer-navigation [data-helpdesk] .fm-ai-mark{width:60px!important;height:60px!important;flex:0 0 60px!important;border-width:5px!important;margin-top:-24px!important;box-shadow:0 8px 14px #11263e28,inset 0 0 0 5px #147bc94d!important}
#fm-footer-navigation#fm-footer-navigation [data-helpdesk] .fm-ai-mark strong{font-size:22px!important;letter-spacing:-1.2px!important}
#fm-footer-navigation#fm-footer-navigation [data-helpdesk]>span{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.fm-ai-entry[data-help-reservation]{display:inline-flex!important;align-items:center!important;gap:7px!important}
.fm-ai-entry[data-help-reservation] .fm-ai-mark,[data-chat-open]>.fm-ai-entry .fm-ai-mark{width:26px!important;height:26px!important;flex-basis:26px!important;border-width:2px!important}
[data-chat-open]>.fm-ai-entry .fm-ai-mark{margin-right:7px!important}
.fm-ai-entry:active{transform:scale(.96)!important;filter:brightness(1.08)!important}
.fm-ai-entry.fm-ai-pressed .fm-ai-mark{animation:fmAiPress .48s ease-out}
.fm-ai-entry:focus-visible{outline:2px solid #397ac3!important;outline-offset:4px!important}
@keyframes fmAiOrbit{to{transform:rotate(360deg)}}
@keyframes fmAiGleam{0%,100%{opacity:.15}50%{opacity:.75}}
@keyframes fmAiPress{0%{transform:scale(.9)}55%{transform:scale(1.04)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.fm-ai-entry,.fm-ai-mark,.fm-ai-mark:after,.fm-ai-mark svg{animation:none!important;transition:none!important;transform:none!important}}

/* Idle halo -> fine voice-like waveform -> AI identity. Decorative, never a microphone state. */
.fm-ai-mark strong{animation:fmAiIdentity 8s ease-in-out infinite}
.fm-ai-mark .fm-ai-orbit{animation:fmAiOrbit 8s linear infinite}
.fm-ai-mark .fm-ai-wave{animation:fmAiWaveReveal 8s ease-in-out infinite;opacity:0}
.fm-ai-wave path{transform-box:fill-box;transform-origin:center;animation:fmAiWaveLine 1.6s ease-in-out infinite;animation-delay:var(--phase)}
.fm-ai-mark:after{opacity:.2;background:radial-gradient(circle at 30% 75%,#50bfdd25,transparent 65%)}
@keyframes fmAiIdentity{0%,32%,100%{opacity:1}42%,88%{opacity:0}96%{opacity:1}}
@keyframes fmAiWaveReveal{0%,36%,94%,100%{opacity:0;transform:scale(.9)}48%,78%{opacity:.8;transform:scale(1)}87%{opacity:.25;transform:scale(.96)}}
@keyframes fmAiWaveLine{0%,100%{transform:scaleY(.45);opacity:.45}50%{transform:scaleY(1.12);opacity:.9}}
@media(prefers-reduced-motion:reduce){.fm-ai-mark strong,.fm-ai-mark .fm-ai-orbit,.fm-ai-mark .fm-ai-wave,.fm-ai-wave path{animation:none!important;transform:none!important}.fm-ai-mark strong{opacity:1!important}.fm-ai-mark .fm-ai-wave{opacity:0!important}}

/* One raised button, with a curved white dock instead of a second hard shadow disc. */
#fm-footer-navigation#fm-footer-navigation{padding:8px 0 max(8px,env(safe-area-inset-bottom))!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;isolation:isolate}
#fm-footer-navigation#fm-footer-navigation:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20400%2080%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22%23fcfcfe%22%20d%3D%22M0%2014Q0%200%2014%200H297C313%200%20305%2056%20350%2056C395%2056%20387%200%20400%200V80H0Z%22%2F%3E%3C%2Fsvg%3E") center top/100% 80px no-repeat}
#fm-footer-navigation#fm-footer-navigation>a,#fm-footer-navigation#fm-footer-navigation>button{color:#52565f!important;background:transparent!important;border-radius:0!important}
#fm-footer-navigation#fm-footer-navigation>.active{color:#2d61a3!important;background:transparent!important}
#fm-footer-navigation#fm-footer-navigation [data-helpdesk] .fm-ai-mark{box-shadow:0 10px 14px #13233b2b,inset 0 0 0 5px #147bc94d!important}
#fm-footer-navigation#fm-footer-navigation>:focus-visible{outline-color:#2d61a3!important}
#fm-footer-navigation#fm-footer-navigation{background:#f0f0f5!important}
#fm-footer-navigation#fm-footer-navigation>a>i,#fm-footer-navigation#fm-footer-navigation>a>span,#fm-footer-navigation#fm-footer-navigation>button>i:not(.fm-ai-mark),#fm-footer-navigation#fm-footer-navigation>button>span{color:inherit!important}
#fm-footer-navigation#fm-footer-navigation:after{content:'';position:absolute;top:60px;bottom:0;left:0;right:0;background:#fcfcfe;z-index:-1;pointer-events:none}

/* The raised orb must leave with the mobile navigation, including its overhang. */
@media(max-width:767px){body.b2b-mobile-chrome-hidden #fm-footer-navigation#fm-footer-navigation{visibility:hidden!important;opacity:0!important;pointer-events:none!important;transform:translateY(calc(100% + 48px))!important}body.b2b-mobile-chrome-hidden #fm-footer-navigation#fm-footer-navigation *{visibility:hidden!important;pointer-events:none!important}}

/* Clear touch acknowledgement persists beyond a short tap. */
.fm-ai-entry.fm-control-pressed .fm-ai-mark{transform:scale(.88)!important;filter:brightness(1.24)!important;animation:none!important;transition:transform 100ms ease,filter 100ms ease!important}
.fm-ai-entry[aria-busy=true] .fm-ai-mark{filter:brightness(1.16)!important}
.fm-ai-entry[aria-busy=true] .fm-ai-orbit{animation:fmAiOrbit .8s linear infinite!important}
.fm-ai-entry[aria-busy=true] .fm-ai-wave{opacity:0!important;animation:none!important}
.fm-ai-entry[aria-busy=true] .fm-ai-mark strong{opacity:1!important;animation:none!important}
.fm-wa-chat.fm-wa-chat button.fm-control-pressed,.fm-wa-chat a.fm-control-pressed,.fm-wa-chat summary.fm-control-pressed{filter:brightness(.88)!important;box-shadow:inset 0 0 0 2px #138b8070!important;transition:filter 90ms ease,box-shadow 90ms ease!important}
.fm-wa-chat button:focus-visible,.fm-wa-chat a:focus-visible,.fm-wa-chat summary:focus-visible{outline:2px solid #168b83!important;outline-offset:3px!important}
.fm-wa-chat button:disabled{cursor:default;opacity:.55}
@media(prefers-reduced-motion:reduce){.fm-ai-entry.fm-control-pressed .fm-ai-mark{transform:none!important;transition:none!important}.fm-ai-entry[aria-busy=true] .fm-ai-orbit{animation:none!important}}


/* Sparkle acknowledgement keeps the orb and its touch target stationary. */
.fm-ai-entry.fm-control-pressed .fm-ai-mark,.fm-ai-entry[aria-busy=true] .fm-ai-mark{transform:none!important;scale:1!important;animation:none!important;filter:brightness(1.2)!important}
.fm-ai-entry.fm-control-pressed .fm-ai-mark:before,.fm-ai-entry[aria-busy=true] .fm-ai-mark:before,.fm-ai-entry.fm-control-pressed .fm-ai-mark:after,.fm-ai-entry[aria-busy=true] .fm-ai-mark:after{content:'';position:absolute;width:22px;height:22px;background:#ddf8ff;clip-path:polygon(50% 0,63% 36%,100% 50%,63% 64%,50% 100%,37% 64%,0 50%,37% 36%);pointer-events:none;z-index:5;animation:fmAiSpark 850ms ease-in-out infinite;filter:drop-shadow(0 0 5px #65d9ff)}
.fm-ai-entry.fm-control-pressed .fm-ai-mark:before,.fm-ai-entry[aria-busy=true] .fm-ai-mark:before{top:-5px;right:-4px}
.fm-ai-entry.fm-control-pressed .fm-ai-mark:after,.fm-ai-entry[aria-busy=true] .fm-ai-mark:after{bottom:1px;left:-7px;width:15px;height:15px;animation-delay:260ms}
@keyframes fmAiSpark{0%,100%{transform:scale(.35) rotate(-20deg);opacity:.2}45%{transform:scale(1.12) rotate(15deg);opacity:1}70%{transform:scale(.8) rotate(30deg);opacity:.8}}
@media(prefers-reduced-motion:reduce){.fm-ai-entry.fm-control-pressed .fm-ai-mark:before,.fm-ai-entry[aria-busy=true] .fm-ai-mark:before,.fm-ai-entry.fm-control-pressed .fm-ai-mark:after,.fm-ai-entry[aria-busy=true] .fm-ai-mark:after{animation:none!important;opacity:1;transform:none}}
