/* ==========================================================================
   Single Style 8 — Signal
   Lora text, sans headings, mono details, share rail in the left margin.
   ========================================================================== */
.eps-8.eps-fonts { --eps-title-font: 'Lora', Georgia, serif; --eps-body-font: 'Lora', Georgia, serif; --eps-h-font: 'Inter', var(--font-body, sans-serif); --eps-ui: 'Inter', var(--font-body, sans-serif); }
.eps-8 { --eps-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace; --eps-title-size: clamp(2.1rem, 1.25rem + 2.6vw, 3.25rem); --eps-title-weight: 600; --eps-body-size: 1.2rem; --eps-link-line: var(--eps-accent-2); }

.eps-8 .eps-cat {
    padding: 7px 11px; border-radius: 4px;
    background: color-mix(in srgb, var(--eps-accent) 12%, transparent); color: var(--eps-accent-text, var(--eps-accent)) !important;
    font-family: var(--eps-title-font); font-weight: 600; letter-spacing: 1px;
}
.eps-8 .eps-title { letter-spacing: -1px; line-height: 1.1; }
.eps-8 .eps-meta { border-bottom: 0; padding-bottom: 0; }
.eps-8 .eps-meta__line { text-transform: none; font-family: var(--eps-mono); font-size: 12.5px; letter-spacing: 0; }
.eps-8 .eps-meta__by { font-family: var(--eps-ui); font-size: 14px; text-transform: uppercase; }
.eps-8 .eps-meta__by a { text-decoration: none; }
.eps-8 .eps-meta__line > * + * { border-left: 0; }
.eps-8 .eps-meta__save { font-family: var(--eps-ui); text-transform: uppercase; }
.eps-8 .eps-meta__date { font-family: var(--eps-mono); text-transform: none; }
.eps-8 .eps-meta__share .eps-sb { width: 28px; height: 28px; background: transparent; color: var(--eps-fg); }
.eps-8 .eps-meta__share-label { text-transform: none; letter-spacing: 0; font-weight: 500; font-size: 13px; }
.eps-8 .eps-meta__share-label i { display: inline-block; }
.eps-8 .eps-figure figcaption { font-family: var(--eps-title-font); }

/* Share rail in the page margin */
.eps-8 .eps-article.has-rail { display: block; position: relative; }
.eps-8 .eps-rail { position: absolute; top: 0; bottom: 0; left: -64px; width: 36px; }
.eps-8 .eps-rail__label { writing-mode: vertical-rl; transform: rotate(180deg); margin-bottom: 14px; font-size: 10px; letter-spacing: 1.5px; }
.eps-8 .eps-rail .eps-sb { width: 30px; height: 30px; background: transparent; color: var(--eps-fg); font-size: 17px; }
.eps-8 .eps-rail .eps-sb:hover { color: var(--eps-accent-text, var(--eps-accent)); background: transparent; }
@media (max-width: 1440px) {
    .eps-8 .eps-article.has-rail { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 28px; }
    .eps-8 .eps-rail { position: relative; left: auto; }
}
@media (max-width: 768px) { .eps-8 .eps-article.has-rail { display: block; } }

.eps-8 .dropcap-wrapper > p:first-of-type::first-letter { font-family: var(--eps-ui); font-weight: 900; color: var(--eps-accent-text, var(--eps-accent)); font-size: 5rem; }
.eps-8 .eps-content h2 { font-weight: 800; letter-spacing: -.8px; }
.eps-8 .eps-content blockquote { padding: 0; text-align: left; }
.eps-8 .eps-content blockquote::before { display: none; }
.eps-8 .eps-content blockquote p { font: 800 1.75rem/1.3 var(--eps-h-font); letter-spacing: -.5px; }
.eps-8 .eps-content blockquote cite { font-family: var(--eps-mono); font-size: 13.5px; }
.eps-8 .ep-toc-title i::before { content: '\ef32'; } /* ri-menu-2-line */
.eps-8 .ep-toc-title i { color: var(--eps-fg); }

.eps-8 .eps-sharebar { border-top: 1px solid var(--eps-line); }
.eps-8 .eps-sharebar .eps-sb { background: transparent; color: var(--eps-fg); width: 32px; }
.eps-8 .eps-sharebar .eps-sb.has-text { width: 32px; padding: 0; }
.eps-8 .eps-sharebar .eps-sb__txt { display: none; }
.eps-8 .eps-sharebar .eps-sb:hover { color: var(--eps-accent-text, var(--eps-accent)); opacity: 1; }
.eps-8 .eps-author__role { font-family: var(--eps-mono); text-transform: none; letter-spacing: 0; }
.eps-8 .eps-author__follow { font-family: var(--eps-mono); text-transform: none; letter-spacing: 0; }

/* Sidebar: dot headings */
.eps-8 .ep-sidebar .ep-section-heading .title-text { display: inline-flex; align-items: center; gap: 10px; font: 800 15px/1 var(--eps-ui); letter-spacing: 1px; text-transform: uppercase; }
.eps-8 .ep-sidebar .ep-section-heading .title-text::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--eps-accent); }
.eps-8 .ep-sidebar .widget-ad .ep-section-heading .title-text { display: inline; }
.eps-8 .ep-sidebar .widget-ad .ep-section-heading .title-text::before { width: auto; height: auto; border-radius: 0; background: none; }
.eps-8 .ep-latest-badge { background: color-mix(in srgb, var(--eps-accent) 12%, transparent); color: var(--eps-accent-text, var(--eps-accent)); }
.eps-8 .ep-latest-item { padding-bottom: 20px; border-bottom: 1px solid var(--eps-line); }
