/* Stable stylesheet for standalone nginx-served archives, independent of Next build hashes. */
:root { color-scheme: light; }
body { background: #f4f5f0 !important; color: #1a1f1c !important; font-family: "IBM Plex Sans", "Segoe UI", Arial, sans-serif !important; line-height: 1.65; }
.container { max-width: 1040px !important; padding: 28px 24px 60px !important; }
h1, h2, h3 { font-family: "Fraunces", Georgia, serif; font-weight: 500 !important; letter-spacing: -.025em; color: #1a1f1c; }
.header { text-align: left !important; margin-top: 34px; }
.header h1 { font-size: clamp(32px, 5vw, 52px) !important; line-height: 1.12 !important; }
a { color: #1f3f9a; text-underline-offset: 3px; }
a:focus-visible { outline: 2px solid #1f3f9a; outline-offset: 4px; }
.stats { justify-content: flex-start !important; }
.stat, .disclaimer { border-radius: 0 !important; }
.research-archive-notice { border-top: 3px solid #1f3f9a; background: #ebede6; padding: 18px 22px; margin-bottom: 20px; font-size: 13px; color: #4a524d; line-height: 1.7; }
.research-archive-notice strong { color: #1a1f1c; }
.research-archive-notice a { display: inline-block; margin-left: 4px; text-decoration: underline; }
.footer { text-align: left !important; line-height: 1.8; }
@media (max-width: 600px) {
  .container { padding: 20px !important; }
  .container > div:first-of-type { flex-wrap: wrap; gap: 16px; }
  .stat { flex: 1 1 120px; padding: 12px !important; }
  .research-archive-notice { padding: 16px; }
}
