.talon-agent-float[hidden],.talon-agent-panel[hidden]{display:none !important;}.talon-agent-float{position:fixed;right:24px;bottom:20px;z-index:2147483000;font-family:inherit;color:rgb(var(--slate-12));color-scheme:light;pointer-events:none;}.dark .talon-agent-float{color-scheme:dark;}.talon-agent-launcher{pointer-events:auto;display:block;margin-left:auto;background:rgb(var(--blue-9));color:#fff;border:0;border-radius:999px;padding:11px 18px;box-shadow:0 8px 28px rgb(0 0 0 / 20%);font-family:inherit;font-weight:650;font-size:13px;cursor:pointer;}.talon-agent-panel{pointer-events:auto;box-sizing:border-box;display:flex;flex-direction:column;width:min(560px,calc(100vw - 24px));height:min(620px,calc(100vh - 90px));min-width:280px;min-height:210px;resize:both;overflow:hidden;margin-bottom:12px;background:rgb(var(--surface-1));border:1px solid rgb(var(--border-strong));border-radius:24px;box-shadow:0 18px 60px rgb(0 0 0 / 33%);}.talon-agent-header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;background:transparent;border-bottom:1px solid rgb(var(--border-weak));cursor:move;touch-action:none;user-select:none;}.talon-agent-target{flex:1;min-width:0;background:transparent;color:inherit;border:0;border-radius:7px;font-family:inherit;font-weight:600;font-size:13px;padding:5px;cursor:pointer;}.talon-agent-target option{background:rgb(var(--surface-1));color:rgb(var(--slate-12));}.talon-agent-target option:disabled{color:rgb(var(--slate-11));}.talon-agent-grip{color:rgb(var(--slate-11));letter-spacing:2px;}.talon-agent-close,.talon-agent-refresh{font-family:inherit;font-size:20px;line-height:1;border:0;border-radius:7px;background:transparent;color:rgb(var(--slate-11));cursor:pointer;}.talon-agent-close:hover,.talon-agent-refresh:hover:not(:disabled){color:rgb(var(--slate-12));}.talon-agent-conv{color:rgb(var(--slate-11));font-size:11px;margin:10px 12px 0;}.talon-agent-context{font-weight:600;font-size:13px;margin:5px 12px;}.talon-agent-status{font-size:12px;color:rgb(var(--slate-11));background:transparent;padding:4px 0;margin:4px 12px;border-radius:7px;}.talon-agent-messages{flex:1;min-height:35px;overflow:auto;padding:16px;display:flex;flex-direction:column;gap:16px;}.talon-msg{max-width:92%;padding:10px 13px;border-radius:14px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65;}.talon-msg small{display:block;font-size:10px;margin-bottom:3px;color:rgb(var(--slate-11));}.talon-msg.human{align-self:flex-end;background:rgb(var(--blue-3));}.talon-msg.agent{align-self:flex-start;background:transparent;max-width:100%;}.talon-agent-form{display:flex;gap:8px;align-items:flex-end;margin:0 12px 10px;padding:10px;border:1px solid rgb(var(--border-strong));border-radius:18px;min-height:70px;background:rgb(var(--surface-2));}.talon-agent-form:focus-within{border-color:rgb(var(--blue-9));}.talon-agent-input{flex:1;min-width:0;border:0;border-radius:7px;padding:7px;font-family:inherit;resize:vertical;font-size:14px;max-height:100px;min-height:44px;background:transparent;color:inherit;}.talon-agent-input::placeholder{color:rgb(var(--slate-11));opacity:1;}.talon-agent-input:disabled{background:transparent;cursor:not-allowed;opacity:.65;}.talon-agent-send{width:34px;height:34px;border:0;border-radius:50%;font-family:inherit;font-size:22px;padding:0;background:rgb(var(--blue-9));color:#fff;flex-shrink:0;cursor:pointer;}.talon-agent-launcher:hover,.talon-agent-send:hover:not(:disabled){background:rgb(var(--blue-10));}.talon-agent-send:disabled{opacity:.45;cursor:not-allowed;}.talon-agent-launcher:focus-visible,.talon-agent-target:focus-visible,.talon-agent-close:focus-visible,.talon-agent-refresh:focus-visible,.talon-agent-input:focus-visible,.talon-agent-send:focus-visible{outline:2px solid rgb(var(--blue-9));outline-offset:2px;}.talon-agent-foot{color:rgb(var(--slate-11));font-size:10px;line-height:1.5;margin:0 12px 14px;}@media (max-width:600px){.talon-agent-float{right:10px;bottom:10px;}.talon-agent-panel{width:calc(100vw - 20px);height:65vh;border-radius:20px;}}

.talon-agent-refresh:disabled{opacity:.45;cursor:wait;}

/* Keep one focus boundary around the composer. */
.talon-agent-form .talon-agent-input,.talon-agent-form .talon-agent-input:focus,.talon-agent-form .talon-agent-input:focus-visible{border:0;outline:none;box-shadow:none;margin:0;background:transparent;}


/* Jarvis streaming composer: fixed-bottom multi-line, natural auto-grow.
 * Open WebUI-style interaction (fixed bottom, auto height, stop button),
 * implemented with this project's own DOM — no Svelte code, no brand.
 */
.talon-agent-form .talon-agent-composer{display:flex;gap:8px;align-items:flex-end;padding:8px 12px 4px;}
.talon-agent-input{flex:1;min-height:40px;max-height:200px;resize:none;background:transparent;border:0;font:inherit;line-height:1.5;color:inherit;padding:4px;}
.talon-agent-composer-actions{display:flex;align-items:center;gap:6px;padding-bottom:2px;}
.talon-agent-voice{border:0;background:transparent;font-size:18px;opacity:.35;cursor:not-allowed;}
.talon-agent-send{border:0;background:rgb(var(--blue-9));color:#fff;border-radius:8px;min-width:36px;height:36px;font-size:16px;line-height:1;cursor:pointer;padding:0 10px;}
.talon-agent-send:disabled{opacity:.45;cursor:not-allowed;}
.talon-msg.live .talon-msg-text{white-space:pre-wrap;}
.talon-msg-stop{border:1px solid rgb(var(--slate-8));background:rgb(var(--surface-2));color:rgb(var(--slate-12));font:inherit;font-size:11px;padding:2px 8px;border-radius:6px;cursor:pointer;margin-top:4px;}
.talon-agent-foot{font-size:10px;color:rgb(var(--slate-11));text-align:center;padding:4px 12px 8px;}


/* Context-owned windows. Route changes never leave two agent composers onscreen. */
html[data-talon-chat-surface="config"] #talon-agent-float,
html[data-talon-chat-surface="none"] #talon-agent-float,
html[data-talon-chat-surface="customer"] #talon-jarvis-hermes-root,
html[data-talon-chat-surface="none"] #talon-jarvis-hermes-root {display:none !important;}

/* Customer-scoped original conversation float: readable history and one input
   focus boundary, preserving the native Chatwoot conversation and CRM pane. */
.talon-agent-float,.talon-agent-float *{box-sizing:border-box;}
.talon-agent-target[hidden]{display:none !important;}
.talon-agent-target-label{flex:1;min-width:0;font-size:14px;font-weight:650;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.talon-agent-panel{width:min(540px,calc(100vw - 24px));
  height:min(650px,calc(100dvh - 50px));max-width:calc(100vw - 16px);
  max-height:calc(100dvh - 16px);min-width:min(320px,calc(100vw - 16px));
  min-height:260px;}
.talon-agent-header{min-height:52px;padding:12px 16px;}
.talon-agent-messages{flex:1 1 auto;min-height:0;overflow-y:auto;
  scrollbar-gutter:stable;overscroll-behavior:contain;gap:12px;
  padding:10px 14px 18px;}
.talon-msg{line-height:1.6;word-break:break-word;max-width:95%;}
.talon-msg.agent{max-width:100%;padding-left:6px;padding-right:6px;}
.talon-msg-text{white-space:pre-wrap;overflow-wrap:anywhere;user-select:text;}
.talon-agent-status{overflow-wrap:anywhere;line-height:1.55;min-height:20px;}
.talon-agent-form{flex:0 0 auto;display:block;min-height:0;padding:7px 9px;
  margin:0 12px 10px;border:1px solid rgb(var(--border-strong));}
.talon-agent-form:focus-within{border-color:rgb(var(--blue-9));
  box-shadow:0 0 0 1px rgb(var(--blue-9) / 24%);}
.talon-agent-form .talon-agent-composer{display:flex;width:100%;min-width:0;
  align-items:flex-end;gap:8px;padding:2px;}
.talon-agent-form .talon-agent-input,
.talon-agent-form .talon-agent-input:focus,
.talon-agent-form .talon-agent-input:focus-visible{
  display:block;flex:1 1 auto;width:100%;min-width:0;max-width:100%;
  min-height:42px;max-height:168px;line-height:1.5;
  border:0 !important;outline:0 !important;box-shadow:none !important;
  resize:none;overflow-y:auto;margin:0;padding:8px 6px;background:transparent;}
.talon-agent-composer-actions{flex:0 0 auto;align-self:flex-end;padding-bottom:4px;}
.talon-agent-foot{flex:0 0 auto;margin-bottom:10px;line-height:1.45;}
@media(max-width:600px){
  .talon-agent-float{right:8px;bottom:8px;}
  .talon-agent-panel{width:calc(100vw - 16px);height:min(72dvh,680px);
    min-width:0;max-width:calc(100vw - 16px);}
}

/* Original Talon brand launches, now located in Chatwoot's .left-wrap.
   The reply box geometry and 32px toolbar row stay untouched. */
.reply-box .left-wrap .talon-composer-action{
  display:inline-flex;align-items:center;justify-content:center;
  width:auto;min-width:0;max-width:none;height:32px;min-height:32px;
  flex:0 0 auto;gap:6px;margin:0;padding:0 11px;
  border:0;border-radius:10px;
  font-family:inherit;font-size:12px;font-weight:650;line-height:1;
  white-space:nowrap;cursor:pointer;box-sizing:border-box;
  transition:filter .12s ease,box-shadow .12s ease,background-color .12s ease;
}
.reply-box .left-wrap .talon-composer-action svg{display:block;flex:0 0 17px;}
.reply-box .left-wrap .talon-composer-action-label{white-space:nowrap;}
/* Restore the original customer Agent launcher: blue, text and full capsule. */
.reply-box .left-wrap .talon-composer-action--agent{
  background:rgb(var(--blue-9));color:#fff;border-radius:999px;
  box-shadow:0 5px 16px rgb(0 0 0 / 20%);
}
/* Restore Hermes HUD's own slate-blue launcher, icon and rounded corners. */
.reply-box .left-wrap .talon-composer-action--jarvis{
  background:#526781;color:#fff;border-radius:10px;
  box-shadow:0 5px 16px #0005;
}
/* Restore Talon Assist's navy palette and sky-blue outline. */
.reply-box .left-wrap .talon-composer-action--assist{
  background:#182338;color:#e9f2ff;border:1px solid #5994e5;
  border-radius:11px;box-shadow:0 4px 14px #0005;
}
.reply-box .left-wrap .talon-composer-action--assist svg{color:#abc7ee;}
.reply-box .left-wrap .talon-composer-action-icon{font-size:13px;line-height:1;flex:0 0 auto;}
.reply-box .left-wrap .talon-composer-action--companion{
  background:linear-gradient(135deg,#0d9488,#2563eb);color:#fff;
  border-radius:10px;box-shadow:0 4px 14px rgba(13,148,136,.35);
}
.reply-box .left-wrap .talon-composer-action--agent:hover:not(:disabled){background:rgb(var(--blue-10));}
.reply-box .left-wrap .talon-composer-action--jarvis:hover:not(:disabled){filter:brightness(1.12);}
.reply-box .left-wrap .talon-composer-action--assist:hover:not(:disabled){
  border-color:#8bbcff;background:#243e62;
}
.reply-box .left-wrap .talon-composer-action--companion:hover:not(:disabled){filter:brightness(1.1);}
.reply-box .left-wrap .talon-composer-action[aria-pressed="true"]{
  box-shadow:0 0 0 2px rgb(var(--blue-9) / 40%),0 5px 16px rgb(0 0 0 / 20%);
}
.reply-box .left-wrap .talon-composer-action--assist[aria-pressed="true"]{
  border-color:#a8d0ff;box-shadow:0 0 0 2px #5994e555,0 4px 16px #0005;
}
.reply-box .left-wrap .talon-composer-action--companion[aria-pressed="true"]{
  box-shadow:0 0 0 2px rgba(20,184,166,.55),0 4px 16px rgba(13,148,136,.42);
}
.reply-box .left-wrap .talon-composer-action:focus-visible{
  outline:2px solid rgb(var(--blue-9));outline-offset:2px;
}
.reply-box .left-wrap .talon-composer-action:disabled{opacity:.55;cursor:not-allowed;}
.reply-box .left-wrap .talon-composer-action[hidden]{display:none!important;}
@media(max-width:720px){
  /* Keep each product's original color/shape, abbreviate labels only on small screens. */
  .reply-box .left-wrap .talon-composer-action{
    width:32px;min-width:32px;max-width:32px;padding:0;gap:0;
  }
  .reply-box .left-wrap .talon-composer-action-label{display:none;}
  .reply-box .left-wrap .talon-composer-action--agent::before{content:"AI";font-size:11px;font-weight:750;}
}
/* Windows are controlled by the native composer toolbar, not duplicate bubbles. */
html[data-talon-chat-surface="customer"] #talon-agent-float .talon-agent-launcher{display:none!important;}
html[data-talon-chat-surface="customer"] #talon-agent-float:has(> .talon-agent-panel[hidden]){display:none!important;}
body:has(#app) #tce-fab,html[data-talon-chat-surface] #tce-fab{display:none!important;}
html[data-talon-chat-surface="customer"] #talon-agent-float:not([hidden]) .talon-agent-panel:not([hidden]){display:flex;}
html.talon-hud-in-conversation #talon-jarvis-hermes-root{display:block!important;}
html.talon-hud-in-conversation #talon-agent-float{display:none!important;}
/* Customer onboarding card in Contact sidebar and Customer AI panel (unbound customers only). */
.talon-customer-onboarding[hidden],.talon-customer-onboarding-notice[hidden]{display:none!important;}
.talon-customer-onboarding{
  display:flex;flex-direction:column;align-items:flex-start;gap:6px;
  width:100%;box-sizing:border-box;
}
.talon-customer-onboarding--sidebar{
  margin:8px 0 4px;padding:8px 10px;border-radius:10px;
  border:1px solid rgb(var(--border-weak));background:rgb(var(--surface-2));
  color:rgb(var(--slate-12));
}
.talon-customer-onboarding--panel{
  margin:2px 12px 8px;padding:8px 10px;width:calc(100% - 24px);border-radius:10px;
  border:1px solid rgb(var(--border-weak));background:rgb(var(--surface-2));
}
.talon-customer-onboarding-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:100%;min-height:30px;padding:5px 10px;border:0;border-radius:8px;
  background:rgb(var(--blue-9));color:#fff;font:600 12px/1.35 inherit;
  cursor:pointer;transition:background-color .12s ease;
}
.talon-customer-onboarding-btn:hover:not(:disabled){background:rgb(var(--blue-10));}
.talon-customer-onboarding-btn:disabled{opacity:.55;cursor:wait;}
.talon-customer-onboarding-notice{
  font-size:11.5px;line-height:1.45;color:rgb(var(--slate-11));overflow-wrap:anywhere;
}
/* Keep the native Chatwoot original text ABOVE the Chinese translation.
   The model never modifies the original message or response composer. */
html[data-talon-chat-surface="customer"] .talon-assist-inline-translation{
  box-sizing:border-box;display:block;flex:0 1 100%;order:99;
  min-width:min(240px,100%);width:min(520px,100%);max-width:100%;
  margin:7px 0 4px;padding:9px 12px;
  border:1px solid rgb(var(--border-weak));border-left:3px solid #5994e5;
  border-radius:9px;background:rgb(var(--surface-2));
  color:rgb(var(--slate-12));font-family:inherit;font-size:12px;line-height:1.6;
  user-select:text;overflow-wrap:anywhere;white-space:pre-wrap;text-align:left;
}
.talon-assist-inline-translation strong{
  display:block;margin-bottom:4px;color:#7fb7f1;font-weight:650;font-size:11px;
}
.talon-assist-language-text{white-space:pre-wrap;overflow-wrap:anywhere;}
@media(max-width:600px){
  html[data-talon-chat-surface="customer"] .talon-assist-inline-translation{min-width:0;width:100%;}
}

/* Mobile conversation: auxiliary status must not cover native reply controls. */
@media (max-width: 767px) {
  #talon-agent-float .talon-agent-panel {
    resize: none;
    max-height: calc(100dvh - 120px);
  }
  #talon-agent-float .talon-agent-header { cursor: default; }
  #talon-agent-float .talon-agent-input,
  #talon-jarvis-hermes-root .talon-hermes-hud-input { font-size: 16px; }
  .reply-box .left-wrap { flex-wrap: wrap; min-width: 0; }
}

/* Use the toolbar as the single Jarvis entry while a customer chat is active. */
html[data-talon-chat-surface="customer"] #talon-jarvis-hermes-root .talon-hermes-launcher { display: none !important; }
@media (max-width: 1023px) and (max-height: 600px) {
  .talon-conversation-sidebar { position: fixed !important; top: 0; bottom: 0; right: 0; width: min(360px, 100vw) !important; max-width: 100vw; z-index: 50; }
  .reply-box .left-wrap { flex-wrap: wrap; min-width: 0; }
  .reply-box .left-wrap .talon-composer-action { width: 32px; min-width: 32px; max-width: 32px; padding: 0; gap: 0; }
  .reply-box .left-wrap .talon-composer-action-label { display: none; }
  .reply-box .left-wrap .talon-composer-action--agent::before { content: "AI"; font-size: 11px; font-weight: 750; }
  #talon-agent-float { right: 8px; bottom: 8px; }
  #talon-agent-float .talon-agent-panel { height: calc(100dvh - 110px); max-height: calc(100dvh - 110px); min-height: 220px; resize: none; }
  .reply-box .ProseMirror { min-height: 48px !important; max-height: 80px; overflow-y: auto; }
}

/* Weld Point 4 Right-Hand Float Pending Silent Wakeup Draft Card (`talon_idle_wakeup_dispatches`) */
.talon-agent-wakeup-host[hidden]{display:none !important;}
.talon-agent-wakeup-host{
  flex:0 0 auto;display:flex;flex-direction:column;gap:8px;
  max-height:245px;overflow-y:auto;margin:4px 12px 6px;padding:2px 0;
}
.talon-wakeup-card{
  display:flex;flex-direction:column;gap:7px;padding:10px 12px;
  border-radius:12px;border:1px solid #f59e0b;
  background:linear-gradient(180deg,#fffbeb 0%,#fef3c7 100%);
  color:#1e293b;box-shadow:0 4px 14px rgba(245,158,11,.12);
}
.dark .talon-wakeup-card{
  background:linear-gradient(180deg,#292112 0%,#1f1a10 100%);
  border-color:#b45309;color:#f8fafc;
}
.talon-wakeup-header{
  display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;
}
.talon-wakeup-title{
  display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:650;color:#92400e;
}
.dark .talon-wakeup-title{color:#fcd34d;}
.talon-wakeup-badges{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap;}
.talon-wakeup-pill{
  display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;
  font-size:11px;font-weight:600;background:#fde68a;color:#78350f;
}
.dark .talon-wakeup-pill{background:#451a03;color:#fde68a;border:1px solid #92400e;}
.talon-wakeup-pill--safe{background:#dcfce7;color:#166534;}
.dark .talon-wakeup-pill--safe{background:#052e16;color:#86efac;border:1px solid #166534;}
.talon-wakeup-goal{font-size:11.5px;line-height:1.45;color:#475569;}
.dark .talon-wakeup-goal{color:#cbd5e1;}
.talon-wakeup-draft-editor{
  width:100%;min-height:54px;max-height:112px;resize:vertical;
  padding:7px 9px;border-radius:8px;border:1px solid #fcd34d;
  background:#ffffff;color:#0f172a;font:13px/1.5 inherit;
}
.dark .talon-wakeup-draft-editor{
  background:#0f172a;color:#f1f5f9;border-color:#78350f;
}
.talon-wakeup-draft-editor:focus{
  outline:2px solid #f59e0b;outline-offset:1px;
}
.talon-wakeup-actions{
  display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;
}
.talon-wakeup-btn-group{display:inline-flex;align-items:center;gap:7px;}
.talon-wakeup-btn-adopt{
  padding:5px 12px;border-radius:8px;border:0;
  background:#059669;color:#ffffff;font:600 12px/1.3 inherit;cursor:pointer;
}
.talon-wakeup-btn-adopt:hover:not(:disabled){background:#047857;}
.talon-wakeup-btn-dismiss{
  padding:5px 10px;border-radius:8px;border:1px solid #cbd5e1;
  background:#ffffff;color:#475569;font:500 12px/1.3 inherit;cursor:pointer;
}
.dark .talon-wakeup-btn-dismiss{
  background:#1e293b;color:#cbd5e1;border-color:#475569;
}
.talon-wakeup-btn-dismiss:hover:not(:disabled){background:#f1f5f9;}
.dark .talon-wakeup-btn-dismiss:hover:not(:disabled){background:#334155;}
.talon-wakeup-btn-adopt:disabled,.talon-wakeup-btn-dismiss:disabled{opacity:.55;cursor:wait;}
.talon-wakeup-hint{font-size:10.5px;color:#64748b;}
.dark .talon-wakeup-hint{color:#94a3b8;}
.talon-wakeup-notice{
  padding:6px 10px;border-radius:8px;background:#ecfdf5;border:1px solid #86efac;
  color:#166534;font-size:11.5px;line-height:1.4;
}
.dark .talon-wakeup-notice{background:#052e16;border-color:#166534;color:#86efac;}
.talon-wakeup-count-badge{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:17px;height:17px;padding:0 5px;margin-left:5px;border-radius:999px;
  background:#f59e0b;color:#fff;font-size:10.5px;font-weight:700;line-height:1;
}
.talon-wakeup-count-badge[hidden]{display:none !important;}
