/* Z9 Theory — Dark Academic Theme */
/* Professional, scientific, gold on dark navy */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

*{margin:0;padding:0;box-sizing:border-box}

:root{
  /* Dark palette — matching papers page */
  --bg:#0d1117;
  --surface:#161b22;
  --surface2:#1c2333;
  --border:#30363d;
  --border-light:#21262d;

  /* Gold — warm, sophisticated */
  --gold:#c9a84c;
  --gold-rich:#c9a84c;
  --gold-bright:#e8d48b;
  --gold-light:#e8d48b;
  --gold-bg:rgba(201,168,76,0.08);
  --gold-border:rgba(201,168,76,0.2);

  /* Accent */
  --blue:#58a6ff;
  --blue-light:#79c0ff;
  --navy:#0d1117;

  /* Text */
  --text:#e6edf3;
  --text-dim:#8b949e;
  --text-muted:#484f58;

  /* Status */
  --red:#f85149;
  --green:#3fb950;

  /* Fonts */
  --display:'Playfair Display',Georgia,serif;
  --serif:'Source Serif 4',Georgia,serif;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  --mono:'JetBrains Mono','SF Mono',monospace;

  /* Layout */
  --max-w:720px;
  --page-w:820px;
  --header-h:64px;
}

html{font-size:16px;scroll-behavior:smooth}

body{
  font-family:var(--sans);
  background:var(--bg);
  color:var(--text);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}

/* ─────────────────────────────────────── */
/* HEADER — dark, translucent              */
/* ─────────────────────────────────────── */
header{
  position:fixed;top:0;left:0;right:0;z-index:100;
  height:var(--header-h);
  background:rgba(13,17,23,0.88);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 clamp(1.2rem,4vw,2.5rem);
}

.logo{
  font-family:var(--display);font-size:1.1rem;font-weight:600;
  color:var(--text);text-decoration:none;letter-spacing:-0.01em;
}
.logo span{color:var(--gold)}

nav{display:flex;gap:0.1rem;align-items:center}

nav a{
  font-size:0.8rem;font-weight:450;
  color:var(--text-dim);text-decoration:none;
  padding:0.4rem 0.75rem;border-radius:4px;
  transition:all 0.2s ease;
  letter-spacing:0.01em;
}
nav a:hover{color:var(--text);background:rgba(255,255,255,0.06)}
nav a.active{color:var(--gold);font-weight:500}

.menu-toggle{display:none;background:none;border:none;color:var(--text-dim);cursor:pointer;padding:0.5rem}

/* ─────────────────────────────────────── */
/* LAYOUT                                  */
/* ─────────────────────────────────────── */
main{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem}

/* ─────────────────────────────────────── */
/* HERO                                    */
/* ─────────────────────────────────────── */
.hero{
  padding:calc(var(--header-h) + 3.5rem) 1.5rem 2.5rem;
  max-width:var(--max-w);margin:0 auto;
  border-bottom:1px solid var(--border);
}

.hero .kicker{
  font-family:var(--mono);font-size:0.68rem;font-weight:500;
  color:var(--gold);letter-spacing:0.14em;text-transform:uppercase;
  margin-bottom:1.2rem;
}

.hero h1{
  font-family:var(--display);font-size:clamp(2rem,4.5vw,2.7rem);
  font-weight:600;color:var(--text);line-height:1.25;margin-bottom:1.2rem;
  letter-spacing:-0.01em;
}
.hero h1 em{font-style:italic;color:var(--gold)}

.hero .lead{
  font-family:var(--serif);
  font-size:1.05rem;color:var(--text-dim);line-height:1.8;
  max-width:620px;margin-bottom:1.5rem;
}

.hero .meta{font-size:0.82rem;color:var(--text-muted)}
.hero .meta a{color:var(--blue);text-decoration:none}
.hero .meta a:hover{text-decoration:underline}

/* ─────────────────────────────────────── */
/* CONTENT                                 */
/* ─────────────────────────────────────── */
.content{max-width:var(--max-w);margin:0 auto;padding:1.5rem 1.5rem 4rem}

