/*
 * PULSELINE final desktop conversation header
 *
 * Left:   End-to-end encrypted
 * Centre: Avatar, contact name and username
 * Right:  Conversation and call controls
 *
 * CSS only. No messaging, encryption or calling logic changed.
 */

@media (min-width: 1200px) {
  .pulseline-conversation-header {
    position: relative !important;

    display: grid !important;
    grid-template-columns:
      minmax(170px, 1fr)
      auto
      minmax(170px, 1fr) !important;

    align-items: center !important;

    min-height: 88px !important;
    padding: 12px 18px !important;
    gap: 18px !important;
  }

  /*
   * Centre the complete contact-information group:
   * avatar, display name and username.
   */
  .pulseline-conversation-header > div:first-child {
    grid-column: 2 !important;
    justify-self: center !important;

    position: static !important;
    inset: auto !important;
    transform: none !important;

    display: flex !important;
    align-items: center !important;
    gap: 12px !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;

    pointer-events: auto !important;
  }

  /*
   * Reset the earlier rule that positioned only the text
   * independently from the avatar.
   */
  .pulseline-conversation-header
    > div:first-child
    > div:last-child {
    position: static !important;
    inset: auto !important;
    transform: none !important;

    width: auto !important;
    min-width: 0 !important;

    text-align: left !important;
    pointer-events: auto !important;
  }

  .pulseline-conversation-header .h-12.w-12 {
    width: 50px !important;
    height: 50px !important;
    flex-shrink: 0 !important;
  }

  .pulseline-conversation-header
    > div:first-child
    > div:last-child
    > p:first-child {
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
  }

  .pulseline-conversation-header
    > div:first-child
    > div:last-child
    > p:nth-child(2) {
    margin-top: 3px !important;

    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  /*
   * Right-align the existing call and conversation controls.
   */
  .pulseline-conversation-header > div:last-child {
    grid-column: 3 !important;
    justify-self: end !important;

    position: static !important;

    display: flex !important;
    align-items: center !important;
    gap: 3px !important;

    margin: 0 !important;
    flex-shrink: 0 !important;
  }

  /*
   * Present the existing encryption badge prominently on the left,
   * vertically aligned with the centred contact information.
   */
  .pulseline-conversation-pane
    > div.mb-2.text-emerald-400 {
    position: absolute !important;

    top: 44px !important;
    left: 18px !important;
    transform: translateY(-50%) !important;

    z-index: 10 !important;

    display: flex !important;
    align-items: center !important;
    gap: 6px !important;

    width: max-content !important;
    max-width: 180px !important;

    margin: 0 !important;
    padding: 7px 11px !important;

    border: 1px solid
      color-mix(in oklab, currentColor 30%, transparent) !important;
    border-radius: 999px !important;

    background:
      color-mix(
        in oklab,
        var(--color-background) 82%,
        transparent
      ) !important;

    box-shadow:
      0 0 18px
      color-mix(in oklab, currentColor 12%, transparent) !important;

    /*
     * Hide only the original wording visually.
     * The lock icon remains visible.
     */
    font-size: 0 !important;
    line-height: 0 !important;

    white-space: nowrap !important;
    pointer-events: none !important;
  }

  .pulseline-conversation-pane
    > div.mb-2.text-emerald-400
    > svg {
    width: 14px !important;
    height: 14px !important;
    flex-shrink: 0 !important;
  }

  /*
   * Display the corrected wording.
   */
  .pulseline-conversation-pane
    > div.mb-2.text-emerald-400::after {
    content: "End-to-end encrypted";

    font-size: 11px !important;
    line-height: 1rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
  }
}
