/* Connected, memory-only community screen prototype. */
.community-preview-entry { gap:.5rem 1rem; flex-wrap:wrap; }
.journey-active .community-page { max-width:72rem; padding-top:1.5rem; }
.journey-active .community-heading,.journey-active .community-kinds,.journey-active .community-preview-entry,.journey-active .community-tools,.journey-active #communityNotice { display:none; }
#communityDetail.journey-mode { max-width:none; scroll-margin-top:6rem; }
.journey-preview { color:var(--text); padding-bottom:1rem; }
.journey-preview * { box-sizing:border-box; min-width:0; }
.journey-preview [hidden] { display:none!important; }
.journey-preview h1 { font-size:clamp(1.5rem,2.5vw,1.9rem); line-height:1.45; letter-spacing:-.04em; margin:.3rem 0 .6rem; }
.journey-preview h2 { font-size:1.125rem; line-height:1.6; margin:0 0 .7rem; letter-spacing:-.025em; }
.journey-preview h3 { font-size:1rem; line-height:1.6; margin:.3rem 0 .6rem; }
.journey-preview p { line-height:1.8; }
.journey-preview a { color:var(--blue); }
.journey-preview button,.journey-preview input,.journey-preview textarea,.journey-preview select { font:inherit; }
.journey-preview button { min-height:44px; font-size:.875rem; font-weight:550; }
.journey-preview button:disabled { opacity:.45; cursor:not-allowed; }
.journey-preview :is(button,a,input,textarea,select,summary):focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.journey-preview .journey-back-to-top {
  display:none; position:fixed; right:1.25rem; bottom:1.25rem; z-index:30;
  align-items:center; justify-content:center; gap:.35rem; padding:0 .75rem;
  border:1px solid var(--line); border-radius:var(--radius-md);
  background:var(--panel); color:var(--text); box-shadow:var(--shadow); cursor:pointer;
}
.journey-preview .journey-back-to-top:hover { border-color:var(--blue); color:var(--blue); }
@media(min-width:48rem) {
  .journey-preview .journey-back-to-top:not([hidden]) { display:inline-flex; }
}
.journey-notice { padding:.8rem 1rem; background:var(--panel2); border-radius:.75rem; margin-bottom:1.5rem; font-size:.8125rem; color:var(--muted); line-height:1.8; }
.journey-notice strong { color:var(--text); }
.journey-notice p { margin:.15rem 0; }
.journey-notice summary { cursor:pointer; font-weight:550; }
.journey-notice[open] summary { margin-bottom:.5rem; }
.journey-topbar { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; flex-wrap:wrap; margin:0 0 1.2rem; }
.journey-kicker { color:var(--blue); font-size:.6875rem; font-weight:650; letter-spacing:.12em; margin:0; }
.journey-actions { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; margin:.8rem 0; }
.journey-nav { display:flex; gap:.4rem; border-bottom:1px solid var(--line); margin:0 0 1.6rem; flex-wrap:wrap; }
.journey-preview .journey-nav button { border:0; border-radius:0; background:transparent; padding:.7rem .9rem; color:var(--muted); border-bottom:2px solid transparent; }
.journey-preview .journey-nav button[aria-current="page"],.journey-preview .journey-nav button[aria-pressed="true"] { color:var(--blue); border-bottom-color:var(--blue); }
.journey-panel { background:var(--panel); border:1px solid var(--line); border-radius:1rem; padding:1.4rem; margin:0 0 1rem; }
.journey-panel > :last-child { margin-bottom:0; }
.journey-list { border-top:1px solid var(--line); }
.journey-row { display:flex; align-items:center; gap:1.1rem; padding:1.2rem .2rem; border-bottom:1px solid var(--line); }
.journey-row > div { flex:1; }
.journey-preview .journey-row h3 button { color:var(--text); border:0; background:transparent; padding:0; text-align:left; font-weight:600; font-size:1rem; line-height:1.7; }
.journey-thumb { width:90px; height:68px; object-fit:cover; border-radius:.6rem; border:1px solid var(--line); flex:0 0 auto; }
.journey-meta { display:flex; align-items:center; flex-wrap:wrap; gap:.35rem .75rem; color:var(--muted); font-size:.75rem; margin:.5rem 0; line-height:1.7; }
.journey-badge { display:inline-flex; align-items:center; gap:.25rem; padding:.15rem .5rem; border-radius:.4rem; background:var(--accent-soft); color:var(--blue); font-size:.6875rem; font-weight:600; }
.journey-preview .journey-primary { color:var(--bg); background:var(--blue); border-color:var(--blue); padding:.65rem 1rem; }
.journey-preview .journey-secondary { color:var(--text); background:var(--panel); padding:.65rem 1rem; }
.journey-preview .journey-text-button { color:var(--blue); border:0; background:transparent; padding:.4rem .15rem; }
.journey-two-column { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; align-items:start; }
.journey-source { padding:.9rem 1rem; border-left:3px solid var(--blue); background:var(--panel2); border-radius:.4rem; margin:.7rem 0 1rem; overflow-wrap:anywhere; }
.journey-source p { font-size:.875rem; margin:.35rem 0; white-space:pre-wrap; }
.journey-body { white-space:pre-wrap; overflow-wrap:anywhere; font-size:1rem; line-height:1.9; margin:1.2rem 0; }
.journey-image { display:block; width:100%; max-height:260px; object-fit:contain; background:var(--panel2); border:1px solid var(--line); border-radius:.75rem; margin:1rem 0 .3rem; }
.journey-form { display:grid; gap:1rem; }
.journey-field { display:grid; gap:.45rem; font-size:.875rem; font-weight:550; }
.journey-field input,.journey-field textarea,.journey-field select { width:100%; color:var(--text); background:var(--panel); border:1px solid var(--line); border-radius:.65rem; padding:.8rem; font-size:1rem; font-weight:400; }
.journey-field textarea { line-height:1.8; min-height:8rem; resize:vertical; }
.journey-count { display:block; color:var(--muted); font-size:.75rem; font-weight:400; line-height:1.8; }
.journey-count[data-invalid="true"] { color:var(--danger); }
.journey-check { display:flex; align-items:flex-start; gap:.6rem; padding:.65rem .1rem; min-height:44px; color:var(--text); font-size:.875rem; font-weight:400; line-height:1.8; }
.journey-preview .journey-check input { width:18px; height:18px; min-height:0; padding:0; margin:.25rem 0 0; flex:0 0 auto; accent-color:var(--blue); }
.journey-stage-list { list-style:none; padding:0; margin:.7rem 0; }
.journey-stage-list li { padding:.8rem 0; border-bottom:1px solid var(--line); font-size:.875rem; line-height:1.8; }
.journey-stage-list strong { color:var(--blue); }
.journey-stat { display:flex; gap:1rem; align-items:center; flex-wrap:wrap; padding:.9rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); font-size:.875rem; }
.journey-preview .journey-reaction { color:var(--text); background:var(--panel); min-width:6rem; }
.journey-preview .journey-reaction[aria-pressed="true"] { color:var(--blue); background:var(--accent-soft); border-color:var(--blue); }
.journey-corners { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:1rem 0; align-items:start; }
.journey-side-a { --journey-side:var(--community-a); --journey-soft:var(--community-a-bg); }
.journey-side-b { --journey-side:var(--community-b); --journey-soft:var(--community-b-bg); }
.journey-corners > section,.journey-corners > article,.journey-corners > .journey-panel { background:var(--journey-soft); border-top:3px solid var(--journey-side); border-radius:1rem; padding:1.2rem; }
.journey-corners h2,.journey-corners h3 { color:var(--journey-side); }
.journey-corners .journey-body { font-size:1rem; line-height:1.85; }
.journey-corners .journey-secondary { color:var(--journey-side); border-color:var(--journey-side); }
.journey-comments { border-top:1px solid var(--line); margin-top:1rem; }
.journey-comments article,.journey-comments li { padding:.8rem 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.journey-comments p { font-size:.9375rem; white-space:pre-wrap; }
.journey-form-status { color:var(--muted); font-size:.8125rem; line-height:1.8; margin:.7rem 0; }
.journey-form-status[role="alert"] { color:var(--danger); }
.journey-example-toolbar { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; padding:0 0 1.3rem; margin-bottom:1.3rem; border-bottom:1px solid var(--line); }
.journey-example-toolbar > span { color:var(--muted); font-size:.75rem; line-height:1.7; }
.journey-example-nav { display:flex; gap:.2rem; background:var(--panel2); border-radius:.75rem; padding:.25rem; }
.journey-example-nav .journey-secondary { border:0; background:transparent; padding:.55rem 1rem; color:var(--muted); }
.journey-example-nav button[aria-current="page"] { background:var(--panel); color:var(--text); box-shadow:0 1px 4px #182b4512; }
.journey-section-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1rem; }
.journey-section-head h2,.journey-section-head .journey-meta { margin:0; }
.journey-reading,.journey-writing { max-width:54rem; margin-inline:auto; padding:2rem; }
.journey-preview h2.journey-post-title { font-size:1.55rem; line-height:1.55; letter-spacing:-.035em; margin:.9rem 0 .7rem; }
.journey-reading > .journey-body { line-height:1.95; margin:2rem 0; }
.journey-case { display:flex; gap:.4rem; flex-wrap:wrap; margin:1.2rem 0; }
.journey-case span { font-size:.8125rem; color:var(--muted); border:1px solid var(--line); padding:.35rem .6rem; border-radius:.45rem; }
.journey-parent { display:grid; gap:.3rem; padding:.8rem 1rem; background:var(--panel2); border-radius:.6rem; margin:1.2rem 0; }
.journey-parent > span { color:var(--muted); font-size:.75rem; }
.journey-parent .journey-secondary { border:0; background:transparent; text-align:left; padding:0; font-size:.875rem; min-height:30px; color:var(--blue); }
.journey-reaction { display:flex; gap:.5rem; justify-content:center; margin:1.5rem 0; }
.journey-reaction button[aria-pressed="true"] { border-color:var(--blue); color:var(--blue); background:var(--accent-soft); }
.journey-post-links { display:flex; flex-wrap:wrap; gap:.5rem; padding:1rem 0 1.5rem; margin-bottom:1rem; border-bottom:1px solid var(--line); }
.journey-submit-row { display:flex; gap:.5rem; align-items:center; flex-wrap:wrap; padding-top:.5rem; }
.journey-submit-row > .journey-primary { margin-left:auto; }
.journey-rebuttal-target { padding:1rem; margin-bottom:1rem; background:var(--panel2); border-radius:.75rem; }
.journey-rebuttal-target summary { cursor:pointer; }
.journey-rebuttal-target summary span { color:var(--muted); font-size:.75rem; margin-right:.5rem; }
.journey-rebuttal-target summary strong { font-size:.9375rem; font-weight:550; line-height:1.8; }
.journey-rebuttal-target[open] .journey-body { font-size:.9375rem; }
.journey-battle { padding:1.8rem; }
.journey-preview h2.journey-battle-question { font-size:1.5rem; letter-spacing:-.035em; line-height:1.6; margin:1rem 0; }
.journey-battle .journey-corners { position:relative; gap:1.5rem; align-items:stretch; margin:1.5rem 0 .6rem; }
.journey-side-heading { display:flex; justify-content:space-between; gap:.5rem; color:var(--journey-side); font-size:.75rem; }
.journey-side-heading > :first-child { font-weight:650; }
.journey-corners h3 { font-size:1.35rem; font-weight:700; letter-spacing:-.035em; margin:.8rem 0; }
.journey-corners > article { display:flex; flex-direction:column; padding:1.5rem; }
.journey-corners .journey-body { flex:1; margin:.4rem 0 1.5rem; font-size:1rem; }
.journey-card-actions { display:flex; align-items:center; justify-content:space-between; gap:.5rem; flex-wrap:wrap; }
.journey-card-actions .journey-primary { color:#fff; background:var(--journey-side); border-color:var(--journey-side); }
.journey-card-actions .journey-secondary { border:0; padding:.5rem 0; background:transparent; }
.journey-card-actions button[aria-pressed="true"] { outline:2px solid var(--journey-side); outline-offset:3px; }
.journey-discussion { margin-top:2rem; border-top:1px solid var(--line); padding-top:1.5rem; }
.journey-discussion-side { border-left:2px solid var(--journey-side); padding-left:1rem; }
.journey-discussion-side h4 { color:var(--journey-side); font-size:.9375rem; margin:0 0 .5rem; }
.journey-discussion-side .journey-comments { margin-top:0; border-top:0; }
.journey-discussion-side .journey-comments article { padding:.4rem 0; border-bottom:0; }
.journey-discussion-side .journey-comments strong { font-size:.8125rem; }
.journey-discussion-side .journey-body { margin:.7rem 0; line-height:1.9; }
.journey-comment-compose summary { cursor:pointer; color:var(--muted); padding:.6rem 0; font-size:.8125rem; min-height:44px; }
.journey-comment-compose[open] { padding-top:.5rem; }
.journey-process-info { margin:1.2rem 0; color:var(--muted); font-size:.8125rem; line-height:1.8; }
.journey-process-info summary { cursor:pointer; min-height:44px; padding:.6rem 0; }
.journey-form-status { min-height:1.4rem; }
@media(max-width:44rem) {
  .journey-active .community-page { padding:1rem 1rem calc(5rem + env(safe-area-inset-bottom)); }
  .journey-topbar { gap:.4rem; flex-wrap:nowrap; align-items:center; margin-bottom:.8rem; }
  .journey-topbar .journey-kicker { display:none; }
  .journey-topbar .journey-actions { margin:0; flex-wrap:nowrap; }
  .journey-topbar .journey-actions button { padding:.5rem .65rem; white-space:nowrap; }
  #communityDetail.journey-mode { scroll-margin-top:1rem; }
  .journey-topbar h1 { font-size:1.5rem; }
  .journey-nav { gap:.1rem; margin-bottom:1rem; }
  .journey-preview .journey-nav button { padding:.6rem .65rem; font-size:.8125rem; }
  .journey-notice { font-size:.75rem; margin-bottom:1.2rem; padding:.7rem .8rem; }
  .journey-panel { padding:1rem; }
  .journey-two-column,.journey-corners { grid-template-columns:minmax(0,1fr); }
  .journey-row { gap:.65rem; }
  .journey-thumb { width:70px; height:58px; }
  .journey-image { max-height:210px; }
  .journey-corners > section,.journey-corners > article,.journey-corners > .journey-panel { padding:1rem; }
  .journey-actions { gap:.5rem; }
  .journey-actions > .journey-primary { flex:1 1 auto; }
  .journey-topbar h1 { font-size:1.25rem; }
  .journey-example-toolbar { gap:.5rem; margin-bottom:1rem; padding-bottom:1rem; }
  .journey-example-nav { width:100%; }
  .journey-example-nav button { flex:1; }
  .journey-reading,.journey-writing,.journey-battle { padding:1rem; }
  .journey-preview h2.journey-post-title { font-size:1.3rem; }
  .journey-preview h2.journey-battle-question { font-size:1.2rem; }
  .journey-case { gap:.3rem; margin:.8rem 0; }
  .journey-case span { padding:.25rem .45rem; font-size:.75rem; }
  .journey-battle .journey-corners { gap:.8rem; margin-top:1.1rem; }
  .journey-corners h3 { font-size:1.25rem; margin:.6rem 0; }
  .journey-corners .journey-body { margin:0 0 1rem; }
  .journey-submit-row > .journey-meta { width:100%; order:3; }
  .journey-parent .journey-secondary { font-size:.875rem; }
  .journey-discussion { margin-top:1.4rem; padding-top:1rem; }
}

/* 2026-11-04: comment-selected representatives; previous journey surfaces are not rendered. */
.journey-preview :is(h1,h2,h3,h4,p,span,strong,button,label,summary) { overflow-wrap:anywhere; }
.journey-preview button { white-space:normal; }
.journey-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.25rem; }
.journey-phase { margin:.6rem 0 1rem; color:var(--muted); font-size:.8125rem; }
.journey-notice { border:1px solid var(--line); }
.journey-example-notice { color:var(--blue); }
.journey-reactions { display:flex; align-items:center; flex-wrap:wrap; gap:.5rem; margin:.9rem 0; }
.journey-reactions button { min-width:6rem; padding:.55rem .85rem; }
.journey-reactions button[aria-pressed="true"] { color:var(--blue); border-color:var(--blue); background:var(--accent-soft); }
.journey-reactions strong { margin-left:.25rem; }
.journey-reading > .journey-reactions { justify-content:center; padding-bottom:.6rem; }
.journey-cutoff { display:flex; align-items:center; flex-wrap:wrap; gap:.5rem 1rem; padding:1rem 0; margin:.8rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.journey-fixed-note,.journey-snapshot-note { padding:.8rem 1rem; background:var(--panel2); border-radius:.75rem; color:var(--muted); font-size:.8125rem; }
.journey-fixed-note button { margin:.5rem 0 0; }
.journey-fixed-badge { background:var(--community-a-bg); color:var(--community-a); }
.journey-comments-header {
  display:flex; align-items:center; flex-wrap:wrap; gap:.25rem .8rem;
  padding:.35rem 0; border-bottom:2px solid var(--blue);
}
.journey-comments-header h3 { margin:0; }
.journey-comment-sort { display:flex; flex-wrap:wrap; gap:.25rem; }
.journey-preview .journey-comment-sort button {
  padding:0 .55rem; border:0; border-radius:.4rem;
  background:transparent; color:var(--muted); font-size:.8125rem;
}
.journey-preview .journey-comment-sort button[aria-pressed="true"] {
  background:var(--accent-soft); color:var(--blue); font-weight:700;
}
.journey-comment-thread {
  margin-top:.75rem; padding:.75rem; border:1px solid var(--line);
  border-radius:.75rem; background:var(--panel);
}
.journey-comments .journey-comment { min-width:0; padding:0; border-bottom:0; scroll-margin-top:5rem; }
.journey-comment.is-fixed { border-inline-start:3px solid var(--community-b); padding-inline-start:.75rem; }
.journey-comment:focus { outline:2px solid var(--blue); outline-offset:4px; }
.journey-comment-head,.journey-comment-badges { display:flex; align-items:center; flex-wrap:wrap; gap:.4rem .65rem; }
.journey-comment-head > strong { font-size:.875rem; }
.journey-comment-badges { margin-top:.5rem; }
.journey-comment-badges:empty { display:none; }
.journey-comment .journey-body { font-size:.9375rem; margin:.65rem 0; }
.journey-comment-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.25rem .5rem; }
.journey-comment-actions .journey-reactions { margin:0; }
.journey-preview .journey-comment-actions button { min-width:0; padding:.35rem .55rem; font-size:.8125rem; }
.journey-reply-count { margin-inline-start:auto; color:var(--blue); font-size:.75rem; }
.journey-comments .journey-reply {
  margin:.5rem 0 0 .5rem; padding:.5rem .625rem;
  border:1px solid var(--line); border-radius:.5625rem; background:var(--panel2);
}
.journey-comments .journey-reply-to { margin:0 0 .25rem; color:var(--muted); font-size:.75rem; }
.journey-reply-target {
  display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:.5rem;
  padding:.35rem .75rem; border-radius:.5rem; background:var(--panel2); color:var(--blue); font-size:.8125rem;
}
.journey-stance { display:inline-flex; align-items:center; min-height:1.6rem; padding:.15rem .45rem; border-radius:.4rem; color:var(--journey-side); background:var(--journey-soft); font-size:.6875rem; }
.journey-comment-form { padding-top:1rem; margin-top:1rem; }
.journey-check small { display:block; color:var(--muted); font-size:.75rem; }
.journey-rule-strip { display:flex; flex-wrap:wrap; gap:.4rem; margin:1rem 0; }
.journey-rule-strip span { padding:.35rem .6rem; border:1px solid var(--line); border-radius:.5rem; font-size:.75rem; color:var(--muted); }
.journey-selected-comment { display:flex; align-items:center; flex-wrap:wrap; gap:.5rem .8rem; margin:1rem 0; padding:.8rem 1rem; border-left:3px solid var(--community-b); border-radius:.5rem; background:var(--panel2); }
.journey-selected-comment > span:not(.journey-badge) { font-size:.75rem; color:var(--muted); }
.journey-selected-comment > button { margin-left:auto; }
.journey-prepare-card { padding:1.1rem; border:1px solid var(--line); border-top:3px solid var(--journey-side); border-radius:.85rem; }
.journey-prepare-card > h3 { color:var(--journey-side); }
.journey-summary-status { color:var(--muted); }
.journey-review-checks { margin:1rem 0; padding:.6rem 1rem; border:1px solid var(--line); border-radius:.75rem; }
.journey-review-checks p { margin:.35rem 0; font-size:.875rem; }
.journey-reject { margin:1rem 0; color:var(--muted); font-size:.8125rem; }
.journey-reject summary { min-height:44px; cursor:pointer; padding:.6rem 0; }
.journey-reject > button { margin-top:.8rem; }
.journey-error-note { padding:.8rem 1rem; color:var(--danger); background:var(--warning-soft); border-radius:.7rem; font-size:.875rem; }
.journey-match-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; overflow:hidden; border:1px solid var(--line); border-radius:1rem; margin:1.3rem 0 .8rem; }
.journey-corner { display:flex; flex-direction:column; padding:1.5rem; background:var(--journey-soft); border-top:4px solid var(--journey-side); }
.journey-corner + .journey-corner { border-left:1px solid var(--line); }
.journey-corner h3 { color:var(--journey-side); font-size:1.3rem; margin:.8rem 0; }
.journey-corner .journey-body { flex:1; margin:.5rem 0 1rem; }
.journey-card-actions { margin-top:auto; }
.journey-opinion { padding:.5rem 0; border-bottom:1px solid var(--line); }
.journey-opinion strong { font-size:.8125rem; }
.journey-opinion .journey-body { font-size:.9375rem; margin:.4rem 0; }
@media(max-width:44rem) {
  .journey-preview .journey-nav button { padding:.65rem .2rem; font-size:.75rem; }
  .journey-match-pair { grid-template-columns:minmax(0,1fr); margin-top:1rem; }
  .journey-corner { padding:1.1rem; }
  .journey-corner + .journey-corner { border-left:0; border-top:1px solid var(--line); border-bottom:4px solid var(--journey-side); }
  .journey-corner h3 { font-size:1.2rem; }
  .journey-selected-comment > button { margin-left:0; }
  .journey-comments .journey-comment { scroll-margin-top:1rem; }
  .journey-topbar { flex-wrap:wrap; }
  .journey-topbar > button { font-size:.75rem; padding:.5rem .65rem; }
}