.content h2{
  font-family:var(--display);font-size:1.5rem;font-weight:600;
  color:var(--text);margin:2.5rem 0 0.8rem;line-height:1.3;
  letter-spacing:-0.01em;
}

.content h3{
  font-family:var(--display);font-size:1.15rem;font-weight:600;
  color:var(--text);margin:2rem 0 0.6rem;
}

.content p{margin-bottom:1rem;color:var(--text-dim);font-size:0.95rem}
.content p strong{color:var(--text);font-weight:600}
.content a{color:var(--blue);text-decoration:none}
.content a:hover{text-decoration:underline}

.content ul{margin:0.8rem 0 1.2rem 1.2rem;color:var(--text-dim);font-size:0.92rem}
.content ul li{margin-bottom:0.4rem;line-height:1.6}
.content ul li strong{color:var(--text)}

.content code{
  font-family:var(--mono);font-size:0.88em;
  color:var(--gold);background:rgba(201,168,76,0.08);
  padding:0.1rem 0.4rem;border-radius:3px;
}

/* ─────────────────────────────────────── */
/* EQUATION BOX                            */
/* ─────────────────────────────────────── */
.eq-box{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:2px;
  padding:2rem 2.5rem;margin:2rem 0;text-align:center;
  position:relative;
}
.eq-box::before{
  content:'';position:absolute;top:-1px;left:30%;right:30%;
  height:3px;background:linear-gradient(90deg,transparent,var(--gold),transparent);
}
.eq-box .label{
  font-family:var(--mono);font-size:0.68rem;
  color:var(--text-muted);text-transform:uppercase;
  letter-spacing:0.12em;margin-bottom:0.8rem;
}
.eq-box .eq{
  font-family:var(--mono);font-size:1.4rem;
  color:var(--gold);margin-bottom:0.5rem;
}
.eq-box .result{font-family:var(--sans);font-size:0.88rem;color:var(--text-dim)}
.eq-box .result strong{color:var(--gold)}
.eq-box .note{font-size:0.82rem;color:var(--text-muted);margin-top:0.6rem;line-height:1.6}
.eq-box code{
  font-family:var(--mono);color:var(--gold);
  background:rgba(201,168,76,0.1);padding:0.1rem 0.4rem;border-radius:3px;
}

/* ─────────────────────────────────────── */
/* STATS GRID                              */
/* ─────────────────────────────────────── */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0.8rem;margin:1.5rem 0}

.stat{
  background:var(--surface);
  border:1px solid var(--border);border-radius:2px;
  padding:1.2rem;text-align:center;
}
.stat .val{font-family:var(--display);font-size:1.8rem;font-weight:700;color:var(--text);margin-bottom:0.2rem}
.stat .val.gold{color:var(--gold)}
.stat .val.red{color:var(--red)}
.stat .desc{font-size:0.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.06em}

/* ─────────────────────────────────────── */
/* DATA TABLE                              */
/* ─────────────────────────────────────── */
.data-table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:0.85rem}

.data-table th{
  font-family:var(--mono);font-size:0.68rem;font-weight:500;
  color:var(--text-muted);text-transform:uppercase;
  letter-spacing:0.08em;text-align:left;
  padding:0.6rem 0.6rem;
  border-bottom:2px solid var(--gold);
}

.data-table td{
  padding:0.6rem;border-bottom:1px solid var(--border);
  color:var(--text-dim);
}
.data-table tr:hover td{background:rgba(201,168,76,0.04)}
.data-table td:first-child{color:var(--text);font-weight:500}
.data-table .mono{font-family:var(--mono);font-size:0.82rem}
.data-table .match{color:var(--green);font-family:var(--mono);font-size:0.82rem;font-weight:600}

/* ─────────────────────────────────────── */
/* CHART BOX                               */
/* ─────────────────────────────────────── */
.chart-box{
  background:var(--surface);border:1px solid var(--border);
  border-radius:2px;padding:1.5rem;margin:1.5rem 0;
}
.chart-box .title{
  font-family:var(--mono);font-size:0.68rem;color:var(--text-muted);
  text-transform:uppercase;letter-spacing:0.1em;margin-bottom:1rem;
}

