.support-hub {
  --sh-ink: #f8fafc;
  --sh-muted: #9aa9c7;
  --sh-panel: rgba(10, 15, 38, .97);
  --sh-border: rgba(148, 163, 184, .18);
  --sh-accent: #8b5cf6;
  --sh-secondary: #0891b2;
  --sh-panel-solid: #0a0f26;
  --sh-cyan: #22d3ee;
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 10020;
  font-family: Inter, "Noto Sans Georgian", system-ui, sans-serif;
}
.support-hub--bottom_left { right:auto; left:24px; }
.support-hub__invitation{position:absolute;right:0;bottom:145px;width:260px;max-width:calc(100vw - 32px);padding:16px;border:1px solid var(--sh-accent);border-radius:16px;background:var(--sh-panel-solid);color:var(--sh-ink);box-shadow:0 8px 30px #0002;cursor:pointer;font:inherit;font-size:13px;line-height:1.6}
.support-hub__invitation[hidden]{display:none}
.support-hub__guest-name{display:flex;gap:8px;align-items:center;padding:8px 16px;font-size:11px;color:var(--sh-muted)}
.support-hub__guest-name input{min-width:0;width:100%;padding:7px;border:1px solid var(--sh-border);border-radius:8px;background:var(--sh-panel-solid);color:var(--sh-ink)}
.support-hub__privacy{padding:6px 16px;font-size:10px;line-height:1.5;color:var(--sh-muted);flex-shrink:0}
.support-hub__privacy button{background:none;border:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
.support-hub__privacy-notice{position:fixed;left:12px;bottom:8px;max-width:300px;background:var(--sh-panel-solid);color:var(--sh-ink);border:1px solid var(--sh-border);border-radius:10px;font-size:10px;padding:7px 10px;line-height:1.6}
.support-hub__privacy-notice summary{cursor:pointer}.support-hub__privacy-notice div{padding-top:8px}.support-hub__privacy-notice button{display:block;background:none;border:0;color:inherit;text-decoration:underline;font:inherit;padding:8px 0;cursor:pointer}
@media(max-width:767px){.support-hub__privacy-notice{bottom:calc(78px + env(safe-area-inset-bottom));max-width:230px}}
.support-hub--bottom_left .support-hub__panel { right:auto; left:0; }
.support-hub * { box-sizing: border-box; }
.support-hub .visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.support-hub__launcher {
  min-width: 204px;
  min-height: 58px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 9px 15px 9px 10px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  background: linear-gradient(135deg, var(--sh-accent), var(--sh-secondary));
  color: #fff;
  box-shadow: 0 18px 55px rgba(5, 8, 26, .45), 0 0 32px rgba(34,211,238,.15);
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease;
}
.support-hub__launcher:hover { transform: translateY(-3px); box-shadow: 0 22px 62px rgba(5,8,26,.54), 0 0 38px rgba(139,92,246,.25); }
.support-hub__launcher-icon { width: 40px; height: 40px; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.16); font-size:21px; }
.support-hub__launcher-icon img, .support-hub__brand > span img { width:100%; height:100%; object-fit:cover; border-radius:inherit; }
.support-hub__launcher-copy { display:flex; flex-direction:column; align-items:flex-start; line-height:1.25; }
.support-hub__launcher-copy strong { font-size:14px; }
.support-hub__launcher-copy small { color:rgba(255,255,255,.72); font-size:11px; margin-top:2px; }
.support-hub__presence { width:8px; height:8px; margin-left:auto; border-radius:50%; background:#34d399; box-shadow:0 0 0 4px rgba(52,211,153,.15); }
.support-hub__presence.is-offline { background:#f59e0b; box-shadow:0 0 0 4px rgba(245,158,11,.15); }
.support-hub__panel {
  position: absolute;
  right: 0;
  bottom: 72px;
  width: min(390px, calc(100vw - 32px));
  height: min(650px, calc(100vh - 116px));
  min-height: 480px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid var(--sh-border);
  border-radius:24px;
  color:var(--sh-ink);
  background:radial-gradient(circle at 85% -10%, color-mix(in srgb, var(--sh-secondary) 28%, transparent), transparent 32%), radial-gradient(circle at 5% 15%, color-mix(in srgb, var(--sh-accent) 30%, transparent), transparent 30%), var(--sh-panel-solid, var(--sh-panel));
  box-shadow:0 28px 90px rgba(2,6,23,.62);
  backdrop-filter:blur(22px);
  animation:supportHubIn .22s ease-out;
}
.support-hub__panel[hidden] { display:none; }
@keyframes supportHubIn { from { opacity:0; transform:translateY(12px) scale(.98); } to { opacity:1; transform:none; } }
.support-hub__header { display:flex; align-items:center; justify-content:space-between; padding:18px 18px 14px; border-bottom:1px solid var(--sh-border); }
.support-hub__brand { display:flex; align-items:center; gap:10px; }
.support-hub__brand > span { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; background:linear-gradient(145deg,rgba(139,92,246,.35),rgba(34,211,238,.22)); }
.support-hub__brand div { display:flex; flex-direction:column; }
.support-hub__brand strong { font-size:14px; }
.support-hub__brand small { margin-top:3px; color:var(--sh-muted); font-size:11px; }
.support-hub__close { border:0; background:rgba(255,255,255,.07); color:#cbd5e1; width:32px; height:32px; border-radius:10px; font-size:22px; cursor:pointer; }
.support-hub__tabs { display:grid; grid-template-columns:1fr 1fr; gap:6px; padding:10px 12px; border-bottom:1px solid var(--sh-border); }
.support-hub__tabs.has-single-tab { grid-template-columns:1fr; }
.support-hub__tabs button { min-height:38px; border:0; border-radius:11px; color:var(--sh-muted); background:transparent; font-weight:700; font-size:12px; cursor:pointer; }
.support-hub__tabs button.is-active { color:#fff; background:linear-gradient(135deg,rgba(139,92,246,.26),rgba(34,211,238,.14)); box-shadow:inset 0 0 0 1px rgba(139,92,246,.28); }
.support-hub__online { display:inline-block; width:7px; height:7px; margin-right:6px; border-radius:50%; background:#34d399; }
.support-hub__online.is-offline { background:#f59e0b; }
.support-hub__view { min-height:0; flex:1; display:none; flex-direction:column; }
.support-hub__view.is-active { display:flex; }
.support-hub__intro { display:flex; gap:10px; margin:14px 14px 4px; padding:12px; border:1px solid rgba(139,92,246,.18); border-radius:15px; background:rgba(139,92,246,.08); }
.support-hub__intro-icon { font-size:20px; }
.support-hub__intro strong { font-size:12px; }
.support-hub__intro p { margin:4px 0 0; color:var(--sh-muted); font-size:11px; line-height:1.45; }
.support-hub__operator-status { display:flex; gap:10px; align-items:center; margin:14px 14px 2px; padding:10px 12px; border-radius:14px; background:rgba(52,211,153,.08); border:1px solid rgba(52,211,153,.16); }
.support-hub__operator-status > span { width:9px; height:9px; border-radius:50%; background:#34d399; box-shadow:0 0 12px #34d399; }
.support-hub__operator-status.is-offline { background:rgba(245,158,11,.08); border-color:rgba(245,158,11,.18); }
.support-hub__operator-status.is-offline > span { background:#f59e0b; box-shadow:0 0 12px rgba(245,158,11,.8); }
.support-hub__operator-status div { display:flex; flex-direction:column; }
.support-hub__operator-status strong { font-size:12px; }
.support-hub__operator-status small { color:var(--sh-muted); font-size:10px; margin-top:2px; }
.support-hub__messages { min-height:0; flex:1; overflow:auto; padding:12px 14px; scrollbar-width:thin; scrollbar-color:rgba(139,92,246,.4) transparent; }
.support-hub__message { display:flex; flex-direction:column; align-items:flex-start; margin:9px 0; }
.support-hub__message.is-user { align-items:flex-end; }
.support-hub__bubble { max-width:86%; padding:10px 12px; border-radius:14px 14px 14px 4px; background:rgba(255,255,255,.08); color:#e8eefc; font-size:12px; line-height:1.5; white-space:pre-wrap; overflow-wrap:anywhere; }
.support-hub__message.is-user .support-hub__bubble { border-radius:14px 14px 4px 14px; background:linear-gradient(135deg,var(--sh-accent),var(--sh-secondary)); color:#fff; }
.support-hub__message.is-error .support-hub__bubble { background:rgba(239,68,68,.12); color:#fecaca; border:1px solid rgba(239,68,68,.2); }
.support-hub__meta { margin-top:4px; color:#71819e; font-size:9px; }
.support-hub__empty { color:var(--sh-muted); text-align:center; font-size:12px; padding:30px 18px; line-height:1.55; }
.support-hub__empty a { color:#67e8f9; font-weight:700; }
.support-hub__workspace { margin:0 14px 7px; color:#a5f3fc; font-size:11px; font-weight:700; text-decoration:none; }
.support-hub__composer { display:flex; gap:8px; align-items:flex-end; padding:10px 12px 12px; border-top:1px solid var(--sh-border); }
.support-hub__composer textarea { flex:1; max-height:94px; resize:none; border:1px solid rgba(148,163,184,.2); border-radius:14px; padding:11px 12px; background:rgba(3,7,18,.52); color:#f8fafc; font:inherit; font-size:12px; outline:none; }
.support-hub__composer textarea:focus { border-color:rgba(34,211,238,.55); box-shadow:0 0 0 3px rgba(34,211,238,.08); }
.support-hub__composer textarea::placeholder { color:#71819e; }
.support-hub__composer button { width:40px; height:40px; border:0; border-radius:12px; background:linear-gradient(135deg,var(--sh-accent),var(--sh-secondary)); color:#fff; font-size:15px; cursor:pointer; }
.support-hub__composer button:disabled { opacity:.5; cursor:wait; }
.support-hub__footer { padding:8px 12px 10px; color:#66748d; text-align:center; font-size:9px; }
.support-hub__guest-note { margin:0; padding:6px 14px; color:var(--sh-muted); font-size:11px; line-height:1.5; }
/* ---------------------------------------------------------------------------
   Light theme.
   `--sh-panel-solid` is written as an inline style from the dashboard's panel
   colour setting, so it needs `!important` here: without it the panel stayed
   dark while --sh-ink flipped to near-black, leaving the whole chat unreadable.
   --------------------------------------------------------------------------- */
body.theme-light .support-hub, html.client-theme-light .support-hub {
  --sh-ink:#111827;
  --sh-muted:#5b6478;
  --sh-panel:rgba(255,255,255,.98);
  --sh-panel-solid:#ffffff !important;
  --sh-border:rgba(15,23,42,.12);
}
body.theme-light .support-hub__panel, html.client-theme-light .support-hub__panel {
  box-shadow:0 28px 90px rgba(15,23,42,.18);
}
body.theme-light .support-hub__bubble, html.client-theme-light .support-hub__bubble { color:#1e293b; background:#eef2ff; }
body.theme-light .support-hub__composer textarea, html.client-theme-light .support-hub__composer textarea { color:#111827; background:#fff; border-color:rgba(15,23,42,.16); }
body.theme-light .support-hub__composer textarea::placeholder, html.client-theme-light .support-hub__composer textarea::placeholder { color:#7c869b; }
/* Chrome/controls that were hard-coded for the dark panel. */
body.theme-light .support-hub__close, html.client-theme-light .support-hub__close { background:rgba(15,23,42,.06); color:#334155; }
body.theme-light .support-hub__tabs button.is-active, html.client-theme-light .support-hub__tabs button.is-active { color:#4c1d95; background:linear-gradient(135deg,rgba(139,92,246,.16),rgba(34,211,238,.12)); }
body.theme-light .support-hub__meta, html.client-theme-light .support-hub__meta { color:#64748b; }
body.theme-light .support-hub__footer, html.client-theme-light .support-hub__footer { color:#64748b; }
body.theme-light .support-hub__empty a, html.client-theme-light .support-hub__empty a { color:#0e7490; }
body.theme-light .support-hub__workspace, html.client-theme-light .support-hub__workspace { color:#0e7490; }
body.theme-light .support-hub__message.is-error .support-hub__bubble,
html.client-theme-light .support-hub__message.is-error .support-hub__bubble { background:#fef2f2; color:#991b1b; border-color:#fecaca; }
body.theme-light .support-hub__intro, html.client-theme-light .support-hub__intro { background:rgba(139,92,246,.07); border-color:rgba(139,92,246,.2); }
@media (max-width: 640px) {
  .support-hub { right:14px; bottom:14px; }
  .support-hub--bottom_left { right:auto; left:14px; }
  .support-hub__launcher { min-width:56px; width:56px; height:56px; padding:8px; justify-content:center; }
  .support-hub__launcher-copy, .support-hub__presence { display:none; }
  .support-hub__panel { position:fixed; inset:12px; width:auto; height:auto; min-height:0; border-radius:20px; }
}
@media (prefers-reduced-motion: reduce) { .support-hub__panel { animation:none; } .support-hub__launcher { transition:none; } }
.support-hub :where(button, a[href], textarea):focus-visible { outline:3px solid #f1d35d; outline-offset:3px; }
.support-hub__emoji { position:relative; padding:0 16px; font-size:12px; }
.support-hub__emoji summary { width:fit-content; padding:6px; cursor:pointer; }
.support-hub__emoji > div { position:absolute; bottom:100%; left:16px; z-index:3; display:grid; grid-template-columns:repeat(6,32px); gap:4px; padding:8px; background:var(--sh-panel-solid,#0a0f26); border:1px solid #8b8ba655; border-radius:12px; box-shadow:0 8px 25px #0003; }
.support-hub__emoji button { border:0; background:transparent; color:inherit; font-size:20px; min-height:32px; padding:0; cursor:pointer; }
.support-hub__emoji summary:focus-visible { outline:3px solid #f1d35d; outline-offset:2px; }
.support-hub__contact { position:relative; border-top:1px solid var(--sh-border); padding:8px 14px; font-size:11px; flex:none; }
.support-hub__contact summary { cursor:pointer; padding:5px 0; }
.support-hub__contact form { position:absolute; z-index:4; bottom:100%; left:12px; right:12px; max-height:min(260px,40dvh); overflow:auto; overscroll-behavior:contain; display:grid; gap:8px; padding:14px; background:var(--sh-panel-solid); border:1px solid var(--sh-border); border-radius:12px; box-shadow:0 8px 24px #0003; }
.support-hub__contact label { display:grid; gap:4px; color:var(--sh-ink); }
.support-hub__contact small, .support-hub__contact p { color:var(--sh-muted); margin:0; line-height:1.5; }
.support-hub__contact input { width:100%; min-width:0; border:1px solid var(--sh-border); background:var(--sh-panel-solid); color:var(--sh-ink); border-radius:8px; padding:8px; font:inherit; }
.support-hub__contact button { padding:9px; border:0; border-radius:8px; background:var(--sh-accent); color:white; cursor:pointer; font:inherit; }
.support-hub__contact :where(input,summary):focus-visible { outline:2px solid var(--sh-accent); outline-offset:2px; }
.support-hub__contact button:disabled { opacity:.6; }
.support-hub__tools { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; padding:8px 12px; border-bottom:1px solid var(--sh-border); flex:none; }
.support-hub__tools button, .support-hub__discovery button, .support-hub__reply { border:1px solid var(--sh-border); border-radius:9px; background:color-mix(in srgb,var(--sh-accent) 9%,var(--sh-panel-solid)); color:var(--sh-ink); font:inherit; font-size:11px; cursor:pointer; padding:9px; }
.support-hub__tools button[aria-expanded="true"] { border-color:var(--sh-accent); }
.support-hub__discovery { min-height:0; flex:1; overflow:auto; overscroll-behavior:contain; padding:12px; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.support-hub [hidden] { display:none !important; }
.support-hub__discovery form { display:grid; gap:9px; margin:12px 0; }
.support-hub__discovery label { display:grid; gap:5px; }
.support-hub__discovery input:not([type="checkbox"]), .support-hub__discovery select { width:100%; min-width:0; padding:10px; color:var(--sh-ink); background:var(--sh-panel-solid); border:1px solid var(--sh-border); border-radius:9px; font:inherit; }
.support-hub__discovery button:disabled { opacity:.5; cursor:default; }
.support-hub__discovery a { color:var(--sh-ink); text-decoration:underline; text-underline-offset:3px; }
.support-hub__discovery :where(input,select,button,a,[tabindex]):focus-visible { outline:2px solid var(--sh-accent); outline-offset:2px; }
.support-hub__result { border:1px solid var(--sh-border); border-radius:12px; padding:12px; margin:10px 0; }
.support-hub__result p { margin:6px 0; }
.support-hub__result small, .support-hub__result > a { display:block; margin:6px 0; }
.support-hub__result dl { display:grid; grid-template-columns:1fr 1fr; gap:4px 8px; font-size:11px; }
.support-hub__result dd { margin:0; text-align:right; }
.support-hub__result .support-hub__compare-choice { display:flex; align-items:center; gap:8px; padding-top:9px; font-size:11px; }
.support-hub__compare-actions { display:flex; flex-wrap:wrap; gap:6px; }
.support-hub__comparison-table { overflow:auto; max-width:100%; border:1px solid var(--sh-border); border-radius:10px; }
.support-hub__comparison-table table { border-collapse:collapse; min-width:400px; font-size:11px; }
.support-hub__comparison-table th, .support-hub__comparison-table td { text-align:left; vertical-align:top; padding:8px; border-bottom:1px solid var(--sh-border); min-width:90px; }
.support-hub__reply { margin:5px 12px; flex:none; border-color:var(--sh-accent); }
