/* ============================================================
   FIDEOGRAPH — Today in Church History
   Front-end styles. All classes prefixed fgth-.
   No theme dependency.
   ============================================================ */

:root {
    --fgth-gold:     #C9A84C;
    --fgth-ink:      #1c1810;
    --fgth-ink2:     #2e2a1e;
    --fgth-ink3:     #48432e;
    --fgth-parch:    #faf6ed;
    --fgth-parch2:   #f4edd8;
    --fgth-border:   #ddd5b8;
    --fgth-serif:    'Source Serif 4', Georgia, serif;
    --fgth-display:  'Playfair Display', Georgia, serif;
    --fgth-garamond: 'EB Garamond', Georgia, serif;
}

/* ── Shortcode wrap ───────────────────────────────────── */

.fgth-wrap {
    background: var(--fgth-parch);
    padding: 4px 0;
}

/* ── Dateline ─────────────────────────────────────────── */

.fgth-dateline {
    display: flex;
    align-items: baseline;
    gap: 16px;
    padding: 20px 0 16px;
    border-bottom: 1px solid var(--fgth-border);
    margin-bottom: 20px;
}

.fgth-dateline__label {
    font-size: 10px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--fgth-gold);
    font-family: var(--fgth-serif);
}

.fgth-dateline__date {
    font-family: var(--fgth-display);
    font-size: 18px;
    font-weight: 700;
    color: var(--fgth-ink);
}

/* ── Events list ──────────────────────────────────────── */

