.eo-company-assistant{--eoca-ink:#182333;--eoca-line:#d8e1eb;--eoca-accent:#164a72;box-sizing:border-box;max-width:52rem;margin:1.5rem 0;padding:clamp(1rem,3vw,1.5rem);border:1px solid var(--eoca-line);border-radius:16px;background:#fff;color:var(--eoca-ink);font:inherit;overflow-wrap:anywhere}.eo-company-assistant *{box-sizing:border-box}.eo-company-assistant h2{font:inherit;font-size:1.5em;font-weight:750;line-height:1.25;margin:0 0 .75rem}.eo-company-assistant p{color:inherit;line-height:1.5;margin:.5rem 0}.eo-company-assistant .eoca-help{font-size:.9em;color:#53657a}.eo-company-assistant [data-eoca-messages]{display:flex;flex-direction:column;gap:.8rem;max-height:26rem;min-height:6rem;overflow:auto;padding:.5rem .1rem;scrollbar-gutter:stable}.eo-company-assistant .eoca-bubble{max-width:90%;padding:.75rem 1rem;border-radius:14px;background:#eef2f6;align-self:flex-start;min-width:0}.eo-company-assistant .eoca-bubble-user{align-self:flex-end;background:#e0edfc}.eo-company-assistant .eoca-speaker{font-size:.85em;font-weight:750;margin:0 0 .25rem}.eo-company-assistant [data-eoca-text]{white-space:pre-wrap;margin:0}.eo-company-assistant .eoca-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.6rem}.eo-company-assistant .eoca-actions a{min-height:44px;display:inline-flex;align-items:center;padding:.45rem .7rem;background:#fff;border:1px solid var(--eoca-line);border-radius:10px;color:var(--eoca-accent);text-decoration:underline}.eo-company-assistant form{display:grid;gap:.7rem;margin-top:1rem}.eo-company-assistant form[hidden]{display:none}.eo-company-assistant label{display:grid;gap:.35rem;font-weight:650}.eo-company-assistant textarea{width:100%;min-height:86px;max-width:100%;resize:vertical;padding:.7rem;font:inherit;color:var(--eoca-ink);background:#fff;border:1px solid #78889a;border-radius:10px}.eo-company-assistant button{justify-self:end;min-height:44px;min-width:44px;padding:.6rem 1rem;border-radius:10px;border:0;background:var(--eoca-accent);color:#fff;font:inherit;font-weight:750;cursor:pointer}.eo-company-assistant button:disabled{opacity:.55;cursor:wait}.eo-company-assistant [data-eoca-status]:empty{display:none}.eo-company-assistant [data-eoca-error]{padding:.8rem;border:1px solid #a64219;border-radius:10px;background:#fff0ed;color:#753519}.eo-company-assistant [hidden]{display:none}.eo-company-assistant :focus-visible{outline:3px solid #a64219;outline-offset:3px}@media(max-width:600px){.eo-company-assistant .eoca-bubble{max-width:96%}.eo-company-assistant button{width:100%}.eo-company-assistant .eoca-actions{display:grid}}

/* Homepage entry: native controls remain visible when setup is unavailable. */
.eo-company-assistant[data-eoca-home-entry]{width:min(100%,52rem);margin:1.5rem auto}
.eo-company-assistant .eoca-entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}
.eo-company-assistant .eoca-entry-grid details{min-width:0;border:1px solid var(--eoca-line);border-radius:10px;background:#fff}
.eo-company-assistant .eoca-entry-grid summary{min-height:44px;padding:.8rem 1rem;cursor:pointer;font:inherit;font-weight:750;color:var(--eoca-accent);overflow-wrap:anywhere}
.eo-company-assistant .eoca-entry-body{padding:0 1rem 1rem}
.eo-company-assistant .eoca-entry-status{padding:.65rem .8rem;border-left:3px solid var(--eoca-accent);background:#eef2f6}
@media(max-width:600px){.eo-company-assistant .eoca-entry-grid{grid-template-columns:minmax(0,1fr)}}
/* Compact persistent homepage dock; the native summary opens and closes it. */
.eo-company-assistant[data-eoca-home-entry]{position:fixed;z-index:10010;left:1rem;bottom:max(1rem,env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 2rem);margin:0;padding:0;border:0;background:transparent}
.eo-company-assistant[data-eoca-home-entry]>.eoca-launcher{display:list-item;min-height:48px;padding:.75rem 1rem;border:1px solid var(--eoca-line);border-radius:999px;background:var(--eoca-accent);color:#fff;font:inherit;font-size:1rem;font-weight:750;line-height:1.4;cursor:pointer;box-shadow:0 4px 18px #18233326;overflow-wrap:anywhere}
.eo-company-assistant[data-eoca-home-entry]>.eoca-dock-content{position:absolute;left:0;bottom:calc(100% + .5rem);width:min(24rem,calc(100vw - 2rem));max-height:min(32rem,calc(100dvh - 7rem));overflow:auto;overscroll-behavior:contain;padding:1rem;border:1px solid var(--eoca-line);border-radius:16px;background:#fff;color:var(--eoca-ink);box-shadow:0 8px 28px #18233326}
.eo-company-assistant[data-eoca-home-entry]:not([open])>.eoca-dock-content{display:none}
/* Blueprint's existing support panel occupies the lower viewport. */
.eo-company-assistant[data-eoca-home-entry][data-eoca-placement=top]{top:80px;right:1rem;left:auto;bottom:auto}
.eo-company-assistant[data-eoca-home-entry][data-eoca-placement=top]>.eoca-dock-content{right:0;left:auto;top:calc(100% + .5rem);bottom:auto;max-height:max(3rem,min(18rem,calc(100dvh - 43rem)))}
@media(min-width:601px){.eo-company-assistant[data-eoca-home-entry][data-eoca-placement=top]{right:auto;left:1rem}.eo-company-assistant[data-eoca-home-entry][data-eoca-placement=top]>.eoca-dock-content{left:0;right:auto}}

/* Measured homepage CTA rows remain clear of the new launcher. */
.eo-company-assistant[data-eoca-home-entry]:is([data-eoca-company="52-degree-foundation"],[data-eoca-home-company="52-degree-foundation"]),.eo-company-assistant[data-eoca-home-entry][data-eoca-company="toro-negro"],.eo-company-assistant[data-eoca-home-entry][data-eoca-company="airlie-beach-yacht-club"],.eo-company-assistant[data-eoca-home-entry][data-eoca-company="ourgift2u"],.eo-company-assistant[data-eoca-home-entry][data-eoca-company="promobox"]{bottom:max(8rem,env(safe-area-inset-bottom))}
/* Match the existing Blueprint loading layer; later DOM order keeps native help usable. */
.eo-company-assistant[data-eoca-home-entry][data-eoca-company="blueprintmaster"]{z-index:2147483647}
/* Width-scoped measured exceptions preserve existing visible CTA and form controls. */
@media(min-width:1200px){.eo-company-assistant[data-eoca-home-entry]:is([data-eoca-company="52-degree-foundation"],[data-eoca-home-company="52-degree-foundation"]){bottom:max(1rem,env(safe-area-inset-bottom))}}
@media(min-width:601px) and (max-width:900px){.eo-company-assistant[data-eoca-home-entry][data-eoca-company="toro-negro"]{bottom:max(1rem,env(safe-area-inset-bottom))}}
@media(max-width:350px){.eo-company-assistant[data-eoca-home-entry][data-eoca-company="airlie-beach-yacht-club"]{bottom:max(12rem,env(safe-area-inset-bottom))}}
@media(max-width:600px){.eo-company-assistant[data-eoca-home-entry][data-eoca-company="ourgift2u"]{left:auto;right:1rem}.eo-company-assistant[data-eoca-home-entry][data-eoca-company="ourgift2u"]>.eoca-dock-content{left:auto;right:0}}
/* Mara homepage dock: keep the composer and meeting entry in one viewport.
   Only the conversation grows and scrolls; existing launcher/CTA placement is retained. */
.eo-company-assistant[data-eoca-home-entry][open]{--eoca-anchor:1rem;--eoca-panel-height:min(36rem,calc(100dvh - var(--eoca-anchor) - 5.5rem - env(safe-area-inset-top)))}
.eo-company-assistant[data-eoca-home-entry][open]:is([data-eoca-company="52-degree-foundation"],[data-eoca-home-company="52-degree-foundation"],[data-eoca-company="toro-negro"],[data-eoca-home-company="toro-negro"],[data-eoca-company="airlie-beach-yacht-club"],[data-eoca-company="ourgift2u"],[data-eoca-company="promobox"]){--eoca-anchor:8rem}
@media(min-width:1200px){.eo-company-assistant[data-eoca-home-entry][open]:is([data-eoca-company="52-degree-foundation"],[data-eoca-home-company="52-degree-foundation"]){--eoca-anchor:1rem}}
@media(min-width:601px) and (max-width:900px){.eo-company-assistant[data-eoca-home-entry][open]:is([data-eoca-company="toro-negro"],[data-eoca-home-company="toro-negro"]){--eoca-anchor:1rem}}
@media(max-width:350px){.eo-company-assistant[data-eoca-home-entry][open][data-eoca-company="airlie-beach-yacht-club"]{--eoca-anchor:12rem}}
.eo-company-assistant[data-eoca-home-entry][open]>.eoca-dock-content{display:flex;flex-direction:column;gap:6px;height:var(--eoca-panel-height);max-height:var(--eoca-panel-height);overflow:hidden;padding:12px;font:14px/1.4 system-ui,sans-serif}
.eo-company-assistant[data-eoca-home-entry][open][data-eoca-placement="top"]{--eoca-panel-height:min(36rem,calc(100dvh - 10rem - env(safe-area-inset-bottom)))}
.eo-company-assistant[data-eoca-home-entry][open][data-eoca-placement="top"]>.eoca-dock-content{height:var(--eoca-panel-height);max-height:var(--eoca-panel-height)}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content h2{margin:0;font:600 16px/1.3 system-ui,sans-serif;text-transform:none;letter-spacing:normal}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content p{margin:0;font-size:14px;line-height:1.4}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content>h2,.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content>p{flex:none}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid{display:flex;flex:1;flex-direction:column;gap:6px;min-height:0;margin:0}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details{min-height:0;flex:none}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:first-child[open]{display:flex;flex:1;flex-direction:column;overflow:hidden}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:first-child[open]::details-content{display:flex;flex:1;flex-direction:column;min-height:0}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:first-child>.eoca-entry-body{display:flex;flex:1;flex-direction:column;min-height:0;gap:6px}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-body{padding:0 8px 8px}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content summary{flex:none;min-height:44px;padding:10px 8px;font:600 14px/1.4 system-ui,sans-serif;color:var(--eoca-accent);cursor:pointer}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-body>.eo-company-assistant{display:flex;flex:1;flex-direction:column;gap:6px;min-height:0;max-width:100%;margin:0;padding:0;border:0;border-radius:0}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-messages]{display:flex;flex:1;min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:0 2px 0 0;gap:6px}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-messages]:empty{flex:0;padding:0}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content form[data-eoca-form]{flex:none;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;align-items:end;margin:0}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content form[data-eoca-form]>label{display:grid;min-width:0;gap:3px;font:600 14px/1.4 system-ui,sans-serif}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content textarea{width:100%;height:56px;min-height:56px;max-height:56px;padding:7px;font:16px/1.3 system-ui,sans-serif;resize:none}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content button{width:auto;min-height:44px;min-width:44px;padding:8px 12px;font:600 14px/1.4 system-ui,sans-serif;white-space:normal}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-status],.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-error]{grid-column:1/-1;flex:none;font-size:14px}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-error]{padding:6px 8px;max-height:5.5rem;overflow:auto}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-error]:empty,.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-status]:empty{display:none!important}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [hidden]{display:none!important}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content .eoca-bubble{flex:none;padding:8px 10px}
.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content .eoca-entry-status{padding:6px 8px}
/* Small-height / software-keyboard fallback keeps the meeting control first and
   a clearly scrollable body, rather than clipping inaccessible content. */
