/* Home (home-view.js): discovery first, the same sections at every width.
   Phones and tablets show them in #mobile-you-content (one column), desktop
   in #cd-home (two columns: discovery, then your community and goal help).
   Happening in the community and Picked for you carry the page (search is
   in Explore, in the navigation); Your community and goal help stay quiet. */
.home-view { display:grid; gap:1rem; color:#e6ebf5; }
.home-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.home-header { display:grid; grid-template-columns:auto minmax(0, 1fr); align-items:center; gap:.45rem .75rem; padding:.15rem 108px .1rem 0; }
.home-avatar { flex:none; width:44px; height:44px; border-radius:14px; display:grid; place-items:center; background:linear-gradient(135deg,#ff6b6b,#ff8c8c); color:#fff; font-size:1.3rem; font-weight:800; }
.home-header h1 { margin:0; min-width:0; color:#fff; line-height:1.2; }
.home-hello { display:block; color:#a9b3c7; font-size:.82rem; font-weight:600; }
/* One line for the name; a very long one ends in an ellipsis instead of wrapping. */
.home-name { display:block; overflow:hidden; font-size:1.3rem; font-weight:800; white-space:nowrap; text-overflow:ellipsis; }
/* The invitation runs the full width, below the header buttons. */
.home-intro { grid-column:1 / -1; margin:0 -108px 0 0; color:#c7cfdd; font-size:.92rem; line-height:1.4; }
.home-tagline { margin:.15rem 0 0; color:#a9b3c7; font-size:.9rem; }
.home-tagline { margin:0; font-size:1rem; color:#c7cfdd; }
.home-grid, .home-main, .home-side { display:grid; gap:1rem; align-content:start; min-width:0; }
.home-section { min-width:0; padding:1rem; border:1px solid rgba(255,255,255,.1); border-radius:16px; background:rgba(255,255,255,.045); }
.home-section[hidden], .home-part[hidden] { display:none; }
.home-heading { margin:0 0 .2rem; color:#fff; font-size:1.12rem; font-weight:800; line-height:1.3; }
.home-heading:focus { outline:none; }
.home-sub { margin:0 0 .75rem; color:#a3adc0; font-size:.84rem; line-height:1.4; }
.home-subheading { margin:.9rem 0 .45rem; color:#c7cfdd; font-size:.84rem; font-weight:700; }
.home-muted { margin:.25rem 0 0; color:#a3adc0; font-size:.84rem; line-height:1.5; }
.home-rows { display:grid; gap:.5rem; margin:0; padding:0; list-style:none; }
.home-row { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
.home-row span { color:#f4ece4; font-size:.92rem; line-height:1.4; }
.home-kind { display:block; margin-bottom:.15rem; color:#9eefff; font-size:.7rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.home-action { flex:none; min-height:44px; padding:.5rem .9rem; border:1px solid rgba(0,224,255,.35); border-radius:10px; background:rgba(0,224,255,.08); color:#9eefff; font:inherit; font-size:.86rem; font-weight:800; cursor:pointer; }
.home-primary { width:100%; min-height:46px; margin-top:.7rem; padding:.7rem .8rem; border:0; border-radius:10px; background:#00e0ff; color:#061018; font:inherit; font-weight:800; cursor:pointer; }
.home-link { min-height:44px; padding:.5rem 0; border:0; background:none; color:#9eefff; font:inherit; font-weight:700; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.home-dismiss { min-height:44px; margin-left:auto; padding:.5rem .4rem; border:0; background:none; color:#a3adc0; font:inherit; font-size:.86rem; font-weight:600; cursor:pointer; }
.home-action:focus-visible, .home-primary:focus-visible, .home-link:focus-visible, .home-dismiss:focus-visible, .home-section summary:focus-visible,
.home-invite:focus-visible, .home-topic:focus-visible { outline:2px solid #00e0ff; outline-offset:2px; }

/* Waiting on you: compact and noticeable, only when something needs a reply */
.home-attention { padding:.7rem 1rem; border-color:rgba(255,170,90,.5); background:rgba(255,170,90,.08); }
.home-attention .home-heading { margin-bottom:.35rem; color:#ffc27a; font-size:.74rem; letter-spacing:.07em; text-transform:uppercase; }
.home-attention .home-action { border-color:rgba(255,170,90,.55); background:rgba(255,170,90,.12); color:#ffd29e; }

/* Search: hands off to Explore's own search */

/* Picked for you */
.home-picked { display:grid; gap:.6rem; }
.home-picked .home-sub { margin-bottom:.1rem; }
.home-picks { display:grid; gap:.6rem; margin:0; padding:0; list-style:none; }
.home-pick { display:grid; gap:.35rem; padding:.75rem .85rem .35rem; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:rgba(10,14,39,.45); }
.home-pick strong { color:#fff; font-size:1rem; line-height:1.3; overflow-wrap:anywhere; }
.home-reasons, .network-reflection-concierge-reasons { display:flex; flex-wrap:wrap; gap:.35rem; margin:0; padding:0; list-style:none; }
.home-reasons li, .network-reflection-concierge-reasons li { padding:.2rem .6rem; border:1px solid rgba(0,224,255,.25); border-radius:10px; background:rgba(0,224,255,.08); color:#a8ecf7; font-size:.78rem; font-weight:600; line-height:1.4; }
.home-reasons .home-chip-date { border-color:rgba(255,170,90,.4); background:rgba(255,170,90,.1); color:#ffd29e; }
.home-pick-actions { display:flex; align-items:center; gap:.5rem; }

/* The introduction card (start-daily-digest.js, Home layout) */
.home-meet-card .network-reflection-concierge { display:grid; gap:.45rem; margin:0; padding:.85rem; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:rgba(10,14,39,.45); }
.home-meet-card .network-reflection-concierge-eyebrow { margin:0; color:#9eefff; font-size:.7rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.home-meet-card .network-reflection-concierge-who { display:flex; align-items:center; gap:.7rem; }
.home-meet-card .network-reflection-concierge-initials { flex:none; width:46px; height:46px; border-radius:50%; display:grid; place-items:center; background:#2c3b6b; color:#dbe4ff; font-weight:800; font-size:1rem; }
.home-meet-card .network-reflection-concierge-title { margin:0; color:#fff; font-size:1.05rem; line-height:1.3; }
.home-meet-card .network-reflection-concierge-reason,
.home-meet-card .network-reflection-concierge-prompt { margin:0; color:#c7cfdd; font-size:.86rem; line-height:1.45; }
.home-meet-card .network-reflection-concierge-outcome { color:#a3adc0; font-size:.78rem; }
.home-meet-card .network-reflection-concierge-outcome[hidden] { display:none; }
.home-meet-card .network-reflection-concierge-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.35rem .5rem; margin:0; }
.home-meet-card .network-reflection-concierge-actions button { min-height:44px; padding:.5rem .8rem; font-size:.86rem; }
.home-meet-card .network-reflection-concierge-primary { border:1px solid rgba(0,224,255,.35); border-radius:10px; background:rgba(0,224,255,.08); color:#9eefff; font-weight:800; }
.home-meet-card .network-reflection-concierge-profile { border:0; background:none; color:#9eefff; font-weight:700; }
.home-meet-card .network-reflection-concierge-link { margin-left:auto; border:0; background:none; color:#a3adc0; }

/* Happening in the community */
/* Happening: each project or opportunity is one card, opened anywhere on it. */
.home-invites { display:grid; gap:.6rem; margin:0 0 .9rem; padding:0; list-style:none; }
.home-invite { width:100%; min-height:56px; display:grid; gap:.25rem; padding:.75rem .85rem; border:1px solid rgba(255,255,255,.1); border-radius:14px; background:rgba(10,14,39,.45); color:#fff; font:inherit; text-align:left; cursor:pointer; }
.home-invite:hover { border-color:rgba(0,224,255,.35); }
.home-invite-kind { color:#9eefff; font-size:.7rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.home-invite-title { font-size:1rem; line-height:1.3; overflow-wrap:anywhere; }
.home-invite-about { color:#c3cad8; font-size:.86rem; line-height:1.45; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.home-invite-meta { color:#a3adc0; font-size:.8rem; }
.home-invite-match { justify-self:start; margin-top:.1rem; padding:.15rem .5rem; border-radius:999px; background:rgba(124,240,196,.1); color:#7cf0c4; font-size:.76rem; font-weight:700; }
.home-topics { display:flex; flex-wrap:wrap; gap:.4rem; margin:0 0 .6rem; padding:0; list-style:none; }
.home-topic { min-height:40px; padding:0 .85rem; border:1px solid rgba(255,255,255,.14); border-radius:999px; background:rgba(255,255,255,.05); color:#e6ebf5; font:inherit; font-size:.86rem; font-weight:600; cursor:pointer; }

/* What are you curious about? (only when nothing is listed) */
.home-profile { display:grid; gap:.6rem; border-style:dashed; }
.home-profile .home-heading { margin-bottom:.3rem; }
.home-profile p { margin:0; color:#c7cfdd; font-size:.88rem; line-height:1.45; }
.home-quiet { border-style:dashed; }

/* Your community: the people and projects the member already has, quiet,
   below discovery; each row one tap away. */
.home-mine { padding:.75rem 1rem; background:none; border-color:rgba(255,255,255,.09); }
.home-label { margin-bottom:.4rem; color:#a3adc0; font-size:.74rem; letter-spacing:.07em; text-transform:uppercase; }
.home-mine .home-subheading { margin:.7rem 0 .15rem; }
.home-mine-list { margin:0; padding:0; list-style:none; }
.home-mine-row { width:100%; min-height:52px; display:flex; align-items:center; gap:.7rem; padding:.45rem 0; border:0; border-top:1px solid rgba(255,255,255,.08); background:none; color:#fff; font:inherit; text-align:left; cursor:pointer; }
.home-mine-list li:first-child .home-mine-row { border-top:0; }
.home-mine-row:focus-visible { outline:2px solid #00e0ff; outline-offset:2px; }
.home-mine-text { flex:1; min-width:0; display:grid; gap:.1rem; }
.home-mine-text strong { font-size:.92rem; line-height:1.3; overflow-wrap:anywhere; }
.home-mine-text span { color:#a3adc0; font-size:.8rem; overflow-wrap:anywhere; }
.home-mine-row svg { flex:none; width:18px; height:18px; fill:none; stroke:#a3adc0; stroke-width:2; stroke-linecap:round; }
.home-mine-icon { flex:none; display:grid; place-items:center; width:32px; height:32px; border-radius:9px; background:rgba(0,224,255,.12); color:#bff6ff; font-size:.72rem; font-weight:800; }
.home-mine-faces { flex:none; display:flex; }
.home-mine-faces span { display:grid; place-items:center; width:30px; height:30px; margin-left:-7px; border:2px solid #0d1124; border-radius:50%; background:rgba(0,224,255,.2); color:#bff6ff; font-size:.66rem; font-weight:800; }
.home-mine-faces span:first-child { margin-left:0; }
.home-more-list { margin-top:.25rem; border-top:1px solid rgba(255,255,255,.08); }
.home-more-list summary { min-height:44px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.25rem .75rem; color:#c7cfdd; font-size:.88rem; font-weight:600; cursor:pointer; list-style:none; }
.home-more-list summary::-webkit-details-marker { display:none; }
.home-more-cta { color:#9eefff; font-weight:700; }
.home-more-list[open] .home-more-cta { display:none; }

/* Have an idea?: quiet, below the community; what matches shows under the form. */
.home-idea { padding:.75rem 1rem; background:none; border-color:rgba(255,255,255,.09); }
.home-idea > .home-muted { margin:0 0 .6rem; font-size:.86rem; }
.home-idea-form { display:flex; flex-wrap:wrap; gap:.5rem; }
.home-idea-form input { flex:1 1 12rem; min-width:0; min-height:44px; border:1px solid rgba(0,224,255,.3); border-radius:9px; background:rgba(0,0,0,.2); color:#fff; padding:.6rem .75rem; font:inherit; font-size:16px; }
.home-idea-form button { flex:none; min-height:44px; padding:.55rem .9rem; border:1px solid rgba(0,224,255,.35); border-radius:9px; background:rgba(0,224,255,.08); color:#9eefff; font:inherit; font-size:.88rem; font-weight:800; cursor:pointer; }
.home-idea-form button:focus-visible, .home-idea-form input:focus-visible { outline:2px solid #00e0ff; outline-offset:2px; }
.home-idea-example { margin:.35rem 0 0; color:#a3adc0; font-size:.82rem; }
.home-idea-example .home-link { min-height:44px; padding:.35rem 0; font-size:.82rem; font-weight:600; text-align:left; }
.home-idea-results:not(:empty) { margin-top:.75rem; }
.home-idea-results .home-muted { margin:0 0 .4rem; font-size:.84rem; }
.home-idea-results .home-subheading { margin:.6rem 0 .1rem; }
.home-idea-face { border-radius:50%; }
.home-idea-more { display:flex; flex-wrap:wrap; gap:.25rem 1.25rem; }

/* Small phones: the same page, lighter. Every reason and action stays;
   padding, type and the avatar shrink, and touch targets stay 44px. */
@media (max-width: 389px) {
  .home-section { padding:.85rem; }
  .home-name { font-size:1.2rem; }
  .home-picked .home-sub { display:none; }
  .home-pick, .home-meet-card .network-reflection-concierge { gap:.3rem; padding:.6rem .7rem .2rem; }
  .home-kind, .home-meet-card .network-reflection-concierge-eyebrow { font-size:.64rem; }
  .home-pick strong, .home-meet-card .network-reflection-concierge-title { font-size:.95rem; }
  .home-meet-card .network-reflection-concierge-initials { width:38px; height:38px; font-size:.88rem; }
  .home-meet-card .network-reflection-concierge-prompt { font-size:.8rem; }
  .home-reasons li, .network-reflection-concierge-reasons li { padding:.12rem .5rem; font-size:.74rem; }
  .home-action, .home-meet-card .network-reflection-concierge-actions button { padding:.4rem .7rem; font-size:.82rem; }
  .home-pick-actions { flex-wrap:wrap; }
}

/* Tablets: discovery in two columns of cards, work beside goal help */
@media (min-width: 700px) and (max-width: 1023px) {
  .home-picks, .home-invites { grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .home-side { grid-template-columns:repeat(2, minmax(0, 1fr)); align-items:start; }
}

@media (min-width: 1024px) {
  .home-view[data-layout="desktop"] { padding:.4rem 1rem 2rem; }
  .home-view[data-layout="desktop"] .home-grid { grid-template-columns:minmax(0, 1.6fr) minmax(0, 1fr); align-items:start; }
  .home-view[data-layout="desktop"] .home-picks, .home-view[data-layout="desktop"] .home-invites { grid-template-columns:repeat(auto-fill, minmax(15rem, 1fr)); }
}
