/* Moments are a familiar, compact conversation list with Together's own rhythm. */
.app-shell.home-open { display:flex; background:var(--conversation); }
.app-shell.home-open > .sidebar { display:none; }
.app-shell.home-open > .main { display:flex; flex:1; background:var(--conversation); }
.moments-home { width:100%; max-width:820px; margin:0 auto; flex:1; min-height:0; display:flex; flex-direction:column; background:var(--surface); border-inline:1px solid var(--line); }
.inbox-head { padding:31px 30px 21px; flex-shrink:0; background:var(--surface); border-bottom:1px solid var(--line); }
.inbox-brand-row { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.profile-button { display:grid; place-items:center; padding:0; width:44px; height:44px; border-radius:50%; flex-shrink:0; }
.profile-button .avatar { width:40px; height:40px; flex-basis:40px; border-radius:50%; background:var(--lilac); color:var(--lilac-ink); font-size:13px; }
.profile-button:hover { background:var(--lilac-soft); }
.inbox-title-row { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:33px; }
.inbox-title-row h1,.inbox-home-title { font-size:31px; line-height:1.2; letter-spacing:-.05em; font-weight:750; }
.inbox-home-title { text-align:left; border-radius:9px; padding:4px 0; }
.inbox-actions { display:flex; align-items:center; gap:8px; }
.inbox-actions .icon-btn { width:44px; height:44px; flex-basis:44px; background:transparent; }
.inbox-actions .icon-btn:hover { background:var(--lilac-soft); }
.inbox-add { min-height:44px; border-radius:15px; padding:10px 15px; font-size:14px; background:var(--lime); color:var(--accent); gap:5px; }
.inbox-add:hover { background:var(--lime-hover); }
.inbox-search { display:flex; gap:5px; align-items:center; margin-top:16px; }
.moment-search { flex:1; min-width:0; width:100%; border:1px solid var(--control-line); border-radius:15px; padding:12px 14px; background:var(--paper); color:var(--ink); font-size:16px; min-height:47px; }
.inbox-search .icon-btn { background:transparent; flex-shrink:0; }
.moment-cards { padding:10px 17px 24px; overflow-y:auto; flex:1; min-height:0; overscroll-behavior:contain; background:var(--paper); }
.moment-card.group-row { padding:18px 14px; min-height:90px; gap:15px; border:0; border-radius:14px; margin:0 0 3px; background:transparent; transition:background-color 140ms ease; }
.moment-card.group-row + .moment-card.group-row::before { left:79px; right:14px; }
@media (hover:hover) { .moment-card.group-row:hover { background:#f0f3eb; } }
.moment-card.group-row:active { background:#e6edde; }
.moment-card .avatar { width:50px; height:50px; flex-basis:50px; border-radius:19px; font-size:16px; }
.moment-card .group-title { font-size:17px; font-weight:650; line-height:1.3; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
.moment-card .group-time { font-size:11px; }
.moment-card .group-last { margin-top:7px; }
.moment-card .preview { font-size:13px; line-height:1.5; }
.moment-card.unread .group-title { font-weight:750; }
.moment-card.unread .preview { color:var(--ink); font-weight:550; }
.moment-card .unread-dot { background:var(--lime); color:var(--accent); min-width:22px; height:22px; font-size:11px; }
.moment-empty { padding:clamp(36px,8vh,85px) 15px 32px; text-align:center; color:var(--muted); }
.moment-empty-mark { width:66px; height:66px; display:grid; place-items:center; background:var(--lilac); color:var(--lilac-ink); border-radius:24px; margin:0 auto 22px; transform:rotate(-5deg); }
.moment-empty-mark svg { transform:rotate(5deg); }
.moment-empty h2,.moment-empty h3 { font-size:25px; letter-spacing:-.035em; color:var(--ink); max-width:300px; margin:0 auto 10px; }
.moment-empty p { font-size:14px; line-height:1.6; }
.moment-empty .btn { display:flex; margin:24px auto 3px; font-size:14px; border-radius:16px; }
.moment-empty .phone-link { font-size:12px; }
.sidebar { background:var(--surface); }
.inbox-head.is-sidebar { padding:25px 22px 16px; }
.is-sidebar .brand-symbol { width:34px; height:34px; flex-basis:34px; }
.is-sidebar .brand-wordmark { width:121px; height:31px; flex-basis:121px; }
.is-sidebar .inbox-brand-row { gap:6px; }
.is-sidebar .inbox-title-row { margin-top:27px; gap:6px; }
.is-sidebar .inbox-home-title { font-size:25px; }
.is-sidebar .inbox-actions { gap:3px; }
.is-sidebar .inbox-add { padding:9px 11px; font-size:12px; }
.sidebar .group-title { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.sidebar .moment-empty { padding:32px 12px; }
.sidebar .moment-empty h3 { font-size:21px; }
.sidebar .moment-empty p { font-size:12px; }
.moment-starters { display:flex; flex-wrap:wrap; gap:8px; }
.moment-starter { border:1px solid #dfe4d7; padding:9px 14px; border-radius:999px; font-size:12px; font-weight:600; background:#fff; min-height:44px; }
.moment-starter:hover,.moment-starter[aria-pressed=true] { background:var(--lilac); border-color:var(--lilac); color:#33284b; }
@media(max-width:680px),(max-width:900px) and (pointer:coarse) {
  .moments-home { border-inline:0; }
  .inbox-head { padding:calc(21px + env(safe-area-inset-top)) 23px 17px; }
  .inbox-title-row { margin-top:29px; }
  .inbox-title-row h1 { font-size:29px; }
  .moment-cards { padding:8px 10px calc(22px + env(safe-area-inset-bottom)); }
  .moment-card.group-row { padding:16px 12px; min-height:86px; gap:13px; }
  .moment-card .group-title { font-size:16px; }
  .moment-card .preview { font-size:13px; }
}
@media(max-width:360px) {
  .inbox-head { padding-left:18px; padding-right:18px; }
  .inbox-actions { gap:3px; }
  .inbox-add { padding:10px 13px; }
  .inbox-title-row h1 { font-size:28px; }
  .moment-card.group-row { padding:15px 8px; gap:11px; }
  .moment-card .avatar { width:45px; height:45px; flex-basis:45px; border-radius:17px; font-size:14px; }
  .moment-card .group-title { font-size:15px; }
  .moment-card .group-time { font-size:10px; }
  .moment-card.group-row + .moment-card.group-row::before { left:64px; right:8px; }
}
@media(max-height:520px) and (min-width:681px) { .inbox-head { padding-top:16px; } .inbox-title-row { margin-top:17px; } }

.create-starters { margin:0 0 2px; gap:7px; }
.create-starters .moment-starter { font-size:11px; min-height:38px; padding:8px 12px; }
.moment-create .intro { margin-bottom:0; }
.moment-create-hint { font-size:12px; color:#554175; padding:13px 15px; background:var(--lilac-soft); border-radius:13px; }
.moment-create-note { font-size:12px; color:var(--muted); }
.moment-invitation { padding:23px; border-radius:21px; background:var(--lilac); color:#33284b; overflow-wrap:anywhere; }
.moment-invitation .eyebrow { color:#554175; font-size:10px; }
.moment-invitation h2, .moment-invitation h3 { font-size:28px; line-height:1.16; margin:13px 0 10px; }
.moment-invitation p { font-size:13px; }
.moment-welcome { width:100%; max-width:480px; margin:30px auto; padding:27px 26px; border:1px solid #e1e9d8; border-radius:25px; background:#ffffffd9; text-align:left; }
.moment-welcome .eyebrow { color:var(--accent); font-size:10px; }
.moment-welcome h2 { margin:14px 0 12px; font-size:30px; line-height:1.14; overflow-wrap:anywhere; }
.moment-welcome > p { color:var(--muted); font-size:14px; overflow-wrap:anywhere; white-space:pre-wrap; }
.moment-welcome-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:24px; }
.moment-welcome-actions .btn { font-size:12px; padding:11px 14px; }
.moment-welcome .moment-welcome-hint { margin-top:18px; font-size:11px; line-height:1.65; }
.chat-header .back { display:flex; }
@media (min-width:681px) { .chat-header .back { width:32px; flex-basis:32px; margin-right:0; } }

@media (forced-colors:active) { .moments-home, .inbox-head, .moment-search { border-color:CanvasText; } }
