/*
 * Immutable author-profile polish for article/collection renderer v27.
 *
 * Loaded after v19-v23. This layer gives the article author a deliberate
 * identity hierarchy, keeps the complete biography in a native disclosure,
 * preserves the responsive three/two/one-column recent-post contract, and
 * closes the inherited Related Solution heading gap.
 */

@layer cis-blog-experience {
  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile {
    overflow: hidden;
    padding: 0 !important;
    border: 1px solid #d8e4f0;
    border-radius: 22px;
    background: var(--cbe-surface);
    box-shadow: 0 18px 48px rgb(16 40 72 / 9%);
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author {
    gap: 0;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author > .eb-entry-author-bio {
    display: grid !important;
    grid-template-columns: 160px minmax(0, 1fr) !important;
    gap: 10px 32px !important;
    align-items: start !important;
    margin: 0 !important;
    padding: 34px 38px 30px;
    background: #f7fbff;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-bio > .cBlg-ati-left {
    grid-column: 1;
    grid-row: 1 / span 2;
    align-self: center;
    width: 160px !important;
    min-width: 160px;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-bio > .cBlg-ati-right {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-bio > .cBlg-authrTopText {
    grid-column: 2;
    grid-row: 2;
    width: 100% !important;
    min-width: 0;
    margin: 0 !important;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .cBlg-ati-left a {
    display: inline-flex;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    outline: 2px solid #c7ddf5;
    outline-offset: 5px;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .cBlg-ati-left a:focus-visible {
    outline: 3px solid var(--cbe-accent);
    outline-offset: 5px;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .cBlg-ati-left img {
    width: 160px !important;
    height: 160px !important;
    border: 5px solid #ffffff;
    box-shadow: 0 12px 30px rgb(16 40 72 / 18%);
  }

  [data-blog-experience][data-cbe-surface="public"] .eb-author-profile__eyebrow {
    margin: 0 0 5px !important;
    background: #f7fbff !important;
    color: #005ea8 !important;
    font-size: .76rem !important;
    font-weight: 800;
    letter-spacing: .11em;
    line-height: 1.25 !important;
    text-transform: uppercase;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .cBlg-heading2 {
    margin: 0 0 10px !important;
    color: var(--cbe-text) !important;
    font-size: clamp(2rem, 3vw, 2.55rem) !important;
    font-weight: 800;
    letter-spacing: -.035em;
    line-height: 1.08 !important;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .blogger-profile {
    display: block;
    width: auto;
    max-width: 72ch;
    margin: 0 !important;
    padding: 0 0 0 13px;
    border: 0;
    border-left: 3px solid var(--cbe-accent);
    border-radius: 0;
    background: transparent;
    color: #24496f !important;
    font-size: .96rem;
    font-weight: 720;
    line-height: 1.5 !important;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-author-summary {
    max-width: 72ch;
    color: #334e68;
    font-size: 1rem;
    line-height: 1.72;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-author-details {
    margin-top: 16px;
    padding-top: 0;
    border-top: 0;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-author-details > summary {
    gap: 10px;
    min-height: 44px;
    padding: 9px 15px;
    border-color: #b8cce2;
    border-radius: 999px;
    background: #ffffff;
    font-size: .9rem;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-author-details > summary::after {
    content: "↓";
    margin-left: 0;
    font-size: 1rem;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-author-details[open] > summary::after {
    content: "↑";
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author > .eb-entry-author-recents {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin: 0;
    padding: 28px 0 0 !important;
    border: 0;
    background: #ffffff;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-recents > h3 {
    grid-column: 1 / -1;
    margin: 0 0 4px !important;
    color: var(--cbe-text) !important;
    font-size: clamp(1.35rem, 2vw, 1.6rem) !important;
    letter-spacing: -.02em;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-link-card {
    min-height: 108px !important;
    padding: 18px 19px !important;
    border-color: #d9e2ec;
    background: #f8fafc;
    box-shadow: 0 1px 1px rgb(16 40 72 / 3%);
  }

  [data-blog-experience][data-cbe-surface="public"] .eb-link-card__arrow {
    background: #f8fafc !important;
    color: #005ea8 !important;
  }

  [data-blog-experience][data-cbe-surface="public"] .eb-link-card:hover .eb-link-card__arrow,
  [data-blog-experience][data-cbe-surface="public"] .eb-link-card:focus-visible .eb-link-card__arrow {
    background: #ffffff !important;
  }

  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-link-card:hover,
  [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-link-card:focus-visible {
    border-color: #8db8e8;
    background: #ffffff;
    box-shadow: 0 10px 24px rgb(16 40 72 / 10%);
    transform: translateY(-2px);
  }

  /* The v21 readability layer intentionally made this heading transparent.
     Pin the actual light surface here so both rendered contrast and automated
     computed-style checks evaluate the same WCAG-safe colour pair. */
  [data-blog-experience][data-cbe-surface="public"] #eb .eb-growth-related h3 {
    background: #ffffff !important;
    color: #111827 !important;
  }

  /* The global article heading rhythm applies a 68px top margin here. Keep
     this compact card heading visually attached to its eyebrow instead. */
  [data-blog-experience][data-cbe-surface="public"] #eb .eb-entry-article .eb-entry-recommendation > h2 {
    margin: 10px 0 18px !important;
  }

  @media (max-width: 1050px) {
    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author > .eb-entry-author-recents {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-recents > div:last-child:nth-child(even) {
      grid-column: 1 / -1;
    }
  }

  @media (max-width: 760px) {
    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile {
      border-radius: 18px;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author > .eb-entry-author-bio {
      grid-template-columns: 108px minmax(0, 1fr) !important;
      gap: 18px !important;
      padding: 28px 22px 26px;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-bio > .cBlg-ati-left {
      grid-row: 1;
      align-self: start;
      width: 108px !important;
      min-width: 108px;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-bio > .cBlg-ati-right {
      grid-column: 2;
      grid-row: 1;
      align-self: center;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-bio > .cBlg-authrTopText {
      grid-column: 1 / -1;
      grid-row: 2;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .cBlg-ati-left a,
    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .cBlg-ati-left img {
      width: 108px !important;
      height: 108px !important;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .cBlg-ati-left img {
      border-width: 4px;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .cBlg-heading2 {
      margin-bottom: 8px !important;
      font-size: 1.8rem !important;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .blogger-profile {
      padding-left: 10px;
      font-size: .82rem;
      line-height: 1.42 !important;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-author-summary {
      font-size: .98rem;
      line-height: 1.68;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author > .eb-entry-author-recents {
      grid-template-columns: minmax(0, 1fr);
      padding-top: 24px !important;
    }

    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-entry-author-recents > div:last-child:nth-child(even) {
      grid-column: auto;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    [data-blog-experience][data-cbe-surface="public"] .cBlg-authorMainInfo.eb-author-profile .eb-link-card {
      transform: none !important;
    }
  }
}
