/* Colors mirror the app's "Meadow" tokens (shared/.../theme/Color.kt). */
:root {
  --bg: #F6F8F3; --text: #1E2620; --muted: #4B554D; --accent: #2E6B3F;
}

* { box-sizing: border-box; }

html, body {
  margin: 0;
  height: 100%;
  background: var(--bg);
  color: var(--text);
}

body {
  font: 17px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/*
 * The Compose canvas is fixed behind the page. The static copy covers it until Compose has
 * loaded its fonts and strings, or for good in browsers without WebAssembly GC.
 */
#compose-root { position: fixed; inset: 0; }
#static-content {
  position: relative; z-index: 1; min-height: 100%; background: var(--bg);
  max-width: none; margin: 0; padding: 32px max(16px, calc((100% - 720px) / 2)) 64px;
}
#static-content .brand { color: var(--accent); font-weight: 700; font-size: 1.3rem; margin: 0; }
#static-content h1 { font-size: 1.9rem; line-height: 1.2; }
#static-content h3 { color: var(--accent); margin-bottom: 0; }
#static-content p { color: var(--muted); }
#static-content .badges img { display: block; height: 52px; width: auto; margin: 8px 0; }
#static-content nav a { color: var(--accent); font-weight: 600; margin-right: 16px; }

/* After Compose starts: the static copy stays in the DOM, but only for crawlers and screen readers. */
body.compose-ready { overflow: hidden; }
body.compose-ready #static-content {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