.bar-row{display:flex;align-items:center;margin:0.4rem 0;font-size:0.82rem}
.bar-row .lbl{width:55px;font-family:var(--mono);color:var(--text-muted);flex-shrink:0;font-size:0.78rem}
.bar-row .track{flex:1;height:18px;background:var(--surface2);border-radius:2px;overflow:hidden;margin:0 0.6rem}
.bar-row .fill{height:100%;border-radius:2px}
.bar-row .pct{width:65px;text-align:right;font-family:var(--mono);color:var(--text-muted);flex-shrink:0;font-size:0.78rem}

.c0{background:#1b2a4a;width:92.38%}
.c1{background:var(--blue);width:3.52%}
.c2{background:var(--blue-light);width:3.42%}
.c3{background:var(--gold);width:max(2px,0.34%)}
.c4{background:var(--gold-bright);width:max(2px,0.34%)}
.c5{background:var(--red);width:0%}

/* ─────────────────────────────────────── */
/* CALLOUT                                 */
/* ─────────────────────────────────────── */
.callout{
  background:var(--surface);
  border:1px solid var(--border);
  border-left:4px solid var(--gold);
  border-radius:0 2px 2px 0;
  padding:1.8rem 2rem;margin:2rem 0;
}
.callout .big{
  font-family:var(--display);font-size:2rem;font-weight:700;
  color:var(--gold);margin-bottom:0.5rem;
}
.callout .big sup{font-size:0.6em}
.callout p{font-size:0.9rem;color:var(--text-dim);margin:0;line-height:1.7}
.callout p strong{color:var(--text)}

/* ─────────────────────────────────────── */
/* HIGHLIGHT BOX (blog posts)              */
/* ─────────────────────────────────────── */
.highlight,.highlight-box{
  background:rgba(201,168,76,0.06);
  border:1px solid rgba(201,168,76,0.2);
  border-left:4px solid var(--gold);
  border-radius:0 2px 2px 0;
  padding:1.4rem 1.6rem;margin:1.5rem 0;
}
.highlight p,.highlight-box p{font-size:0.9rem;color:var(--text-dim);line-height:1.7;margin:0}
.highlight p strong,.highlight-box p strong{color:var(--text)}

/* ─────────────────────────────────────── */
/* PAPERS (index page paper list)          */
/* ─────────────────────────────────────── */
.paper{
  border-left:3px solid var(--border);
  padding:0.8rem 0 0.8rem 1.2rem;margin:1.2rem 0;
  transition:border-color 0.2s;
}
.paper:hover{border-color:var(--gold)}
.paper .num{
  font-family:var(--mono);font-size:0.65rem;color:var(--gold);
  text-transform:uppercase;letter-spacing:0.1em;font-weight:500;
}
.paper h4{
  font-family:var(--display);font-size:1.05rem;color:var(--text);
  margin:0.2rem 0 0.3rem;font-weight:600;
}
.paper p{font-size:0.84rem;color:var(--text-muted);margin:0;line-height:1.5}
.paper a{color:var(--blue);text-decoration:none;font-size:0.84rem}
.paper a:hover{text-decoration:underline}

/* ─────────────────────────────────────── */
/* KILL LIST / SCOPE LIST                  */
/* ─────────────────────────────────────── */
.kill-list{list-style:none;margin:1rem 0}
.kill-list li{
  padding:0.5rem 0 0.5rem 1.2rem;position:relative;
  font-size:0.9rem;color:var(--text-dim);
}
.kill-list li::before{
  content:'\00d7';position:absolute;left:0;
  color:var(--red);font-weight:700;font-family:var(--mono);
}

.scope-no{list-style:none;margin:1rem 0}
.scope-no li{
  padding:0.5rem 0 0.5rem 1.2rem;position:relative;
  font-size:0.9rem;color:var(--text-dim);line-height:1.6;
  margin-bottom:0.3rem;
}
.scope-no li::before{
  content:'—';position:absolute;left:0;
  color:var(--text-muted);font-family:var(--mono);
}
.scope-no li strong{color:var(--text)}

/* ─────────────────────────────────────── */
/* PREDICTION CARDS (predictions page)     */
/* ─────────────────────────────────────── */
.toc{
  background:var(--surface);border:1px solid var(--border);
  border-radius:2px;padding:1.2rem 1.5rem;margin:1.5rem 0;
}
.toc h3{font-family:var(--display);font-size:1rem;font-weight:600;color:var(--text);margin-bottom:0.6rem}
.toc ul{list-style:none;margin:0}
.toc ul li{margin:0.3rem 0}
.toc ul li a{font-size:0.85rem;color:var(--blue);text-decoration:none}
.toc ul li a:hover{text-decoration:underline}

.section-intro{
  background:rgba(201,168,76,0.04);
  border-left:3px solid var(--gold);
  padding:0.8rem 1.2rem;margin:1rem 0 1.5rem;
  border-radius:0 2px 2px 0;
}
.section-intro p{font-size:0.9rem;color:var(--text-dim);margin:0;line-height:1.7}
.section-intro p strong{color:var(--text)}

.pred-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:2px;padding:1.5rem;margin:1.2rem 0;
}
.pred-card .num{
  font-family:var(--mono);font-size:0.65rem;color:var(--gold);
  text-transform:uppercase;letter-spacing:0.1em;font-weight:500;
  margin-bottom:0.3rem;
}
.pred-card h4{
  font-family:var(--display);font-size:1.1rem;font-weight:600;
  color:var(--text);margin-bottom:0.3rem;
}
.pred-card .category{
  font-family:var(--mono);font-size:0.65rem;color:var(--text-muted);
  text-transform:uppercase;letter-spacing:0.08em;margin-bottom:0.8rem;
}
.pred-card p{font-size:0.88rem;color:var(--text-dim);line-height:1.6;margin-bottom:0.6rem}
.pred-card .note{font-size:0.82rem;color:var(--text-muted);font-style:italic;margin-top:0.5rem}

