:root {
    --bg: #1a1520;
    --bg-alt: #231e2e;
    --text: #e8e0d4;
    --text-muted: #9b8e7e;
    --accent: #c4a265;
    --accent-light: #8b6daf;
    --border: #3d3548;
    --header-bg: #0f0c14;
    --header-text: #e8e0d4;
    --success: #4a9e4a;
    --warning: #c4a265;
    --badge-draft: #3d3020;
    --badge-reviewed: #203d20;
    --badge-verified: #20303d;
    --badge-draft-text: #c4a265;
    --badge-reviewed-text: #7ec47e;
    --badge-verified-text: #7eb4c4;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
    font-family: Georgia, 'Times New Roman', serif;
    background: var(--bg);
    color: var(--text);
    line-height: 1.7;
}

header {
    background: var(--header-bg);
    color: var(--header-text);
    padding: 1rem 2rem;
    border-bottom: 1px solid var(--border);
}
.header-inner { max-width: 1200px; margin: 0 auto; }
.site-title a { color: var(--accent); text-decoration: none; font-size: 1.5rem; }
.site-nav { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 0.5rem; }
.site-nav a {
    color: var(--accent-light);
    text-decoration: none;
    padding: 0.25rem 0.75rem;
    border-radius: 4px;
    font-family: 'Segoe UI', system-ui, sans-serif;
    font-size: 0.9rem;
}
.site-nav a:hover { background: rgba(255,255,255,0.08); }
.site-nav a.active { background: var(--accent); color: var(--header-bg); }

main { max-width: 1100px; margin: 2rem auto; padding: 0 2rem; }

footer {
    text-align: center; padding: 2rem; color: var(--text-muted);
    font-size: 0.85rem; border-top: 1px solid var(--border); margin-top: 3rem;
}
footer a { color: var(--accent-light); }

/* Hero */
.hero { text-align: center; margin-bottom: 3rem; padding-top: 1rem; }
.hero-symbol { font-size: 3rem; color: var(--accent); margin-bottom: 0.5rem; }
.hero h2 { font-size: 2.2rem; color: var(--accent); }
.subtitle { font-size: 1.1rem; color: var(--text-muted); margin-top: 0.5rem; }
.stats-bar { display: flex; justify-content: center; gap: 2rem; margin-top: 1.5rem; flex-wrap: wrap; }
.stat { text-align: center; }
.stat-num { display: block; font-size: 2rem; font-weight: bold; color: var(--accent); }
.stat-label { font-size: 0.85rem; color: var(--text-muted); }

/* Gallery Grid */
.gallery {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.5rem; margin-top: 1.5rem;
}
.card {
    background: var(--bg-alt); border: 1px solid var(--border);
    border-radius: 8px; overflow: hidden;
    transition: transform 0.2s, box-shadow 0.2s;
}
.card:hover { transform: translateY(-2px); box-shadow: 0 4px 16px rgba(0,0,0,0.3); }
.card a { text-decoration: none; color: inherit; display: block; padding: 1.25rem; }
.card h3 { color: var(--accent); margin-bottom: 0.5rem; }

/* Badges */
.badge {
    display: inline-block; padding: 0.15rem 0.5rem; border-radius: 3px;
    font-size: 0.75rem; font-family: 'Segoe UI', system-ui, sans-serif;
    font-weight: 600; text-transform: uppercase;
    background: var(--bg-alt); color: var(--text-muted); margin-right: 0.25rem;
}
.badge-draft { background: var(--badge-draft); color: var(--badge-draft-text); }
.badge-reviewed { background: var(--badge-reviewed); color: var(--badge-reviewed-text); }
.badge-verified { background: var(--badge-verified); color: var(--badge-verified-text); }
.badge-method { background: var(--bg-alt); color: var(--text-muted); }
.provenance { margin: 0.75rem 0; }

/* Dictionary */
.dict-category { margin-bottom: 2.5rem; }
.dict-category h3 {
    color: var(--accent); border-bottom: 2px solid var(--accent-light);
    padding-bottom: 0.5rem; margin-bottom: 0.5rem;
}
.dict-entry { padding: 0.75rem 0; border-bottom: 1px solid var(--border); }
.dict-entry h4 a { color: var(--accent); text-decoration: none; }
.dict-entry h4 a:hover { text-decoration: underline; }
.definition-short {
    background: var(--bg-alt); padding: 1rem;
    border-left: 4px solid var(--accent); margin: 1rem 0; font-style: italic;
}
.definition-long { margin: 1rem 0; line-height: 1.8; }
.significance { margin: 1.5rem 0; }
.significance h3 { color: var(--accent-light); margin-bottom: 0.5rem; }
.related-terms { margin-top: 1.5rem; }
.related-terms h3 { color: var(--accent-light); margin-bottom: 0.5rem; }
.related-terms ul { list-style: none; padding: 0; }
.related-terms li { padding: 0.3rem 0; }
.related-terms a { color: var(--accent); }

/* Timeline */
.timeline { margin-top: 1.5rem; }
.timeline-era { margin-bottom: 2.5rem; }
.era-heading {
    color: var(--accent-light); font-size: 1.3rem;
    border-bottom: 1px solid var(--border); padding-bottom: 0.5rem; margin-bottom: 1rem;
}
.timeline-event {
    display: flex; gap: 1.5rem; padding: 1rem 0;
    border-bottom: 1px solid var(--border);
}
.timeline-year {
    min-width: 100px; font-weight: bold; color: var(--accent);
    font-family: 'Segoe UI', system-ui, sans-serif;
}
.timeline-content h4 { color: var(--text); margin-bottom: 0.3rem; }
.timeline-content p { color: var(--text-muted); }

