.home-discover .home-section__header { flex-wrap: wrap; align-items: flex-start; }
.home-discover__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; list-style: none; border: 1px solid var(--border-light, #e5e7e8); border-radius: 8px; background: var(--bg-card, var(--surface, #fff)); overflow: hidden; }
.home-discover__row { display: grid; grid-template-columns: 40px minmax(0, 1fr) 44px 132px; align-items: center; gap: 12px; min-width: 0; min-height: 64px; padding: 10px 16px; border-bottom: 1px solid var(--border-light, #e5e7e8); }
.home-discover__row:nth-child(odd) { border-inline-end: 1px solid var(--border-light, #e5e7e8); }
.home-discover__icon { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 8px; background: var(--surface2, #f1f3f3); color: var(--text, #212224); font-size: 14px; font-weight: 600; }
.home-discover__icon svg { display: block; width: 24px; height: 24px; }
.home-discover__text { display: grid; min-width: 0; gap: 3px; }
.home-discover__title { overflow: hidden; color: var(--text, #212224); font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.home-discover__meta { overflow: hidden; color: var(--text-secondary, #4d575d); font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.home-discover__favorite { display: grid; width: 44px; height: 44px; place-items: center; padding: 0; border: 0; border-radius: 8px; background: transparent; color: var(--text-secondary, var(--text2, #505a5e)); cursor: pointer; }
.home-discover__favorite[aria-pressed="true"] { color: var(--link, var(--brand-primary, #245647)); }
.home-discover__favorite svg { display: block; }
.home-discover__favorite-status { grid-column: 2 / -1; color: var(--text-secondary, #4d575d); font-size: 14px; }
.home-discover__action { display: inline-flex; min-height: 44px; align-items: center; justify-self: end; color: var(--link, var(--brand-primary)); font-weight: 600; text-decoration: none; white-space: nowrap; }
.home-discover__action:hover { text-decoration: underline; }
/* An agent's action comes from its card, where the launch link is stretched over the whole card; in a row it must
   stay the size of the button, or it covers the titles and actions around it. */
.home-discover__row .agent-hotel-card__launch[href]::after { content: none; }
/* The row's main action is the item's own card button, shown as a compact outline button without its icon. */
.home-discover__row .home-discover__action--main { flex: 0 0 auto; min-height: 36px; padding: 0 12px; border-width: 1px; font-size: 14px; }
.home-discover__row .home-discover__action--main:not(:disabled):not(.is-disabled) { border-color: var(--border-medium, #c9cfd1); background: var(--bg-surface, var(--surface, #fff)); color: var(--text-primary, var(--text, #212224)); }
.home-discover__row .home-discover__action--main:hover:not(:disabled):not(.is-disabled),
.home-discover__row .home-discover__action--main:focus-visible { border-color: var(--brand-primary, #315d4a); background: var(--bg-surface, var(--surface, #fff)); color: var(--text-primary, var(--text, #212224)); text-decoration: none; }
.home-discover__row .home-discover__action--main::before { display: none; }
.home-discover__favorite:focus-visible, .home-discover__title:focus-visible, .home-discover__action:focus-visible { outline: 3px solid var(--brand-primary); outline-offset: 3px; }
.home-discover__empty { color: var(--text-secondary, #4d575d); }

/* Two columns need room for a readable title next to the heart and the action. */
@media (max-width: 1180px) {
  .home-discover__list { grid-template-columns: minmax(0, 1fr); }
  .home-discover__row:nth-child(odd) { border-inline-end: 0; }
}
@media (max-width: 760px) {
  .home-discover__row { grid-template-columns: 40px minmax(0, 1fr) 44px; gap: 10px; padding: 10px 12px; }
  .home-discover__action { grid-column: 2; justify-self: start; }
}

/* V4 Discover: page title and one intro line, compact sections, shared type scale. */
[data-page="home"] .home-hero { gap: 8px; max-width: none; padding: 0 0 16px; }
[data-page="home"] .home-hero__title { font-size: 40px; font-weight: 700; line-height: 48px; letter-spacing: -0.01em; }
[data-page="home"] .home-hero__subtitle { max-width: none; color: var(--text-secondary, var(--text2, #4d575d)); font-size: 16px; line-height: 24px; }
[data-page="home"] .home-section { gap: 12px; padding: 16px 0; }
[data-page="home"] .home-section__header h2 { font-size: 24px; font-weight: 600; line-height: 32px; letter-spacing: 0; }
[data-page="home"] .home-trending-grid { grid-template-columns: repeat(auto-fill, minmax(272px, 1fr)); gap: 20px; }
[data-page="home"] .home-trending-card { gap: 8px; padding: 18px; border-radius: 8px; }
[data-page="home"] .home-trending-card:hover { box-shadow: none; transform: none; }
[data-page="home"] .home-trending-card__category { color: var(--text-secondary, var(--text2, #4d575d)); background: var(--surface2, #f1f3f3); font-size: 13px; font-weight: 500; letter-spacing: 0; text-transform: none; }
[data-page="home"] .home-trending-card__title { display: -webkit-box; overflow: hidden; font-size: 18px; line-height: 24px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
[data-page="home"] .home-trending-card__description { font-size: 15px; line-height: 22px; -webkit-line-clamp: 2; }
[data-page="home"] .home-trending-card__footer { color: var(--text-secondary, var(--text2, #4d575d)); font-size: 14px; }
[data-page="home"] .home-section__link { display: inline-flex; min-height: 44px; align-items: center; gap: 4px; color: var(--link, var(--brand-primary)); font-size: 15px; font-weight: 600; }
[data-page="home"] .home-section__link::after { content: "→"; }
@media (prefers-reduced-motion: reduce) { [data-page="home"] .home-trending-card { transition: none; } }
@media (max-width: 900px) {
  [data-page="home"] .home-hero { padding: 0 0 8px; }
  [data-page="home"] .home-hero__title { font-size: 32px; line-height: 40px; }
  [data-page="home"] .home-trending-grid { grid-template-columns: minmax(0, 1fr); }
}
/* One line of contributors on Discover, in a panel: initials, name and how much each person shared. */
[data-page="home"] .home-section[data-contributors-section] { display: flex; flex-flow: row wrap; align-items: center; gap: 4px 20px; margin-top: 16px; padding: 12px 20px; border: 1px solid var(--border-light, #e5e7e8); border-radius: 8px; background: var(--bg-card, var(--surface, #fff)); }
[data-page="home"] [data-contributors-section] .home-section__header h2 { font-size: 15px; line-height: 22px; }
[data-page="home"] [data-contributors-list].people-grid { display: flex; flex-wrap: wrap; gap: 4px 20px; }
[data-page="home"] [data-contributors-list] .people-card { flex-direction: row; align-items: center; gap: 8px; min-height: 44px; padding: 0; border: 0; border-radius: 0; background: transparent; }
[data-page="home"] [data-contributors-list] .people-card:hover h3 { text-decoration: underline; }
[data-page="home"] [data-contributors-list] .people-card__avatar { display: grid; flex: 0 0 24px; width: 24px; height: 24px; place-items: center; border-radius: 50%; background: var(--surface2, #f1f3f3); color: var(--text, #212224); font-size: 10px; font-weight: 600; }
[data-page="home"] [data-contributors-list] .people-card h3 { font-size: 14px; line-height: 20px; font-weight: 500; }
[data-page="home"] [data-contributors-list] .people-card p { font-size: 13px; line-height: 20px; }
[data-page="home"] [data-contributors-section] [data-contributors-all] { flex-basis: 100%; justify-content: flex-start; }
[data-page="home"] [data-contributors-section] [data-contributors-all][hidden] { display: none; }

/* Home (11 Oct design round 2): Start here, then one full row each of agents, skills and apps. */
[data-page="home"] .home-row__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(272px, 100%), 1fr)); gap: 20px; }
[data-page="home"] .home-row__pagination { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 12px; }
[data-page="home"] .home-row__pagination .action-button { min-height: 44px; }
[data-page="home"] .home-row[hidden], [data-page="home"] .home-start[hidden] { display: none; }
[data-page="home"] .home-start { gap: 2px; padding: 4px 20px 10px; border: 1px solid var(--border-light, #e5e7e8); border-radius: 8px; background: var(--bg-surface, var(--surface, #fff)); }
[data-page="home"] .home-start--hidden { padding: 4px 20px; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 0 12px; }
[data-page="home"] .home-start .home-section__header { align-items: center; justify-content: space-between; gap: 12px; }
[data-page="home"] .home-start .home-section__header h2 { font-size: 17px; line-height: 24px; }
[data-page="home"] .home-start__hide, [data-page="home"] .home-start__undo { min-height: 44px; padding: 0 12px; border: 0; border-radius: 8px; background: transparent; color: var(--text-secondary, var(--text2, #4d575d)); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
[data-page="home"] .home-start__undo { color: var(--link, var(--brand-primary)); }
[data-page="home"] .home-start__hide:hover, [data-page="home"] .home-start__undo:hover { background: var(--surface2, #f1f3f3); }
[data-page="home"] .home-start__hide:focus-visible, [data-page="home"] .home-start__undo:focus-visible, [data-page="home"] .home-start__link:focus-visible { outline: 3px solid var(--brand-primary); outline-offset: 3px; }
[data-page="home"] .home-start__hidden { margin: 0; color: var(--text-secondary, var(--text2, #4d575d)); font-size: 15px; }
/* One strip under the heading: three steps side by side with only a thin line between them. Each step has its
   number on the left, the title (bold) and the description (muted) on two lines, and the link on the right, in
   the same place in every step. */
[data-page="home"] .home-start__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
[data-page="home"] .home-start__step { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: start; gap: 0 12px; min-width: 0; padding: 5px 20px; border-inline-start: 1px solid var(--border-light, #e5e7e8); }
[data-page="home"] .home-start__step:first-child { padding-inline-start: 0; border-inline-start: 0; }
[data-page="home"] .home-start__number { display: grid; width: 28px; height: 28px; align-self: start; margin-top: 2px; place-items: center; border-radius: 50%; background: var(--accentSoft, #e9f4e9); color: var(--link, #0a5c0a); font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
[data-page="home"] .home-start__words { display: grid; gap: 2px; min-width: 0; align-content: start; }
[data-page="home"] .home-start__words h3 { margin: 0; font-size: 16px; font-weight: 600; line-height: 24px; }
[data-page="home"] .home-start__words p { margin: 0; color: var(--text-secondary, var(--text2, #4d575d)); font-size: 15px; line-height: 22px; }
[data-page="home"] .home-start__link { display: inline-flex; margin-top: 6px; min-height: 32px; align-items: center; gap: 4px; color: var(--link, var(--brand-primary)); font-size: 15px; font-weight: 600; white-space: nowrap; }
[data-page="home"] .home-start__link::after { content: "→"; }
/* Three steps need about 330 px each; below that the link goes under the text instead of beside it. */
@media (min-width: 721px) and (max-width: 1279px) {
  [data-page="home"] .home-start__step { grid-template-columns: 28px minmax(0, 1fr); grid-template-rows: 1fr auto; }
  /* The link sits at the foot of its step, so the three links line up whatever the text above does. */
  [data-page="home"] .home-start__link { grid-column: 2; margin-top: 0; }
}
@media (max-width: 720px) {
  [data-page="home"] .home-start { padding: 4px 16px 8px; }
  [data-page="home"] .home-start__steps { grid-template-columns: minmax(0, 1fr); }
  [data-page="home"] .home-start__step { padding: 6px 0; border-inline-start: 0; border-top: 1px solid var(--border-light, #e5e7e8); }
  [data-page="home"] .home-start__step:first-child { border-top: 0; }
  [data-page="home"] .home-start__link { min-height: 44px; }
}
