/* Green Chat shared root shell.
   This file is intentionally tiny and always active: it owns mode isolation and the pre-bundle app
   boot surface. Marketing-only rules stay in site.css and are enabled only for site mode. */

html[data-gc-js]:not([data-gc-mode]) body { visibility: hidden; }
html[data-gc-mode="site"] #app { display: none !important; }
html[data-gc-mode="app"] .gc-site { display: none !important; }

html[data-gc-mode="app"] .gc-boot {
  position: fixed; inset: 0; z-index: 40; display: flex; flex-direction: column;
  align-items: center; justify-content: center; gap: 18px; background: #f3f7f5;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
}
html[data-gc-mode="app"] .gc-boot-mark {
  width: 84px; height: 84px; border-radius: 22px; box-shadow: 0 14px 32px rgba(13, 152, 83, .22);
  animation: gc-boot-rise .5s cubic-bezier(.2, .7, .3, 1) both;
}
html[data-gc-mode="app"] .gc-boot-name {
  margin: 0; font-size: 20px; font-weight: 700; letter-spacing: -.01em; color: #13211d;
  animation: gc-boot-rise .5s cubic-bezier(.2, .7, .3, 1) .06s both;
}
html[data-gc-mode="app"] .gc-boot-bar {
  width: 132px; height: 3px; border-radius: 999px; overflow: hidden; background: rgba(13, 152, 83, .14);
}
html[data-gc-mode="app"] .gc-boot-bar > span {
  display: block; width: 42%; height: 100%; border-radius: inherit;
  background: linear-gradient(90deg, #19bd6e, #0d9853);
  animation: gc-boot-sweep 1.15s cubic-bezier(.5, 0, .5, 1) infinite;
}
@keyframes gc-boot-rise { from { opacity: 0; transform: translateY(8px) scale(.94); } to { opacity: 1; transform: none; } }
@keyframes gc-boot-sweep { from { transform: translateX(-115%); } to { transform: translateX(240%); } }
html[data-gc-mode="app"][data-gc-boot-theme="dark"] .gc-boot { background: #0f1512; }
html[data-gc-mode="app"][data-gc-boot-theme="dark"] .gc-boot-name { color: #e8f1ed; }
html[data-gc-mode="app"][data-gc-boot-theme="dark"] .gc-boot-bar { background: rgba(25, 189, 110, .18); }
@media (prefers-color-scheme: dark) {
  html[data-gc-mode="app"]:not([data-gc-boot-theme]) .gc-boot { background: #0f1512; }
  html[data-gc-mode="app"]:not([data-gc-boot-theme]) .gc-boot-name { color: #e8f1ed; }
  html[data-gc-mode="app"]:not([data-gc-boot-theme]) .gc-boot-bar { background: rgba(25, 189, 110, .18); }
}
@media (prefers-reduced-motion: reduce) {
  html[data-gc-mode="app"] .gc-boot-mark,
  html[data-gc-mode="app"] .gc-boot-name { animation: none; }
  html[data-gc-mode="app"] .gc-boot-bar > span { width: 100%; animation: none; }
}
