/* Traveller journals sit alongside curated perspectives within Haul. */
.haul-source-tabs { display:flex; gap:28px; border-bottom:1px solid #dcdcd6; margin:5px 0 26px; }
.haul-source-tabs button { display:flex; gap:9px; align-items:center; padding:0 0 17px; border-bottom:2px solid transparent; margin-bottom:-1px; font-size:13px; color:#888; }
.haul-source-tabs button[aria-selected=true] { color:#222; border-bottom-color:#222; }
.community-intro { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:3px 0 27px; }
.community-intro h2 { font-size:40px; line-height:1.2; margin:11px 0; letter-spacing:-1px; }
.community-intro p { font-size:12px; max-width:490px; line-height:1.9; }
.community-preview-note { display:flex; gap:20px; align-items:baseline; background:#eeede7; color:#777367; border-radius:8px; padding:12px 17px; margin-bottom:22px; font-size:10px; line-height:1.8; }
.community-preview-note strong { white-space:nowrap; font-weight:500; }
.community-preview-note p { color:#777367; }
.community-filter-bar { display:flex; gap:24px; align-items:center; flex-wrap:wrap; padding-bottom:20px; margin-bottom:20px; border-bottom:1px solid #ddd; }
.community-filter-bar label { display:flex; align-items:center; gap:12px; font-size:10px; color:#777; }
.community-filter-bar select { min-width:160px; padding:10px 30px 10px 12px; background:#fff; border:1px solid #ddd; border-radius:8px; color:#222; font-size:11px; }
.community-filter-bar p { font-size:10px; margin-right:auto; }
.community-count { display:inline-block; border-radius:50%; background:#eee; min-width:22px; padding:3px 6px; text-align:center; font-size:10px; }
.community-layout { display:grid; grid-template-columns:minmax(0,1fr) 255px; gap:32px; }
.community-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 24px; }
.community-card { min-width:0; border-bottom:1px solid #ddd; padding-bottom:20px; }
.community-card-author { display:flex; gap:10px; align-items:center; justify-content:space-between; padding-bottom:14px; }
.community-author { display:flex; gap:10px; align-items:center; text-align:left; }
.community-avatar { position:relative; overflow:hidden; width:36px; height:36px; border:1px solid #d3d0c3; border-radius:50%; background:#e7e1d4; color:#6d6752; display:grid; place-items:center; flex-shrink:0; font-size:11px; font-family:var(--serif); }
.community-avatar.olive { background:#e2e7d9; color:#59654c; }
.community-avatar.rose { background:#eddfdb; color:#7f625d; }
.community-avatar img { position:absolute; inset:0; height:100%; width:100%; object-fit:cover; }
.community-avatar img[hidden] { display:none; }
.community-author strong { display:block; color:#333; font-size:11px; font-weight:500; }
.community-author small { display:block; color:#999; font-size:8px; margin-top:3px; }
.community-city-label { display:flex; align-items:center; gap:4px; font-size:9px; color:#777; white-space:nowrap; }
.community-cover { position:relative; height:300px; border-radius:12px; overflow:hidden; background:#eeeae1; }
.community-cover>img { height:100%; width:100%; object-fit:cover; }
.community-card-copy { padding-top:19px; }
.community-card-copy>.eyebrow { font-size:8px; letter-spacing:1.5px; }
.community-card h3 { font-family:var(--serif); font-size:28px; letter-spacing:-.4px; line-height:1.35; margin:9px 0; overflow-wrap:anywhere; }
.community-card .journal-excerpt { -webkit-line-clamp:3; }
.community-place { display:flex; gap:8px; align-items:center; padding:12px; margin:17px 0; background:#f0f1eb; border:1px solid #e7e8df; border-radius:8px; }
.community-place-open { display:flex; align-items:center; gap:10px; width:100%; min-width:0; text-align:left; }
.community-place-open>span:first-child { color:#747961; }
.community-place-open>span:nth-child(2) { min-width:0; }
.community-place-open>svg { margin-left:auto; }
.community-place strong { display:block; color:#4c5241; font-size:11px; font-weight:500; }
.community-place small { display:block; font-size:9px; color:#8a8e7e; margin-top:4px; }
.community-place .save-button { background:transparent; color:#4c5241; box-shadow:none; border:0; flex-shrink:0; width:30px; height:30px; }
.community-place .save-button.saved svg { fill:#4c5241; }
.community-card-bottom { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.community-card-bottom .text-link { font-size:10px; }
.community-aside { padding-left:26px; border-left:1px solid #ddd; }
.community-aside>div { margin-bottom:30px; }
.community-aside .eyebrow { font-size:8px; }
.community-aside h3 { font-family:var(--serif); font-size:25px; margin:12px 0; }
.community-aside p { font-size:11px; line-height:1.9; margin-bottom:15px; }
.community-aside .text-link { font-size:11px; margin-top:6px; }
.community-detail>.community-author { margin:20px 0; }
.community-detail .community-author strong { font-size:12px; }
.community-full-photo { margin:20px 0; height:min(60vh,580px); background:#eeece6; border-radius:10px; overflow:hidden; }
.community-full-photo>.journal-full-photo { margin:0; width:100%; height:100%; object-fit:contain; }
.community-profile-head { display:flex; align-items:center; gap:20px; margin:23px 0; }
.community-profile-head>.community-avatar { width:70px; height:70px; font-size:25px; }
.community-profile-head h2 { margin:0 0 8px; }
.community-profile-head p { font-size:11px; }
.community-profile-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #ddd; border-bottom:1px solid #ddd; padding:17px 0; }
.community-profile-stats>span { font-size:9px; color:#888; border-right:1px solid #ddd; padding:0 16px; text-align:center; }
.community-profile-stats>span:last-child { border:0; }
.community-profile-stats strong { display:block; font-family:var(--serif); color:#333; font-size:28px; font-weight:400; }
.community-profile-cities { margin:17px 0; }
.community-profile-cities>button { padding:7px 11px; background:#f0f1eb; border-radius:999px; font-size:10px; display:flex; align-items:center; gap:5px; }
.community-profile-note { font-size:10px; color:#777; line-height:1.9; margin:19px 0; }
.community-profile-entry { display:flex; width:100%; gap:16px; align-items:center; text-align:left; padding:16px 0; border-top:1px solid #e5e5df; }
.community-profile-entry-image { width:84px; height:100px; border-radius:8px; overflow:hidden; flex-shrink:0; background:#efede7; display:grid; place-items:center; }
.community-profile-entry-image>img { width:100%; height:100%; }
.community-profile-entry>span:nth-child(2) { flex:1; min-width:0; }
.community-profile-entry small { font-size:9px; color:#999; }
.community-profile-entry strong { display:block; font-family:var(--serif); font-size:22px; font-weight:400; line-height:1.35; margin:6px 0; overflow-wrap:anywhere; }
.community-profile-entry>span:nth-child(2)>span { font-size:10px; color:#888; }
.journal-visibility { display:inline-flex; align-items:center; gap:5px; margin:12px 0 3px; padding:5px 8px; font-size:8px; text-transform:uppercase; letter-spacing:.7px; border:1px solid #deddd5; border-radius:999px; color:#888; }
.journal-visibility.public { background:#eef0e6; color:#6c7554; border-color:#e2e6d4; }
.journal-sharing-choice { border:1px solid #dcded2; padding:17px; border-radius:10px; background:#f4f5ef; }
.member-form .journal-sharing-choice>label { display:flex; align-items:center; gap:10px; color:#333; font-size:12px; }
.journal-sharing-choice input[type=checkbox] { width:18px; height:18px; accent-color:#626b50; padding:0; flex-shrink:0; }
.journal-sharing-choice p { font-size:10px; line-height:1.8; margin-top:10px; color:#6f7564; }
.journal-sharing-choice .journal-sharing-preview { font-size:9px; color:#8c8c7e; }
.journal-sharing-actions { display:flex; flex-wrap:wrap; gap:15px; align-items:center; margin:15px 0; }
.journal-sharing-actions .text-link { font-size:10px; }
@media(max-width:1180px) { .community-layout { grid-template-columns:minmax(0,1fr) 210px; gap:24px; } .community-cover { height:250px; } .community-city-label { font-size:8px; } }
@media(max-width:900px) { .community-layout { grid-template-columns:1fr; } .community-aside { border-left:0; border-top:1px solid #ddd; padding:24px 0 0; display:grid; grid-template-columns:1fr 1fr; gap:25px; } .community-cover { height:300px; } }
@media(max-width:680px) {
  .haul-source-tabs { gap:22px; margin-bottom:20px; }
  .haul-source-tabs button { font-size:12px; padding-bottom:13px; }
  .community-intro { flex-wrap:wrap; gap:17px; padding-bottom:23px; }
  .community-intro h2 { font-size:33px; }
  .community-intro p { font-size:11px; }
  .community-preview-note { display:block; font-size:9px; padding:13px; }
  .community-preview-note strong { display:block; margin-bottom:5px; }
  .community-filter-bar { gap:12px; }
  .community-filter-bar label { width:100%; justify-content:space-between; }
  .community-filter-bar select { width:66%; }
  .community-filter-bar p,.community-filter-bar .text-link { font-size:9px; }
  .community-grid { grid-template-columns:1fr; gap:30px; }
  .community-cover { height:330px; }
  .community-card h3 { font-size:28px; }
  .community-city-label { font-size:10px; }
  .community-author strong { font-size:12px; }
  .community-author small { font-size:9px; }
  .community-aside { grid-template-columns:1fr; gap:0; }
  .community-profile-head { gap:15px; }
  .community-profile-head>.community-avatar { width:60px; height:60px; }
  .community-profile-entry-image { width:65px; height:85px; }
  .community-profile-entry strong { font-size:20px; }
}
