/* ApexJournals — journal-spine design system.
   Every journal injects --jp (primary) and --js (secondary) from its record. */
:root { --jp: #1F3A5F; --js: #C89B3C; --ink: #1c1a17; --paper: #fdfcfa; }

body { background: var(--paper); color: var(--ink); font-family: "Source Serif 4", Georgia, serif; }

.jr-masthead { border-top: 6px solid var(--jp); border-bottom: 1px solid #e5e1da; background: #fff; }
.jr-title { font-family: Georgia, serif; font-size: 1.6rem; font-weight: 700; color: var(--ink); text-decoration: none; letter-spacing: -0.01em; }
.jr-issn { font-family: ui-monospace, monospace; font-size: 0.72rem; color: #8a8378; letter-spacing: 0.08em; }
.jr-nav a { color: var(--ink); text-decoration: none; margin-left: 1.1rem; font-family: system-ui, sans-serif; font-size: 0.9rem; }
.jr-nav a:hover { color: var(--jp); }
.jr-nav .jr-submit { background: var(--jp); color: #fff; padding: 0.4rem 0.9rem; border-radius: 2px; }

.jr-eyebrow { font-family: system-ui, sans-serif; font-size: 0.72rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--jp); margin-bottom: 0.4rem; }
.jr-h1 { font-family: Georgia, serif; font-weight: 700; letter-spacing: -0.015em; margin-bottom: 1rem; }

.jr-article-row { padding: 1.1rem 0 1.1rem 1.1rem; border-left: 3px solid var(--jp); border-bottom: 1px solid #eee9e1; }
.jr-article-title { font-family: Georgia, serif; font-size: 1.12rem; font-weight: 600; color: var(--ink); text-decoration: none; }
.jr-article-title:hover { color: var(--jp); }
.jr-byline { font-family: system-ui, sans-serif; font-size: 0.86rem; color: #5c564d; margin-top: 0.15rem; }
.jr-meta { font-family: ui-monospace, monospace; font-size: 0.74rem; color: #8a8378; margin-top: 0.25rem; }
.jr-meta a { color: var(--jp); }

/* Signature element: journal-spine cards — a vertical spine strip with
   rotated ISSN/year, like shelved physical journals. */
.jr-spine-card { display: flex !important; border: 1px solid #e5e1da; background: #fff; color: var(--ink); min-height: 108px; transition: transform 0.12s ease, box-shadow 0.12s ease; }
.jr-spine-card:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(28,26,23,0.08); color: var(--ink); }
.jr-spine { width: 34px; background: var(--jp); display: flex; align-items: center; justify-content: center; flex: none; }
.jr-spine span { writing-mode: vertical-rl; transform: rotate(180deg); color: #fff; font-family: ui-monospace, monospace; font-size: 0.66rem; letter-spacing: 0.14em; }
.jr-spine-body { padding: 0.9rem 1rem; }

.jr-widget { border: 1px solid #e5e1da; background: #fff; padding: 1rem 1.1rem; margin-bottom: 1.25rem; }
.jr-footer { border-top: 1px solid #e5e1da; background: #fff; color: #8a8378; font-family: system-ui, sans-serif; }
.jr-prose { max-width: 46rem; line-height: 1.7; }

@media (prefers-reduced-motion: reduce) { .jr-spine-card { transition: none; } }