.data{display:flex;gap:1rem;margin:0.5rem 0;flex-wrap:wrap}
.data-item{flex:1;min-width:120px}
.data-label{font-family:var(--mono);font-size:0.62rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:0.15rem}
.data-val{font-family:var(--mono);font-size:0.88rem;color:var(--text)}
.data-val.match{color:var(--green)}

/* ─────────────────────────────────────── */
/* ROADMAP CARDS                           */
/* ─────────────────────────────────────── */
.roadmap-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:2px;padding:1.5rem;margin:1.2rem 0;
}
.roadmap-card .timeline{
  font-family:var(--mono);font-size:0.68rem;color:var(--gold);
  text-transform:uppercase;letter-spacing:0.08em;margin-bottom:0.4rem;
}
.roadmap-card h4{
  font-family:var(--display);font-size:1.05rem;font-weight:600;
  color:var(--text);margin-bottom:0.5rem;
}
.roadmap-card p{font-size:0.88rem;color:var(--text-dim);line-height:1.6;margin-bottom:0.5rem}
.roadmap-card .verdict{
  font-family:var(--mono);font-size:0.82rem;color:var(--gold);
  background:rgba(201,168,76,0.06);
  padding:0.5rem 0.8rem;border-radius:2px;margin-top:0.5rem;
}

