/* journal.css — moved out of mjh-social-archive.php by journal-fix 07 (2026-11-09). Inline copies step aside while this is enqueued. */
@import url('https://fonts.googleapis.com/css2?family=IM+Fell+English:ital@0;1&family=IM+Fell+English+SC&family=Special+Elite&family=Caveat:wght@500;600;700&display=swap');

body.mjh-journal-page .entry-header, body.mjh-journal-page .entry-title, body.single-social_archive .entry-header, body.single-social_archive .entry-title { display: none !important; }
body.mjh-journal-page .entry-content, body.single-social_archive .entry-content { padding: 0 !important; max-width: none !important; }
.mjh-sa { max-width: 720px; margin: 0 auto; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; color: #1a1a1a; }
.mjh-sa-head { padding: 2rem 1rem 1rem; text-align: center; }
.mjh-sa-head h1 { font-size: 2rem; margin: 0 0 .25em; letter-spacing: -.02em; }
.mjh-sa-head p { color: #666; margin: 0; font-size: .95rem; }

.mjh-sa-nav { position: sticky; top: 0; z-index: 10; background: rgba(255,255,255,.92); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); padding: 1rem 1rem .8rem; border-bottom: 1px solid #eee; overflow-x: auto; white-space: nowrap; }
.mjh-sa-nav::-webkit-scrollbar { height: 0; }
.mjh-sa-nav a { position: relative; display: inline-block; padding: .3rem .68rem; margin: 0 .5rem 0 0; color: #4a4034; text-decoration: none; font-family: "Special Elite", monospace; font-size: .78rem; background: #fdfbf4; box-shadow: 1px 1px 3px rgba(0,0,0,.12); transform: rotate(-1.8deg); transition: transform .15s, box-shadow .15s; }
.mjh-sa-nav a:nth-child(even) { transform: rotate(1.6deg); background: #fcf7ea; }
.mjh-sa-nav a:nth-child(3n) { transform: rotate(-.7deg); }
.mjh-sa-nav a::before { content: ""; position: absolute; top: -5px; left: 50%; transform: translateX(-50%) rotate(-4deg); width: 20px; height: 7px; background: rgba(199,190,150,.4); }
.mjh-sa-nav a:hover { transform: rotate(0deg) translateY(-1px); box-shadow: 1px 3px 6px rgba(0,0,0,.18); }
.mjh-sa-nav a.active { background: #2f2519; color: #faf4e4; transform: rotate(0deg) scale(1.05); box-shadow: 1px 2px 7px rgba(0,0,0,.26); }
.mjh-sa-nav a.active::before { background: rgba(138,119,72,.5); }
.mjh-sa-nav a.active:hover { background: #2f2519; }
.mjh-sa-nav .count { opacity: .55; font-size: .7em; margin-left: .3em; }

.mjh-sa-month { font-family: "Georgia", "Times New Roman", serif; font-size: 1.6rem; font-weight: 400; letter-spacing: .01em; color: #3a2f25; margin: 3rem 0 1.2rem; padding: 0 1rem .45rem; border-bottom: 1px solid #e6dcc4; }

.mjh-sa-item { padding: 0 1rem 2.5rem; position: relative; }
.mjh-sa-item:not(:last-child)::after { content: ""; display: block; width: 24px; height: 1px; background: #ddd; margin: 1.25rem auto 0; }

.mjh-sa-media { margin: 0 -1rem .75rem; }
.mjh-sa-media img, .mjh-sa-media video { display: block; width: 100%; height: auto; }
.mjh-sa-lightbox { display: block; cursor: zoom-in; }
/* Handwriting entries: image left, transcription right (stacks on mobile) */
.mjh-sa-split { display: flex; flex-wrap: wrap; gap: 0 1.4rem; align-items: flex-start; }
.mjh-sa-split > * { flex-basis: 100%; }
.mjh-sa-split .mjh-sa-media { flex: 0 0 42%; max-width: 42%; margin: 0 0 .5rem; align-self: flex-start; }
.mjh-sa-split .mjh-sa-media img { border: 1px solid #e3d7bb; border-radius: 3px; background: #fff; }
.mjh-sa-split .mjh-sa-caption { flex: 1 1 46%; min-width: 220px; }
@media (max-width: 560px) { .mjh-sa-split { display: block; } .mjh-sa-split .mjh-sa-media { max-width: 100%; } }
/* Notes / Quotes zone header on Pickings handwriting entries */
.mjh-sa-zonehead { font-family: "Georgia", "Times New Roman", serif; font-size: .82rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: #8a3a2b; margin: 0 0 .5rem; }
.mjh-sa-zonehead:before { content: "❧ "; font-weight: 400; }
/* Essay cards — blog posts woven into the journal */
.mjh-sa-essay { border: 1px solid #d8c9a6; border-radius: 4px; background: #fbf6ea; padding: 0; overflow: hidden; margin: 0 0 1.5rem; box-shadow: 0 1px 4px rgba(70,45,15,.12); }
.mjh-essay-link { display: block; text-decoration: none; color: inherit; }
.mjh-essay-thumb img { display: block; width: 100%; height: 210px; object-fit: cover; }
.mjh-essay-body { padding: .9rem 1.1rem 1.05rem; }
.mjh-essay-kicker { display: inline-block; font-family: 'Special Elite', monospace; font-size: .66rem; letter-spacing: .12em; text-transform: uppercase; color: #8a3a2b; margin-bottom: .25rem; }
.mjh-essay-title { font-family: 'IM Fell English SC', Georgia, serif; font-size: 1.42rem; line-height: 1.15; margin: .1rem 0 .45rem; color: #2f2519; }
.mjh-essay-excerpt { font-family: 'IM Fell English', Georgia, serif; font-size: 1.02rem; line-height: 1.5; color: #4a3c2c; margin: 0 0 .55rem; }
.mjh-essay-more { font-family: 'Special Elite', monospace; font-size: .76rem; color: #8a3a2b; }
.mjh-essay-link:hover .mjh-essay-title { text-decoration: underline; }
.mjh-essay-link:hover .mjh-essay-more { color: #5a2419; }
.mjh-sa-album { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; margin: 0 -1rem .75rem; }
.mjh-sa-album img, .mjh-sa-album video { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; }
.mjh-sa-album a { display: block; position: relative; }
.mjh-sa-album .more { display: flex; align-items: center; justify-content: center; background: #f4f4f4; color: #666; font-size: .9rem; aspect-ratio: 1; text-decoration: none; }
.mjh-sa-video-tile { position: relative; display: block; }
.mjh-sa-video-tile::after { content: "\25B6"; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); color: #fff; font-size: 1.5rem; background: rgba(0,0,0,.55); width: 2.5rem; height: 2.5rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; padding-left: .15rem; pointer-events: none; }
.mjh-sa-video-wrap { position: relative; }
.mjh-sa-video-wrap::after { content: "\25B6"; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); color: #fff; font-size: 1.75rem; background: rgba(0,0,0,.55); width: 3.25rem; height: 3.25rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; padding-left: .2rem; pointer-events: none; opacity: 1; transition: opacity .2s; }
.mjh-sa-video-wrap:hover::after, .mjh-sa-video-wrap.playing::after { opacity: 0; }

/* Lightbox overlay */
.mjh-sa-lb { position: fixed; inset: 0; background: rgba(0,0,0,.92); display: flex; align-items: center; justify-content: center; z-index: 99999; cursor: zoom-out; padding: 2rem; }
.mjh-sa-lb img { max-width: 100%; max-height: 100%; object-fit: contain; }
.mjh-sa-lb-close { position: absolute; top: 1rem; right: 1.25rem; color: #fff; font-size: 2rem; line-height: 1; background: none; border: 0; cursor: pointer; opacity: .8; }
.mjh-sa-lb-close:hover { opacity: 1; }

/* Search box */
.mjh-sa-search { padding: 1rem; text-align: center; }
.mjh-sa-search input { width: 100%; max-width: 480px; padding: .6rem 1rem; font-size: 1rem; border: 1px solid #ddd; border-radius: 999px; background: #fafafa; }
.mjh-sa-search input:focus { outline: none; border-color: #1a1a1a; background: #fff; }
.mjh-sa-result-count { text-align: center; color: #666; font-size: .85rem; padding: .5rem 1rem; }
.mjh-sa-hashtag { color: #cc2366; text-decoration: none; }
.mjh-sa-hashtag:hover { text-decoration: underline; }

.mjh-sa-caption { font-size: 1rem; line-height: 1.55; white-space: pre-wrap; word-break: break-word; }
.mjh-sa-caption a { color: #1a1a1a; text-decoration: underline; text-decoration-color: #ccc; }

.mjh-sa-text { background: linear-gradient(135deg, #fdfaf3 0%, #f6efe1 100%); padding: 2rem 1.5rem; border-radius: 8px; font-family: "Georgia", "Times New Roman", serif; font-size: 1.15rem; line-height: 1.5; font-style: italic; color: #2a2418; }
.mjh-sa-text::before { content: "\201C"; font-size: 3rem; line-height: 0; vertical-align: -.4em; margin-right: .1em; color: #d4c5a0; }

.mjh-sa-link { background: #f9f9f9; padding: 1rem; border-radius: 8px; border: 1px solid #eee; }
.mjh-sa-link .url { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .8rem; color: #888; word-break: break-all; }

.mjh-sa-meta { margin-top: .6rem; font-size: .92rem; color: #888; display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; }
.mjh-sa-meta a { color: inherit; text-decoration: none; }
.mjh-sa-meta a:hover { color: #1a1a1a; }
.mjh-sa-badge { display: inline-block; padding: .1em .5em; border-radius: 3px; font-size: .7rem; font-weight: 600; letter-spacing: .03em; text-transform: uppercase; }
.mjh-sa-badge.instagram { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); color: #fff; }
.mjh-sa-badge.facebook { background: #1877f2; color: #fff; }
.mjh-sa-badge.pickings { background: #2e7d32; color: #fff; }
.mjh-sa-badge.doodle { background: #6a1b9a; color: #fff; }
.mjh-sa-badge.mikeminded { background: #00897b; color: #fff; }
.mjh-sa-badge.livejournal { background: #00415a; color: #fff; }
.mjh-sa-badge.midcityyoga { background: #7a5c2e; color: #fff; }
.mjh-sa-type { color: #999; }
.mjh-sa-tags { margin-top: .55rem; display: flex; flex-wrap: wrap; gap: .35rem; }
.mjh-sa-tags a { font-size: .78rem; color: #6b5a42; text-decoration: none; background: #f3ead4; border: 1px solid #e0d3ad; border-radius: 999px; padding: .1em .65em; transition: background .12s; }
.mjh-sa-tags a:hover { background: #6b5a42; color: #f7eed7; border-color: #6b5a42; }
.mjh-sa-tagrow-label { color: #999; font-size: .8rem; margin: 0 .5rem 0 1rem; flex-basis: 100%; }
.mjh-sa-tagchip { display: inline-block; font-size: .82rem; color: #6b5a42; text-decoration: none; border: 1px solid #d8c9a6; border-radius: 999px; padding: .12em .6em; margin: .15em .15em 0 0; }
.mjh-sa-tagchip:hover { background: #6b5a42; color: #f7eed7; border-color: #6b5a42; }
/* Card-size selector */
.mjh-sa-cardtoggle { display: flex; align-items: center; gap: .4rem; justify-content: flex-end; padding: .3rem 1rem .2rem; }
.mjh-sa-cardtoggle span { font-size: .8rem; color: #999; margin-right: .2rem; }
.mjh-sa-cardtoggle button { font: inherit; font-size: .82rem; cursor: pointer; background: #f3ead4; border: 1px solid #e0d3ad; color: #6b5a42; border-radius: 6px; padding: .2em .65em; }
.mjh-sa-cardtoggle button.is-on { background: #6b5a42; color: #f7eed7; border-color: #6b5a42; }
/* Compact = tighter spacing + smaller images, but fully readable — images show whole
   (contain, never cropped) and captions keep their full text. */
.mjh-cards-compact .mjh-sa-media { text-align: center; margin: 0 0 .5rem; }
.mjh-cards-compact .mjh-sa-media img, .mjh-cards-compact .mjh-sa-media video { max-height: 260px; width: auto; max-width: 100%; object-fit: contain; margin: 0 auto; }
.mjh-cards-compact .mjh-sa-item, .mjh-cards-compact .mjh-sa-essay { margin: 0 0 1rem; padding-bottom: 1rem; border-bottom: 1px solid #eadfc4; }
.mjh-cards-compact .mjh-sa-caption, .mjh-cards-compact .mjh-essay-excerpt, .mjh-cards-compact .mjh-sa-text { font-size: .95rem; line-height: 1.5; }
.mjh-cards-compact .mjh-essay-thumb img { height: 150px; }
.mjh-cards-compact .mjh-essay-title { font-size: 1.15rem; }
.mjh-cards-compact .mjh-sa-meta { font-size: .85rem; margin-top: .35rem; }
.mjh-cards-compact .mjh-sa-tags, .mjh-cards-compact .mjh-sa-aitags { display: none; }
/* Grid gallery — true masonry: natural image aspect (NO cropping) + content-height
   tiles (NO dead space). CSS columns; date dividers span every column. */
.mjh-cards-grid .mjh-sa-entries { column-width: 215px; column-gap: 1rem; }
.mjh-cards-grid .mjh-sa-entries > .mjh-sa-month, .mjh-cards-grid .mjh-sa-entries > .mjh-otd-year { column-span: all; }
.mjh-cards-grid .mjh-sa-item, .mjh-cards-grid .mjh-sa-essay { break-inside: avoid; -webkit-column-break-inside: avoid; width: 100%; margin: 0 0 1rem; border: 1px solid #e0d3ad; border-radius: 5px; overflow: hidden; background: #fbf6ea; box-shadow: 0 1px 3px rgba(70,45,15,.1); }
.mjh-cards-grid .mjh-sa-split { display: block; }
.mjh-cards-grid .mjh-sa-media { margin: 0; }
.mjh-cards-grid .mjh-sa-media img, .mjh-cards-grid .mjh-sa-media video { width: 100%; height: auto; object-fit: contain; display: block; }
.mjh-cards-grid .mjh-sa-split .mjh-sa-media { max-width: 100%; flex-basis: auto; }
.mjh-cards-grid .mjh-sa-album { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; }
.mjh-cards-grid .mjh-sa-album img { width: 100%; height: auto; }
.mjh-cards-grid .mjh-sa-caption, .mjh-cards-grid .mjh-sa-text, .mjh-cards-grid .mjh-essay-excerpt { padding: .4rem .6rem .5rem; font-size: .8rem; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical; overflow: hidden; }
.mjh-cards-grid .mjh-essay-thumb img { width: 100%; height: auto; }
.mjh-cards-grid .mjh-essay-kicker { padding: .4rem .6rem 0; }
.mjh-cards-grid .mjh-essay-title { font-size: .92rem; line-height: 1.2; padding: .25rem .6rem 0; }
.mjh-cards-grid .mjh-sa-meta { padding: .15rem .6rem .5rem; font-size: .7rem; }
.mjh-cards-grid .mjh-sa-tags, .mjh-cards-grid .mjh-sa-aitags, .mjh-cards-grid .mjh-sa-annotation, .mjh-cards-grid .mjh-sa-ocr { display: none; }

.mjh-sa-pager { padding: 2rem 1rem 4rem; text-align: center; }
.mjh-sa-pager a, .mjh-sa-pager span { display: inline-block; padding: .4rem .8rem; margin: 0 .2rem; border-radius: 6px; color: #555; text-decoration: none; font-size: .9rem; }
.mjh-sa-pager a:hover { background: #f0f0f0; }
.mjh-sa-pager .current { background: #1a1a1a; color: #fff; }

/* Meta line — journal style */
.mjh-sa-daylink { color: #1a1a1a; text-decoration: none; font-weight: 600; }
.mjh-sa-daylink:hover { text-decoration: underline; text-decoration-color: #ccc; }
.mjh-sa-time { color: #888; }
.mjh-sa-place::before { content: "📍 "; font-size: .8em; }
.mjh-sa-dot { color: #ccc; }

/* Per-entry actions (copy + comment) — sit alongside the existing .mjh-share-btn style */
.mjh-sa-actions { display: inline-flex; gap: .35rem; margin-top: .35rem; flex-wrap: wrap; }
.mjh-sa-actions .mjh-share-btn, .mjh-sa-act-btn { font-size: .68rem; padding: .25em .7em; letter-spacing: .08em; }
.mjh-sa-act-btn { display: inline-flex; align-items: center; gap: .3em; font: inherit; color: #6b5a42; background: #faf4e4; border: 1px solid #e0d4b3; border-radius: 999px; text-decoration: none; text-transform: uppercase; letter-spacing: .1em; }
.mjh-sa-act-btn:hover { color: #8a3a2b; border-color: #c9a86a; }

/* On This Day accordion */
.mjh-otd-accordion { margin-top: 1rem; }
.mjh-otd-accordion details { border-top: 1px solid #eee; padding: 0; margin: 0; }
.mjh-otd-accordion details:last-of-type { border-bottom: 1px solid #eee; }
.mjh-otd-accordion summary { list-style: none; cursor: pointer; padding: .85rem .5rem; font-family: "Georgia", "Times New Roman", serif; font-size: 1.25rem; color: #1a1a1a; display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; }
.mjh-otd-accordion summary::-webkit-details-marker { display: none; }
.mjh-otd-accordion summary:hover { background: #faf7ef; }
.mjh-otd-accordion summary::after { content: "▾"; color: #c5b58a; font-size: .85rem; transition: transform .15s; }
.mjh-otd-accordion details[open] > summary::after { transform: rotate(180deg); }
.mjh-otd-year-label { display: flex; align-items: baseline; gap: .6rem; }
.mjh-otd-year-label .full-date { font-family: "Special Elite", monospace; font-size: .75rem; color: #888; letter-spacing: .04em; }
.mjh-otd-year-count { font-size: .7rem; color: #999; font-family: ui-monospace, monospace; }
.mjh-otd-accordion .mjh-otd-entries { padding: .5rem 0 1.25rem; }
.mjh-otd-quickjump { display: flex; flex-wrap: wrap; gap: .3rem; justify-content: center; padding: .5rem 0 1rem; }
.mjh-otd-quickjump a { font-family: "Special Elite", monospace; font-size: .72rem; color: #666; padding: .15em .55em; border: 1px solid #e3d7bb; border-radius: 3px; text-decoration: none; background: rgba(255,250,235,.4); }
.mjh-otd-quickjump a:hover { background: var(--fj-brass, #8a7748); color: #fff; }

/* On This Day — year slider of taped-paper scraps */
.mjh-otd-slider { display: flex; gap: 1rem; overflow-x: auto; padding: 1.6rem .6rem 2rem; scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch; }
.mjh-otd-slider::-webkit-scrollbar { height: 0; }
.mjh-otd-scrap { position: relative; flex: 0 0 auto; scroll-snap-align: center; cursor: pointer; border: 0; background: #fdfbf4; padding: .75rem 1.05rem .6rem; font-family: "Special Elite", monospace; color: #4a4034; box-shadow: 1px 2px 5px rgba(0,0,0,.14); transition: transform .16s, box-shadow .16s; transform: rotate(-2deg); }
.mjh-otd-scrap:nth-child(even) { transform: rotate(1.6deg); background: #fcf7ea; }
.mjh-otd-scrap:nth-child(3n) { transform: rotate(-.8deg); }
.mjh-otd-scrap:nth-child(4n) { transform: rotate(2.2deg); }
.mjh-otd-scrap::before { content: ""; position: absolute; top: -8px; left: 50%; transform: translateX(-50%) rotate(-3deg); width: 40px; height: 15px; background: rgba(199,190,150,.42); box-shadow: 0 1px 1px rgba(0,0,0,.05); }
.mjh-otd-scrap .yr { display: block; font-size: 1.2rem; line-height: 1; }
.mjh-otd-scrap .ct { display: block; font-size: .6rem; color: #a99a72; margin-top: .18rem; text-align: right; }
.mjh-otd-scrap:hover { transform: rotate(0deg) scale(1.04); box-shadow: 2px 4px 9px rgba(0,0,0,.2); }
.mjh-otd-scrap.active { transform: rotate(0deg) scale(1.06); box-shadow: 2px 5px 13px rgba(0,0,0,.24); outline: 2px solid var(--fj-brass, #8a7748); outline-offset: -2px; }
.mjh-otd-scrap.active::before { background: rgba(138,119,72,.4); }
.mjh-otd-panel { display: none; }
.mjh-otd-panel.active { display: block; animation: mjhotdfade .28s ease; }
@keyframes mjhotdfade { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.mjh-otd-panel-date { text-align: center; font-family: "Special Elite", monospace; font-size: .78rem; color: #999; letter-spacing: .04em; padding: .1rem 0 1.1rem; }

/* AI tags */
.mjh-sa-aitags { margin-top: .8rem; display: flex; flex-wrap: wrap; gap: .5rem .55rem; }
.mjh-sa-chip { position: relative; display: inline-block; padding: .22em .62em; font-family: "Special Elite", monospace; font-size: .68rem; line-height: 1.35; text-decoration: none; color: #4a4034; background: #fdfbf4; box-shadow: 1px 1px 3px rgba(0,0,0,.12); transform: rotate(-2deg); transition: transform .15s, box-shadow .15s; }
.mjh-sa-chip:nth-child(even) { transform: rotate(1.8deg); }
.mjh-sa-chip:nth-child(3n)   { transform: rotate(-.9deg); }
.mjh-sa-chip:nth-child(5n)   { transform: rotate(2.4deg); }
.mjh-sa-chip::before { content: ""; position: absolute; top: -5px; left: 50%; transform: translateX(-50%) rotate(-5deg); width: 22px; height: 8px; background: rgba(199,190,150,.4); box-shadow: 0 1px 1px rgba(0,0,0,.04); }
.mjh-sa-chip:hover { transform: rotate(0deg) translateY(-1px) scale(1.05); box-shadow: 1px 3px 7px rgba(0,0,0,.2); z-index: 1; }
.mjh-sa-chip.people   { background: #eef4ff; color: #2a4d8c; }
.mjh-sa-chip.place    { background: #fdf6e8; color: #7d5a16; }
.mjh-sa-chip.activity { background: #ecf6ee; color: #2c6b3d; }
.mjh-sa-chip.mood     { background: #f7eef4; color: #7e3a64; }

/* OCR extracted text */
.mjh-sa-ocr { margin-top: .65rem; font-family: "Georgia", "Times New Roman", serif; font-style: italic; color: #777; font-size: .85rem; line-height: 1.45; padding: .35rem 0 .35rem .8rem; border-left: 1px dotted #bbb; }
.mjh-sa-ocr-label { display: block; font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; color: #aaa; font-style: normal; margin-bottom: .1rem; }

/* Annotations */
.mjh-sa-annotation { margin-top: .75rem; font-family: "Georgia", "Times New Roman", serif; font-style: italic; color: #6b5d44; font-size: .95rem; line-height: 1.5; padding: .5rem .85rem; border-left: 2px solid #d4c5a0; background: rgba(253,250,243,.6); }
.mjh-sa-annotation.is-editable { cursor: text; }
.mjh-sa-annotation.is-editable:hover { background: rgba(253,250,243,1); }
.mjh-sa-annotation-placeholder { color: #b3a98c; font-style: italic; }
.mjh-sa-annotation:focus { outline: 2px solid #cfa84a; outline-offset: 1px; background: #fff; }

/* Day page header */
.mjh-day-header { text-align: center; padding: 3rem 1rem 1.5rem; }
.mjh-day-header .weekday { font-family: "Georgia", "Times New Roman", serif; font-size: 1.8rem; color: #8a6d3b; margin: 0; letter-spacing: .02em; }
.mjh-day-header .date { font-family: "Georgia", "Times New Roman", serif; font-size: 3.4rem; line-height: 1.08; margin: .15rem 0 .5rem; letter-spacing: -.02em; color: #2f2519; font-weight: 400; }
.mjh-day-header .sub { font-size: .85rem; color: #999; letter-spacing: .05em; text-transform: uppercase; }
.mjh-day-nav { display: flex; justify-content: space-between; align-items: center; gap: .5rem; padding: 1.1rem 1rem; max-width: 720px; margin: 0 auto; border-top: 1px solid #e6dcc4; border-bottom: 1px solid #e6dcc4; }
.mjh-day-nav a { color: #6b5a42; text-decoration: none; font-size: 1.05rem; font-weight: 600; }
.mjh-day-nav a:hover { color: #1a1a1a; }
.mjh-day-nav-all { font-size: .8rem !important; letter-spacing: .05em; text-transform: uppercase; font-weight: 500 !important; color: #999 !important; }

/* "On this day" landing */
.mjh-otd-head { text-align: center; padding: 3rem 1rem 1rem; }
.mjh-otd-head h1 { font-family: "Georgia", "Times New Roman", serif; font-size: 2.5rem; margin: 0 0 .25em; font-weight: 400; letter-spacing: -.01em; }
.mjh-otd-head .sub { color: #888; font-size: .95rem; }
.mjh-otd-year { font-family: "Georgia", "Times New Roman", serif; font-size: 1.5rem; text-align: center; color: #888; margin: 3rem 0 .5rem; }
.mjh-otd-year span { background: #fff; padding: 0 .75rem; position: relative; }
.mjh-otd-year::before { content: ""; display: block; height: 1px; background: #eee; width: 100%; position: absolute; top: 50%; z-index: -1; }
.mjh-otd-empty { text-align: center; padding: 2rem 1rem; color: #888; font-style: italic; }
.mjh-otd-empty a { color: #1a1a1a; }

/* Heat-map */
.mjh-heat { padding: 1rem; }
.mjh-heat-title { font-size: .75rem; color: #999; letter-spacing: .1em; text-transform: uppercase; margin: 0 0 .5rem; text-align: center; }
.mjh-heat-grid { display: grid; gap: 1px; grid-template-columns: repeat(53, 1fr); max-width: 720px; margin: 0 auto; }
.mjh-heat-grid a { aspect-ratio: 1; background: #f0f0f0; display: block; border-radius: 1px; transition: transform .1s; }
.mjh-heat-grid a:hover { transform: scale(2); z-index: 2; box-shadow: 0 0 0 1px #1a1a1a; position: relative; }
.mjh-heat-grid a.l1 { background: #f9e8c8; }
.mjh-heat-grid a.l2 { background: #eecf8b; }
.mjh-heat-grid a.l3 { background: #d8a647; }
.mjh-heat-grid a.l4 { background: #a87a1d; }
.mjh-heat-legend { display: flex; justify-content: center; align-items: center; gap: .4rem; font-size: .7rem; color: #999; margin-top: .5rem; }
.mjh-heat-legend .sw { width: 10px; height: 10px; display: inline-block; border-radius: 1px; }

/* Thread header */
.mjh-thread-head { text-align: center; padding: 3rem 1rem 1.2rem; }
.mjh-thread-head h1 { font-family: "Georgia", "Times New Roman", serif; font-size: 2.9rem; margin: 0; font-weight: 400; color: #2f2519; }
.mjh-thread-head h1:before { content: "❧ "; color: #8a3a2b; font-size: .8em; }
.mjh-thread-head .sub { color: #8a6d3b; font-size: .95rem; margin-top: .3em; letter-spacing: .03em; text-transform: uppercase; }
.mjh-thread-related { max-width: 760px; margin: 0 auto 2rem; padding: 1rem 1.2rem; text-align: center; background: #faf4e4; border-top: 1px solid #e6dcc4; border-bottom: 1px solid #e6dcc4; }
.mjh-thread-related-label { display: block; font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: #b08d57; margin-bottom: .6rem; }
.mjh-thread-related .mjh-fj-tagcloud { display: flex; flex-wrap: wrap; gap: .4rem .9rem; justify-content: center; align-items: baseline; line-height: 1.5; }
.mjh-thread-related .mjh-fj-tag { text-decoration: none; color: #6b5a42; font-family: "Georgia", serif; text-transform: capitalize; border-bottom: 1px solid transparent; }
.mjh-thread-related .mjh-fj-tag span { font-size: .62em; color: #b3a98a; margin-left: .12em; vertical-align: super; }
.mjh-thread-related .mjh-fj-tag:hover { color: #8a3a2b; border-bottom-color: #8a3a2b; }
.mjh-thread-year-divider { font-family: "Georgia", "Times New Roman", serif; font-size: 1.5rem; color: #888; text-align: center; margin: 3rem 0 .5rem; }
.mjh-thread-yearnav { display: flex; flex-wrap: wrap; gap: .4rem; justify-content: center; max-width: 760px; margin: 0 auto 1.5rem; padding: 0 1rem; }
.mjh-thread-yearpill { display: inline-flex; align-items: baseline; gap: .35rem; padding: .35rem .85rem; border-radius: 999px; background: #faf4e4; border: 1px solid #e6dcc4; color: #6b5a42; font-family: "Georgia", serif; font-size: .9rem; text-decoration: none; transition: background .15s, color .15s, border-color .15s; }
.mjh-thread-yearpill:hover { background: #f0e6c8; color: #2f2519; }
.mjh-thread-yearpill.active { background: #2f2519; color: #faf4e4; border-color: #2f2519; }
.mjh-thread-yearpill span { font-size: .72em; color: #b3a98a; }
.mjh-thread-yearpill.active span { color: rgba(250,244,228,.65); }

/* Footer nav */
.mjh-journal-foot { text-align: center; padding: 3rem 1rem 4rem; color: #888; font-size: .9rem; }
.mjh-journal-foot a { color: #1a1a1a; text-decoration: none; margin: 0 .5rem; }
.mjh-journal-foot a:hover { text-decoration: underline; }

@media (max-width: 720px) {
  .mjh-sa-head h1 { font-size: 1.5rem; }
  .mjh-sa-album { grid-template-columns: repeat(3, 1fr); }
}
/* Share / copy-link button */
.mjh-thread-actions { margin-top: .9rem; }
.mjh-share-btn { display: inline-flex; align-items: center; gap: .4rem; font: inherit; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: #6b5a42; background: #faf4e4; border: 1px solid #e0d4b3; border-radius: 999px; padding: .42rem 1rem; cursor: pointer; transition: color .15s, border-color .15s, background .15s; }
.mjh-share-btn:hover { color: #8a3a2b; border-color: #c9a86a; }
.mjh-share-btn.copied { color: #3a7a3a; border-color: #9ec79e; background: #eef6ea; }
/* Reader view — full RSS / mikeminded article, Miniflux-style */
.mjh-reader { margin: .4rem 0 1.2rem; }
.mjh-reader-source { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; border-bottom: 1px solid #e6dcc4; padding-bottom: .5rem; margin-bottom: 1.5rem; }
.mjh-reader-domain { font-size: .7rem; letter-spacing: .14em; text-transform: uppercase; color: #a98e3f; }
.mjh-reader-orig { font-size: .72rem; letter-spacing: .05em; text-transform: uppercase; color: #8a3a2b; text-decoration: none; white-space: nowrap; }
.mjh-reader-orig:hover { text-decoration: underline; }
.mjh-reader-body { font-family: Georgia, "Times New Roman", serif; font-size: 1.12rem; line-height: 1.75; color: #2b2419; }
.mjh-reader-body h1 { font-size: 1.9rem; line-height: 1.2; font-weight: 600; margin: 0 0 .25rem; color: #221c12; }
.mjh-reader-body h2 { font-size: 1.4rem; line-height: 1.25; font-weight: 600; margin: 2rem 0 .5rem; }
.mjh-reader-body h3 { font-size: 1.02rem; letter-spacing: .02em; color: #6b5a42; font-weight: 600; margin: 0 0 1.4rem; }
.mjh-reader-body p { margin: 0 0 1.25rem; }
.mjh-reader-body a { color: #8a3a2b; text-decoration: underline; text-underline-offset: 2px; }
.mjh-reader-body img { max-width: 100%; height: auto; border-radius: 4px; display: block; margin: 1.5rem auto; }
.mjh-reader-body figure { margin: 1.8rem 0; }
.mjh-reader-body figcaption { font-size: .82rem; color: #8a7a5e; text-align: center; margin-top: .5rem; font-family: -apple-system, system-ui, sans-serif; }
.mjh-reader-body blockquote { margin: 1.5rem 0; padding: .2rem 0 .2rem 1.2rem; border-left: 3px solid #c9a86a; color: #5a5042; font-style: italic; } .mjh-reader-body .why-saved { background:#f3efe4; border-left:3px solid #8a3a2b; padding:.8rem 1rem; margin:0 0 1.5rem; font-style:normal; font-size:1rem; line-height:1.6; border-radius:0 4px 4px 0; } .mjh-reader-body .pod-part { margin:1.4rem 0; } .mjh-reader-body .pp-point { font-weight:700; font-size:.8rem; letter-spacing:.05em; text-transform:uppercase; color:#8a7a5e; margin-bottom:.35rem; font-family:-apple-system,system-ui,sans-serif; } .mjh-reader-body .pod-part blockquote { margin:.35rem 0 0; }
.mjh-reader-body ul, .mjh-reader-body ol { margin: 0 0 1.25rem 1.4rem; }
.mjh-reader-body li { margin: .3rem 0; }
@media (max-width: 520px) { .mjh-reader-body { font-size: 1.05rem; line-height: 1.7; } .mjh-reader-body h1 { font-size: 1.55rem; } }
/* "Why I saved this" — AI points card above the reader article */
.mjh-aicard { background: #f6efdc; border: 1px solid #e2d6b4; border-left: 3px solid #c9a86a; border-radius: 6px; padding: 14px 18px; margin: .2rem 0 1.8rem; font-family: -apple-system, system-ui, sans-serif; }
.mjh-aicard-lab { font-size: .66rem; letter-spacing: .16em; text-transform: uppercase; color: #a9821f; font-weight: 700; margin-bottom: .55rem; }
.mjh-aicard-digest { margin: 0 0 .6rem; font-size: .96rem; line-height: 1.55; color: #4a4030; }
.mjh-aicard-sec { margin: .65rem 0 0; }
.mjh-aicard-seclab { display: block; font-size: .62rem; letter-spacing: .12em; text-transform: uppercase; color: #9a7b2e; margin-bottom: .25rem; }
.mjh-aicard-sec ul { margin: 0 0 .2rem; padding-left: 1.1rem; }
.mjh-aicard-sec li { font-size: .9rem; line-height: 1.5; color: #4a4030; margin: .15rem 0; }

.mjh-journal-landing{
  --fj-ink:#2f2519; --fj-ink2:#5b4a37; --fj-paper:#efe3c8; --fj-paper2:#e6d7b6;
  --fj-edge:#cdb583; --fj-ox:#8a3a2b; --fj-brass:#9c7b43; --fj-teal:#3f6b66;
  max-width:980px; margin:0 auto; padding:1rem 1rem 4rem;
  color:var(--fj-ink); font-family:'IM Fell English',Georgia,serif; font-size:1.06rem;
  background:
    radial-gradient(120% 80% at 50% -10%, rgba(255,250,235,.7), transparent 60%),
    repeating-linear-gradient(0deg, rgba(120,90,50,.025) 0 2px, transparent 2px 4px),
    linear-gradient(160deg,#f3e9d2,#e8d8b6 60%,#e0cda6);
  box-shadow:inset 0 0 140px rgba(90,60,25,.22);
  border-radius:6px;
}
.mjh-journal-landing *{box-sizing:border-box;}

/* Tablet/landscape & up: lay the modules out as a 2-column masonry. Big modules span both. */
@media (min-width:960px){
  .mjh-journal-landing{max-width:1180px; column-count:2; column-gap:1.6rem; padding:1rem 1.2rem 4rem;}
  .mjh-journal-landing > *{break-inside:avoid;}
  /* Modules that should occupy the full width (always look better wide) */
  .mjh-journal-landing > .mjh-fj-masthead,
  .mjh-journal-landing > .mjh-fj-otd,
  .mjh-journal-landing > .mjh-fj-today,
  .mjh-journal-landing > .mjh-fj-dispatches,
  .mjh-journal-landing > .mjh-fj-twocol,
  .mjh-journal-landing > .mjh-heat,
  .mjh-journal-landing > .mjh-fj-jumprow,
  .mjh-journal-landing > .mjh-fl-home-head,
  .mjh-journal-landing > .mjh-fl-home-foot,
  .mjh-journal-landing > .mjh-sa-cardtoggle--top,
  .mjh-journal-landing > .mjh-sa-feedhead,
  .mjh-journal-landing > .mjh-sa-feed,
  .mjh-journal-landing > .mjh-sa-entries,
  .mjh-journal-landing > .mjh-sa-pager,
  .mjh-journal-landing > .mjh-journal-foot{column-span:all;}
  /* Card margins inside columns shouldn't make orphans look weird */
  .mjh-journal-landing > .mjh-fj-card{margin:0 0 1.5rem;}
}
/* Larger desktops can go 3 columns for the small cards */
@media (min-width:1400px){
  .mjh-journal-landing{max-width:1320px;}
}

/* In Large/default mode on tablet+ widths, flow entry lists into 2 columns so portrait
   media doesn't tower — keeps content full but uses landscape width. */
@media (min-width:960px){
  body.mjh-journal-page :is(.mjh-fj-otd .mjh-otd-accordion .mjh-otd-entries,
                            .mjh-fj-otd .mjh-otd-entries,
                            .mjh-fj-today .mjh-sa-entries,
                            .mjh-sa-entries,
                            .mjh-fj-pickings){
    column-count:2; column-gap:1.4rem;
  }
  body.mjh-journal-page :is(.mjh-fj-otd .mjh-otd-accordion .mjh-otd-entries,
                            .mjh-fj-otd .mjh-otd-entries,
                            .mjh-fj-today .mjh-sa-entries,
                            .mjh-sa-entries,
                            .mjh-fj-pickings) > .mjh-sa-item,
  body.mjh-journal-page :is(.mjh-sa-entries) > .mjh-sa-essay{
    break-inside:avoid; -webkit-column-break-inside:avoid; margin-bottom:1.25rem;
  }
  /* Year headers and month dividers should span both columns */
  body.mjh-journal-page :is(.mjh-sa-entries) > .mjh-sa-month,
  body.mjh-journal-page :is(.mjh-sa-entries) > .mjh-otd-year{column-span:all;}
  /* Compact mode keeps its single-column rhythm (compact is for scanning) */
  body.mjh-journal-page .mjh-cards-compact :is(.mjh-otd-entries,.mjh-sa-entries,.mjh-fj-pickings){column-count:1;}
  /* Tame portrait media when in default Large mode so cards balance better */
  body.mjh-journal-page :not(.mjh-cards-compact):not(.mjh-cards-grid) .mjh-sa-media img,
  body.mjh-journal-page :not(.mjh-cards-compact):not(.mjh-cards-grid) .mjh-sa-media video{
    max-height:560px; object-fit:contain; margin:0 auto; display:block;
  }
}

/* Masthead */
.mjh-fj-masthead{text-align:center; padding:1.4rem 0 .6rem; position:relative;}
.mjh-fj-compass{display:block; font-size:1.6rem; color:var(--fj-ox); letter-spacing:.4em; margin-bottom:.2rem;}
.mjh-fj-title{font-family:'IM Fell English SC',serif; font-size:2.7rem; line-height:1.05; margin:.1rem 0; color:var(--fj-ink);
  text-shadow:0 1px 0 rgba(255,255,255,.4);}
.mjh-fj-tagline{font-family:'Special Elite',monospace; font-size:.82rem; letter-spacing:.12em; text-transform:uppercase; color:var(--fj-ink2); margin:.2rem 0 0;}
.mjh-fj-masthead:after{content:""; display:block; width:62%; margin:.9rem auto 0;
  border-top:2px solid var(--fj-ink); border-bottom:1px solid var(--fj-ink); height:4px;}

/* Cards — aged paper panels with a taped corner and a stamp */
.mjh-fj-card{position:relative; background:linear-gradient(175deg,#f7eed7,#ece0c1);
  border:1px solid var(--fj-edge); border-radius:3px; padding:1.2rem 1.15rem 1.35rem; margin:1.5rem 0;
  box-shadow:0 2px 6px rgba(70,45,15,.18), inset 0 0 60px rgba(150,110,55,.08);}
.mjh-fj-card:before{content:""; position:absolute; top:-12px; left:50%; transform:translateX(-50%) rotate(-2.5deg);
  width:132px; height:27px; opacity:.9;
  background:repeating-linear-gradient(46deg, rgba(208,176,116,.55) 0 7px, rgba(226,198,142,.6) 7px 14px);
  box-shadow:0 1px 3px rgba(80,55,20,.2);}
.mjh-fj-card:nth-of-type(even):before{transform:translateX(-50%) rotate(2deg);
  background:repeating-linear-gradient(-46deg, rgba(180,150,150,.4) 0 7px, rgba(200,170,165,.5) 7px 14px);}
.mjh-fj-cardhead{display:flex; align-items:center; gap:.7rem; margin:.2rem 0 1rem;}
.mjh-fj-cardhead h2{font-family:'IM Fell English SC',serif; font-size:1.5rem; margin:0; color:var(--fj-ink);}
.mjh-fj-reading .mjh-fj-cardhead h2{font-size:3.3rem; line-height:1.02;}
.mjh-fj-stamp{font-family:'Special Elite',monospace; font-size:.62rem; letter-spacing:.1em; color:var(--fj-ox);
  border:2px solid var(--fj-ox); border-radius:3px; padding:.18em .5em; transform:rotate(-5deg);
  opacity:.78; white-space:nowrap;}
.mjh-fj-sub{font-family:'Special Elite',monospace; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--fj-ink2); margin:1.1rem 0 .5rem; border-bottom:1px dotted var(--fj-edge); padding-bottom:.2rem;}

/* Today card — the big date + today's entries */
.mjh-fj-today .mjh-today-date{text-align:center; margin:.1rem 0 1.1rem;}
.mjh-fj-today .weekday{font-family:'Caveat',cursive; font-size:1.6rem; color:var(--fj-ox); margin:0;}
.mjh-fj-today .bigdate{font-family:'IM Fell English SC',serif; font-size:2.9rem; line-height:1.04; margin:.05rem 0; color:var(--fj-ink);}
.mjh-today-empty{text-align:center; font-family:'IM Fell English',serif; font-style:italic; color:var(--fj-ink2); padding:.4rem 0 .2rem;}
.mjh-today-empty a{color:var(--fj-ox);}
.mjh-fl-home-foot{text-align:center; margin:1.6rem 0 .4rem;}
.mjh-fl-home-head{margin:.2rem 0 1.4rem;}
.mjh-fl-home-foot a{font-family:'Special Elite',monospace; font-size:.85rem; color:var(--fj-ox); text-decoration:none; border-bottom:1px solid var(--fj-ox); padding-bottom:1px;}

/* Prominent view toggle at the top of the landing */
.mjh-sa-cardtoggle--top{justify-content:center; gap:.5rem; margin:.2rem 0 1.6rem; padding:.5rem 0;}
.mjh-sa-cardtoggle--top span{font-family:'Special Elite',monospace; font-size:.7rem; letter-spacing:.12em; text-transform:uppercase; color:var(--fj-ink2);}
.mjh-sa-cardtoggle--top button{font-family:'Special Elite',monospace; font-size:.8rem; padding:.3em .9em;}
.mjh-fj-jumprow{text-align:center; margin:-1rem 0 1.6rem;}
.mjh-fj-jump{font-family:'Special Elite',monospace; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--fj-ink2); text-decoration:none; border-bottom:1px dotted;}
.mjh-fj-jump:hover{color:var(--fj-ink);}

/* Embedded full-ledger feed (below the modules on the landing) */
.mjh-sa-feedhead{text-align:center; padding:2.4rem 1rem 1rem; border-top:2px solid var(--fj-edge); margin-top:2.5rem;}
.mjh-sa-feedhead h2{font-family:'IM Fell English SC',serif; font-size:2rem; margin:0; color:#2f2519;}
.mjh-sa-feedhead p{font-family:'Special Elite',monospace; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; color:#8a6d3b; margin-top:.3rem;}

/* On This Day hero */
.mjh-fj-otd .mjh-otd-head h1{font-family:'IM Fell English SC',serif; font-size:2rem; margin:.1rem 0; color:var(--fj-ink);}
.mjh-fj-otd .mjh-otd-head .sub{font-family:'Caveat',cursive; font-size:1.35rem; color:var(--fj-ox); margin:.1rem 0 .8rem;}
.mjh-fj-otd .mjh-otd-year{position:relative; text-align:center; margin:2.6rem 0 1rem; padding-top:1rem;}
.mjh-fj-otd .mjh-otd-year::before{content:""; position:absolute; top:0; left:50%; transform:translateX(-50%) rotate(-2.5deg);
  width:96px; height:21px; background:repeating-linear-gradient(46deg, rgba(208,176,116,.55) 0 6px, rgba(226,198,142,.6) 6px 12px);
  box-shadow:0 1px 2px rgba(80,55,20,.18); opacity:.9; z-index:0;}
.mjh-fj-otd .mjh-otd-year:nth-of-type(even)::before{transform:translateX(-50%) rotate(2.5deg);
  background:repeating-linear-gradient(-46deg, rgba(180,150,150,.45) 0 6px, rgba(200,170,165,.5) 6px 12px);}
.mjh-fj-otd .mjh-otd-year span{display:inline-block; font-family:'IM Fell English SC',serif; font-size:2rem; letter-spacing:.01em; color:var(--fj-ink); background:none; padding:.2rem .5rem 0;}

/* Stats grid */
.mjh-fj-statgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:.9rem;}
.mjh-fj-stat{text-align:center; padding:.7rem .4rem; border:1px dashed var(--fj-edge); border-radius:3px;
  background:rgba(255,250,235,.4);}
.mjh-fj-stat-n{display:block; font-family:'Special Elite',monospace; font-size:1.7rem; color:var(--fj-ox); line-height:1;}
.mjh-fj-stat-l{display:block; font-family:'IM Fell English',serif; font-style:italic; font-size:.92rem; color:var(--fj-ink); margin-top:.25rem;}
.mjh-fj-stat-s{display:block; font-family:'Special Elite',monospace; font-size:.64rem; color:var(--fj-ink2); margin-top:.15rem; letter-spacing:.05em;}

/* Polaroid doodles */
.mjh-fj-polaroids{display:flex; flex-wrap:wrap; gap:1rem; justify-content:flex-start;}
.mjh-fj-polaroid{display:block; background:#fffdf6; padding:.5rem .5rem 0; border:1px solid #e3d7bb;
  box-shadow:0 3px 7px rgba(60,40,15,.25); width:140px; text-decoration:none; color:var(--fj-ink2);}
.mjh-fj-polaroid:nth-child(odd){transform:rotate(-2deg);} .mjh-fj-polaroid:nth-child(even){transform:rotate(1.6deg);}
.mjh-fj-polaroid img{display:block; width:100%; height:120px; object-fit:contain; background:#fff;}
.mjh-fj-polaroid span{display:block; font-family:'Caveat',cursive; font-size:1.05rem; text-align:center; padding:.25rem 0 .4rem; color:var(--fj-ink);}
.mjh-fj-polaroid:hover{box-shadow:0 5px 12px rgba(60,40,15,.35); transform:rotate(0) scale(1.02);}

.mjh-fj-pickings .mjh-sa-item{border-bottom:1px dotted var(--fj-edge); padding-bottom:1rem; margin-bottom:1rem;}

/* Two-column discoveries */
.mjh-fj-twocol{display:grid; grid-template-columns:1fr 1fr; gap:1.3rem; align-items:start;}
.mjh-fj-twocol .mjh-fj-card{margin:1.5rem 0 0;}
.mjh-fj-shuffle{margin-top:.8rem; text-align:right;}
.mjh-fj-shuffle a{font-family:'Special Elite',monospace; font-size:.78rem; color:var(--fj-ox); text-decoration:none; border:1px solid var(--fj-ox); border-radius:3px; padding:.2em .55em;}
.mjh-fj-shuffle a:hover{background:var(--fj-ox); color:#f7eed7;}

/* Passport-stamp chips */
.mjh-fj-chips{display:flex; flex-wrap:wrap; gap:.5rem;}
.mjh-fj-chip{display:inline-flex; align-items:baseline; gap:.35em; text-decoration:none;
  font-family:'IM Fell English',serif; font-size:.95rem; color:var(--fj-ink);
  border:1.5px solid var(--fj-brass); border-radius:3px; padding:.18em .55em; background:rgba(255,250,235,.5);}
.mjh-fj-chips.places .mjh-fj-chip{border-color:var(--fj-teal);}
.mjh-fj-chip span{font-family:'Special Elite',monospace; font-size:.66rem; color:var(--fj-ink2);}
.mjh-fj-chip:nth-child(3n){transform:rotate(-1.5deg);} .mjh-fj-chip:nth-child(3n+1){transform:rotate(1deg);}
.mjh-fj-chip:hover{background:var(--fj-brass); color:#f7eed7;} .mjh-fj-chips.places .mjh-fj-chip:hover{background:var(--fj-teal); color:#f7eed7;}

/* Let the landing breathe past the shared 720px reading column */
.mjh-sa:has(> .mjh-journal-landing){max-width:960px;}

/* Writing desk — list of recent essays */
.mjh-fj-essaylist{list-style:none; margin:0; padding:0;}
.mjh-fj-essaylist li{border-bottom:1px dotted var(--fj-edge);}
.mjh-fj-essaylist li:last-child{border-bottom:0;}
.mjh-fj-essaylist a{display:grid; grid-template-columns:1fr auto; align-items:baseline; gap:.2rem 1rem; padding:.55rem .2rem; text-decoration:none; color:var(--fj-ink);}
.mjh-fj-essaycat{grid-column:1; font-family:'Special Elite',monospace; font-size:.6rem; letter-spacing:.12em; text-transform:uppercase; color:var(--fj-ox); display:block;}
.mjh-fj-essaytitle{grid-column:1; font-family:'IM Fell English',Georgia,serif; font-size:1.12rem; line-height:1.2;}
.mjh-fj-essaydate{grid-column:2; grid-row:1 / span 2; align-self:center; font-family:'Special Elite',monospace; font-size:.66rem; color:var(--fj-ink2); white-space:nowrap;}
.mjh-fj-essaylist a:hover .mjh-fj-essaytitle{text-decoration:underline; color:var(--fj-ox);}
.mjh-fj-writing-foot{margin-top:.7rem; text-align:right;}
.mjh-fj-writing-foot a{font-family:'Special Elite',monospace; font-size:.74rem; color:var(--fj-ox); text-decoration:none;}
.mjh-fj-writing-foot a:hover{text-decoration:underline;}

/* Essay cards within the field-journal pick up the parchment frame */
.mjh-journal-landing .mjh-sa-essay{background:linear-gradient(175deg,#f7eed7,#ece0c1); border-color:var(--fj-edge);}

/* Trails — hashtag cloud sized by frequency */
.mjh-fj-tagcloud{display:flex; flex-wrap:wrap; gap:.45rem .8rem; align-items:baseline; line-height:1.5;}
.mjh-fj-tag{text-decoration:none; color:var(--fj-ink); font-family:'IM Fell English',Georgia,serif; border-bottom:1px solid transparent;}
.mjh-fj-tag span{font-family:'Special Elite',monospace; font-size:.6em; color:var(--fj-ink2); margin-left:.15em; vertical-align:super;}
.mjh-fj-tag:hover{color:var(--fj-ox); border-bottom-color:var(--fj-ox);}
.mjh-fj-themecloud{gap:.5rem 1.1rem; margin-bottom:.3rem;}
.mjh-fj-theme{font-family:'IM Fell English SC',Georgia,serif; text-transform:capitalize; color:var(--fj-ox);}
.mjh-fj-theme:hover{color:var(--fj-ink); border-bottom-color:var(--fj-ink);}

@media (max-width:680px){
  .mjh-fj-title{font-size:2.1rem;}
  .mjh-fj-statgrid{grid-template-columns:repeat(2,1fr);}
  .mjh-fj-twocol{grid-template-columns:1fr;}
}

/* Link cards are narrow by nature — one per row wastes most of the line. The journal
   page flows entry lists two up (see body.mjh-journal-page rules above), but the home
   feed carries no journal-page body class, so it fell back to a single column and the
   cards stretched the full content width. Give it the same two-up treatment. */
@media (min-width:960px){
  .mjh-journal-landing.mjh-fl-home .mjh-sa-entries{column-count:2; column-gap:1.4rem;}
  .mjh-journal-landing.mjh-fl-home .mjh-sa-entries > .mjh-sa-item,
  .mjh-journal-landing.mjh-fl-home .mjh-sa-entries > .mjh-sa-essay{
    break-inside:avoid; -webkit-column-break-inside:avoid; margin-bottom:1.25rem;
  }
  /* Day dividers ("The Read", "The Watch") head the whole list, not one column. */
  .mjh-journal-landing .mjh-sa-entries > .mjh-day-group{column-span:all;}
}
/* No third column: the landing sits in a ~900px content well no matter how wide the
   viewport gets, so three up would squeeze every card to ~250px and wrap the CTAs. */