.fgth-events {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* ── Event card (shortcode) ───────────────────────────── */

.fgth-event {
    background: #fff;
    border: 1px solid var(--fgth-border);
    border-radius: 8px;
    border-left: 3px solid var(--fgth-gold);
    padding: 16px 20px;
    transition: box-shadow .2s;
}

.fgth-event:hover {
    box-shadow: 0 4px 16px rgba(28, 24, 16, .08);
}

/* Category left-border colours */
.fgth-event--feast      { border-left-color: #C9A84C; }
.fgth-event--council    { border-left-color: #185FA5; }
.fgth-event--martyr     { border-left-color: #8B3000; }
.fgth-event--event      { border-left-color: #1D8A6A; }
.fgth-event--papal      { border-left-color: #5A4AAA; }
.fgth-event--definition { border-left-color: #B8922A; }
.fgth-event--conversion { border-left-color: #1A6A38; }

/* ── Badge row ────────────────────────────────────────── */

.fgth-event__badge {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.fgth-badge {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 99px;
    font-family: var(--fgth-serif);
}

.fgth-badge--feast      { background: rgba(201,168,76,.12); color: #8B6A1A; }
.fgth-badge--council    { background: rgba(24,95,165,.1);   color: #185FA5; }
.fgth-badge--martyr     { background: rgba(139,48,0,.1);    color: #8B3000; }
.fgth-badge--event      { background: rgba(29,138,106,.1);  color: #1D8A6A; }
.fgth-badge--papal      { background: rgba(90,74,170,.1);   color: #5A4AAA; }
.fgth-badge--definition { background: rgba(184,146,42,.12); color: #8B6A1A; }
.fgth-badge--conversion { background: rgba(26,106,56,.1);   color: #1A6A38; }

.fgth-event__year {
    font-size: 11px;
    letter-spacing: .08em;
    color: #8B6A1A;
    font-family: var(--fgth-serif);
}

/* ── Event body ───────────────────────────────────────── */

.fgth-event__title {
    font-family: var(--fgth-display);
    font-size: 17px;
    font-weight: 700;
    color: var(--fgth-ink);
    line-height: 1.3;
    margin-bottom: 8px;
}

.fgth-event__desc {
    font-family: var(--fgth-garamond);
    font-size: 16px;
    line-height: 1.75;
    color: var(--fgth-ink2);
    margin-bottom: 10px;
}

.fgth-event__link {
    font-size: 12px;
    color: var(--fgth-gold);
    text-decoration: none;
    letter-spacing: .04em;
    font-family: var(--fgth-serif);
}

.fgth-event__link:hover {
    color: #8B3000;
}

/* ── Empty state ──────────────────────────────────────── */

.fgth-empty {
    padding: 40px;
    text-align: center;
    color: #8B6A1A;
    font-style: italic;
    font-family: var(--fgth-garamond);
}

/* ── Widget list ──────────────────────────────────────── */

.fgth-widget-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.fgth-widget-list li {
    padding: 6px 0;
    border-bottom: 1px solid var(--fgth-border);
    font-size: 13px;
    color: var(--fgth-ink2);
    font-family: var(--fgth-serif);
}

.fgth-widget-list li:last-child {
    border-bottom: none;
}

.fgth-widget-list li strong {
    color: var(--fgth-ink);
}

.fgth-widget-list li span {
    color: #8B6A1A;
    font-size: 11px;
}

/* ── Admin styles ─────────────────────────────────────── */

.fgth-admin { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
.fgth-admin-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
.fgth-admin-header h1 { font-size:22px; font-weight:700; color:#1c1810; margin:0; }
.fgth-admin-header h1 em { font-style:normal; color:#8B6A1A; font-size:14px; font-weight:400; margin-left:10px; }
.fgth-import-btns { display:flex; gap:8px; flex-wrap:wrap; }
.fgth-stats-row { display:flex; gap:20px; flex-wrap:wrap; margin-bottom:24px; padding:16px 20px; background:#faf6ed; border-radius:8px; border:1px solid #ddd5b8; }
.fgth-stat { font-size:13px; color:#48432e; }
.fgth-stat strong { display:block; font-size:20px; font-weight:700; color:#1c1810; line-height:1; }
.fgth-notice { padding:10px 16px; border-radius:6px; margin-bottom:16px; font-size:13px; }
.fgth-notice--success { background:#e6f4ea; border:1px solid #b7dfbc; color:#1a5c2a; }
.fgth-notice--error { background:#fdecea; border:1px solid #f5c6cb; color:#7a1c1c; }
.fgth-admin-layout { display:grid; grid-template-columns:380px 1fr; gap:28px; align-items:start; }
@media(max-width:960px){ .fgth-admin-layout { grid-template-columns:1fr; } }
.fgth-form-card { background:#fff; border:1px solid #ddd5b8; border-radius:10px; padding:24px; }
.fgth-form-card h2 { font-size:15px; font-weight:700; color:#1c1810; margin:0 0 18px; padding-bottom:12px; border-bottom:1px solid #eee; }
.fgth-field { margin-bottom:14px; }
.fgth-field label { display:block; font-size:12px; font-weight:600; color:#48432e; margin-bottom:4px; text-transform:uppercase; letter-spacing:.06em; }
.fgth-field input,.fgth-field select,.fgth-field textarea { width:100%; padding:8px 10px; border:1px solid #ddd5b8; border-radius:6px; font-size:13px; color:#1c1810; background:#fff; }
.fgth-field textarea { resize:vertical; min-height:80px; }
.fgth-field-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.fgth-btn { display:inline-block; padding:8px 18px; border-radius:6px; font-size:13px; font-weight:600; cursor:pointer; border:none; transition:opacity .15s; }
.fgth-btn--primary { background:#C9A84C; color:#fff; }
.fgth-btn--primary:hover { opacity:.85; }
.fgth-btn--secondary { background:#f0ece0; color:#48432e; margin-left:8px; text-decoration:none; }
.fgth-btn--import { background:#fff; border:1px solid #ddd5b8; color:#48432e; font-size:12px; padding:6px 14px; }
.fgth-btn--import:hover { border-color:#C9A84C; color:#1c1810; }
.fgth-table-card { background:#fff; border:1px solid #ddd5b8; border-radius:10px; overflow:hidden; }
.fgth-table-toolbar { display:flex; align-items:center; justify-content:space-between; padding:14px 20px; border-bottom:1px solid #eee; flex-wrap:wrap; gap:8px; }
.fgth-table-toolbar select { padding:6px 10px; border:1px solid #ddd5b8; border-radius:6px; font-size:13px; }
.fgth-table-count { font-size:12px; color:#8B6A1A; }
table.fgth-table { width:100%; border-collapse:collapse; }
table.fgth-table th { font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:#8B6A1A; padding:10px 16px; text-align:left; background:#faf6ed; border-bottom:1px solid #eee; }
table.fgth-table td { padding:10px 16px; font-size:13px; color:#1c1810; border-bottom:1px solid #f0ece0; vertical-align:middle; }
table.fgth-table tr:last-child td { border-bottom:none; }
table.fgth-table tr:hover td { background:#faf6ed; }
.fgth-cat-pill { display:inline-block; font-size:10px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:2px 8px; border-radius:99px; }
.fgth-actions a { font-size:12px; color:#C9A84C; text-decoration:none; margin-right:10px; }
.fgth-actions a:hover { color:#8B3000; }
.fgth-actions a.fgth-del { color:#8B3000; }
.fgth-pagination { display:flex; gap:8px; padding:14px 20px; justify-content:flex-end; border-top:1px solid #eee; }
.fgth-pagination a,.fgth-pagination span { font-size:12px; padding:4px 10px; border-radius:4px; border:1px solid #ddd5b8; text-decoration:none; color:#48432e; }
.fgth-pagination a:hover { border-color:#C9A84C; color:#1c1810; }
.fgth-pagination .current { background:#C9A84C; color:#fff; border-color:#C9A84C; }
.fgth-json-card { background:#fff; border:1px solid #ddd5b8; border-radius:10px; padding:24px; margin-top:24px; }
.fgth-json-card h2 { font-size:15px; font-weight:700; color:#1c1810; margin:0 0 12px; }
.fgth-json-card textarea { width:100%; height:120px; font-size:12px; font-family:monospace; padding:8px; border:1px solid #ddd5b8; border-radius:6px; resize:vertical; }
.fgth-json-card p { font-size:12px; color:#8B6A1A; margin-bottom:10px; }