/* ─────────────────────────────────────── */
/* CATEGORY BADGES (predictions)           */
/* ─────────────────────────────────────── */
.category-badge{
  display:inline-block;font-family:var(--mono);font-size:0.62rem;
  font-weight:500;letter-spacing:0.08em;text-transform:uppercase;
  padding:0.15rem 0.5rem;border-radius:2px;margin-bottom:0.5rem;
}
.cat-anchor{background:var(--gold-bg);color:var(--gold);border:1px solid var(--gold-border)}
.cat-quark{background:rgba(88,166,255,0.08);color:var(--blue);border:1px solid rgba(88,166,255,0.2)}
.cat-lepton{background:rgba(63,185,80,0.08);color:var(--green);border:1px solid rgba(63,185,80,0.2)}
.cat-boson{background:rgba(188,140,255,0.08);color:#bc8cff;border:1px solid rgba(188,140,255,0.2)}
.cat-mixing{background:rgba(201,168,76,0.08);color:var(--gold);border:1px solid rgba(201,168,76,0.2)}
.cat-neutrino{background:rgba(88,166,255,0.08);color:var(--blue-light);border:1px solid rgba(88,166,255,0.2)}

/* ─────────────────────────────────────── */
/* BLOG                                    */
/* ─────────────────────────────────────── */
.blog-list{margin:1.5rem 0}
.blog-grid{margin:1.5rem 0;padding-bottom:3rem}

.blog-card{
  background:var(--surface);
  border:1px solid var(--border);border-radius:2px;
  padding:1.4rem 1.6rem;margin:0.8rem 0;
  transition:border-color 0.2s;
}
.blog-card:hover{border-color:var(--gold)}

.blog-card h2,.blog-card h3{
  font-family:var(--display);font-size:1.1rem;
  margin-bottom:0.3rem;font-weight:600;
}
.blog-card h2 a,.blog-card h3 a{color:var(--text);text-decoration:none}
.blog-card h2 a:hover,.blog-card h3 a:hover{color:var(--gold)}

.blog-card .blog-tag{
  font-family:var(--mono);font-size:0.62rem;
  color:var(--gold);text-transform:uppercase;
  letter-spacing:0.08em;margin-bottom:0.3rem;
}
.blog-card .date,.blog-card .blog-date{
  font-family:var(--mono);font-size:0.68rem;
  color:var(--text-muted);margin-bottom:0.4rem;
}
.blog-card .blog-summary{font-size:0.88rem;color:var(--text-dim);line-height:1.6;margin:0}
.blog-card p{font-size:0.88rem;color:var(--text-dim);line-height:1.6}

/* ─────────────────────────────────────── */
/* BLOG POST (article pages)               */
/* ─────────────────────────────────────── */
.back-link{
  display:inline-flex;align-items:center;gap:0.3rem;
  font-size:0.82rem;color:var(--text-muted);text-decoration:none;
  margin:calc(var(--header-h) + 1.5rem) 0 1rem;
  transition:color 0.2s;
}
.back-link:hover{color:var(--text)}
.back-link svg{flex-shrink:0}

.post-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}
.post-header h1{
  font-family:var(--display);font-size:clamp(1.8rem,4vw,2.4rem);
  font-weight:700;color:var(--text);line-height:1.25;margin-bottom:0.8rem;
}
.post-meta{font-family:var(--mono);font-size:0.75rem;color:var(--text-muted);display:flex;gap:1.5rem}

.post-content{padding-bottom:3rem}
.post-content h2{
  font-family:var(--display);font-size:1.4rem;font-weight:600;
  color:var(--text);margin:2.5rem 0 0.8rem;
}
.post-content h3{
  font-family:var(--display);font-size:1.1rem;font-weight:600;
  color:var(--text);margin:2rem 0 0.6rem;
}
.post-content p{font-size:0.95rem;color:var(--text-dim);line-height:1.8;margin-bottom:1rem}
.post-content p strong{color:var(--text)}
.post-content a{color:var(--blue);text-decoration:none}
.post-content a:hover{text-decoration:underline}
.post-content ul{margin:0.8rem 0 1.2rem 1.2rem;color:var(--text-dim);font-size:0.92rem}
.post-content ul li{margin-bottom:0.4rem;line-height:1.6}
.post-content ul li strong{color:var(--text)}

/* Stat grid for blog posts */
.stat-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:0.8rem;margin:1.5rem 0;
}
.stat-box{
  background:var(--surface);border:1px solid var(--border);
  border-radius:2px;padding:1rem;text-align:center;
}
.stat-box .label{font-family:var(--mono);font-size:0.62rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:0.3rem}
.stat-box .value{font-family:var(--display);font-size:1.6rem;font-weight:700;color:var(--gold);margin-bottom:0.2rem}
.stat-box .unit{font-size:0.72rem;color:var(--text-muted)}

