.hub-support,
.hub-support-dialog { --hs-ink:#172246; --hs-muted:#626f89; --hs-line:#e3e8f3; --hs-blue:#355dff; --hs-surface:#fff; font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif; font-size:14px; line-height:1.5; color:var(--hs-ink); }
.hub-support *, .hub-support-dialog * { box-sizing:border-box; }
.hub-support [hidden], .hub-support-dialog [hidden] { display:none !important; }
.hub-support button, .hub-support textarea, .hub-support-dialog button, .hub-support-dialog textarea { font:inherit; }
.hub-support button, .hub-support-dialog button { cursor:pointer; }
.hub-support button:disabled, .hub-support-dialog button:disabled { cursor:default; }
.hub-support button:focus-visible, .hub-support-dialog :is(button,a,textarea,summary,[tabindex]):focus-visible { outline:3px solid #5079ed; outline-offset:3px; }
.hub-support-launcher { position:fixed; z-index:120; right:max(24px,env(safe-area-inset-right)); bottom:max(24px,env(safe-area-inset-bottom)); display:flex; align-items:center; gap:12px; min-height:58px; padding:12px 20px 12px 15px; border:1px solid #ffffff70; border-radius:24px 24px 8px 24px; background:linear-gradient(130deg,#253e9d,#355dff); color:#fff; box-shadow:0 9px 30px #213a9d35; transition:transform .18s ease,box-shadow .18s ease; text-align:left; }
.hub-support-launcher:hover { transform:translateY(-2px); box-shadow:0 12px 34px #213a9d45; }
.hub-support-launcher > svg { width:25px; height:25px; }
.hub-support-launcher span { font-size:12px; line-height:1.4; }
.hub-support-launcher strong { display:block; font-size:14px; font-weight:650; }
.hub-support-dialog { position:fixed; inset:auto 24px 24px auto; width:min(480px,calc(100vw - 32px)); max-width:480px; height:min(780px,calc(100vh - 48px)); height:min(780px,calc(100dvh - 48px)); max-height:none; margin:0; padding:0; border:1px solid #dce3f4; border-radius:24px; background:#fff; box-shadow:0 25px 90px #17224630; overflow:visible; color-scheme:light; }
.hub-support-dialog::backdrop { background:#101b3529; backdrop-filter:blur(2px); }
.hub-support-panel { display:flex; flex-direction:column; width:100%; height:100%; min-height:0; overflow:hidden; border-radius:inherit; background:#fff; }
.hub-support-header { display:flex; flex-shrink:0; align-items:center; gap:10px; min-height:88px; padding:18px 17px; background:linear-gradient(120deg,#f3f7ff,#f6f2ff); border-bottom:1px solid var(--hs-line); }
.hub-support-avatar { display:grid; place-items:center; flex-shrink:0; width:40px; height:40px; border-radius:14px; color:#fff; background:linear-gradient(140deg,#426bee,#8b79e5); box-shadow:0 5px 12px #5972ce22; }
.hub-support-avatar svg { width:26px; height:26px; }
.hub-support-identity { flex:1; min-width:0; }
.hub-support-identity h2 { margin:0; font-size:16px; font-weight:700; letter-spacing:-.025em; line-height:1.35; overflow-wrap:anywhere; }
.hub-support-identity p { display:flex; align-items:center; gap:5px; margin:4px 0 0; color:#5b6883; font-size:11px; }
.hub-support-availability { flex-shrink:0; width:5px; height:5px; border-radius:50%; background:#627be5; }
.hub-support-icon-button { display:grid; place-items:center; flex-shrink:0; width:32px; height:36px; padding:6px; border:0; border-radius:9px; color:#556381; background:transparent; }
.hub-support-icon-button:hover { background:#e2e8f7; color:#2547b8; }
.hub-support-icon-button:disabled { opacity:.4; }
.hub-support-icon-button svg { width:19px; height:19px; }
.hub-support-context { flex-shrink:0; padding:9px 20px; border-bottom:1px solid var(--hs-line); background:#f8faff; color:#586686; font-size:11px; overflow-wrap:anywhere; }
.hub-support-conversation { position:relative; display:flex; flex:1; min-height:100px; }
.hub-support-transcript { flex:1; min-height:0; padding:24px 20px 10px; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; overflow-anchor:none; scroll-behavior:auto; background:radial-gradient(ellipse at 0 0,#f8faff,transparent 70%); }
.hub-support-latest { position:absolute; left:50%; bottom:12px; z-index:1; display:flex; align-items:center; gap:8px; transform:translateX(-50%); padding:8px 14px; min-height:36px; border:1px solid #cad7fc; border-radius:20px; box-shadow:0 4px 20px #263e7e22; background:#fff; color:#3357b2; font-size:11px; font-weight:600; white-space:nowrap; }
.hub-support-latest:hover { background:#f0f4ff; }
.hub-support-message { display:flex; flex-direction:column; align-items:flex-start; gap:5px; margin:0 0 20px; }
.hub-support-message__label { color:#6d7890; font-size:10px; font-weight:600; letter-spacing:.015em; }
.hub-support-message__bubble { max-width:100%; padding:14px 16px; border:1px solid var(--hs-line); border-radius:4px 18px 18px 18px; color:#26324d; background:#fff; white-space:normal; overflow-wrap:anywhere; font-size:14px; line-height:1.7; }
.hub-support-message__bubble p { margin:0 0 10px; }
.hub-support-message__bubble p:last-child { margin-bottom:0; }
.hub-support-message__bubble :is(ul,ol) { margin:8px 0 12px; padding-left:21px; }
.hub-support-message__bubble :is(ul,ol):last-child { margin-bottom:0; }
.hub-support-message__bubble li + li { margin-top:6px; }
.hub-support-message__bubble strong, .hub-support-message__heading { font-weight:650; color:inherit; }
.hub-support-message__bubble code { padding:1px 4px; border-radius:4px; background:#edf1f9; font-family:Consolas,monospace; font-size:.92em; }
.hub-support-message--user { align-items:flex-end; }
.hub-support-message--user .hub-support-message__bubble { max-width:88%; padding:10px 14px; background:#edf2ff; border-color:#e0e7ff; border-radius:16px 4px 16px 16px; color:#27418c; white-space:pre-wrap; }
.hub-support-sources-disclosure { max-width:100%; margin-top:3px; color:#5d6f92; font-size:10px; }
.hub-support-sources-disclosure summary { min-height:24px; padding:4px 1px; cursor:pointer; }
.hub-support-sources-disclosure summary:hover { color:#315cba; }
.hub-support-sources { display:flex; flex-direction:column; align-items:flex-start; gap:6px; max-width:100%; padding:5px 0 6px 11px; border-left:2px solid #e0e8f9; color:inherit; font-size:11px; overflow-wrap:anywhere; }
.hub-support-sources a { color:#315cba; text-decoration:underline; text-underline-offset:2px; }
.hub-support-feedback { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:4px; color:#69758e; font-size:10px; }
.hub-support-feedback__label { width:100%; margin-bottom:1px; }
.hub-support-feedback .hub-support-copy { margin-left:auto; border-color:transparent; }
.hub-support-feedback button { min-height:28px; padding:3px 8px; border:1px solid #dce3f2; border-radius:8px; color:#586b90; background:#fff; font-size:10px; }
.hub-support-feedback button:hover, .hub-support-feedback button[aria-pressed="true"] { border-color:#91a7e8; background:#eef3ff; color:#274cac; }
.hub-support-feedback button:disabled:not([aria-pressed="true"]) { opacity:.5; }
.hub-support-handoff { width:100%; padding:13px 14px; margin-top:6px; border:1px solid #d9e5ff; border-radius:13px; background:#f1f6ff; }
.hub-support-handoff strong { display:block; margin-bottom:4px; font-size:12px; }
.hub-support-handoff p { margin:0 0 10px; color:#576b90; font-size:11px; line-height:1.6; }
.hub-support-contact-links { display:flex; flex-wrap:wrap; gap:7px; }
.hub-support-contact-links a { display:inline-flex; align-items:center; justify-content:center; min-height:32px; padding:6px 10px; border:1px solid #ccd9f3; border-radius:8px; background:#fff; color:#3055a4; font-size:11px; font-weight:600; text-decoration:none; overflow-wrap:anywhere; }
.hub-support-contact-links a:hover { background:#e8f0ff; }
.hub-support-suggestions { display:flex; flex-shrink:0; flex-wrap:wrap; gap:6px; padding:2px 20px 12px; max-height:152px; overflow-y:auto; }
.hub-support-suggestions:empty { display:none; }
.hub-support-suggestions__label { width:100%; padding:0 1px 1px; color:#77829b; font-size:10px; font-weight:600; }
.hub-support-suggestions button { display:flex; align-items:center; justify-content:space-between; gap:9px; flex:1 1 calc(50% - 6px); padding:8px 10px; min-height:36px; border:1px solid #dce5f7; border-radius:10px; background:#fff; color:#456197; text-align:left; font-size:11px; line-height:1.4; transition:background .15s ease; }
.hub-support-suggestion-arrow { flex-shrink:0; color:#7c91bd; font-size:13px; }
.hub-support-suggestions button:hover { background:#f0f5ff; border-color:#adbfeb; }
.hub-support-status { flex-shrink:0; display:flex; align-items:center; gap:8px; padding:6px 20px 12px; color:#6e7b95; font-size:11px; line-height:1.6; }
.hub-support-status::before { content:""; width:7px; height:7px; border-radius:50%; background:#728ce2; animation:hub-support-wait 1.2s ease-in-out infinite alternate; }
.hub-support-error { flex-shrink:0; display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:0 16px 10px; padding:10px 12px; border:1px solid #f0d9c9; border-radius:10px; background:#fff8f1; color:#8d502c; font-size:11px; }
.hub-support-error span { flex:1; min-width:170px; }
.hub-support-error button { padding:4px 0; border:0; background:transparent; color:#875034; text-decoration:underline; font-size:11px; }
.hub-support-composer { flex-shrink:0; margin:0; padding:0 16px 10px; }
.hub-support-input-wrap { display:flex; align-items:flex-end; gap:8px; padding:10px; border:1px solid #d8e0f0; border-radius:15px; background:#fff; transition:border-color .15s; }
.hub-support-input-wrap:focus-within { border-color:#7e9be9; box-shadow:0 0 0 3px #e9efff; }
.hub-support-composer textarea { display:block; flex:1; min-width:0; min-height:40px; max-height:110px; padding:2px; border:0; border-radius:0; background:transparent; color:#24314f; outline:none !important; resize:none; font-size:13px; line-height:1.6; }
.hub-support-composer textarea::placeholder { color:#8290a9; }
.hub-support-composer textarea:disabled { opacity:.65; }
.hub-support-send { display:grid; place-items:center; flex-shrink:0; width:34px; height:34px; border:0; border-radius:11px; background:#355dff; color:#fff; }
.hub-support-send:hover { background:#254cdd; }
.hub-support-send:disabled { opacity:.4; }
.hub-support-send svg { width:19px; height:19px; }
.hub-support-composer[aria-busy="true"] .hub-support-send { position:relative; opacity:.75; }
.hub-support-composer[aria-busy="true"] .hub-support-send svg { opacity:0; }
.hub-support-composer[aria-busy="true"] .hub-support-send::after { content:""; position:absolute; width:16px; height:16px; border:2px solid #ffffff65; border-top-color:#fff; border-radius:50%; animation:hub-support-spin .8s linear infinite; }
.hub-support-composer > p { margin:8px 2px 0; color:#7a8498; font-size:9px; line-height:1.5; }
.hub-support-footer { position:relative; display:flex; flex-shrink:0; justify-content:space-between; align-items:center; gap:10px; min-height:40px; padding:10px 19px; border-top:1px solid #ecf0f7; background:#fafbfe; color:#74819b; font-size:10px; }
.hub-support-footer > a { color:#536b9c; text-decoration:none; }
.hub-support-footer > a:hover { text-decoration:underline; }
.hub-support-contact-details summary { cursor:pointer; color:#536b9c; font-size:10px; }
.hub-support-contact-details > div { position:absolute; right:12px; bottom:38px; min-width:230px; max-width:calc(100% - 24px); padding:12px; border:1px solid #dce4f3; border-radius:12px; background:#fff; box-shadow:0 8px 28px #26365020; }
.hub-support-contact-details summary:focus-visible { border-radius:3px; }
.hub-support-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.hub-support-entry { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin:0 0 22px; padding:20px; border:1px solid #dae3fa; border-radius:18px; background:linear-gradient(115deg,#f2f6ff,#f8f3ff); color:#1b2d58; }
.hub-support-entry h3 { margin:0 0 5px; font-size:16px; font-weight:700; }
.hub-support-entry p { margin:0; max-width:55ch; color:#61708f; font-size:13px; line-height:1.6; }
.hub-support-entry button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:10px 15px; border:0; border-radius:11px; background:#355dff; color:#fff; font:600 12px "Segoe UI","Helvetica Neue",Arial,sans-serif; cursor:pointer; }
.hub-support-entry button:hover { background:#254cdd; }
.hub-support-entry button:focus-visible { outline:3px solid #7a9bf7; outline-offset:3px; }
.hub-support-entry--context { margin:0 0 18px; padding:16px; border-radius:14px; }
.hub-support-entry--context h3 { font-size:14px; }
.hub-support-entry--context p { font-size:12px; }
html[data-app-theme="navy"] .hub-support-dialog { --hs-ink:#edf2ff; --hs-muted:#acbad5; --hs-line:#34425f; border-color:#3b4965; color-scheme:dark; }
html[data-app-theme="navy"] .hub-support-panel { background:#17233b; }
html[data-app-theme="navy"] .hub-support-header { background:linear-gradient(120deg,#213455,#2b2b4a); }
html[data-app-theme="navy"] .hub-support-identity p,
html[data-app-theme="navy"] .hub-support-message__label { color:#b0bed8; }
html[data-app-theme="navy"] .hub-support-icon-button { color:#c0cce2; }
html[data-app-theme="navy"] .hub-support-icon-button:hover { color:#edf2ff; background:#3a4a6b; }
html[data-app-theme="navy"] .hub-support-transcript { background:radial-gradient(ellipse at 0 0,#203152,transparent 70%); }
html[data-app-theme="navy"] .hub-support-message__bubble { color:#e4ebfb; background:#21304a; }
html[data-app-theme="navy"] .hub-support-message__bubble code { background:#344764; }
html[data-app-theme="navy"] .hub-support-latest { background:#2b426a; color:#e0e9ff; border-color:#5d7aa7; }
html[data-app-theme="navy"] .hub-support-sources-disclosure,
html[data-app-theme="navy"] .hub-support-suggestions__label { color:#afc0e5; }
html[data-app-theme="navy"] .hub-support-sources { border-color:#425a80; }
html[data-app-theme="navy"] .hub-support-message--user .hub-support-message__bubble { color:#eef2ff; background:#304573; border-color:#445d94; }
html[data-app-theme="navy"] .hub-support-context,
html[data-app-theme="navy"] .hub-support-footer { color:#b2c1dd; background:#1c2942; border-color:#34425f; }
html[data-app-theme="navy"] .hub-support-footer > a,
html[data-app-theme="navy"] .hub-support-contact-details summary,
html[data-app-theme="navy"] .hub-support-sources,
html[data-app-theme="navy"] .hub-support-feedback,
html[data-app-theme="navy"] .hub-support-status { color:#afc0e5; }
html[data-app-theme="navy"] .hub-support-sources a { color:#b7c8ff; }
html[data-app-theme="navy"] .hub-support-suggestions button,
html[data-app-theme="navy"] .hub-support-feedback button { color:#c1d0ee; background:#233350; border-color:#405474; }
html[data-app-theme="navy"] .hub-support-suggestions button:hover,
html[data-app-theme="navy"] .hub-support-feedback button[aria-pressed="true"] { color:#e6edff; background:#354a76; border-color:#839ee0; }
html[data-app-theme="navy"] .hub-support-input-wrap { background:#1c2b45; border-color:#465b80; }
html[data-app-theme="navy"] .hub-support-composer textarea { color:#edf2ff; }
html[data-app-theme="navy"] .hub-support-composer > p { color:#a2afca; }
html[data-app-theme="navy"] .hub-support-composer textarea:disabled { color:#a2afca; }
html[data-app-theme="navy"] .hub-support-input-wrap:focus-within { box-shadow:0 0 0 3px #3c527c; border-color:#8ba6e8; }
html[data-app-theme="navy"] .hub-support-handoff { background:#253859; border-color:#405b88; }
html[data-app-theme="navy"] .hub-support-handoff p { color:#b8c8e4; }
html[data-app-theme="navy"] .hub-support-contact-details > div { background:#253654; border-color:#466087; }
html[data-app-theme="navy"] .hub-support-contact-links a { color:#d0ddfa; background:#2d4268; border-color:#56709d; }
html[data-app-experience="v2"][data-app-theme="navy"] .app-v2 .hub-support-entry { background:linear-gradient(115deg,#23365b,#302c4f); border-color:#465980; }
html[data-app-experience="v2"][data-app-theme="navy"] .app-v2 .hub-support-entry h3 { color:#e9f0ff; }
html[data-app-experience="v2"][data-app-theme="navy"] .app-v2 .hub-support-entry p { color:#b4c4df; }
@keyframes hub-support-wait { from { opacity:.35; } to { opacity:1; } }
@keyframes hub-support-spin { to { transform:rotate(360deg); } }
@media(max-width:600px) {
    .hub-support-launcher { right:16px; bottom:max(16px,env(safe-area-inset-bottom)); padding:11px 14px; min-height:54px; border-radius:20px 20px 6px 20px; }
    .hub-support-launcher > svg { width:22px; height:22px; }
    .hub-support-launcher span { font-size:10px; }
    .hub-support-launcher strong { font-size:12px; }
    .hub-support-dialog { inset:auto 8px max(8px,env(safe-area-inset-bottom)) 8px; width:calc(100vw - 16px); max-width:none; height:min(740px,calc(100vh - 24px)); height:min(740px,calc(100dvh - 24px - env(safe-area-inset-bottom))); border-radius:20px; }
    .hub-support-header { gap:8px; min-height:76px; padding:14px; }
    .hub-support-identity h2 { font-size:15px; }
    .hub-support-identity p { font-size:10px; }
    .hub-support-avatar { width:35px; height:35px; border-radius:12px; }
    .hub-support-composer textarea { font-size:16px; }
    .hub-support-transcript { padding:18px 14px 8px; }
    .hub-support-entry { align-items:flex-start; }
}
@media(prefers-reduced-motion:reduce) { .hub-support *, .hub-support-dialog * { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
@media(forced-colors:active) { .hub-support-avatar, .hub-support-launcher, .hub-support-send { border:1px solid ButtonText; } }
