/* Isolated Bervion assistant. Uses the shared brand tokens without changing the shell. */
body[data-bervion-page].bervion-assistant-ready .whatsapp-float { display: none !important; }
body[data-bervion-page] .bervion-assistant-launcher,
body[data-bervion-page] .bervion-assistant-dialog { font-family: Inter,Arial,sans-serif; color: var(--bervion-ink,#10223c); }
body[data-bervion-page] .bervion-assistant-launcher {
  position: fixed; z-index: 950; right: max(20px,env(safe-area-inset-right)); bottom: max(20px,env(safe-area-inset-bottom));
  display: flex; align-items: center; gap: 10px; min-height: 60px; max-width: calc(100vw - 100px);
  padding: 4px 16px 4px 4px; border: 1px solid #39506d; border-radius: 32px;
  background: var(--bervion-navy,#10223c); color: #fff; box-shadow: 0 3px 12px rgb(8 22 37 / 14%);
  cursor: pointer; font-size: 14px; font-weight: 650; line-height: 1.3; text-align: left;
}
body[data-bervion-page] .bervion-assistant-launcher:hover { background: #183655; }
body[data-bervion-page] .bervion-assistant-launcher-label { max-width: 105px; }
body[data-bervion-page] .bervion-assistant-launcher-avatar,
body[data-bervion-page] .bervion-assistant-header-avatar {
  position: relative; display: block; flex: 0 0 auto; overflow: hidden; border-radius: 50%; background: #e8f3f8;
}
body[data-bervion-page] .bervion-assistant-launcher-avatar { width: 50px; height: 50px; }
body[data-bervion-page] .bervion-assistant-header-avatar { width: 44px; height: 44px; }
body[data-bervion-page] .bervion-assistant-avatar-fallback { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; font-size: 24px; font-weight: 750; color: var(--bervion-navy,#10223c); }
body[data-bervion-page] :is(.bervion-assistant-launcher-avatar,.bervion-assistant-header-avatar) img {
  position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; object-fit: contain;
}
body[data-bervion-page] :is(.bervion-assistant-launcher-avatar,.bervion-assistant-header-avatar) [hidden] { display: none; }
body[data-bervion-page]:is(.bervion-menu-open,.bervion-assistant-open,.bervion-assistant-form-focus,.swal2-shown) .bervion-assistant-launcher { visibility: hidden; pointer-events: none; }

body[data-bervion-page] .bervion-assistant-dialog {
  position: fixed; inset: auto max(20px,env(safe-area-inset-right)) calc(max(20px,env(safe-area-inset-bottom)) + var(--bervion-assistant-keyboard,0px)) auto;
  width: min(420px,calc(100vw - 32px)); max-width: calc(100vw - 32px);
  height: min(700px,calc(var(--bervion-assistant-viewport,100dvh) - 40px)); max-height: calc(var(--bervion-assistant-viewport,100dvh) - 40px);
  min-width: 0; min-height: 0; margin: 0; padding: 0; overflow: hidden;
  background: #fff; border: 1px solid var(--bervion-line,#d8e2ed); border-radius: 12px; box-shadow: 0 8px 32px rgb(8 22 37 / 18%);
  font-size: 16px; line-height: 1.55; text-align: left;
}
body[data-bervion-page] .bervion-assistant-dialog:not([open]) { display: none; }
body[data-bervion-page] .bervion-assistant-dialog[open] { display: flex; flex-direction: column; }
body[data-bervion-page] .bervion-assistant-dialog::backdrop { background: rgb(8 22 37 / 45%); }
body[data-bervion-page] .bervion-assistant-dialog *,
body[data-bervion-page] .bervion-assistant-launcher * { box-sizing: border-box; }
body[data-bervion-page] .bervion-assistant-header {
  display: flex; flex: 0 0 auto; align-items: center; gap: 12px; padding: 16px;
  border-bottom: 1px solid var(--bervion-line,#d8e2ed); background: var(--bervion-navy,#10223c); color: #fff;
}
body[data-bervion-page] .bervion-assistant-heading-group { min-width: 0; flex: 1; }
body[data-bervion-page] .bervion-assistant-title { margin: 0; color: #fff; font-size: 18px; font-weight: 750; letter-spacing: -.02em; line-height: 1.25; }
body[data-bervion-page] .bervion-assistant-description { margin: 5px 0 0; color: #c8d4e3; font-size: 14px; line-height: 1.4; }
body[data-bervion-page] .bervion-assistant-close {
  display: flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px;
  padding: 0; margin: 0; border: 1px solid #6d8099; border-radius: 8px; background: transparent; color: #fff; cursor: pointer;
}
body[data-bervion-page] .bervion-assistant-close:hover { background: #29405c; }
body[data-bervion-page] .bervion-assistant-body { flex: 1 1 auto; min-height: 64px; padding: 20px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
body[data-bervion-page] .bervion-assistant-intro { margin: 0 0 16px; color: var(--bervion-muted,#52647c); font-size: 16px; line-height: 1.55; }
body[data-bervion-page] .bervion-assistant-topics { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 8px; margin: 0 0 24px; }
body[data-bervion-page] .bervion-assistant-topic {
  display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 44px; padding: 8px 10px;
  border: 1px solid #8799ae; border-radius: 8px; background: #fff; color: var(--bervion-ink,#10223c);
  font: 650 15px/1.4 Inter,Arial,sans-serif; cursor: pointer; text-align: center; overflow-wrap: anywhere;
}
body[data-bervion-page] .bervion-assistant-topic:hover { background: #e8f3f8; border-color: var(--bervion-blue,#1e5b9f); }
body[data-bervion-page] .bervion-assistant-answer { margin: 0; padding: 20px 0 0; border-top: 1px solid var(--bervion-line,#d8e2ed); overflow-wrap: anywhere; scroll-margin: 16px; }
body[data-bervion-page] .bervion-assistant-answer-title { margin: 0 0 12px; color: var(--bervion-ink,#10223c); font-size: 18px; line-height: 1.35; font-weight: 750; letter-spacing: -.015em; }
body[data-bervion-page] .bervion-assistant-answer-text { margin: 0 0 12px; color: var(--bervion-muted,#52647c); font-size: 16px; line-height: 1.6; }
body[data-bervion-page] .bervion-assistant-answer-links { display: flex; flex-direction: column; align-items: stretch; gap: 8px; margin-top: 16px; }
body[data-bervion-page] .bervion-assistant-answer-link {
  display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 12px;
  border: 1px solid #8799ae; border-radius: 8px; background: #fff; color: var(--bervion-ink,#10223c);
  font-size: 15px; font-weight: 650; line-height: 1.4; text-align: center; text-decoration: none;
}
body[data-bervion-page] .bervion-assistant-answer-link:hover { background: #e8f3f8; }
body[data-bervion-page] .bervion-assistant-answer-link-primary { background: var(--bervion-yellow,#f6c52f); border-color: var(--bervion-yellow,#f6c52f); color: var(--bervion-ink,#10223c); }
body[data-bervion-page] .bervion-assistant-answer-link-primary:hover { background: #ebbb20; border-color: #ebbb20; }
body[data-bervion-page] .bervion-assistant-composer { flex: 0 0 auto; margin: 0; padding: 12px 16px; border-top: 1px solid var(--bervion-line,#d8e2ed); background: var(--bervion-surface,#f4f7fb); }
body[data-bervion-page] .bervion-assistant-input-label { display: block; margin: 0 0 6px; color: var(--bervion-ink,#10223c); font-size: 14px; font-weight: 650; line-height: 1.4; }
body[data-bervion-page] .bervion-assistant-input-row { display: flex; align-items: stretch; gap: 8px; }
body[data-bervion-page] .bervion-assistant-input { display: block; flex: 1 1 auto; width: 0; min-width: 0; max-width: none; min-height: 48px; margin: 0; padding: 10px 12px; border: 1px solid #8799ae; border-radius: 8px; background: #fff; color: var(--bervion-ink,#10223c); font: 400 16px/1.5 Inter,Arial,sans-serif; }
body[data-bervion-page] .bervion-assistant-input::placeholder { color: #52647c; opacity: 1; }
body[data-bervion-page] .bervion-assistant-submit {
  flex: 0 0 auto; min-height: 48px; padding: 10px 12px; border: 1px solid var(--bervion-navy,#10223c); border-radius: 8px;
  background: var(--bervion-navy,#10223c); color: #fff; cursor: pointer; font: 650 14px/1.4 Inter,Arial,sans-serif;
}
body[data-bervion-page] .bervion-assistant-submit:hover { background: #29405c; }
body[data-bervion-page] .bervion-assistant-input-hint { margin: 6px 0 0; color: var(--bervion-muted,#52647c); font-size: 12px; line-height: 1.45; }
body[data-bervion-page] .bervion-assistant-footer { flex: 0 0 auto; padding: 8px 16px 12px; border-top: 1px solid var(--bervion-line,#d8e2ed); background: #fff; }
body[data-bervion-page] .bervion-assistant-whatsapp {
  display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 10px;
  border: 1px solid #8799ae; border-radius: 8px; color: var(--bervion-ink,#10223c); background: #fff;
  font-size: 14px; font-weight: 650; line-height: 1.45; text-decoration: none; text-align: center;
}
body[data-bervion-page] .bervion-assistant-whatsapp:hover { background: #e8f3f8; }
body[data-bervion-page] :is(.bervion-assistant-launcher,.bervion-assistant-dialog button,.bervion-assistant-dialog a,.bervion-assistant-dialog input):focus-visible { outline: 3px solid #1683b0; outline-offset: 3px; }
body[data-bervion-page] .bervion-assistant-close:focus-visible { outline-color: var(--bervion-cyan,#70def1); }

@media (max-width: 599px) {
  body[data-bervion-page] .bervion-assistant-launcher { right: max(16px,env(safe-area-inset-right)); bottom: max(16px,env(safe-area-inset-bottom)); width: 60px; padding: 4px; }
  body[data-bervion-page] .bervion-assistant-launcher-label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
  body[data-bervion-page] .bervion-assistant-dialog { inset: auto 16px calc(max(16px,env(safe-area-inset-bottom)) + var(--bervion-assistant-keyboard,0px)) auto; height: min(700px,calc(var(--bervion-assistant-viewport,100dvh) - 32px)); max-height: calc(var(--bervion-assistant-viewport,100dvh) - 32px); }
  body[data-bervion-page] .bervion-assistant-header { gap: 8px; padding: 12px; }
  body[data-bervion-page] .bervion-assistant-title { font-size: 17px; }
  body[data-bervion-page] .bervion-assistant-body { padding: 16px; }
  body[data-bervion-page] .bervion-assistant-composer { padding-inline: 12px; }
  body[data-bervion-page] .bervion-assistant-footer { padding-inline: 12px; }
}
@media (max-height: 480px) {
  body[data-bervion-page] .bervion-assistant-dialog { height: calc(var(--bervion-assistant-viewport,100dvh) - 24px); max-height: calc(var(--bervion-assistant-viewport,100dvh) - 24px); bottom: calc(max(12px,env(safe-area-inset-bottom)) + var(--bervion-assistant-keyboard,0px)); }
  body[data-bervion-page] .bervion-assistant-header { padding-block: 8px; }
  body[data-bervion-page] .bervion-assistant-composer { padding-block: 8px; }
  body[data-bervion-page] .bervion-assistant-input-hint { display: none; }
  body[data-bervion-page] .bervion-assistant-footer { padding-block: 6px; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-bervion-page] :is(.bervion-assistant-launcher,.bervion-assistant-dialog,.bervion-assistant-dialog *) { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
body[data-bervion-page] .bervion-assistant-dialog[open].bervion-assistant-compact { display: block; overflow-y: auto; overscroll-behavior: contain; }
body[data-bervion-page] .bervion-assistant-dialog.bervion-assistant-compact .bervion-assistant-body { min-height: 0; overflow: visible; }
@media (forced-colors: active) {
  body[data-bervion-page] :is(.bervion-assistant-launcher,.bervion-assistant-close,.bervion-assistant-topic,.bervion-assistant-answer-link,.bervion-assistant-submit,.bervion-assistant-whatsapp) { border: 1px solid ButtonText; }
}