/* ─────────────────────────────────────── */
/* ABOUT                                   */
/* ─────────────────────────────────────── */
.about-lead{font-family:var(--serif);font-size:1.05rem;color:var(--text-dim);line-height:1.8;margin-bottom:2rem}

.timeline{border-left:2px solid var(--gold);margin:2rem 0;padding-left:1.5rem}
.timeline-item{margin:1.5rem 0;position:relative}
.timeline-item::before{
  content:'';position:absolute;left:-1.75rem;top:0.5rem;
  width:8px;height:8px;border-radius:50%;
  background:var(--gold);
}
.timeline-item .year{font-family:var(--mono);font-size:0.68rem;color:var(--gold);font-weight:500}
.timeline-item p{font-size:0.88rem;color:var(--text-dim);margin:0.2rem 0 0}

/* ─────────────────────────────────────── */
/* MONTE CARLO GRID                        */
/* ─────────────────────────────────────── */
.mc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0.8rem;margin:1.5rem 0}

.mc-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:2px;padding:1.2rem;
}
.mc-card .mc-label{
  font-family:var(--mono);font-size:0.62rem;color:var(--text-muted);
  text-transform:uppercase;letter-spacing:0.1em;margin-bottom:0.3rem;
}
.mc-card .mc-val{font-family:var(--display);font-size:1.4rem;font-weight:700;color:var(--text)}
.mc-card .mc-val.gold{color:var(--gold)}
.mc-card .mc-desc{font-size:0.76rem;color:var(--text-muted);margin-top:0.2rem}

/* ─────────────────────────────────────── */
/* CODE BLOCKS                             */
/* ─────────────────────────────────────── */
.code-block{
  background:var(--surface2);border:1px solid var(--border);border-radius:2px;
  padding:1rem 1.2rem;margin:1rem 0;
  font-family:var(--mono);font-size:0.82rem;
  color:var(--text-dim);overflow-x:auto;line-height:1.5;
}

/* ─────────────────────────────────────── */
/* HORIZONTAL RULE                         */
/* ─────────────────────────────────────── */
hr,.section-rule{
  border:none;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  margin:2.5rem 0;
}

/* ─────────────────────────────────────── */
/* FOOTER                                  */
/* ─────────────────────────────────────── */
footer{
  border-top:1px solid var(--border);
  max-width:var(--max-w);margin:2rem auto 0;
  padding:2rem 1.5rem 3rem;
  font-size:0.78rem;color:var(--text-muted);
}
footer .soli{
  font-family:var(--display);font-style:italic;
  color:var(--text-dim);margin-bottom:0.4rem;font-size:0.85rem;
}
footer a{color:var(--text-muted);text-decoration:none}
footer a:hover{color:var(--gold)}

/* ─────────────────────────────────────── */
/* RESPONSIVE                              */
/* ─────────────────────────────────────── */
@media(max-width:640px){
  nav{
    display:none;position:absolute;
    top:var(--header-h);left:0;right:0;
    background:var(--bg);border-bottom:1px solid var(--border);
    flex-direction:column;padding:0.5rem;
  }
  nav.open{display:flex}
  .menu-toggle{display:block}
  .stats{grid-template-columns:1fr}
  .mc-grid{grid-template-columns:1fr}
  .hero h1{font-size:1.8rem}
  .post-header h1{font-size:1.6rem}
  .stat-grid{grid-template-columns:1fr 1fr}
}

/* ─────────────────────────────────────── */
/* PAPERS PAGE (papers.html uses inline)   */
/* These also used by papers_new.html      */
/* ─────────────────────────────────────── */
.papers-content{
  max-width:var(--max-w);margin:0 auto;
  padding:1.5rem 1.5rem 2rem;
}

.paper-card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:2px;
  padding:2rem 2.2rem 1.8rem;
  margin-bottom:2rem;
  transition:border-color 0.2s;
}
.paper-card:hover{border-color:var(--gold)}

.paper-card .paper-number{
  font-family:var(--mono);font-size:0.68rem;font-weight:500;
  text-transform:uppercase;letter-spacing:0.12em;
  color:var(--gold);margin-bottom:0.4rem;
}

