/* Custom site overrides and page components
   This file centralizes small overrides and UI components that were previously inline.
*/

/* Utility helpers */
.mm-w-200{width:200px !important;}
.mm-pos-small{width:200px !important;}
.mm-pos-right-90{left:90% !important;}

/* Mobile menu stability overrides */
.ed-mm-inn { right: auto; left: 0; transform: translateX(-100%); will-change: transform; }
.ed-mm-inn.ed-mm-act { transform: translateX(0); }
.ed-mm-backdrop { display:none; position:fixed; inset:0; background:rgba(0,0,0,.35); z-index:998; }
.ed-mm-backdrop.show { display:block; }
body.ed-menu-open { overflow:hidden; touch-action:none; }

/* Chatbot widget styles - Modern 2025 Design */
.wl-chat-launch {position:fixed;bottom:24px;right:24px;z-index:9999;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;width:64px;height:64px;border-radius:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 12px 32px -8px rgba(102,126,234,.4);font-size:28px;font-weight:500;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);backdrop-filter:blur(10px);}
.wl-chat-launch:hover {transform:translateY(-2px) scale(1.05);box-shadow:0 16px 40px -12px rgba(102,126,234,.5);background:linear-gradient(135deg,#764ba2 0%,#667eea 100%);}
.wl-chat-panel {position:fixed;bottom:100px;right:24px;width:380px;max-height:580px;background:rgba(255,255,255,0.95);border:1px solid rgba(255,255,255,0.2);border-radius:24px;box-shadow:0 24px 64px -16px rgba(0,0,0,.15);display:flex;flex-direction:column;z-index:9999;overflow:hidden;font-family:'Open Sans',sans-serif;backdrop-filter:blur(20px);}
.wl-chat-header {padding:16px 20px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;display:flex;align-items:center;justify-content:space-between;border-radius:24px 24px 0 0;}
.wl-chat-header h5 {margin:0;font-size:16px;font-weight:600;letter-spacing:.3px;}
.wl-chat-close {background:rgba(255,255,255,0.2);border:0;color:#fff;font-size:20px;cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all 0.2s;}
.wl-chat-close:hover {background:rgba(255,255,255,0.3);transform:rotate(90deg);}
.wl-chat-messages {flex:1;padding:16px 20px 12px;overflow-y:auto;background:rgba(248,250,252,0.8);}
.wl-chat-msg {margin:0 0 16px;display:flex;}
.wl-chat-msg.bot {justify-content:flex-start;}
.wl-chat-msg.user {justify-content:flex-end;}
.wl-chat-bubble {max-width:75%;padding:12px 16px;border-radius:18px;font-size:14px;line-height:1.5;box-shadow:0 3px 12px rgba(0,0,0,.08);transition:all 0.2s;}
.wl-chat-msg.bot .wl-chat-bubble {background:#fff;border:1px solid rgba(226,232,240,0.6);color:#1e293b;border-top-left-radius:6px;}
.wl-chat-msg.user .wl-chat-bubble {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-top-right-radius:6px;}
.wl-chat-input-wrap {padding:16px 20px 20px;border-top:1px solid rgba(226,232,240,0.6);background:rgba(255,255,255,0.9);}
.wl-chat-input-box {display:flex;gap:12px;}
.wl-chat-input-box input {flex:1;border:2px solid rgba(203,213,225,0.8);border-radius:24px;padding:12px 18px;font-size:14px;transition:all 0.2s;background:rgba(255,255,255,0.9);}
.wl-chat-input-box input:focus {border-color:#667eea;outline:none;box-shadow:0 0 0 3px rgba(102,126,234,0.1);}
.wl-chat-input-box button {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:0;border-radius:24px;padding:12px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s;}
.wl-chat-input-box button:hover {transform:translateY(-1px);box-shadow:0 6px 20px rgba(102,126,234,0.3);}
.wl-chat-tip {font-size:11px;color:#64748b;text-align:center;margin-top:8px;}
@media (max-width:560px){.wl-chat-panel{right:12px;left:12px;width:auto;bottom:90px;max-height:70vh;}.wl-chat-launch{width:56px;height:56px;right:16px;bottom:16px;font-size:24px;}}
