/* Defensive overrides for the injected profile assistant.
   The host page uses global section/button styles, so the launcher must fully own its layout. */
.brett-assistant-root,
.brett-assistant-root * {
  box-sizing: border-box !important;
}

.brett-assistant-root {
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.brett-assistant-panel {
  padding: 0 !important;
  min-height: 0 !important;
  max-height: calc(100vh - 110px) !important;
  position: relative !important;
  display: none !important;
}

.brett-assistant-root[data-open='true'] .brett-assistant-panel {
  display: flex !important;
}

.brett-assistant-head,
.brett-assistant-messages,
.brett-assistant-chips,
.brett-assistant-form,
.brett-assistant-foot {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.brett-assistant-head {
  flex: 0 0 auto !important;
  padding: 18px 18px 14px !important;
}

.brett-assistant-messages {
  flex: 1 1 auto !important;
  min-height: 170px !important;
  max-height: none !important;
}

.brett-assistant-form {
  flex: 0 0 auto !important;
}

.brett-assistant-input {
  width: auto !important;
}

.brett-assistant-send,
.brett-assistant-voice,
.brett-assistant-chip,
.brett-assistant-button,
.brett-assistant-close {
  appearance: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

@media (max-width: 520px) {
  .brett-assistant-panel {
    height: min(640px, calc(100vh - 84px)) !important;
    max-height: calc(100vh - 84px) !important;
  }

  .brett-assistant-head {
    padding: 16px 16px 12px !important;
  }

  .brett-assistant-messages {
    min-height: 150px !important;
    padding: 14px !important;
  }
}