@media(max-height:540px){.eo-company-assistant[data-eoca-home-entry][open]>.eoca-dock-content{overflow:auto;height:auto;max-height:var(--eoca-panel-height)}.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:last-child,.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content>details{order:-1}.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-messages]{flex:none;max-height:6rem}.eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:first-child[open]{flex:none;overflow:visible}}

/* Compatibility and constrained-height fallback: all content stays reachable. */
@supports not selector(details::details-content){
 .eo-company-assistant[data-eoca-home-entry][open]>.eoca-dock-content{height:auto;overflow:auto}
 .eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid{flex:none}
 .eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:last-child,.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content>details{order:-1}
 .eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:first-child[open]{flex:none;overflow:visible}
 .eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-messages]{flex:none;max-height:8rem}
}
@media(max-width:600px) and (max-height:700px){
 .eo-company-assistant[data-eoca-home-entry][open]>.eoca-dock-content{height:auto;overflow:auto}
 .eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid{flex:none}
 .eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:last-child,.eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content>details{order:-1}
 .eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:first-child[open]{flex:none;overflow:visible}
 .eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-messages]{flex:none;max-height:6rem}
}
/* On a short phone window the OPEN dock may cover background site controls,
   just like an ordinary chat overlay. Closing restores the existing launcher
   anchor; other widgets and their behaviour are not changed. */
