#fb-guide { color-scheme: light; font-family: Inter, system-ui, sans-serif; color: #101010; font-size: 14px; line-height: 1.5; }
#fb-guide *, #fb-guide *::before, #fb-guide *::after { box-sizing: border-box; }
#fb-guide button, #fb-guide a { font: inherit; cursor: pointer; }
#fb-guide button { appearance: none; }
#fb-guide button:focus-visible, #fb-guide a:focus-visible { outline: 3px solid #101010; outline-offset: 3px; }
#fb-guide .fb-guide-launcher { position: fixed; right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); z-index: 90; padding: 12px 18px; min-height: 48px; max-width: calc(100vw - 100px); border: 1px solid #0060d8; border-radius: 28px; background: #0060d8; color: #fff; font-weight: 700; box-shadow: 0 4px 20px #10101026; }
#fb-guide.fb-guide-on-quote { margin-top: 12px; text-align: center; }
#fb-guide.fb-guide-on-quote .fb-guide-launcher { position: static; display: inline-block; max-width: 100%; min-height: 44px; margin: 0; padding: 10px 12px; border: 0; border-radius: 0; background: transparent; color: #94a3b8; box-shadow: none; font-size: 13px; font-weight: 400; text-decoration: underline; text-underline-offset: 3px; }
#fb-guide .fb-guide-dialog { position: fixed; inset: auto 16px 16px auto; margin: 0; padding: 0; width: 380px; height: min(480px, calc(100dvh - 32px)); max-width: calc(100vw - 32px); border: 1px solid #dbe3ec; border-radius: 18px; background: #fff; color: #101010; box-shadow: 0 12px 48px #10101026; overflow: hidden; overscroll-behavior: contain; text-align: left; }
#fb-guide .fb-guide-dialog[open] { display: flex; flex-direction: column; }
#fb-guide .fb-guide-dialog::backdrop { background: #10101026; }
#fb-guide .fb-guide-header { display: flex; gap: 8px; align-items: center; padding: 12px 16px; border-bottom: 1px solid #e8eef4; }
#fb-guide .fb-guide-header > div { flex: 1; }
#fb-guide .fb-guide-eyebrow { margin: 0 0 2px; color: #64748b; font-size: 11px; }
#fb-guide h2 { margin: 0; font-size: 16px; font-weight: 700; line-height: 1.3; }
#fb-guide .fb-guide-close { flex-shrink: 0; width: 44px; height: 44px; border: 0; border-radius: 10px; background: transparent; color: #64748b; font-size: 26px; line-height: 1; }
#fb-guide .fb-guide-language { min-width: 44px; min-height: 44px; padding: 8px; border: 0; background: transparent; color: #64748b; font-size: 12px; }
#fb-guide .fb-guide-header, #fb-guide .fb-guide-actions { flex-shrink: 0; }
#fb-guide .fb-guide-body { position: relative; flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
#fb-guide .fb-guide-log { padding: 20px 16px 8px; }
#fb-guide .fb-guide-welcome { margin: 0 0 20px; max-width: 29ch; color: #475569; }
#fb-guide .fb-guide-message { margin: 0 0 10px; padding: 12px 14px; border-radius: 14px 14px 14px 3px; background: #f4f8fc; color: #3a4654; white-space: pre-line; overflow-wrap: anywhere; }
#fb-guide .fb-guide-message strong { display: block; margin-bottom: 3px; color: #101010; font-size: 12px; }
#fb-guide .fb-guide-message a { color: #0060d8; text-decoration: underline; text-underline-offset: 3px; }
#fb-guide .fb-guide-user { margin-left: 28px; background: #eaf5ff; border-radius: 14px 14px 3px 14px; }
#fb-guide .fb-guide-actions { display: flex; justify-content: space-between; align-items: center; gap: 12px; border-top: 1px solid #e8eef4; padding: 2px 16px; }
#fb-guide .fb-guide-actions a, #fb-guide .fb-guide-actions button { display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; background: transparent; color: #0060d8; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
#fb-guide .fb-guide-note { margin: 8px 0 0; color: #3a4654; font-size: 11px; }
#fb-guide .fb-guide-privacy { color: #475569; text-decoration: underline; text-underline-offset: 2px; }
#fb-guide .fb-guide-question { flex-shrink: 0; padding: 8px 16px 12px; }
#fb-guide .fb-guide-question label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
#fb-guide .fb-guide-input-row { display: flex; gap: 8px; }
#fb-guide input { min-width: 0; flex: 1; width: 100%; font: inherit; font-size: 16px; padding: 10px; border: 1px solid #64748b; border-radius: 10px; background: #fff; color: #101010; }
#fb-guide input:focus-visible { outline: 3px solid #101010; outline-offset: 2px; }
#fb-guide .fb-guide-input-row button { flex-shrink: 0; min-height: 44px; border: 0; border-radius: 10px; background: #0060d8; color: #fff; padding: 8px 12px; }
#fb-guide .fb-guide-question .fb-guide-note { margin: 8px 0 0; font-size: 11px; }
#fb-guide button:disabled { opacity: .6; cursor: wait; }
@media (max-width: 767px) {
  #fb-guide.fb-guide-on-quote { padding-bottom: calc(160px + env(safe-area-inset-bottom)); }
  #fb-guide.fb-guide-on-quote .fb-guide-launcher { scroll-margin-bottom: 180px; }
}
@media (max-width: 480px) {
  #fb-guide:not(.fb-guide-on-quote) .fb-guide-launcher { bottom: calc(88px + env(safe-area-inset-bottom)); }
  #fb-guide .fb-guide-launcher { font-size: 12px; padding: 12px 14px; }
  #fb-guide .fb-guide-dialog { inset: auto 8px max(8px, env(safe-area-inset-bottom)) 8px; width: auto; max-width: none; height: min(480px, calc(100dvh - 16px - env(safe-area-inset-bottom))); }
}
