/* Injected by nginx sub_filter into acro-generated index/indexpage/indepage
   HTML. Goal is light-touch consistency: typography + a centred content
   column. We do NOT restyle acro's headings, tables, links, or backgrounds —
   acro pages keep their own look. */

@font-face {
  font-family: 'esphimere';
  src: url('/assets/fonts/esphimere-webfont.woff2') format('woff2'),
       url('/assets/fonts/esphimere-webfont.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Acro's vertical gradient image, applied to <html> so it fills the viewport
   regardless of body width. Same file as <body background="ACRO-bg02.png">
   uses on real acro pages — bundled here so the SPA shares the same surface. */
html {
  background: #ffffff url('/assets/acro-bg.png') repeat-x top left;
  min-height: 100vh;
}

/* Font override and centred 880px column on body. acro pages have
   <body background="..."> attribute (which our sub_filter <body> match
   doesn't fire on, so .ba-injected-content wrapper isn't injected on them);
   centring the body itself accomplishes the same thing without needing the
   wrapper. background: transparent so the html gradient shows through. */
body {
  font-family: 'esphimere', Tahoma, Arial, sans-serif !important;
  max-width: 880px !important;
  margin: 0 auto !important;
  background: transparent !important;
}

/* Override acro's hardcoded <font face="..."> tags and inline <style> blocks
   that pin Arial/Times on tables. !important beats acro's own equal-specificity
   CSS in the page <head>. We don't touch sizes, weights, or colours — just
   the font family so acro pages and the SPA share typography. */
body, font, table, td, th, p, div, span, h1, h2, h3, h4, b, i, em, strong {
  font-family: 'esphimere', Tahoma, Arial, sans-serif !important;
}

/* Branded header banner injected at <body>. */
.ba-injected-header {
  background: #ffffff;
  border-bottom: 3px solid #1f275c;
  margin-bottom: 1.5rem;
}
.ba-injected-header .row {
  max-width: 880px;
  margin: 0 auto;
  padding: 1.25rem 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  text-align: center;
}
.ba-injected-header img.logo {
  width: 56px;
  height: auto;
  flex-shrink: 0;
}
.ba-injected-header a.brand {
  color: inherit;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 1rem;
}
.ba-injected-header h1.title {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 700;
  color: #1f275c;
  font-family: 'esphimere', Tahoma, Arial, sans-serif;
}
.ba-injected-header h1.title .beta {
  font-size: 0.65rem;
  color: #5a6470;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  vertical-align: middle;
  margin-left: 0.25rem;
}

/* Centre acro's content inside an 880px column, but leave its internal
   styling untouched. Achieved by sub_filter wrapping body content in
   <main class="ba-injected-content">…</main>. */
.ba-injected-content {
  max-width: 880px;
  margin: 0 auto;
  padding: 0 1.25rem 3rem;
}

/* Make any tables inside acro's content fill the column and centre. */
.ba-injected-content table {
  width: 100%;
  margin: 1.25rem auto;
}