@media(max-width:600px) and (max-height:700px){
 .eo-company-assistant[data-eoca-home-entry][open]:not([data-eoca-placement="top"]){bottom:max(1rem,env(safe-area-inset-bottom));--eoca-anchor:max(1rem,env(safe-area-inset-bottom))}
 .eo-company-assistant[data-eoca-home-entry][open]:not([data-eoca-placement="top"])>.eoca-dock-content{height:var(--eoca-panel-height);max-height:var(--eoca-panel-height)}
}
/* Normalise Firefly's OPEN panel dimensions independently of its host-root
   rem scale; never change the host theme or closed launcher. */
.eo-company-assistant[data-eoca-home-entry][open]:is([data-eoca-home-company="firefly-corp"],[data-eoca-company="firefly-corp"]){--eoca-anchor:16px;--eoca-panel-height:min(576px,calc(100dvh - var(--eoca-anchor) - 88px - env(safe-area-inset-top)))}
.eo-company-assistant[data-eoca-home-entry][open]:is([data-eoca-home-company="firefly-corp"],[data-eoca-company="firefly-corp"])>.eoca-dock-content{width:min(384px,calc(100vw - 32px));height:var(--eoca-panel-height);max-height:var(--eoca-panel-height)}
/* WP mounts repeat the identical outer company heading. Keep its DOM text
   for the existing assistant binding; only remove the visual duplication.
   The full nested provider/privacy disclosure remains visible. */
