/* Orbit public chat widget: shared component asset, not embedded into individual pages. */
#orbit-live-widget{position:fixed;right:22px;bottom:22px;z-index:99999;font:14px/1.45 Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#182e27}
#orbit-live-widget *{box-sizing:border-box}
#orbit-live-widget [hidden]{display:none!important}
/* Keep the chat button clear of the cookie-consent bar (same z-index, fixed at bottom:0) while it is visible. */
body:has(.site-notice.site-notice--visible) #orbit-live-widget{bottom:110px}
@media (max-width:767px){body:has(.site-notice.site-notice--visible) #orbit-live-widget{bottom:180px}}
#orbit-live-toggle{display:flex;align-items:center;gap:8px;border:0;border-radius:4px;background:#00e568;color:#222E2A;padding:13px 18px;font-weight:600;font-family:"IBM Plex Mono",ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 10px 30px rgba(34,46,42,.18);cursor:pointer}
.orbit-live-toggle-dot{color:#202d28;font-size:11px}
#orbit-live-panel{position:absolute;right:0;bottom:60px;width:min(390px,calc(100vw - 24px));height:min(610px,calc(100vh - 92px));background:#fff;border:1px solid #d7e5de;border-radius:16px;box-shadow:0 24px 70px rgba(17,39,30,.25);overflow:hidden;display:flex;flex-direction:column}
#orbit-live-panel[hidden]{display:none}
.orbit-live-header{display:flex;align-items:center;gap:12px;padding:13px 16px;color:#fff}
/* The site theme also sets the chat header background with !important. */
#orbit-live-widget .orbit-live-header{background:#202d28!important}
.orbit-live-header>div{flex:1;min-width:0;display:grid;gap:3px}
.orbit-live-header strong{font:700 14px/1.3 var(--orbit-mono);letter-spacing:.11em;text-transform:uppercase;overflow-wrap:anywhere}
.orbit-live-header small{font:11px/1.3 var(--orbit-mono);color:#d0dfd6}
.orbit-live-mark,.orbit-live-avatar{display:grid;place-items:center;flex:none;font:700 12px var(--orbit-mono)}
.orbit-live-mark{width:34px;height:34px;border-radius:8px;background:#00e568;color:#202d28;font-size:19px}
.orbit-live-avatar{width:27px;height:27px;border-radius:7px;background:#d3fae5;color:#085a35}
#orbit-live-close{background:transparent;color:#fff;border:1px solid #8ca198;line-height:1;cursor:pointer;padding:4px}
#orbit-live-messages{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:9px;background:#FAFAFA}
.orbit-live-message{padding:9px 11px;border-radius:12px;background:#edf3ef;max-width:86%;white-space:pre-wrap;overflow-wrap:anywhere}
.orbit-live-message.mine{align-self:flex-end;background:#d7f6e4}
.orbit-live-message.bot{background:#e8f1ee;border:1px solid #d8e6e1}
.orbit-live-message small{display:block;margin-bottom:3px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#6f7e78}
.orbit-live-prechat{padding:14px;border-top:1px solid #e2eae5;overflow:auto;max-height:72%}
.orbit-live-welcome{font-weight:700;font-size:15px;margin-bottom:8px}
.orbit-live-profile{margin-bottom:10px;padding:9px 10px;border:1px solid #d9e6e1;border-radius:9px;background:#f5faf8;font-size:12px;color:#50615a}
.orbit-live-profile strong{display:block;color:#18382e;font-size:13px;margin-bottom:2px}
.orbit-live-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.orbit-live-prechat label{display:grid;gap:4px;font-size:12px;font-weight:700;color:#54645e}
.orbit-live-prechat input,.orbit-live-prechat textarea,#orbit-live-input{width:100%;border:1px solid #cbdad4;border-radius:8px;padding:9px;background:#fff;color:#182e27;outline:none}
.orbit-live-prechat textarea{margin-top:5px;resize:vertical}
.orbit-live-prechat input:focus,.orbit-live-prechat textarea:focus,#orbit-live-input:focus{border-color:#5a8878;box-shadow:0 0 0 2px rgba(18,233,133,.10)}
#orbit-live-form{border-top:1px solid #e2eae5;padding:10px;background:#fff}
#orbit-live-form[hidden]{display:none}
#orbit-live-input{display:block;resize:vertical}
.orbit-live-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}
.orbit-live-actions span{font-size:11px;color:#a13b30}
.orbit-live-actions button{border:0;border-radius:4px;background:#00EC6C;color:#222E2A;padding:9px 16px;font-weight:600;font-family:"IBM Plex Mono",ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.orbit-live-actions button:disabled{opacity:.6;cursor:wait}
@media(max-width:520px){
  #orbit-live-widget{right:12px;bottom:12px}
  #orbit-live-panel{position:fixed;left:10px;right:10px;bottom:72px;width:auto;height:min(640px,calc(100vh - 92px))}
  .orbit-live-fields{grid-template-columns:1fr}
}

/* Compact mobile-first Orbit chat. The header/close button always remain visible. */
#orbit-live-choices{display:flex;flex-wrap:wrap;gap:7px;padding:10px 12px;max-height:38%;overflow:auto;background:#fff;border-top:1px solid #e2eae5}
#orbit-live-choices[hidden]{display:none}
#orbit-live-choices .orbit-choice{flex:1 1 46%;border:1px solid #cbdad4;border-radius:10px;background:#f4f8f6;color:#18382e;text-align:left;font:600 13px/1.35 Inter,system-ui,sans-serif;padding:10px;min-height:44px;cursor:pointer}
#orbit-live-choices .orbit-choice:active{background:#ddf3e8}
#orbit-live-choices .orbit-choice:disabled{opacity:.55}
#orbit-live-panel{min-height:0;max-height:calc(100dvh - 24px)}
.orbit-live-header{flex:0 0 auto;position:relative;z-index:2;min-height:54px}
#orbit-live-close{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;align-self:center;border-radius:5px;font-size:23px}
#orbit-live-form{flex:0 0 auto;padding:8px 10px}
#orbit-live-input{min-height:46px;max-height:96px;resize:none;font-size:16px}
#orbit-live-form .orbit-live-actions{margin-top:5px}
#orbit-live-form .orbit-live-actions button{min-height:42px}
#orbit-live-messages{min-height:0;overscroll-behavior:contain}
@media(max-width:767px){
 #orbit-live-widget{right:10px;bottom:max(10px,env(safe-area-inset-bottom))}
 #orbit-live-panel{position:fixed;inset:8px 8px max(8px,env(safe-area-inset-bottom)) 8px;width:auto;height:auto;max-height:none;border-radius:14px;z-index:100001}
 #orbit-live-toggle{padding:11px 14px}
 #orbit-live-choices .orbit-choice{flex-basis:100%}
 #orbit-live-messages{padding:11px;gap:7px}
 .orbit-live-message{max-width:91%;padding:9px 11px}
 .orbit-live-prechat{padding:10px;max-height:none;min-height:0}
 body:has(.site-notice.site-notice--visible) #orbit-live-widget{bottom:max(10px,env(safe-area-inset-bottom))}
}
@media(max-width:340px){
 #orbit-live-panel{inset:4px 4px max(4px,env(safe-area-inset-bottom))}
 .orbit-live-header{padding:7px 10px}
 #orbit-live-messages{padding:7px}
}

.orbit-live-estimate-summary{font-weight:600;font-size:12px;margin-top:8px;padding:9px;border:1px solid #cbdad4;border-radius:8px;background:#fff}
.orbit-live-approve{font:600 13px/1.3 Inter,system-ui,sans-serif;min-height:44px;padding:10px 14px;background:#00EC6C;color:#18382e;border:0;border-radius:8px;cursor:pointer;margin-top:8px;width:100%}
.orbit-live-approve:disabled{opacity:.5}

/* Mirror the desktop Orbit thread and attachment geometry in the public panel. */
#orbit-live-widget{--orbit-forest:#222e2a;--orbit-line:#d3dbd7;--orbit-mono:"IBM Plex Mono",ui-monospace,monospace;color:#1c2421}
#orbit-live-messages{background:#f6f8f7}
#orbit-live-widget .orbit-live-message{display:flex;align-items:flex-start;gap:8px;background:none;border:0;padding:0;width:fit-content;min-width:0;max-width:94%;font-size:14.5px;line-height:1.5}
#orbit-live-widget .orbit-live-message-body{min-width:0}
#orbit-live-widget .orbit-live-sender{font:700 10px/1.3 var(--orbit-mono);letter-spacing:.07em;color:#54665e;margin-bottom:4px}
#orbit-live-widget .orbit-live-bubble{background:#fff;border:1px solid var(--orbit-line);border-radius:4px 13px 13px;padding:10px 12px}
#orbit-live-widget .mine .orbit-live-bubble{background:var(--orbit-forest);border-color:var(--orbit-forest);color:#fff;border-radius:13px 4px 13px 13px}
#orbit-live-widget .orbit-live-tag{background:#dcf7e9;color:#116743;border-radius:5px;padding:0 4px}
#orbit-live-widget .orbit-live-time,.orbit-live-card-meta{color:#54645d;font:10.5px/1.4 var(--orbit-mono);display:block;margin-top:4px}
#orbit-live-widget .mine .orbit-live-time{text-align:right}
#orbit-live-widget .orbit-discovery-results{display:grid;gap:8px;margin-top:8px}
#orbit-live-widget .orbit-live-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;background:#fff;border:1px solid var(--orbit-line);border-radius:10px;min-width:0;white-space:normal}
#orbit-live-widget .orbit-live-card strong{display:block;font-size:14px;line-height:1.3;font-weight:600}
#orbit-live-widget .orbit-live-tile{display:grid;place-items:center;position:relative;width:46px;height:46px;border-radius:7px;overflow:hidden;background:#e8f0ec;color:#22634f}
#orbit-live-widget .orbit-live-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#e8f0ec}
#orbit-live-widget .orbit-live-card-price{text-align:right;font:500 15px/1.3 var(--orbit-mono);white-space:nowrap}
#orbit-live-widget .orbit-live-card a{font-size:12px;color:#116743}
#orbit-live-widget .orbit-live-doc-head{font:600 11px/1.4 var(--orbit-mono);text-transform:uppercase;border-bottom:1px solid var(--orbit-line);padding-bottom:6px;margin-bottom:6px}
#orbit-live-widget .orbit-live-doc-line{display:flex;justify-content:space-between;gap:8px;padding:3px 0;white-space:normal}
#orbit-live-widget .orbit-live-doc-line span:last-child{font-family:var(--orbit-mono);white-space:nowrap}
#orbit-live-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
#orbit-live-form .orbit-live-actions{display:contents}
#orbit-live-status:not(:empty){grid-column:1/-1;grid-row:2}
#orbit-live-status:empty{display:none}
#orbit-live-form .orbit-live-actions button,.orbit-live-prechat input{min-height:44px}
.orbit-live-prechat input,.orbit-live-prechat textarea{font-size:16px}
@media(max-width:360px){
  #orbit-live-widget .orbit-live-card{grid-template-columns:40px minmax(0,1fr) auto;gap:7px;padding:8px}
  #orbit-live-widget .orbit-live-tile{width:40px;height:40px}
}

/* Shared Emergent design bridge for public Orbit.
   Keep the existing customer-chat geometry/interaction; align its components
   with admin chat's established ax tokens rather than introducing a new skin. */
#orbit-live-widget{
  --orbit-forest:var(--ax-forest,#222e2a);
  --orbit-line:var(--ax-line,#d3dbd7);
  --orbit-mono:var(--ax-mono,"IBM Plex Mono",ui-monospace,monospace);
  font-family:var(--ax-font,Inter,system-ui,sans-serif);
  color:var(--ax-ink,#26382f);
}
#orbit-live-widget #orbit-live-panel{
  background:var(--ax-surface,#fff);
  border-color:var(--orbit-line);
}
#orbit-live-widget .orbit-live-bubble,
#orbit-live-widget .orbit-live-card,
#orbit-live-widget .orbit-live-estimate-summary{
  background:var(--ax-surface,#fff);
  border-color:var(--orbit-line);
  color:var(--ax-ink,#26382f);
}
#orbit-live-widget .orbit-live-message.mine .orbit-live-bubble{
  background:var(--orbit-forest);border-color:var(--orbit-forest);color:#fff;
}
#orbit-live-widget .orbit-live-card strong{
  font-size:13.5px;line-height:1.4;font-weight:650;
  letter-spacing:0;text-transform:none;
}
#orbit-live-widget .orbit-live-card-meta,
#orbit-live-widget .orbit-live-sender,
#orbit-live-widget .orbit-live-time{
  color:var(--ax-muted,#71827a);font-family:var(--orbit-mono);
}
#orbit-live-widget .orbit-live-toggle-dot{color:var(--orbit-forest)}
#orbit-live-widget #orbit-live-toggle,
#orbit-live-widget .orbit-live-actions button,
#orbit-live-widget .orbit-live-approve{
  background:var(--ax-neon,#00e568);
  color:var(--orbit-forest);
  font-family:var(--orbit-mono);
}
#orbit-live-widget :is(button,input,textarea):focus-visible{
  outline:2px solid var(--ax-neon,#00c96a);
  outline-offset:2px;
}
@media(prefers-reduced-motion:reduce){
  #orbit-live-widget *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
