/* Reading improvements scoped to journals; keep the existing sky and paper. */
.journal-view-switch { display:flex; gap:3px; padding:4px; border:1px solid #d1dbcc; border-radius:24px; background:#fefbf2; margin-left:auto; }
.journal-view-switch .system-button { border:0; border-radius:20px; padding:8px 17px; background:none; color:#56756c; font-size:12px; }
.journal-view-switch [aria-pressed="true"] { background:#426f68; color:#fffdf2; }
.journal-view-switch .system-button:hover { background:#e4ecdf; color:#365f55; }
.journal-view-switch [aria-pressed="true"]:hover { background:#365f55; color:#fffdf2; }
#postcards[data-view="list"] { display:grid; grid-template-columns:minmax(0,1fr); gap:0; max-width:none; padding:8px 28px; border:1px solid #dde2d3; border-radius:20px; background:#fffdf4; }
#postcards[data-view="list"] .postcard { margin:0; padding:0; transform:none; border:0; border-radius:0; box-shadow:none; background:none; }
#postcards[data-view="list"] .postcard + .postcard { border-top:1px solid #e0e6d9; }
#postcards[data-view="list"] .post-open { display:grid; grid-template-columns:170px minmax(0,1fr) auto; grid-template-areas:"date title category" "date excerpt category" "date bottom bottom"; align-items:start; column-gap:24px; row-gap:7px; padding:23px 8px; border-radius:10px; }
#postcards[data-view="list"] .post-open:hover { background:#f0f4e9; }
#postcards[data-view="list"] .card-art { display:none; }
#postcards[data-view="list"] .card-meta { grid-area:category; margin:4px 0 0; padding:3px 9px; border-radius:12px; background:#edf1e4; color:#5c7561; font:11px/1.6 var(--sans); letter-spacing:0; }
#postcards[data-view="list"] h3 { grid-area:title; margin:0; color:#345950; font:500 18px/1.7 var(--sans); overflow-wrap:anywhere; }
#postcards[data-view="list"] h3 br { display:none; }
#postcards[data-view="list"] .post-date { grid-area:date; margin:5px 0 0; font:12px/1.8 var(--sans); color:#667d69; font-variant-numeric:tabular-nums; }
#postcards[data-view="list"] .post-open > p { grid-area:excerpt; margin:0; font:13px/1.8 var(--sans); color:#6c7c6f; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow-wrap:anywhere; }
#postcards[data-view="list"] .card-bottom { grid-area:bottom; border:0; padding:3px 0 0; margin:0; gap:12px; justify-content:flex-start; flex-wrap:wrap; color:#57795e; font:11px/1.8 var(--sans); letter-spacing:0; }
#postcards[data-view="list"] .card-bottom > span { font-size:12px; margin:0; }
#postcards[data-view="list"] .post-open:focus-visible { outline:3px solid #658f74; outline-offset:-3px; }
.system-dialog.journal-reader,dialog.reader-dialog { width:min(820px,calc(100vw - 40px)); max-height:90dvh; padding:24px clamp(24px,5vw,60px) 45px; border-radius:16px; background:#faf8ef; overflow-y:auto; overscroll-behavior:contain; scroll-padding-top:70px; }
.journal-reader > .dialog-x,.reader-dialog > .close-dialog { position:sticky; top:0; float:right; right:auto; margin:0 -10px 12px 12px; width:44px; height:44px; padding:0; display:grid; place-items:center; border:1px solid #c8d7c5; border-radius:50%; background:#fffcf3; color:#496d58; box-shadow:0 3px 12px #315a431a; font:28px/1 var(--sans); z-index:2; }
.journal-reader > .system-kicker { display:block; padding-top:13px; color:#6c826d; }
.journal-reader > h2,.reader-dialog > h2 { clear:both; margin:24px 0 16px; font:400 clamp(27px,3vw,35px)/1.6 var(--display-cn); overflow-wrap:anywhere; }
.journal-reader > .message-meta { font-size:12px; padding-bottom:21px; margin-bottom:18px; border-bottom:1px solid #d6dece; }
.journal-reader .system-journal-body > p,.reader-dialog #reader-content p { font:16px/2.05 var(--sans); color:#496356; overflow-wrap:anywhere; white-space:pre-wrap; margin:0 0 25px; }
.journal-reader .system-journal-body .attached-image { max-height:65dvh; background:#eef2e7; border-radius:12px; margin:24px auto; }
.journal-reader .journal-discussion { margin-top:36px; padding-top:25px; }
.journal-reader .journal-discussion > .system-button { margin:0 8px 10px 0; }
.reader-dialog .reader-top { margin:0; padding-top:12px; }
@media(max-width:760px) {
  .journal-view-switch { margin-left:0; }
  #postcards[data-view="list"] { padding:5px 14px; border-radius:16px; }
  #postcards[data-view="list"] .post-open { grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"date category" "title title" "excerpt excerpt" "bottom bottom"; gap:8px 10px; padding:20px 5px; }
  #postcards[data-view="list"] .post-date { font-size:11px; }
  #postcards[data-view="list"] h3 { font-size:17px; }
}
@media(max-width:600px) {
  .system-dialog.journal-reader,dialog.reader-dialog { width:100%; max-width:100%; height:100dvh; max-height:100dvh; margin:0; border:0; border-radius:0; padding:calc(12px + env(safe-area-inset-top)) 22px calc(35px + env(safe-area-inset-bottom)); }
  .journal-reader > .dialog-x,.reader-dialog > .close-dialog { top:env(safe-area-inset-top); margin-right:0; }
  .journal-reader > h2,.reader-dialog > h2 { font-size:27px; margin-top:21px; }
  .journal-reader .system-journal-body > p,.reader-dialog #reader-content p { font-size:16px; line-height:2; }
}