.eo-company-assistant[data-eoca-home-entry][open][data-eoca-home-company] .eoca-entry-body>.eo-company-assistant[data-eoca-company]>h2[data-eoca-name]{display:none}
.eo-company-assistant[data-eoca-home-entry][open][data-eoca-home-company]:has(.eoca-entry-body>.eo-company-assistant[data-eoca-company] form[data-eoca-form])>.eoca-dock-content>p.eoca-entry-status{display:none}
/* With the expanded phone anchor, modern details can allocate the remaining
   height to the transcript instead of forcing a fixed history height. The
   <=540px software-keyboard and unsupported-engine scroll fallbacks remain. */
@supports selector(details::details-content){
 @media(max-width:600px) and (min-height:541px) and (max-height:700px){
  .eo-company-assistant[data-eoca-home-entry][open]>.eoca-dock-content{height:var(--eoca-panel-height);max-height:var(--eoca-panel-height);overflow:hidden}
  .eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid{flex:1;min-height:0}
  .eo-company-assistant[data-eoca-home-entry][open] .eoca-entry-grid>details:first-child[open]{flex:1;min-height:0;overflow:hidden}
  .eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-messages]{flex:1;min-height:0;max-height:none;overflow:auto}
  .eo-company-assistant[data-eoca-home-entry][open] .eoca-dock-content [data-eoca-messages]:empty{flex:0}
 }
}
