.tcc-global-ai{--tcc-ai-green:#07563f;--tcc-ai-gold:#b57a22;position:fixed;right:22px;bottom:22px;z-index:2147482000;font-family:inherit;color:#173f34}.tcc-global-ai *{box-sizing:border-box}.tcc-global-ai-launcher{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:0;cursor:pointer}.tcc-global-ai-mark{position:relative;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#0b6a4d,#064633);box-shadow:0 12px 34px rgba(4,55,40,.28),0 0 0 4px rgba(255,255,255,.94);color:#fff}.tcc-global-ai-mark:before{content:'TCC';position:absolute;top:13px;font-size:9px;font-weight:800;letter-spacing:.12em;opacity:.9}.tcc-global-ai-mark b{margin-top:11px;font-size:17px;letter-spacing:.02em}.tcc-global-ai-mark i,.tcc-global-ai-status i{width:10px;height:10px;border-radius:50%;background:#31c777;box-shadow:0 0 0 3px #fff}.tcc-global-ai-mark i{position:absolute;right:2px;bottom:7px}.tcc-global-ai-launcher-label{max-width:0;overflow:hidden;white-space:nowrap;opacity:0;transform:translateX(8px);transition:.2s ease;padding:9px 0;border-radius:999px;background:#fff;color:#174b3c;font-size:13px;font-weight:750;box-shadow:0 8px 24px rgba(20,52,42,.13)}.tcc-global-ai-launcher:hover .tcc-global-ai-launcher-label,.tcc-global-ai-launcher:focus-visible .tcc-global-ai-launcher-label{max-width:140px;opacity:1;transform:none;padding:9px 12px}.tcc-global-ai-drawer{position:absolute;right:0;bottom:82px;width:min(410px,calc(100vw - 28px));height:min(620px,calc(100vh - 120px));display:none;grid-template-rows:auto auto 1fr auto auto;background:#fff;border:1px solid rgba(7,86,63,.12);border-radius:22px;overflow:hidden;box-shadow:0 24px 70px rgba(17,54,43,.24)}.tcc-global-ai.is-open .tcc-global-ai-drawer{display:grid;animation:tccAiIn .18s ease-out}.tcc-global-ai.is-open .tcc-global-ai-launcher{visibility:hidden}.tcc-global-ai-drawer header{display:flex;align-items:center;justify-content:space-between;padding:16px 17px 12px;border-bottom:1px solid #edf2ef;background:#fff}.tcc-global-ai-identity{display:flex;align-items:center;gap:11px}.tcc-global-ai-mini{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--tcc-ai-green);color:#fff;font-weight:850;font-size:13px}.tcc-global-ai-identity div{display:flex;flex-direction:column}.tcc-global-ai-identity strong{font-size:16px;line-height:1.2}.tcc-global-ai-identity small{font-size:11px;color:#77857f;margin-top:2px}.tcc-global-ai-close{width:34px;height:34px;border:0;border-radius:50%;background:#f3f6f4;color:#49635a;font-size:22px;cursor:pointer}.tcc-global-ai-status{display:flex;align-items:center;gap:7px;padding:8px 18px;background:#f7fbf9;color:#567067;font-size:11px;font-weight:700}.tcc-global-ai-status i{width:7px;height:7px;box-shadow:none}.tcc-global-ai-transcript{min-height:0;overflow:auto;padding:18px 16px 8px;scroll-behavior:smooth}.tcc-global-ai-message{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:start;margin:0 0 13px}.tcc-global-ai-message.is-user{grid-template-columns:minmax(0,1fr) 30px}.tcc-global-ai-message.is-user .tcc-global-ai-avatar{grid-column:2}.tcc-global-ai-message.is-user>div{grid-column:1;grid-row:1;justify-self:end}.tcc-global-ai-avatar{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:#edf6f2;color:var(--tcc-ai-green);font-size:9px;font-weight:850}.tcc-global-ai-message p{margin:0;max-width:300px;padding:10px 12px;border-radius:5px 15px 15px 15px;background:#f3f7f5;color:#294d43;font-size:13px;line-height:1.52;white-space:pre-wrap}.tcc-global-ai-message.is-user p{background:var(--tcc-ai-green);color:#fff;border-radius:15px 5px 15px 15px}.tcc-global-ai-human{display:inline-flex;margin-top:7px;color:var(--tcc-ai-green);font-size:11px;font-weight:800;text-decoration:none}.tcc-global-ai-prompts{display:flex;gap:7px;overflow-x:auto;padding:6px 16px 10px;scrollbar-width:none}.tcc-global-ai-prompts.is-hidden{display:none}.tcc-global-ai-prompts button{flex:0 0 auto;border:1px solid #dbe8e2;border-radius:999px;background:#fff;padding:8px 10px;color:#31594d;font:inherit;font-size:11px;font-weight:750;cursor:pointer}.tcc-global-ai-composer{display:grid;grid-template-columns:1fr 42px;gap:8px;align-items:end;margin:0 13px 10px;padding:7px 7px 7px 12px;border:1px solid #dce7e2;border-radius:16px;background:#fff;box-shadow:0 4px 18px rgba(20,52,42,.05)}.tcc-global-ai-composer textarea{width:100%;max-height:100px;resize:none;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:8px 0!important;color:#183f34;font:inherit;font-size:13px;line-height:1.4}.tcc-global-ai-composer button{width:42px;height:42px;border:0;border-radius:12px;background:var(--tcc-ai-green);color:#fff;font-size:17px;cursor:pointer}.tcc-global-ai-composer button:disabled{opacity:.55}.tcc-global-ai-drawer footer{text-align:center;padding:0 12px 10px;color:#98a49f;font-size:9px}.tcc-global-ai-dots{display:inline-flex;gap:3px;margin-left:4px}.tcc-global-ai-dots i{width:4px;height:4px;border-radius:50%;background:#789087;animation:tccAiDot 1s infinite}.tcc-global-ai-dots i:nth-child(2){animation-delay:.15s}.tcc-global-ai-dots i:nth-child(3){animation-delay:.3s}@keyframes tccAiDot{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}@keyframes tccAiIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@media(max-width:640px){.tcc-global-ai{right:14px;bottom:14px}.tcc-global-ai-mark{width:58px;height:58px}.tcc-global-ai-drawer{position:fixed;inset:8px;width:auto;height:auto;max-height:none;border-radius:20px}.tcc-global-ai-message p{max-width:calc(100vw - 100px)}.tcc-global-ai-launcher-label{display:none}}@media(prefers-reduced-motion:reduce){.tcc-global-ai *{animation:none!important;transition:none!important}}

/* ============================================================
 * RC43.1796 — Global TCC AI Premium Presentation
 * Presentation-only authority.
 * Isolates Global AI from site-wide form/design-system rules.
 * No AI/session/provider/support-routing changes.
 * ============================================================ */

html body .tcc-global-ai{
  --tcc-gai-green:#075b46;
  --tcc-gai-green-dark:#064c3b;
  --tcc-gai-ink:#173f35;
  --tcc-gai-muted:#74847e;
  --tcc-gai-line:#e2ebe7;
  --tcc-gai-soft:#f5f8f7;
}

/* Premium compact drawer */
html body .tcc-global-ai__drawer{
  width:min(410px,calc(100vw - 28px)) !important;
  height:min(560px,calc(100dvh - 34px)) !important;
  max-height:560px !important;
  border:1px solid rgba(7,91,70,.12) !important;
  border-radius:24px !important;
  box-shadow:
    0 24px 70px rgba(17,55,45,.18),
    0 4px 18px rgba(17,55,45,.08) !important;
  overflow:hidden !important;
}

/* Header */
html body .tcc-global-ai__head{
  padding:17px 18px !important;
  min-height:auto !important;
}

html body .tcc-global-ai__mark{
  width:46px !important;
  height:46px !important;
  border-radius:14px !important;
}

html body .tcc-global-ai__head strong{
  font-size:17px !important;
  line-height:1.15 !important;
}

html body .tcc-global-ai__head small{
  margin-top:3px !important;
  font-size:12px !important;
}

html body .tcc-global-ai__close{
  width:38px !important;
  height:38px !important;
}

/* Availability strip */
html body .tcc-global-ai__status{
  min-height:auto !important;
  padding:10px 18px !important;
  font-size:12px !important;
}

/* Conversation */
html body .tcc-global-ai__messages{
  padding:18px !important;
  gap:12px !important;
  min-height:0 !important;
}

html body .tcc-global-ai__bubble{
  max-width:86% !important;
  padding:11px 13px !important;
  border-radius:17px !important;
  font-size:14px !important;
  line-height:1.55 !important;
}

html body .tcc-global-ai__avatar{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  font-size:11px !important;
}

/* Suggestions: wrap inside drawer, never horizontal clipping */
html body .tcc-global-ai__prompts{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:7px !important;
  overflow:visible !important;
  padding:10px 14px 8px !important;
  scrollbar-width:none !important;
}

html body .tcc-global-ai__prompt{
  flex:0 1 auto !important;
  min-width:0 !important;
  min-height:36px !important;
  height:auto !important;
  padding:8px 12px !important;
  border:1px solid #d8e5df !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#315c50 !important;
  box-shadow:none !important;
  font-size:12px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  white-space:normal !important;
}

/* Composer isolation from body.tcc-design-sync textarea authority */
html body.tcc-design-sync .tcc-global-ai .tcc-global-ai__composer{
  padding:8px 12px 7px !important;
  gap:8px !important;
  align-items:flex-end !important;
  border-top:1px solid var(--tcc-gai-line) !important;
}

html body.tcc-design-sync .tcc-global-ai .tcc-global-ai__composer textarea{
  box-sizing:border-box !important;
  width:100% !important;
  height:52px !important;
  min-height:52px !important;
  max-height:112px !important;
  margin:0 !important;
  padding:14px 13px !important;
  border:1px solid #d7e3de !important;
  border-radius:16px !important;
  outline:0 !important;
  box-shadow:none !important;
  background:#fff !important;
  color:var(--tcc-gai-ink) !important;
  font:inherit !important;
  font-size:14px !important;
  line-height:1.45 !important;
  resize:none !important;
  overflow-y:auto !important;
}

html body.tcc-design-sync .tcc-global-ai .tcc-global-ai__composer textarea:focus,
html body.tcc-design-sync .tcc-global-ai .tcc-global-ai__composer textarea:focus-visible{
  height:52px !important;
  min-height:52px !important;
  border-color:#8fb5a7 !important;
  outline:0 !important;
  outline-offset:0 !important;
  box-shadow:0 0 0 3px rgba(7,91,70,.07) !important;
}

html body .tcc-global-ai__send{
  flex:0 0 48px !important;
  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  min-height:48px !important;
  padding:0 !important;
  border-radius:15px !important;
  box-shadow:none !important;
}

/* Quiet disclaimer */
html body .tcc-global-ai__foot{
  min-height:auto !important;
  padding:4px 14px 12px !important;
  border:0 !important;
  color:#98a59f !important;
  font-size:10px !important;
  letter-spacing:.01em !important;
}

/* Mobile remains a true bottom sheet */
@media(max-width:640px){
  html body .tcc-global-ai__drawer{
    width:calc(100vw - 16px) !important;
    height:min(600px,calc(100dvh - 16px)) !important;
    max-height:calc(100dvh - 16px) !important;
    right:8px !important;
    bottom:8px !important;
    border-radius:22px !important;
  }

  html body .tcc-global-ai__head{
    padding:15px 15px !important;
  }

  html body .tcc-global-ai__messages{
    padding:15px !important;
  }

  html body .tcc-global-ai__prompts{
    padding:8px 11px 7px !important;
  }

  html body.tcc-design-sync .tcc-global-ai .tcc-global-ai__composer{
    padding:8px 10px 6px !important;
  }
}

/* ==========================================================
 * RC43.1796-CORRECTIVE-V2
 * Global TCC AI — actual DOM presentation authority
 * Presentation only.
 * ========================================================== */

/* DRAWER */
html body .tcc-global-ai-drawer{
  width:min(410px,calc(100vw - 28px)) !important;
  height:min(560px,calc(100dvh - 40px)) !important;
  max-height:560px !important;
  border-radius:24px !important;
  border:1px solid rgba(7,86,63,.12) !important;
  box-shadow:
    0 24px 70px rgba(17,54,43,.18),
    0 5px 18px rgba(17,54,43,.07) !important;
}

/* HEADER */
html body .tcc-global-ai-drawer header{
  padding:14px 16px 12px !important;
}

html body .tcc-global-ai-identity{
  gap:10px !important;
}

/* EXACT TCC LOGO — HEADER + AI AVATAR */
html body .tcc-global-ai-mini,
html body .tcc-global-ai-message.is-assistant .tcc-global-ai-avatar{
  background-color:transparent !important;
  background-image:url('./tcc-ai-avatar.png') !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-size:contain !important;
  color:transparent !important;
  font-size:0 !important;
  overflow:hidden !important;
}

html body .tcc-global-ai-mini{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  border-radius:50% !important;
}

html body .tcc-global-ai-message.is-assistant .tcc-global-ai-avatar{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:50% !important;
}

/* TRANSCRIPT */
html body .tcc-global-ai-transcript{
  padding:14px 15px 7px !important;
}

html body .tcc-global-ai-message{
  margin-bottom:10px !important;
}

html body .tcc-global-ai-message p{
  padding:9px 11px !important;
  font-size:13px !important;
  line-height:1.5 !important;
}

/* QUICK ACTIONS */
html body .tcc-global-ai-prompts{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  overflow:visible !important;
  padding:5px 12px 7px !important;
}

html body .tcc-global-ai-prompts button{
  flex:0 1 auto !important;
  min-height:24px !important;
  padding:3px 7px !important;
  font-size:8px !important;
  font-weight:500 !important;
  line-height:1.1 !important;
  color:#6b817a !important;
  white-space:normal !important;
}

/* ==========================================================
 * COMPOSER
 * Explicitly defeats site-wide min-height:104px textarea.
 * ========================================================== */

html body .tcc-global-ai-composer,
html body.tcc-design-sync .tcc-global-ai-composer{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 40px !important;
  align-items:center !important;
  gap:6px !important;

  min-height:50px !important;
  height:50px !important;

  margin:0 12px 8px !important;
  padding:4px 5px 4px 12px !important;

  border:1px solid #dce7e2 !important;
  border-radius:16px !important;
  background:#fff !important;

  box-shadow:0 4px 16px rgba(20,52,42,.05) !important;
}

html body .tcc-global-ai-composer textarea,
html body.tcc-design-sync .tcc-global-ai-composer textarea,
html body.tcc-design-sync :where(.tcc-global-ai-composer textarea){
  display:block !important;

  width:100% !important;

  height:36px !important;
  min-height:36px !important;
  max-height:36px !important;

  margin:0 !important;
  padding:8px 0 !important;

  border:0 !important;
  border-radius:0 !important;

  outline:0 !important;
  outline-offset:0 !important;

  background:transparent !important;
  box-shadow:none !important;

  color:#183f34 !important;

  font:inherit !important;
  font-size:13px !important;
  line-height:20px !important;

  resize:none !important;
  overflow:hidden !important;
}

html body .tcc-global-ai-composer textarea:focus,
html body .tcc-global-ai-composer textarea:focus-visible,
html body.tcc-design-sync .tcc-global-ai-composer textarea:focus,
html body.tcc-design-sync .tcc-global-ai-composer textarea:focus-visible{
  height:36px !important;
  min-height:36px !important;
  max-height:36px !important;

  border:0 !important;
  outline:0 !important;
  outline-offset:0 !important;
  box-shadow:none !important;
}

html body .tcc-global-ai-composer button,
html body.tcc-design-sync .tcc-global-ai-composer button{
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  min-height:40px !important;


  margin:0 !important;
  padding:0 !important;

  border:0 !important;
  border-radius:12px !important;

  align-self:center !important;
}

/* FOOTER */
html body .tcc-global-ai-drawer footer{
  padding:1px 12px 8px !important;
  font-size:9px !important;
}

/* MOBILE */
@media(max-width:640px){
  html body .tcc-global-ai-drawer{
    width:calc(100vw - 16px) !important;
    height:min(600px,calc(100dvh - 16px)) !important;
    max-height:calc(100dvh - 16px) !important;
    right:8px !important;
    bottom:8px !important;
    border-radius:22px !important;
  }

  html body .tcc-global-ai-composer{
    margin-left:10px !important;
    margin-right:10px !important;
  }
}


/* ============================================================
 * RC43.1796-V3 — Premium Concierge Final Candidate
 * Presentation-only final visual authority.
 * ============================================================ */

html body .tcc-global-ai-drawer{
  width:min(392px,calc(100vw - 28px)) !important;
  height:min(540px,calc(100dvh - 36px)) !important;
  max-height:540px !important;

  grid-template-rows:
    auto
    minmax(0,1fr)
    auto
    auto
    auto !important;

  border:1px solid rgba(19,71,56,.10) !important;
  border-radius:26px !important;

  box-shadow:
    0 30px 80px rgba(18,49,40,.17),
    0 8px 28px rgba(18,49,40,.07) !important;
}

/* ---------- Header / identity ---------- */

html body .tcc-global-ai-drawer header{
  padding:14px 16px 13px !important;
  border-bottom:1px solid #edf2ef !important;
}

html body .tcc-global-ai-identity{
  gap:10px !important;
}

html body .tcc-global-ai-mini{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
}

html body .tcc-global-ai-identity strong{
  font-size:15px !important;
  line-height:1.15 !important;
  letter-spacing:-.01em !important;
}

html body .tcc-global-ai-identity small{
  margin-top:2px !important;
  font-size:10px !important;
  line-height:1.2 !important;
  color:#81908a !important;
}

/* Status becomes quiet metadata inside identity */
html body .tcc-global-ai-presence{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;

  margin-top:4px !important;

  color:#698078 !important;
  font-size:9px !important;
  font-weight:600 !important;
  line-height:1 !important;
}

html body .tcc-global-ai-presence i{
  width:6px !important;
  height:6px !important;
  border-radius:50% !important;
  background:#31c777 !important;
  box-shadow:none !important;
}

/* Old status authority must never consume layout */
html body .tcc-global-ai-status{
  display:none !important;
}

html body .tcc-global-ai-close{
  width:34px !important;
  height:34px !important;
  font-size:19px !important;
  color:#61756e !important;
  background:#f5f7f6 !important;
}

/* ---------- Conversation ---------- */

html body .tcc-global-ai-transcript{
  padding:16px 15px 6px !important;
  min-height:0 !important;
  overflow-y:auto !important;
}

html body .tcc-global-ai-message{
  grid-template-columns:28px minmax(0,1fr) !important;
  gap:8px !important;
  margin:0 0 11px !important;
}

html body .tcc-global-ai-message.is-assistant .tcc-global-ai-avatar{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
}

/* User bubble is self-evident: remove dashboard-like "You" badge */
html body .tcc-global-ai-message.is-user{
  display:flex !important;
  justify-content:flex-end !important;
  margin-left:48px !important;
}

html body .tcc-global-ai-message.is-user .tcc-global-ai-avatar{
  display:none !important;
}

html body .tcc-global-ai-message.is-user > div{
  display:block !important;
}

html body .tcc-global-ai-message p{
  max-width:286px !important;

  padding:9px 11px !important;

  border-radius:6px 16px 16px 16px !important;

  background:#f4f7f5 !important;
  color:#294e43 !important;

  font-size:13px !important;
  font-weight:400 !important;
  line-height:1.48 !important;
  letter-spacing:0 !important;
}

html body .tcc-global-ai-message.is-user p{
  padding:8px 11px !important;

  border-radius:16px 6px 16px 16px !important;

  background:#07563f !important;
  color:#fff !important;
}

/* ---------- Quick actions ---------- */

/*
 * Premium hierarchy:
 * readable text, but short wording + quiet visual weight.
 * Do NOT solve hierarchy by shrinking text to 7–8px.
 */
html body .tcc-global-ai-prompts{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;

  gap:6px !important;

  padding:5px 15px 8px !important;
  overflow-x:auto !important;
}

html body .tcc-global-ai-prompts button{
  flex:0 0 auto !important;

  min-height:27px !important;

  padding:4px 8px !important;

  border:1px solid #e0e9e5 !important;
  border-radius:999px !important;

  background:#fafcfb !important;
  box-shadow:none !important;

  color:#657d75 !important;

  font-size:10px !important;
  font-weight:550 !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;

  white-space:nowrap !important;
}

/* ---------- Composer ---------- */

html body .tcc-global-ai-composer,
html body.tcc-design-sync .tcc-global-ai-composer{
  height:48px !important;
  min-height:48px !important;

  grid-template-columns:minmax(0,1fr) 38px !important;

  gap:6px !important;

  margin:0 13px 8px !important;
  padding:4px 5px 4px 12px !important;

  border:1px solid #dce6e2 !important;
  border-radius:16px !important;

  box-shadow:
    0 5px 18px rgba(20,52,42,.04) !important;
}

html body .tcc-global-ai-composer textarea,
html body.tcc-design-sync .tcc-global-ai-composer textarea,
html body.tcc-design-sync :where(.tcc-global-ai-composer textarea){
  height:34px !important;
  min-height:34px !important;
  max-height:34px !important;

  padding:7px 0 !important;

  font-size:12.5px !important;
  line-height:20px !important;

  overflow:hidden !important;
}

html body .tcc-global-ai-composer button,
html body.tcc-design-sync .tcc-global-ai-composer button{
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;

  border-radius:12px !important;

  font-size:15px !important;
}

/* ---------- Disclaimer ---------- */

html body .tcc-global-ai-drawer footer{
  padding:1px 12px 9px !important;

  color:#a0aca7 !important;

  font-size:8.5px !important;
  font-weight:400 !important;
  line-height:1.2 !important;
}

/* ---------- Mobile ---------- */

@media(max-width:640px){

  html body .tcc-global-ai-drawer{
    width:calc(100vw - 16px) !important;
    height:calc(100dvh - 16px) !important;
    max-height:calc(100dvh - 16px) !important;

    right:8px !important;
    bottom:8px !important;

    border-radius:22px !important;
  }

  html body .tcc-global-ai-prompts{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  html body .tcc-global-ai-message p{
    max-width:calc(100vw - 96px) !important;
  }
}

/* ============================================================
 * RC43.1797 — Global TCC AI Free Drag / 8-Way Resize
 * Interaction-only inheritance from RC43.1377 Live Chat.
 * Desktop/tablet-wide only; <=760px preserves existing mobile UI.
 * No AI/session/provider/support-routing changes.
 * ============================================================ */
@media(min-width:761px){
  html body .tcc-global-ai-drawer > header{
    cursor:move;
    cursor:grab;
    user-select:none;
    touch-action:none;
  }
  html body .tcc-global-ai-drawer.is-dragging > header{cursor:grabbing}
  html body .tcc-global-ai-drawer.is-dragging,
  html body .tcc-global-ai-drawer.is-resizing{animation:none!important}
  html body .tcc-global-ai-resize{
    position:absolute;
    display:block;
    z-index:30;
    background:transparent;
    touch-action:none;
  }
  html body .tcc-global-ai-resize.is-n,
  html body .tcc-global-ai-resize.is-s{left:12px;right:12px;height:10px}
  html body .tcc-global-ai-resize.is-n{top:-5px;cursor:n-resize}
  html body .tcc-global-ai-resize.is-s{bottom:-5px;cursor:s-resize}
  html body .tcc-global-ai-resize.is-e,
  html body .tcc-global-ai-resize.is-w{top:12px;bottom:12px;width:10px}
  html body .tcc-global-ai-resize.is-e{right:-5px;cursor:e-resize}
  html body .tcc-global-ai-resize.is-w{left:-5px;cursor:w-resize}
  html body .tcc-global-ai-resize.is-ne,
  html body .tcc-global-ai-resize.is-se,
  html body .tcc-global-ai-resize.is-sw,
  html body .tcc-global-ai-resize.is-nw{width:16px;height:16px;z-index:31}
  html body .tcc-global-ai-resize.is-ne{right:-6px;top:-6px;cursor:ne-resize}
  html body .tcc-global-ai-resize.is-se{right:-6px;bottom:-6px;cursor:se-resize}
  html body .tcc-global-ai-resize.is-sw{left:-6px;bottom:-6px;cursor:sw-resize}
  html body .tcc-global-ai-resize.is-nw{left:-6px;top:-6px;cursor:nw-resize}
}
@media(max-width:760px){
  html body .tcc-global-ai-resize{display:none!important}
  html body .tcc-global-ai-drawer > header{cursor:default!important;user-select:auto!important;touch-action:auto!important}
}

/* ============================================================
 * RC43.1797.1 — Stable Drag Coordinate Authority
 * Keeps the desktop drawer fixed from first render so drag never
 * switches from root-relative absolute coordinates to viewport-fixed
 * coordinates on pointerdown. Mobile authority remains unchanged.
 * ============================================================ */
@media(min-width:761px){
  html body .tcc-global-ai-drawer{
    position:fixed !important;
    right:22px !important;
    bottom:104px !important;
  }
  html body .tcc-global-ai-drawer.is-dragging,
  html body .tcc-global-ai-drawer.is-resizing{
    transform:none !important;
    transition:none !important;
    animation:none !important;
  }
}


/* ============================================================
 * RC43.1797.2 — Body-Level Floating Drawer Authority
 * Exact structural inheritance from RC43.1377 Live Chat:
 * the movable drawer is a direct child of document.body so its
 * fixed-position geometry cannot inherit a transformed/theme wrapper.
 * ============================================================ */
@media(min-width:761px){
  html body > .tcc-global-ai-drawer{
    --tcc-ai-green:#07563f;
    --tcc-ai-gold:#b57a22;
    position:fixed !important;
    right:22px !important;
    bottom:104px !important;
    left:auto;
    top:auto;
    z-index:2147482001;
    font-family:inherit;
    color:#173f34;
  }
  html body > .tcc-global-ai-drawer.is-open{
    display:grid !important;
    animation:tccAiIn .18s ease-out;
  }
  html body > .tcc-global-ai-drawer.is-open.is-dragging,
  html body > .tcc-global-ai-drawer.is-open.is-resizing{
    animation:none !important;
    transform:none !important;
    transition:none !important;
  }
}
@media(max-width:760px){
  html body > .tcc-global-ai-drawer{
    --tcc-ai-green:#07563f;
    --tcc-ai-gold:#b57a22;
    z-index:2147482001;
    font-family:inherit;
    color:#173f34;
  }
  html body > .tcc-global-ai-drawer.is-open{display:grid !important;}
}


/* ============================================================
 * RC43.1797.3 — Stable Open-State Motion Authority
 *
 * Runtime video QA showed a brief fade/translate "jump" after a
 * drag cycle. RC43.1797.2 reapplied tccAiIn whenever .is-dragging
 * was removed because the persistent .is-open rule again became
 * the winning animation declaration.
 *
 * A movable desktop concierge must keep geometry visually stable
 * for the entire open lifetime. Opening/dragging/resizing therefore
 * share one non-animated body-level geometry authority.
 * Mobile presentation remains unchanged.
 * ============================================================ */
@media(min-width:761px){
  html body > .tcc-global-ai-drawer.is-open,
  html body > .tcc-global-ai-drawer.is-open.is-dragging,
  html body > .tcc-global-ai-drawer.is-open.is-resizing{
    animation:none !important;
    transform:none !important;
    transition:none !important;
  }
}


/* ============================================================
 * RC43.1797.4 — Vertical Resize Constraint Release
 *
 * V3 presentation authority capped the drawer at max-height:540px.
 * That cap is correct for the default premium presentation but blocks
 * user-driven vertical resizing. Desktop movable authority therefore
 * releases only max-height; JS remains responsible for viewport clamp
 * and FLOAT_MIN_H. Mobile keeps the existing full-height authority.
 * ============================================================ */
@media(min-width:761px){
  html body > .tcc-global-ai-drawer{
    max-height:none !important;
  }
}

/* ============================================================
 * RC43.1827 — Global TCC AI iPhone Safe-Area Presentation
 *
 * Presentation only.
 * Does not alter AI/provider/session/routing/copy/24/24 authority.
 * ============================================================ */

@media (max-width: 760px) {

  html body .tcc-global-ai{
    right:max(14px, env(safe-area-inset-right)) !important;
    bottom:max(18px, calc(env(safe-area-inset-bottom) + 10px)) !important;
  }

  html body .tcc-global-ai-mark{
    width:56px !important;
    height:56px !important;
    box-shadow:
      0 10px 28px rgba(4,55,40,.22),
      0 0 0 4px rgba(255,255,255,.96) !important;
  }

  html body > .tcc-global-ai-drawer,
  html body .tcc-global-ai-drawer{
    left:max(8px, env(safe-area-inset-left)) !important;
    right:max(8px, env(safe-area-inset-right)) !important;
    top:max(8px, env(safe-area-inset-top)) !important;
    bottom:max(8px, env(safe-area-inset-bottom)) !important;

    width:auto !important;
    height:auto !important;
    max-height:none !important;

    border-radius:22px !important;
  }
}
