/* Home is a readable feed with a companion column, not a stack of competing panels. */
body.product-active .home-page { display: grid; grid-template-columns: minmax(0,1fr); gap: 20px; }
body.product-active .home-page > :is(#home-conversations-slot,#home-available-slot,#home-people-slot,#home-highlights-slot):empty { display: none; }
body.product-active .home-welcome { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
body.product-active .home-campus-label { display: block; margin-bottom: 7px; color: var(--muted); font-size: 12px; font-weight: 500; }
body.product-active .home-welcome h1 { margin: 0; font: 600 clamp(24px,2.3vw,32px)/1.2 Inter,system-ui,sans-serif; letter-spacing: -.04em; }
body.product-active .home-welcome p { margin: 8px 0 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
body.product-active .home-welcome nav { display: flex; flex-shrink: 0; gap: 8px; }
body.product-active .home-welcome nav button { display: flex; align-items: center; gap: 12px; min-height: 44px; padding: 0 16px; border: 1px solid var(--line); border-radius: 999px; background: var(--glass-fill); color: var(--ink); font-size: 13px; font-weight: 500; cursor: pointer; }
body.product-active .home-welcome nav button:hover { background: var(--brand-soft); color: var(--brand-strong); }
body.product-active .home-page #post-form { margin: 0; padding: 18px; border-radius: 16px; box-shadow: 0 2px 8px #38271b04; }
body.product-active .home-page #post-body { min-height: 76px; background: transparent; font-size: 15px; line-height: 1.6; }
body.product-active .home-page .feed-section-head { margin: 0 0 14px; }
body.product-active .home-page .feed { display: grid; gap: 18px; }
body.product-active .home-page [data-home-post] { overflow: hidden; margin: 0; border-radius: 16px; }
body.product-active .home-page .post-card { box-shadow: none; border-radius: 16px 16px 0 0; }
body.product-active .home-page .home-conversation { background: var(--surface); }
body.product-active .home-page .home-quick-reply { gap: 10px; padding: 12px 16px; }
body.product-active .home-page .home-quick-reply input { border: 1px solid var(--line); border-radius: 999px; min-height: 44px; padding: 0 14px; background: var(--bg); font-size: 13px; }
body.product-active .home-page .home-quick-reply input:focus { border-color: var(--brand); background: #fff; }
body.product-active .home-page :is(.home-people,.home-for-you,.home-pulse) { margin: 0; }
body.product-active .home-page .home-people-list { display: grid; grid-template-columns: minmax(0,1fr); gap: 0; }
body.product-active .home-page .home-person { border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; padding: 14px 0; }
body.product-active .home-page .home-person:last-child { border-bottom: 0; }
body.product-active .home-page .home-person-profile strong { font-size: 13px; }
body.product-active .home-page .home-person-profile small { font-size: 12px; line-height: 1.5; }
body.product-active .home-page .home-pulse-grid { display: grid; grid-template-columns: minmax(0,1fr); gap: 12px; }
body.product-active .home-page .pulse-card { border-radius: 12px; }
body.product-active .home-page .home-section-title { margin-bottom: 4px; }
@media(min-width:1150px) {
  body.product-active .main-content:not(.messages-view):not(.token-view):has(.home-page) { --content-width: 1160px; --content-offset: 0px; width: 100%; margin-inline: auto; padding-inline: 32px; }
  body.product-active .home-page { grid-template-columns: minmax(0,1fr) 280px; align-items: start; column-gap: 28px; }
  body.product-active .home-welcome { grid-column: 1 / -1; }
  body.product-active .home-page > :is(#home-conversations-slot,#home-available-slot,#home-live-update,#post-form,.feed-section) { grid-column: 1; }
  body.product-active .home-page #home-people-slot { grid-column: 2; grid-row: 2 / span 2; padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: #ffffffa8; }
  body.product-active .home-page #home-highlights-slot { grid-column: 2; grid-row: 4 / span 3; }
}
@media(max-width:780px) {
  body.product-active .home-welcome { display: block; }
  body.product-active .home-welcome nav { margin-top: 14px; }
  body.product-active .home-page { gap: 16px; }
  body.product-active .home-page #home-people-slot { padding: 14px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
  body.product-active .home-page .home-person-profile small { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
}
@media(prefers-reduced-motion:no-preference) {
  body.product-active :is(.nav-link,.button,.post-action,.home-welcome button) { transition: background-color 160ms ease,color 160ms ease,box-shadow 160ms ease,transform 160ms ease; }
  body.product-active :is(.button,.post-action,.home-welcome button):active { transform: scale(.97); }
  body.product-active .page-enter { animation: none; }
}
body.product-active .home-companion { display: grid; gap: 20px; min-width: 0; align-self: start; }
body.product-active .home-companion > :empty { display: none; }
body.product-active .home-page .home-person-profile small { overflow: hidden; white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
@media(min-width:1150px) {
  body.product-active .home-page .home-companion { grid-column: 2; grid-row: 2 / span 8; }
  body.product-active .home-page .home-companion #home-people-slot,
  body.product-active .home-page .home-companion #home-highlights-slot { grid-column: auto; grid-row: auto; }
}

/* A denser desktop rhythm exposes more feed without browser zoom or tiny text. */
@media(min-width: 1150px) {
  body.product-active { --header: 60px; --left: 200px; }
  body.product-active .left-rail { padding: 18px 14px; }
  body.product-active .nav-link { min-height: 42px; }
  body.product-active .main-content:not(.messages-view):not(.token-view):has(.home-page) { --content-width: 1200px; padding: 22px 28px 80px; }
  body.product-active .home-page { grid-template-columns: minmax(0,1fr) 280px; gap: 16px 24px; }
  body.product-active .home-welcome h1 { font-size: 27px; }
  body.product-active .home-welcome p { margin-top: 5px; font-size: 13px; }
  body.product-active .home-campus-label { margin-bottom: 5px; font-size: 11px; }
  body.product-active .home-page #post-form { padding: 14px 16px; }
  body.product-active .home-page #post-form #post-body { min-height: 54px; height: 64px; padding-block: 8px; font-size: 14px; }
  body.product-active .home-page #post-form .composer-top { margin-top: 10px; }
  body.product-active .home-page .composer-bottom { padding-top: 10px; }
  body.product-active .home-page .feed { gap: 14px; }
  body.product-active .home-page #home-people-slot { padding: 14px 16px; }
  body.product-active .home-page .home-person { min-height: 70px; padding: 10px 0; }
  body.product-active .home-page .home-person-profile .avatar { width: 36px; height: 36px; }
}
/* The small highlights column needs a real reply field, not a row of media buttons. */
body.product-active .home-companion .pulse-quick-reply { display: flex; flex-wrap: wrap; gap: 8px; }
body.product-active .home-companion .pulse-quick-reply > input { flex: 1 0 100%; width: 100%; min-width: 0; min-height: 44px; }
body.product-active .home-companion .pulse-quick-reply > button[type='submit'] { min-height: 44px; }
body.product-active .home-companion .pulse-quick-reply .gif-compose-button { padding-inline: 9px; }
body.product-active .home-companion .pulse-quick-reply .comment-gif-preview { flex-basis: 100%; }

/* Highlights are lightweight links to real activity, not duplicate composers. */
body.product-active .home-companion .pulse-card { padding:12px; box-shadow:none; }
body.product-active .home-companion .pulse-open { padding:0; width:100%; min-height:56px; align-items:flex-start; gap:10px; text-align:left; border-radius:6px; }
body.product-active .home-companion .pulse-card-icon { width:30px; height:30px; flex:0 0 30px; border-radius:8px; }
body.product-active .home-companion .pulse-card-copy { min-width:0; }
body.product-active .home-companion .pulse-card-copy strong { font-size:14px; line-height:1.5; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; overflow-wrap:anywhere; }
body.product-active .home-companion .pulse-card-copy small { font-size:11px; line-height:1.5; font-weight:600; }
body.product-active .home-companion .pulse-card-copy>span { font-size:12px; line-height:1.5; }
body.product-active .home-companion .pulse-card:focus-within { border-color:var(--brand); }
body.product-active .home-companion .pulse-open:focus-visible { outline:2px solid var(--brand); outline-offset:5px; }
@media(hover:hover) {
  body.product-active .home-companion .pulse-open:hover strong { color:var(--brand-strong); }
}
