/* Scoped support widget. No layout shift or model work on page load. */
#pixel-support { --ps-red:#c62828; --ps-ink:#242424; font-family:var(--font-body,Inter,sans-serif); color:var(--ps-ink); font-size:14px; line-height:1.5; }
#pixel-support [hidden] { display:none !important; }
#pixel-support button, #pixel-support input { font:inherit; }
#pixel-support button { cursor:pointer; }
#pixel-support button:disabled { cursor:wait; opacity:.65; }
#pixel-support :focus-visible { outline:3px solid #bd7900; outline-offset:3px; }
#pixel-support .ps-launcher { position:fixed; z-index:9998; right:24px; bottom:24px; display:flex; align-items:center; gap:10px; padding:14px 19px; border:1px solid #ad1d1d; border-radius:50px; color:white; background:var(--ps-red); box-shadow:0 5px 20px #59101026; font-weight:650; transition:transform .18s,background .18s; }
#pixel-support .ps-launcher:hover { transform:translateY(-2px); background:#a51e1e; }
#pixel-support .ps-panel { position:fixed; z-index:9999; right:24px; bottom:92px; width:390px; max-width:calc(100vw - 32px); height:620px; max-height:calc(100dvh - 116px); display:flex; flex-direction:column; background:#fff; border:1px solid #e2e2e7; border-radius:20px; box-shadow:0 16px 64px #20202d26; overflow-y:auto; overscroll-behavior:contain; text-align:left; }
#pixel-support .ps-header { display:flex; align-items:center; flex-shrink:0; gap:13px; padding:20px; border-bottom:1px solid #ededf0; background:#fff; }
#pixel-support .ps-header img { object-fit:contain; }
#pixel-support .ps-header h2 { font:650 17px/1.3 var(--font-heading,Sora,sans-serif); letter-spacing:-.35px; margin:0 0 3px; }
#pixel-support .ps-header p { color:#68686f; font-size:12px; margin:0; }
#pixel-support .ps-close { margin-left:auto; width:36px; height:36px; border:0; border-radius:50%; background:#f3f3f5; font-size:25px; color:#555; }
#pixel-support .ps-conversation { min-height:100px; flex:1; overflow-y:auto; overscroll-behavior:contain; padding:20px; scrollbar-width:thin; }
#pixel-support .ps-intro { margin:0 0 16px; color:#44444b; font-size:14px; }
#pixel-support .ps-suggestions { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:20px; }
#pixel-support .ps-suggestions button { padding:7px 11px; border:1px solid #e1e1e6; background:white; border-radius:8px; color:#494951; font-size:12px; }
#pixel-support .ps-suggestions button:hover { background:#fff8eb; border-color:#c67f00; }
#pixel-support .ps-message { max-width:94%; border-radius:13px; padding:12px 14px; margin-bottom:14px; overflow-wrap:anywhere; font-size:13px; }
#pixel-support .ps-message p { margin:0; color:inherit; }
#pixel-support .ps-user { background:#c62828; color:#fff; margin-left:auto; border-bottom-right-radius:3px; white-space:pre-wrap; }
#pixel-support .ps-answer { background:#f5f5f8; border-bottom-left-radius:3px; }
#pixel-support .ps-message a { display:block; color:#a81e1e; margin-top:10px; font-weight:650; text-decoration:underline; text-underline-offset:3px; }
#pixel-support .ps-tools { flex-shrink:0; padding:0 20px; border-top:1px solid #f0f0f3; max-height:36%; overflow-y:auto; }
#pixel-support .ps-enable { background:white; color:#9e1c1c; border:1px solid #e3c6c6; border-radius:7px; padding:7px 10px; margin:11px 0; font-size:12px; }
#pixel-support .ps-enable[aria-pressed="true"] { background:#fff8eb; border-color:#c67f00; color:#805100; }
#pixel-support .ps-form { padding:12px 20px 9px; margin:0; flex-shrink:0; }
#pixel-support .ps-label { display:block; font-size:11px; font-weight:600; margin-bottom:5px; color:#64646b; }
#pixel-support .ps-input-row { display:flex; align-items:center; gap:8px; }
#pixel-support input { min-width:0; width:100%; height:44px; background:white; border:1px solid #d9d9e0; border-radius:8px; padding:10px 12px; color:#242424; font-size:16px; }
#pixel-support .ps-send { display:grid; place-items:center; width:44px; height:44px; flex-shrink:0; background:var(--ps-red); color:white; border:0; border-radius:8px; }
#pixel-support .ps-footer { display:flex; align-items:center; gap:14px; padding:0 20px; font-size:11px; flex-shrink:0; }
#pixel-support .ps-footer a { text-decoration:underline; text-underline-offset:3px; color:#5b5b64; }
#pixel-support .ps-footer .ps-email { color:#a51e1e; font-weight:650; margin-right:auto; }
#pixel-support .ps-clear { padding:0; border:0; background:none; color:#5b5b64; font-size:11px; text-decoration:underline; text-underline-offset:3px; }
#pixel-support .ps-notice { padding:9px 20px 12px; margin:0; color:#77777e; font-size:10px; flex-shrink:0; }
#pixel-support .ps-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
/* Consent remains visible and clickable while the chat is open. */
body:has(.analytics-consent) #pixel-support .ps-launcher { bottom:var(--ps-consent-space,220px); }
body:has(.analytics-consent) #pixel-support .ps-panel { bottom:calc(var(--ps-consent-space,220px) + 64px); max-height:calc(100dvh - var(--ps-consent-space,220px) - 80px); }
@media(max-width:600px) {
  #pixel-support .ps-launcher { right:16px; bottom:max(16px,env(safe-area-inset-bottom)); padding:12px 16px; }
  #pixel-support .ps-panel { right:8px; bottom:8px; width:calc(100vw - 16px); max-width:none; height:650px; max-height:calc(100dvh - 16px); border-radius:16px; }
  #pixel-support:has(.ps-panel:not([hidden])) .ps-launcher { display:none; }
  body:has(.analytics-consent) #pixel-support .ps-launcher { bottom:var(--ps-consent-space,300px); }
  body:has(.analytics-consent) #pixel-support .ps-panel { bottom:var(--ps-consent-space,300px); max-height:calc(100dvh - var(--ps-consent-space,300px) - 8px); }
  #pixel-support .ps-header { padding:16px; }
  #pixel-support .ps-conversation { padding:16px; }
}
/* On short landscape screens, consent and chat sit side by side. */
@media(min-width:700px) and (max-height:600px) {
  body:has(.analytics-consent) .analytics-consent { right:auto; width:calc(50vw - 28px); }
  body:has(.analytics-consent) #pixel-support .ps-panel { right:8px; bottom:8px; width:calc(50vw - 16px); max-height:calc(100dvh - 16px); }
  body:has(.analytics-consent) #pixel-support .ps-launcher { bottom:16px; }
}
@media(prefers-reduced-motion:reduce) { #pixel-support .ps-launcher { transition:none; } }
