/* First-paint boot. Must stay a separate file: CSP forbids inline styles. */
html,body{background:#0e1013;margin:0}
#auth-view[hidden],
html.kuni-app-boot #auth-view,
html.kuni-join-boot #auth-view,
html.kuni-app-boot #legal-view{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important
}
#kuni-boot-overlay{
  display:none;
  position:fixed;inset:0;z-index:2147483000;
  flex-direction:column;align-items:center;justify-content:center;gap:12px;
  margin:0;padding:28px 20px;box-sizing:border-box;
  background:#0e1013;color:#e8eaed;
  font:500 15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  text-align:center;-webkit-tap-highlight-color:transparent
}
#kuni-boot-overlay[hidden]{display:none!important}
/* Show spinner only after boot.js delay (~800ms) — skip it on fast loads. */
html.kuni-boot-visible #kuni-boot-overlay,
html.kuni-boot-visible #kuni-boot-overlay[hidden]{
  display:flex!important;
  animation:kuni-boot-fade .22s ease-out
}
@keyframes kuni-boot-fade{
  from{opacity:0}
  to{opacity:1}
}
.kuni-boot-orb{
  width:56px;height:56px;display:grid;place-items:center;border-radius:18px;
  background:linear-gradient(145deg,#3b82f6,#1d4ed8);color:#fff;font-size:22px;
  box-shadow:0 10px 28px rgba(59,130,246,.35);
  animation:kuni-boot-pulse 1.2s ease-in-out infinite
}
#kuni-boot-overlay strong{font-size:18px;letter-spacing:-.02em;font-weight:700}
#kuni-boot-overlay span{color:#9aa3b2;font-size:13px;max-width:30ch}
@keyframes kuni-boot-pulse{
  0%,100%{transform:scale(1);opacity:1}
  50%{transform:scale(1.05);opacity:.88}
}