/* Bibliography */
.bib-entry { padding: 0.75rem 0; border-bottom: 1px solid var(--border); }
.citation { margin-top: 0.25rem; }
.citation em { color: var(--accent); }

/* About */
.about-content { max-width: 800px; }
.about-content h3 { color: var(--accent); margin-top: 2rem; margin-bottom: 0.5rem; }
.about-content p { margin-bottom: 1rem; }
.about-content ul { margin-left: 1.5rem; margin-bottom: 1rem; }
.about-content li { margin-bottom: 0.5rem; }
.stats-table { border-collapse: collapse; margin: 1rem 0; width: 100%; }
.stats-table th, .stats-table td {
    padding: 0.5rem 1rem; border: 1px solid var(--border); text-align: left;
}
.stats-table th { background: var(--bg-alt); color: var(--accent); }

/* Page intro */
.page-intro { color: var(--text-muted); margin-bottom: 1.5rem; }
h2 { color: var(--accent); margin-bottom: 0.5rem; }

/* Figures */
.figure-card { padding: 0.75rem 0; border-bottom: 1px solid var(--border); }
.figure-card h4 a { color: var(--accent); text-decoration: none; }
.figure-card h4 a:hover { text-decoration: underline; }
.figure-detail .card-meta { margin: 0.5rem 0 1rem; }
.figure-identity { margin: 1.5rem 0; padding: 1rem; background: var(--bg-alt); border-radius: 8px; }
.figure-identity p { margin: 0.3rem 0; }
.figure-bio { margin: 2rem 0; }
.figure-bio h3 { color: var(--accent); margin-bottom: 0.75rem; }
.figure-bio p { margin-bottom: 1rem; }
.figure-works { margin: 2rem 0; }
.figure-works h3 { color: var(--accent-light); margin-bottom: 0.5rem; }
.figure-works ul { list-style: none; padding: 0; }
.figure-works li { padding: 0.4rem 0; border-bottom: 1px solid var(--border); }
.figure-influences { margin: 2rem 0; }
.figure-influences h3 { color: var(--accent); margin-bottom: 0.75rem; }
.figure-influences h4 { color: var(--accent-light); margin: 0.75rem 0 0.3rem; }
.figure-influences ul { list-style: none; padding: 0; }
.figure-influences li { padding: 0.3rem 0; }
.figure-influences a { color: var(--accent); }
.figure-events { margin: 2rem 0; }
.figure-events h3 { color: var(--accent); margin-bottom: 0.75rem; }
.figure-terms { margin: 2rem 0; }
.figure-terms h3 { color: var(--accent-light); margin-bottom: 0.5rem; }
.term-tags { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.term-tags a { text-decoration: none; color: var(--accent); background: var(--bg-alt); border: 1px solid var(--border); }
.term-tags a:hover { border-color: var(--accent); }

/* Cards */
.card-detail .card-meta { margin: 0.5rem 0 1.5rem; }
.correspondences { margin: 1.5rem 0; }
.correspondences h3 { color: var(--accent-light); margin-bottom: 0.5rem; }
.correspondences ul { list-style: none; padding: 0; columns: 2; }
.correspondences li { padding: 0.2rem 0; }
.card-meanings { margin: 2rem 0; }
.card-meanings h3 { color: var(--accent); margin-bottom: 1rem; }
.tradition-meanings { margin-bottom: 1.5rem; padding-bottom: 1rem; border-bottom: 1px solid var(--border); }
.tradition-meanings h4 { color: var(--accent-light); margin-bottom: 0.5rem; }
.meaning-entry { margin: 0.5rem 0; }
.keywords { color: var(--text-muted); font-size: 0.95rem; margin: 0.3rem 0; }
.number-phil { margin: 2rem 0; padding: 1rem; background: var(--bg-alt); border-radius: 8px; border-left: 4px solid var(--accent-light); }
.number-phil h3 { color: var(--accent); margin-bottom: 0.5rem; }
.text-muted { color: var(--text-muted); font-size: 0.9rem; }

/* Readings */
.reading-position { margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--border); }
.reading-position h3 { color: var(--accent); }
.reading-position h3 a { color: var(--accent); text-decoration: none; }
.reading-position h3 a:hover { text-decoration: underline; }
.method-block { margin: 1rem 0; padding: 0.75rem; background: var(--bg-alt); border-radius: 4px; border-left: 3px solid var(--accent-light); }
.method-block h4 { color: var(--accent-light); margin-bottom: 0.3rem; font-size: 0.95rem; }
.reading-analytics { margin: 2rem 0; }
.analytics-grid { display: flex; gap: 2rem; margin: 1rem 0; }

/* Methods */
.method-entry {
    margin-bottom: 2.5rem; padding-bottom: 2rem;
    border-bottom: 1px solid var(--border);
}
.method-entry h3 { color: var(--accent); margin-bottom: 0.5rem; }
.method-desc { margin: 1rem 0; }
.method-steps { margin: 1rem 0 1rem 1.5rem; }
.method-steps li { margin-bottom: 0.5rem; }
.method-example {
    margin-top: 1rem; padding: 1rem; background: var(--bg-alt);
    border-radius: 4px; border-left: 4px solid var(--accent-light);
    font-style: italic;
}

/* Responsive */
@media (max-width: 768px) {
    .gallery { grid-template-columns: 1fr; }
    .stats-bar { gap: 1rem; }
    .site-nav { gap: 0.25rem; }
    .timeline-event { flex-direction: column; gap: 0.5rem; }
    .correspondences ul { columns: 1; }
}