.paper-card h3{
  font-family:var(--display);font-size:1.35rem;font-weight:600;
  color:var(--text);margin-bottom:0.25rem;line-height:1.3;
}

.paper-card .paper-subtitle{
  font-family:var(--serif);font-size:0.95rem;font-style:italic;
  color:var(--gold);margin-bottom:1.2rem;
}

.paper-card p{font-size:0.9rem;color:var(--text-dim);line-height:1.75;margin-bottom:0.8rem}

/* Highlight tags */
.paper-highlights{display:flex;flex-wrap:wrap;gap:0.5rem;margin:1.2rem 0}

.paper-highlights .tag{
  background:var(--gold-bg);color:var(--gold);
  border:1px solid var(--gold-border);
  padding:0.2rem 0.7rem;border-radius:2px;
  font-family:var(--mono);font-size:0.72rem;font-weight:500;letter-spacing:0.02em;
}

/* Section heading inside paper card */
.paper-section-head{
  font-family:var(--mono);font-size:0.68rem;font-weight:500;
  text-transform:uppercase;letter-spacing:0.1em;color:var(--gold);
  margin:1.5rem 0 0.8rem;padding-bottom:0.4rem;
  border-bottom:1px solid var(--border);
}

/* Papers page inline classes */
.paper-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}
.paper-num{font-family:var(--mono);font-size:0.75rem;font-weight:500;color:var(--blue);letter-spacing:0.08em;text-transform:uppercase;margin-bottom:0.5rem}
.paper-title{font-family:var(--serif);font-size:1.35rem;font-weight:700;color:var(--text);line-height:1.3}
.paper-subtitle{font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--text-dim);margin-top:0.25rem}
.paper-status{
  font-family:var(--mono);font-size:0.7rem;font-weight:500;
  color:var(--gold);background:rgba(201,168,76,0.1);
  padding:0.3rem 0.7rem;border-radius:4px;white-space:nowrap;
  letter-spacing:0.05em;text-transform:uppercase;flex-shrink:0;
}
.paper-meta{font-size:0.82rem;color:var(--text-muted);margin-bottom:1.25rem}
.paper-section-label{
  font-family:var(--mono);font-size:0.7rem;font-weight:500;
  color:var(--blue);letter-spacing:0.08em;text-transform:uppercase;
  margin-bottom:0.6rem;display:block;
}
.paper-abstract{font-size:0.9rem;color:var(--text-dim);line-height:1.8;margin-bottom:1.25rem}
.key-result{
  background:rgba(201,168,76,0.06);border-left:3px solid var(--gold);
  padding:1rem 1.25rem;border-radius:0 4px 4px 0;
  font-family:var(--mono);font-size:0.85rem;color:var(--text);line-height:1.6;
  margin-bottom:1.25rem;
}
.key-result code{color:var(--gold);background:rgba(0,0,0,0.3);padding:0.15rem 0.4rem;border-radius:3px}

/* Result tables */
.result-table{width:100%;border-collapse:collapse;margin:0.5rem 0;font-size:0.84rem}
.result-table th{
  font-family:var(--mono);font-size:0.65rem;font-weight:500;
  color:var(--text-muted);text-transform:uppercase;letter-spacing:0.08em;
  text-align:left;padding:0.5rem 0.6rem;border-bottom:2px solid var(--gold);
}
.result-table td{padding:0.5rem 0.6rem;border-bottom:1px solid var(--border);color:var(--text-dim)}
.result-table tr:hover td{background:rgba(201,168,76,0.04)}
.result-table td:first-child{color:var(--text);font-weight:500}
.result-table .formula{font-family:var(--mono);font-size:0.82rem;color:var(--gold)}
.result-table .val{font-family:var(--mono);font-size:0.82rem;color:var(--text)}
.result-table .match{color:var(--green);font-family:var(--mono);font-size:0.82rem;font-weight:600}
.result-table .outside-scope{color:var(--gold-bright);font-family:var(--mono);font-size:0.82rem}

