/* Holiday Time — site chat assistant */
.fab.ai{background:linear-gradient(145deg,#18ae97,#0c2b3f);border:0;cursor:pointer;padding:0}
.fab.ai svg{width:26px;height:26px}
.fab.ai .ai-dot{position:absolute;top:-3px;right:-3px;width:14px;height:14px;border-radius:50%;background:#e9c77b;border:2px solid #fff;box-shadow:0 0 0 0 rgba(233,199,123,.6);animation:aiDot 2.4s ease-out infinite}
@keyframes aiDot{0%{box-shadow:0 0 0 0 rgba(233,199,123,.55)}70%{box-shadow:0 0 0 10px rgba(233,199,123,0)}100%{box-shadow:0 0 0 0 rgba(233,199,123,0)}}
.fab.ai.is-open .ai-dot{display:none}

.ai-panel{position:fixed;right:88px;bottom:20px;z-index:70;width:min(390px,calc(100vw - 110px));height:min(620px,calc(100vh - 40px));display:flex;flex-direction:column;
  background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 30px 70px -20px rgba(8,26,38,.45),0 0 0 1px rgba(12,43,63,.06);
  font-family:Tajawal,system-ui,sans-serif;transform-origin:bottom right;animation:aiIn .28s cubic-bezier(.2,.8,.2,1)}
[dir=ltr] .ai-panel{right:88px}
.ai-panel[hidden]{display:none}
.ai-panel{padding:0!important;margin:0!important;box-sizing:border-box}
.ai-panel *{box-sizing:border-box}
@keyframes aiIn{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
.ai-head{display:flex;align-items:center;gap:11px;padding:14px 14px 14px 16px;background:linear-gradient(120deg,#0c2b3f 0%,#124a5c 62%,#18ae97 130%);color:#fff;position:relative}
.ai-head::after{content:"";position:absolute;inset:auto 0 0 0;height:2px;background:linear-gradient(90deg,#18ae97,#e9c77b,#18ae97);opacity:.8}
.ai-av{flex:none;width:42px;height:42px;border-radius:14px;background:#fff;display:grid;place-items:center;box-shadow:0 6px 14px rgba(0,0,0,.18)}
.ai-av img{width:28px;height:28px;object-fit:contain}
.ai-ttl{flex:1;min-width:0}.ai-ttl b{display:block;font-size:16px;font-weight:800}
.ai-ttl small{display:flex;align-items:center;gap:6px;font-size:12px;opacity:.85}
.ai-ttl small i{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.25)}
.ai-wa,.ai-x{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);cursor:pointer;transition:background .15s}
.ai-wa:hover,.ai-x:hover{background:rgba(255,255,255,.22)}
.ai-wa svg{width:18px;height:18px}.ai-x svg{width:18px;height:18px}
.ai-log{flex:1;overflow-y:auto;padding:16px 14px 8px;background:linear-gradient(180deg,#f4f8fc,#fff 40%);display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.ai-msg{max-width:86%;padding:10px 14px;border-radius:18px;font-size:15px;line-height:1.75;white-space:pre-wrap;word-wrap:break-word}
.ai-msg.bot{align-self:flex-start;background:#fff;color:#0c2b3f;border:1px solid #e2eaf0;border-start-start-radius:6px;box-shadow:0 4px 14px -10px rgba(12,43,63,.35)}
.ai-msg.me{align-self:flex-end;background:linear-gradient(135deg,#0e8270,#18ae97);color:#fff;border-start-end-radius:6px}
.ai-msg a{color:#0e8270;font-weight:700;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
.ai-msg.me a{color:#fff}
.ai-msg.ok{align-self:center;max-width:100%;background:#e7f7f3;color:#0b6e5f;border:1px solid #bfe9df;font-weight:700;font-size:13.5px;padding:8px 14px;border-radius:999px}
.ai-typing{align-self:flex-start;display:flex;gap:5px;padding:13px 16px;background:#fff;border:1px solid #e2eaf0;border-radius:18px;border-start-start-radius:6px}
.ai-typing i{width:7px;height:7px;border-radius:50%;background:#9fb2c0;animation:aiBlink 1.2s infinite}
.ai-typing i:nth-child(2){animation-delay:.15s}.ai-typing i:nth-child(3){animation-delay:.3s}
@keyframes aiBlink{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
.ai-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.ai-chips button{border:1px solid #cfe7e1;background:#fff;color:#0b6e5f;font:700 13.5px Tajawal,system-ui,sans-serif;padding:8px 13px;border-radius:999px;cursor:pointer;transition:background .15s,border-color .15s}
.ai-chips button:hover{background:#e7f7f3;border-color:#18ae97}
.ai-chips button.hot{background:linear-gradient(135deg,#18ae97,#0f8f7b);border-color:transparent;color:#fff;box-shadow:0 6px 16px -8px rgba(15,143,123,.7)}
.ai-chips button.hot::before{content:"✓ ";opacity:.85}
.ai-chips button.hot:hover{background:linear-gradient(135deg,#1bbfa6,#0f8f7b)}
.ai-form{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid #eef2f5;background:#fff}
.ai-form textarea{flex:1;resize:none;max-height:120px;min-height:46px;border:1.5px solid #e2eaf0;border-radius:15px;background:#f8fbfd;padding:12px 14px;font:500 15.5px/1.5 Tajawal,system-ui,sans-serif;color:#0c2b3f;outline:0;transition:border-color .15s,box-shadow .15s}
.ai-form textarea:focus{border-color:#18ae97;background:#fff;box-shadow:0 0 0 4px rgba(24,174,151,.12)}
.ai-send{flex:none;width:46px;height:46px;border:0;border-radius:15px;background:#0e8270;color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 20px -12px rgba(14,130,112,.9);transition:background .15s,transform .15s}
.ai-send:hover{background:#0b6e5f}.ai-send:disabled{opacity:.6;cursor:progress}
.ai-send svg{width:19px;height:19px}
[dir=rtl] .ai-send svg{transform:scaleX(-1)}
.ai-foot{margin:0;padding:0 14px 10px;text-align:center;font-size:11.5px;color:#8a9caa;background:#fff}
@media (max-width:640px){
  .ai-panel{right:0!important;left:0;bottom:0;width:100%;height:min(88vh,calc(100dvh - 40px));border-radius:22px 22px 0 0;animation:none}
  .ai-msg{font-size:15.5px}
  /* 16px stops iPhone zooming the page when the box is tapped */
  .ai-form textarea{font-size:16px}
  .ai-log{overscroll-behavior:contain}
  html.ai-lock,html.ai-lock body{overflow:hidden!important;overscroll-behavior:none}
}
@media (prefers-reduced-motion:reduce){.ai-panel{animation:none}.fab.ai .ai-dot{animation:none}}
