/* Support follows the approved public-page palette; payment dialog stays above it. */
#chatWidget { font-family:var(--font,Arial,sans-serif); color:var(--ink); }
#chatWidget button { cursor:pointer; font:inherit; }
#chatToggle { position:fixed; right:24px; bottom:24px; z-index:80; display:grid; place-items:center; width:52px; height:52px; border:1px solid var(--accent); border-radius:50%; background:var(--night); color:#fffcf6; font-size:23px; box-shadow:0 5px 20px #0002; }
#chatWindow { position:fixed; right:24px; bottom:88px; z-index:81; display:flex; flex-direction:column; width:min(370px,calc(100vw - 32px)); max-height:min(560px,calc(100dvh - 112px)); background:var(--paper); border:1px solid var(--line); border-radius:6px; box-shadow:0 12px 50px #0003; overflow:hidden; }
#chatWindow[hidden] { display:none; }
#chatWidget .chat-head { display:flex; justify-content:space-between; align-items:center; padding:18px; background:var(--night); color:#fffcf6; }
#chatWidget .chat-head strong { display:block; font-size:14px; }
#chatWidget .chat-head small { display:block; font-size:11px; opacity:.8; margin-top:4px; }
#chatClose { border:0; background:none; color:inherit; width:32px; height:32px; font-size:25px !important; }
#chatWidget .chat-messages { flex:1; min-height:140px; overflow:auto; overscroll-behavior:contain; padding:18px; }
#chatWidget .chat-msg { width:fit-content; max-width:95%; padding:10px 13px; margin-bottom:12px; border:1px solid var(--line); border-radius:5px; font-size:13px; line-height:1.6; white-space:pre-wrap; overflow-wrap:anywhere; }
#chatWidget .chat-msg.user { margin-left:auto; background:var(--tint); }
#chatWidget .chat-compose { display:flex; align-items:flex-end; gap:9px; padding:14px; border-top:1px solid var(--line); }
#chatInput { min-width:0; flex:1; resize:vertical; max-height:120px; border:1px solid var(--line); border-radius:3px; background:var(--bg); color:var(--ink); padding:10px; font:13px/1.5 var(--font,Arial,sans-serif); }
#chatSend { border:1px solid var(--line); border-radius:3px; padding:11px 13px; background:var(--night); color:#fffcf6; font-size:12px !important; }
#chatSend:disabled { opacity:.6; cursor:wait; }
#chatWidget :focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
@media(max-width:650px) { #chatToggle { right:16px; bottom:16px; } #chatWindow { right:16px; bottom:80px; } }
@media(max-width:650px) {
  .payment-page #chatToggle { bottom:90px; }
  .payment-page #chatWindow { bottom:154px; max-height:calc(100dvh - 186px); }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
