.chat-bubble,.chat-window{--c-navy: var(--navy, #273F4F);--c-navy-deep: var(--navy-deep, #16283A);--c-navy-mid: var(--navy-mid, #24404F);--c-coral: var(--coral, #FE7743);--c-blue: var(--blue, #447D9B);--c-blue-light: var(--blue-light, #7FA9BF);--c-blue-soft: var(--blue-soft, rgba(68, 125, 155, .1));--c-ground: var(--ground, #F7F9FB);--c-surface: var(--surface, #FFFFFF);--c-surface-2: var(--surface-2, #EEF3F7);--c-line: var(--line, #E3E9EE);--c-line-strong: var(--line-strong, #CFDAE3);--c-ink: var(--ink, #273F4F);--c-ink-mute: var(--ink-mute, #74879A);--c-on-dark: var(--on-dark, #FFFFFF);--c-on-dark-soft: var(--on-dark-soft, #CBD5E1);--c-shadow: var(--shadow, 0 10px 30px rgba(39, 63, 79, .08));--c-shadow-lift: var(--shadow-lift, 0 18px 44px rgba(39, 63, 79, .16));--c-hex: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);font-family:IBM Plex Sans,system-ui,-apple-system,Segoe UI,sans-serif}.chat-bubble:focus-visible,.chat-window :focus-visible{outline:3px solid var(--c-coral);outline-offset:3px}.chat-bubble{position:fixed;bottom:20px;right:20px;width:60px;height:60px;border-radius:14px;background:var(--c-navy);border:1px solid var(--c-navy-deep);cursor:pointer;box-shadow:var(--c-shadow-lift);z-index:1050;transition:transform .18s ease,background .18s ease;padding:0;display:flex;align-items:center;justify-content:center}.chat-bubble:after{content:"";position:absolute;top:-4px;right:-4px;width:12px;height:12px;border-radius:999px;background:var(--c-coral);border:2px solid var(--c-ground)}.chat-bubble:hover{transform:translateY(-2px);background:var(--c-navy-mid)}.chat-bubble-icon{width:28px;height:28px;object-fit:contain;pointer-events:none}.chat-window{position:fixed;bottom:20px;right:20px;width:400px;height:600px;max-height:calc(100dvh - 40px);background:var(--c-surface);border:1px solid var(--c-line);border-radius:14px;box-shadow:var(--c-shadow-lift);display:flex;flex-direction:column;min-height:0;z-index:1000;overflow:hidden;color:var(--c-ink)}.chat-header{background:var(--c-navy-deep);color:var(--c-on-dark);padding:14px 16px;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2;border-bottom:3px solid var(--c-coral)}.chat-header-content{display:flex;align-items:center;gap:12px}.chat-avatar{width:40px;height:40px;flex:none;clip-path:var(--c-hex);background:var(--c-blue);color:var(--c-on-dark);display:grid;place-items:center}.chat-avatar svg{display:block}.chat-header h3{margin:0;font-family:Montserrat,IBM Plex Sans,sans-serif;font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--c-on-dark)}.chat-header p{margin:2px 0 0;font-family:Montserrat,sans-serif;font-size:10.5px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--c-blue-light)}.chat-close-btn{background:transparent;border:1px solid rgba(127,169,191,.4);color:var(--c-on-dark);width:36px;height:36px;min-width:36px;min-height:36px;border-radius:999px;cursor:pointer;padding:0;display:grid;place-items:center;transition:background .15s ease}.chat-close-btn:hover{background:#7fa9bf24}.chat-messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px;background:var(--c-ground);display:flex;flex-direction:column;gap:14px;scrollbar-width:thin;scrollbar-color:var(--c-line-strong) transparent}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--c-line-strong);border-radius:3px}.chat-message{display:flex;flex-direction:column;gap:8px;max-width:85%;animation:chat-slide-in .25s ease}@keyframes chat-slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{align-self:flex-end;align-items:flex-end}.chat-message.assistant{align-self:flex-start;align-items:flex-start}.message-bubble{padding:11px 14px;border-radius:12px;line-height:1.5;font-size:14px;overflow-wrap:anywhere}.chat-message.user .message-bubble{background:var(--c-navy);color:#fff;border-bottom-right-radius:4px}.chat-message.assistant .message-bubble{background:var(--c-surface);color:var(--c-ink);border:1px solid var(--c-line);border-bottom-left-radius:4px}.typing-indicator{display:flex;gap:5px;padding:14px 16px}.typing-indicator span{width:7px;height:7px;border-radius:999px;background:var(--c-blue);animation:chat-typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes chat-typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}.suggestions{display:flex;flex-wrap:wrap;gap:8px}.suggestion-btn{background:var(--c-surface);border:1.5px solid var(--c-line-strong);color:var(--c-ink);padding:7px 12px;border-radius:7px;font-family:Montserrat,IBM Plex Sans,sans-serif;font-size:12.5px;font-weight:700;cursor:pointer;transition:border-color .15s ease,background .15s ease}.suggestion-btn:hover{border-color:var(--c-coral);background:var(--c-surface-2)}.chat-input-container{padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background:var(--c-surface);border-top:1px solid var(--c-line);display:flex;gap:8px;align-items:center}.chat-input{flex:1;min-width:0;padding:11px 14px;border:1.5px solid var(--c-line-strong);border-radius:7px;background:var(--c-surface);color:var(--c-ink);font-family:IBM Plex Sans,system-ui,sans-serif;font-size:14px;transition:border-color .15s ease}.chat-input::placeholder{color:var(--c-ink-mute)}.chat-input:focus{outline:none;border-color:var(--c-blue);box-shadow:0 0 0 3px var(--c-blue-soft)}.chat-input:focus-visible{outline:none}.chat-input:disabled{background:var(--c-surface-2);cursor:not-allowed}.chat-send-btn{width:42px;height:42px;flex:none;border-radius:7px;background:var(--c-coral);border:none;color:var(--c-navy-deep);cursor:pointer;display:grid;place-items:center;padding:0;transition:filter .15s ease}.chat-send-btn:hover:not(:disabled){filter:brightness(1.07)}.chat-send-btn:disabled{opacity:.45;cursor:not-allowed}@media(max-width:768px){.chat-window{top:max(8px,env(safe-area-inset-top));right:8px;bottom:max(8px,env(safe-area-inset-bottom));left:8px;width:auto;height:auto;max-width:none;max-height:none;z-index:1100}.chat-bubble{bottom:15px;right:15px;width:55px;height:55px}.chat-messages{padding:12px}.message-bubble{font-size:13.5px}.chat-input{font-size:16px}}@media(prefers-reduced-motion:reduce){.chat-message,.typing-indicator span{animation:none}.chat-bubble,.chat-close-btn,.suggestion-btn,.chat-send-btn{transition:none}}.back-to-top{position:fixed;right:29px;bottom:94px;z-index:900;width:42px;height:42px;border-radius:999px;border:1px solid #CFDAE3;background:#fff;color:#273f4f;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 30px #273f4f14;padding:0;transition:background .15s ease}.back-to-top:hover{background:#eef3f7}@media(max-width:768px){.back-to-top{right:23px;bottom:85px}}
