/* Phila.FYI — Black background. Green accents. Emojis. That's it.
   Matches the landing page aesthetic exactly. */

:root {
    --green: #00843D;
    --black: #0D0D0D;
    --white: rgba(255,255,255,0.93);
    --dim: rgba(255,255,255,0.52);
    --dimmer: rgba(255,255,255,0.28);
    --ghost-accent-color: #00843D !important;
}

body {
    --ghost-accent-color: #00843D !important;
    background: var(--black) !important;
    color: var(--white) !important;
}

/* ── Kill ALL default Ghost colors ── */
.gh-outer, .site-main, .gh-canvas, .post-feed {
    background: var(--black) !important;
}

/* ── Tight letter-spacing on logos, titles, H1 ── */
.gh-head-logo, .site-title, h1, .article-title, .post-card-title {
    letter-spacing: -0.05em !important;
    font-family: 'Libre Baskerville', Georgia, serif !important;
    font-weight: 700 !important;
}

/* ── Navigation — black bar, green accent ── */
.gh-head {
    background: var(--black) !important;
    border-bottom: none !important;
    position: relative;
}

.gh-head::after {
    content: '';
    display: block;
    height: 6px;
    background: var(--green);
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.gh-head a, .gh-head-logo, .gh-head .site-title {
    color: var(--white) !important;
}

.gh-head a:hover { color: var(--green) !important; }

.gh-head-logo, .gh-head .site-title {
    font-size: 28px !important;
    letter-spacing: -0.05em !important;
}

/* ── Hero / Site header — BLACK, no cover image nonsense ── */
.site-header, .gh-page-head, .site-header-content {
    background: var(--black) !important;
    color: var(--white) !important;
    padding: 4vw 0 !important;
}

.site-header-cover { display: none !important; }

.site-header-content .site-title {
    color: var(--white) !important;
    font-size: clamp(48px, 8vw, 80px) !important;
    letter-spacing: -0.05em !important;
}

.site-header-content .site-description {
    color: var(--dim) !important;
    font-family: 'Inter', system-ui, sans-serif !important;
}

/* ── Post cards — dark cards ── */
.post-card {
    background: transparent !important;
    border-bottom: 1px solid rgba(0,132,61,0.25) !important;
}

.post-card-title {
    color: var(--white) !important;
    letter-spacing: -0.05em !important;
}

.post-card-excerpt { color: var(--dim) !important; }
.post-card-meta, .post-card-meta * { color: var(--dimmer) !important; }

.post-card-tags .post-card-primary-tag {
    color: var(--green) !important;
}

/* ── Article pages — black bg, white text ── */
.article, .gh-article, article {
    background: var(--black) !important;
}

.article-title, .gh-article-title {
    color: var(--white) !important;
    letter-spacing: -0.05em !important;
}

.gh-content, .gh-content p, .gh-content li {
    color: var(--dim) !important;
    font-family: 'Inter', system-ui, sans-serif !important;
}

.gh-content h2, .gh-content h3 {
    color: var(--white) !important;
    font-family: 'Libre Baskerville', Georgia, serif !important;
}

.gh-content a { color: var(--green) !important; }
.gh-content a:hover { text-decoration: underline; }

/* ── Buttons — green, square ── */
.gh-btn, .gh-btn-accent, .gh-portal-btn, [data-portal] {
    background: var(--green) !important;
    border-color: var(--green) !important;
    border-radius: 2px !important;
    color: #fff !important;
}

/* ── Subscribe CTA ── */
.gh-subscribe { background: var(--black) !important; }
.gh-subscribe-input {
    background: rgba(255,255,255,0.07) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    color: var(--white) !important;
}
.gh-subscribe-input:focus {
    border-color: var(--green) !important;
    box-shadow: 0 0 0 3px rgba(0,132,61,0.15) !important;
}

/* ── Footer — black, green divider ── */
.gh-foot {
    background: var(--black) !important;
    color: var(--dim) !important;
    border-top: 6px solid var(--green) !important;
}

.gh-foot a { color: var(--white) !important; }
.gh-foot a:hover { color: var(--green) !important; }

/* ── Author cards ── */
.author-card, .gh-author-card {
    border-top: 3px solid var(--green);
    background: transparent !important;
}

.author-card *, .gh-author-card * { color: var(--dim) !important; }

/* ── Portal overlay subscribe button color fix ── */
.gh-head-button {
    background: var(--green) !important;
    color: #fff !important;
}

/* ── Selection ── */
::selection {
    background: rgba(0,132,61,0.3);
    color: var(--white);
}

/* ── Responsive ── */
@media (max-width: 767px) {
    .gh-head-logo, .gh-head .site-title { font-size: 22px !important; }
    .site-header-content .site-title { font-size: 40px !important; }
}

/* ── Nuke any remaining default Ghost gradients/colors ── */
.has-cover .site-header-content::before { display: none !important; }
.site-header-content::before { display: none !important; }

/* ── Page content text visibility on dark bg ── */
.page-template .gh-content,
.page-template .gh-content p,
.page-template .gh-content li,
.page-template .gh-content h2,
.page-template .gh-content h3,
.page-template .article-title,
.page-template .gh-article-title {
    color: var(--white) !important;
}

.page-template .gh-content h2,
.page-template .gh-content h3 {
    color: var(--white) !important;
    margin-top: 1.5em;
}

/* ── Footer nav styling ── */
.gh-foot-menu a {
    color: var(--dim) !important;
    font-size: 14px;
}

.gh-foot-menu a:hover {
    color: var(--green) !important;
}

/* ── Top nav link styling ── */
.gh-head-menu .nav a {
    color: var(--dim) !important;
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

.gh-head-menu .nav a:hover {
    color: var(--green) !important;
}

/* ── Subscribe button in header ── */
.gh-head-button {
    background: var(--green) !important;
    color: #fff !important;
    border-radius: 2px !important;
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

/* ── Subscribe/Sign in button -- black bg, white text, uppercase, no green bg ── */
.gh-head-button,
.gh-head-members .gh-head-link,
a[data-portal="signin"],
a[data-portal="signup"] {
    background: transparent !important;
    color: var(--white) !important;
    border-radius: 2px !important;
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

.gh-head-button:hover,
a[data-portal="signin"]:hover,
a[data-portal="signup"]:hover {
    border-color: var(--green) !important;
    color: var(--green) !important;
    background: transparent !important;
}

/* ── Single post author text visibility ── */
.post-template .author-name,
.post-template .author-name a,
.post-template .article-byline-content a,
.post-template .article-byline-content,
.post-template .article-byline-meta h4,
.post-template .article-byline-meta h4 a,
.post-template .article-byline-meta .author-name,
.article-byline a,
.article-byline-content a,
.article-byline-content,
.gh-article-meta,
.gh-article-meta a,
.gh-article-author-name,
.gh-article-author-name a {
    color: rgba(255,255,255,0.7) !important;
}

.post-template .article-byline-meta .bull,
.post-template .article-byline-meta time,
.gh-article-meta time,
.gh-article-meta .bull {
    color: rgba(255,255,255,0.4) !important;
}

/* ── Footer green line on top ── */
.gh-foot {
    border-top: 6px solid #00843D !important;
}
