/* Boot shell: светлые токены по умолчанию; dark — prefers-color-scheme
   (JS-тема ещё не применена, data-theme на html ещё light). */
#takt-boot-shell {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background: #f5f2ec;
  color: #211d18;
  font-family:
    system-ui,
    -apple-system,
    'Segoe UI',
    sans-serif;
}
#takt-boot-shell .takt-boot-title {
  font-weight: 600;
  letter-spacing: 0.06em;
  font-size: 18px;
}
#takt-boot-shell .takt-boot-dot {
  color: var(--accent, #a34a15);
}
#takt-boot-shell .takt-boot-sub {
  font-size: 14px;
  color: #6e6759;
}
@media (prefers-color-scheme: dark) {
  #takt-boot-shell .takt-boot-dot {
    color: var(--accent, #e68a52);
  }
  #takt-boot-shell {
    background: #161310;
    color: #f3efe8;
  }
  #takt-boot-shell .takt-boot-sub {
    color: #a89f92;
  }
}
.takt-app-root {
  display: contents;
}
/* Анонсер маршрута SvelteKit скрыт атрибутом style, который CSP
   `style-src 'self'` вправе заблокировать; те же свойства дублируем
   правилом, иначе текст объявления окажется видимым на экране. */
#svelte-announcer {
  position: absolute;
  left: 0;
  top: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
  width: 1px;
  height: 1px;
}
