/* Splash screen shown while the Flutter engine downloads and boots.
   Colors match AppTheme so the handoff to the real app has no flash.
   Kept as an external file (not inline) so the Content-Security-Policy can
   forbid inline styles. */
#app-splash {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F8FAFC;
  z-index: 9999;
  transition: opacity 0.35s ease-out;
}
#app-splash .spinner {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 3px solid rgba(3, 74, 60, 0.15);
  border-top-color: #034A3C;
  animation: app-splash-spin 0.8s linear infinite;
}
@keyframes app-splash-spin {
  to { transform: rotate(360deg); }
}
#app-splash.app-splash-hidden {
  opacity: 0;
  pointer-events: none;
}

/* Plain-HTML page copy for crawlers (#seo-content in each index.html).
   Visually hidden but kept in the DOM, the standard "sr-only" pattern, so it
   never shows over the Flutter app yet stays readable to search engines. */
#seo-content {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
