/* pax-judaica.css — page styles for /pax-judaica.html.
   Linked after /styles.css by `{% set page_css = "pax-judaica" %}` in pipeline/templates/pax-judaica.html.j2.
   Shared tokens/components live in styles.css; keep only what is unique to this page here. */
main{max-width:1100px;margin:0 auto;padding:32px 20px 60px}

.hero{padding:36px 24px 28px;text-align:center;margin-bottom:32px;background:var(--surface);border-radius:14px;border:1px solid var(--border)}
.hero h1{font-size:var(--t-h1);font-weight:500;line-height:1.08;margin-bottom:10px;letter-spacing:-0.025em}
.hero .subtitle{font-size:1.05em;color:var(--text-muted);max-width:740px;margin:0 auto 14px;line-height:1.55}
.hero .quote{font-style:italic;color:var(--gold-ink);font-size:1.1em;border-left:3px solid var(--gold);padding-left:14px;display:inline-block;text-align:left;max-width:640px}
.hero .meta{font-size:0.85em;color:var(--text-muted);margin-top:14px}

.answer-box{margin:0 auto 28px;max-width:900px}

.section{max-width:900px;margin:0 auto}
.section-title{font-size:1.5em;font-weight:500;margin:36px 0 12px;color:var(--text)}
.section-subtitle{font-size:0.98em;color:var(--text-muted);margin-bottom:18px;line-height:1.65}

.stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px}
.stat-box{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;text-align:center}
.stat-box .num{font-size:2.2em;font-weight:500;line-height:1;margin-bottom:4px}
.stat-box .label{font-size:0.78em;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}

.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:0 0 36px}
.overview-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:18px 20px}
.overview-card h3{font-size:1em;margin-bottom:8px;color:var(--gold-ink)}
.overview-card p{color:var(--text);line-height:1.65;font-size:0.95em}

/* Phase nav */
.phase-nav{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 28px;padding:14px;background:var(--surface);border-radius:10px;border:1px solid var(--border)}
.phase-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);padding:6px 12px;border-radius:6px;font-size:0.85em;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.2s}
.phase-btn:hover{border-color:var(--accent)}
.phase-btn.active{background:var(--accent);color:var(--bg);border-color:var(--accent)}
.phase-era{font-size:0.85em;font-weight:500;opacity:0.78}

/* Timeline */
.timeline{position:relative;padding:20px 0}
.timeline-line{position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--border);transform:translateX(-1px)}
.phase-band{margin-bottom:36px;position:relative;z-index:2}
.phase-header{text-align:center;margin-bottom:18px;position:relative;z-index:3}
.phase-label{display:inline-block;background:var(--bg);padding:8px 18px;border:1px solid var(--border);border-radius:20px;font-weight:700;font-size:0.92em}
.phase-num{color:var(--accent);margin-right:6px}

.tl-node{position:relative;margin:18px 0;display:flex;align-items:flex-start;padding-right:50%}
.tl-node.right{flex-direction:row-reverse;padding-right:0;padding-left:50%}
.tl-dot{position:absolute;left:50%;top:12px;width:14px;height:14px;border-radius:50%;background:var(--text-muted);border:3px solid var(--bg);transform:translateX(-7px);z-index:3}
.tl-dot.confirmed{background:var(--green)}
.tl-dot.pending{background:var(--text-muted)}
.tl-dot.speculative{background:var(--purple)}
.tl-dot.structural{background:var(--gold)}

.tl-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px;width:calc(100% - 30px);margin-right:24px;cursor:pointer;transition:border-color 0.2s,transform 0.2s;position:relative;z-index:2}
.tl-node.right .tl-card{margin-right:0;margin-left:24px}
.tl-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.tl-card.confirmed{border-left:3px solid var(--green)}
.tl-card.pending{border-left:3px solid var(--text-muted)}
.tl-card.speculative{border-left:3px solid var(--purple)}
.tl-card.structural{border-left:3px solid var(--gold)}

.tl-card-phase{font-size:0.72em;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:4px}
.tl-card-title{font-weight:500;font-size:1em;margin-bottom:8px;line-height:1.35}
.tl-card-quote{font-style:italic;color:var(--text-muted);font-size:0.86em;line-height:1.55;margin-bottom:10px;padding-left:8px;border-left:2px solid var(--border)}
.tl-card-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.tl-card-details{display:none;font-size:0.92em;line-height:1.65;color:var(--text)}
.tl-card.expanded .tl-card-details{display:block}
.tl-card-toggle{font-size:0.78em;color:var(--accent);cursor:pointer;margin-top:6px;display:inline-block}
.tl-card-toggle:hover{text-decoration:underline}

.badge-partial{background:rgba(var(--yellow-rgb),0.15);color:var(--yellow)}
.badge-pending{background:rgba(var(--muted-rgb),0.15);color:var(--text-muted)}
.badge-speculative{background:rgba(var(--purple-rgb),0.15);color:var(--purple)}
.badge-timeline{background:rgba(var(--orange-rgb),0.15);color:var(--orange)}
.badge-source{background:rgba(var(--accent-rgb),0.1);color:var(--accent)}
.badge-structural{background:rgba(var(--gold-rgb),0.12);color:var(--gold-ink)}

.source-link{display:inline-flex;align-items:center;gap:3px;color:var(--accent);padding:1px 6px;border-radius:4px;transition:background 0.2s;font-size:0.78em}
.source-link svg{flex-shrink:0}

/* Now marker */
.now-marker{position:relative;text-align:center;margin:36px 0;z-index:4}

/* Sources panel */
.sources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin-top:24px}
.source-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:12px;transition:border-color 0.2s}
.source-card:hover{border-color:var(--gold)}
.source-thumb{width:80px;height:45px;border-radius:4px;background:var(--surface2);flex-shrink:0;overflow:hidden}
.source-thumb img{width:100%;height:100%;object-fit:cover}
.source-info{flex:1;min-width:0}
.source-info h4{font-size:0.88em;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.source-info p{font-size:0.78em;color:var(--text-muted)}

/* Responsive */
@media (max-width: 768px) {
  .hero h1{font-size:var(--t-h1);letter-spacing:-0.025em}
  .timeline-line{left:20px}
  .tl-node.left,.tl-node.right{flex-direction:row;padding-left:50px;padding-right:0}
  .tl-node .tl-card,.tl-node.right .tl-card{margin-left:0;margin-right:0}
  .tl-dot{left:20px}
  .stats-bar{grid-template-columns:repeat(2,1fr)}
  .overview-grid{grid-template-columns:1fr}
}
.stat-box .num.n-gold{color:var(--gold-ink)}
.stat-box .num.n-green{color:var(--green)}
.stat-box .num.n-muted{color:var(--text-muted)}
.stat-box .num.n-purple{color:var(--purple)}
.tl-card-details .evt-details{margin-bottom:8px}
.evt-sources{display:flex;gap:4px;flex-wrap:wrap;align-items:center}
.evt-src-note{color:var(--text-muted);font-size:0.78em}
.section-title.spaced{margin-top:48px}
