html, body, #root {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 100%;
  margin: 0;
  box-sizing: border-box;
}
html { overflow-y: scroll; }
body, #root { min-height: 100vh; }

#zeromarket-boot-screen {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  padding: 16px;
  background: #fff;
  color: #141414;
  font: 500 15px/1.4 Inter, system-ui, sans-serif;
}
#zeromarket-boot-screen > div {
  display: grid;
  gap: 8px;
  width: 100%;
  max-width: 420px;
  box-sizing: border-box;
  padding: 20px 24px;
  border: 1px solid #e0e0e0;
  border-radius: 24px;
  background: #f3f3f3;
}
#zeromarket-boot-screen h1,
#zeromarket-boot-screen p { margin: 0; }
#zeromarket-boot-screen h1 { font-size: 16px; font-weight: 650; line-height: 1.2; letter-spacing: -0.01em; }
#zeromarket-boot-screen .boot-prerender-title { font-size: 16px; font-weight: 650; line-height: 1.2; letter-spacing: -0.01em; }
#zeromarket-boot-screen .boot-description { font-size: 12px; line-height: 1.45; color: #707070; }
.seo-route-prerender {
  position: fixed;
  inset: 0;
  z-index: 1;
  overflow: auto;
  width: 100%;
  min-height: 100vh;
  margin: 0;
  padding: 72px 20px;
  background: #fff;
  color: #141414;
  font: 400 16px/1.6 Inter, system-ui, sans-serif;
}
.seo-route-prerender > article { width: min(960px, 100%); margin: 0 auto; }
.seo-route-prerender h1 { margin: 0 0 16px; font-size: clamp(32px, 5vw, 56px); line-height: 1.08; }
.seo-route-prerender p { max-width: 760px; }
.seo-route-prerender nav { margin-top: 32px; }
.seo-route-prerender nav ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.seo-route-prerender nav a { display: inline-flex; min-height: 44px; align-items: center; padding: 0 14px; border: 1px solid #e0e0e0; border-radius: 999px; color: inherit; text-decoration: none; }
#zeromarket-boot-screen .boot-status {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  font-size: 12px;
  font-weight: 500;
  color: #141414;
}
#zeromarket-boot-screen .boot-status > span:first-child {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: #0066ff;
  animation: zeromarket-boot-pulse 1.2s ease-in-out infinite alternate;
}
@keyframes zeromarket-boot-pulse { to { opacity: .35; } }
@media (prefers-reduced-motion: reduce) {
  #zeromarket-boot-screen .boot-status > span:first-child { animation: none; }
}
@media (prefers-color-scheme: dark) {
  #zeromarket-boot-screen { background: #0c0e13; color: #f3f3f3; }
  #zeromarket-boot-screen > div { border-color: #1e293b; background: #111722; }
  #zeromarket-boot-screen .boot-description { color: #94a3b8; }
  #zeromarket-boot-screen .boot-status { color: #f3f3f3; }
  .seo-route-prerender { color: #f3f3f3; }
  .seo-route-prerender nav a { border-color: #1e293b; }
}
#zeromarket-boot-retry {
  justify-self: start;
  min-height: 44px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: #141414;
  color: #fff;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}
#zeromarket-boot-retry[hidden] { display: none; }
#zeromarket-boot-retry:focus-visible { outline: 3px solid #0066ff; outline-offset: 3px; }
@media (prefers-color-scheme: dark) {
  #zeromarket-boot-retry { background: #f3f3f3; color: #141414; }
}