/* Mechanism lists */
.mechanism-list{list-style:none;margin:0.5rem 0;padding:0}
.mechanism-list li{position:relative;padding:0.4rem 0 0.4rem 1.2rem;font-size:0.88rem;color:var(--text-dim);line-height:1.6}
.mechanism-list li::before{content:'\2192';position:absolute;left:0;color:var(--gold);font-family:var(--mono);font-weight:500}

/* Paper action buttons */
.paper-actions{
  display:flex;gap:0.8rem;align-items:center;flex-wrap:wrap;
  margin-top:1.5rem;padding-top:1.2rem;border-top:1px solid var(--border);
}
.btn-paper,.btn-read{
  display:inline-flex;align-items:center;gap:0.4rem;
  font-family:var(--mono);font-size:0.78rem;font-weight:500;
  color:var(--gold);background:rgba(201,168,76,0.1);
  padding:0.5rem 1rem;border-radius:4px;
  text-decoration:none;transition:all 0.15s;letter-spacing:0.02em;
}
.btn-paper:hover,.btn-read:hover{background:rgba(201,168,76,0.2);color:var(--gold-bright)}
.btn-paper svg,.btn-read svg{width:15px;height:15px;flex-shrink:0}

.btn-doi{
  font-family:var(--mono);font-size:0.72rem;color:var(--text-muted);
  text-decoration:none;border:1px solid var(--border);
  padding:0.4rem 0.7rem;border-radius:2px;
  transition:border-color 0.2s,color 0.2s;
}
.btn-doi:hover{border-color:var(--gold);color:var(--gold)}

/* ─────────────────────────────────────── */
/* PREDICTIONS SECTION (papers page)       */
/* ─────────────────────────────────────── */
.predictions-section{
  max-width:var(--page-w);margin:0 auto;
  padding:2.5rem 1.5rem 2rem;border-top:1px solid var(--border);
}
.predictions-header{text-align:center;margin-bottom:2rem}
.predictions-header .kicker{
  font-family:var(--mono);font-size:0.68rem;font-weight:500;
  color:var(--gold);letter-spacing:0.14em;text-transform:uppercase;
  margin-bottom:0.5rem;
}
.predictions-header h2{
  font-family:var(--display);font-size:1.6rem;font-weight:600;
  color:var(--text);margin:0.5rem 0;
}
.predictions-header p{font-size:0.92rem;color:var(--text-muted);max-width:480px;margin:0 auto}

.prediction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0.8rem;margin:1.5rem 0}
.prediction-card{
  background:var(--surface);border:1px solid var(--border);
  border-radius:2px;padding:1.3rem 1.4rem;transition:border-color 0.2s;
}
.prediction-card:hover{border-color:var(--gold)}
.prediction-card h3{font-family:var(--display);font-size:1rem;font-weight:600;color:var(--text);margin-bottom:0.5rem}
.prediction-card .pred-value{font-family:var(--mono);font-size:0.88rem;font-weight:500;color:var(--gold);margin-bottom:0.6rem}
.prediction-card p{font-size:0.82rem;color:var(--text-dim);margin-bottom:0.3rem;line-height:1.5}
.prediction-card p strong{color:var(--text);font-weight:500}
.prediction-card .pred-desc{font-size:0.78rem;color:var(--text-muted);margin-top:0.5rem;line-height:1.5}

.predictions-callout{
  background:var(--surface);border:1px solid var(--border);
  border-left:4px solid var(--gold);border-radius:0 2px 2px 0;
  padding:1.5rem 1.8rem;margin:2rem 0;text-align:center;
}
.predictions-callout p{font-family:var(--serif);font-size:0.92rem;color:var(--text-dim);line-height:1.7;margin:0}

@media(max-width:900px){.prediction-grid{grid-template-columns:1fr}}
@media(max-width:640px){
  .paper-card{padding:1.4rem 1.2rem 1.2rem}
  .result-table{font-size:.78rem}
  .result-table th,.result-table td{padding:.4rem}
  .paper-header{flex-direction:column}
  .paper-title{font-size:1.15rem}
}
