/* ============================================================
 * Sistema Louvor — Design System (desktop shell)
 *
 * Fase premium: o CSS legado saiu da cascata principal. Tokens antigos
 * usados por snippets inline são atendidos por uma ponte em ds/tokens.css.
 *
 * Ordem dos imports (importa para a cascata):
 *   1. tokens.css   — fonte da verdade dos tokens novos (--gold, --cream, --ink…)
 *   2. base.css     — reset + tipografia
 *   3. components-shell.css — topbar + menu + skeleton
 *   4. components.css       — botões, cards, modais, inputs do DS
 *   5. telas e módulos DS
 *   6. premium-system.css   — direcao premium final e ponte visual
 * ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Crimson+Text:wght@400;600;700&family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap');

@import url('./ds/icon-fonts.css?v1.0.2');
@import url('./ds/tokens.css');
@import url('./ds/base.css?v1.0.2');

/* Shell (topbar + menu + empty/skeleton) — carrega antes de components.css
 * para que o override de cor fixa da topbar (.ds-topbar) prevaleça. */
@import url('./ds/components-shell.css');

/* Components + screens-desktop completos.
 * HTML antigo ainda usa classes genericas (.btn, .card, .modal, .input),
 * entao os componentes DS permanecem globais enquanto migramos os poucos
 * snippets inline restantes para tokens premium. */
@import url('./ds/components.css');
@import url('./ds/screens-desktop.css');
@import url('./ds/painel-lider.css');
@import url('./ds/lider-ai-curadoria.css?v1.2.0');
@import url('./ds/admin.css?v3.8.4');
@import url('./ds/cultos.css?v3.5.40');
@import url('./ds/aovivo.css?v3.5.46');
/* Modo ensaio — overlay standalone harmonizado com aovivo (v2.29) */
@import url('./ds/ensaio.css?v3.5.49');
/* Picker de instrumentos compartilhado (v2.34) */
@import url('./ds/instr-picker.css?v3.0.2');
/* ds/liturgia.css removido — página standalone deletada (Cultos&Liturgia v1).
 * Editor/Leitor agora vivem em ds/liturgia-editor.css importado abaixo. */
@import url('./ds/perfil.css?v3.5.6');
@import url('./ds/modals.css?v3.5.4');

/* Cifra viewer — diagramas de acordes + toolbar Fase 8 (v2.28).
 * Carrega depois de modals.css para ter prioridade dentro do modal-cifra. */
@import url('./ds/cifra-viewer.css?v3.5.1');

/* Liturgia Editor & Leitor fullscreen (Cultos&Liturgia v1) — overlay z-index 1200 */
@import url('./ds/liturgia-editor.css?v3.5.46');

/* Editor Quill — overrides premium (carregado depois do quill.snow.css inline) */
@import url('./ds/liturgia-rich.css?v1.1.0');

/* Bíblia — página standalone (leitura e comparação de versões) */
@import url('./ds/biblia.css?v5.5.0');
/* Bíblia — CSS compartilhado (picker modal, autofill drawer, refs de música) */
@import url('./ds/biblia-shared.css?v3.6.1');

/* YT Premium Player — componente reutilizável de áudio (modal cifra, ensaio…) */
@import url('./ds/yt-player.css');

/* Premium System — overrides finais de estilo.
 * Carrega por ULTIMO para vencer a cascata. */
@import url('./premium-system.css?v3.5.43');
@import url('./ds/biblia-polish.css?v3.6.1');
@import url('./ds/perfil-polish.css?v3.5.12');
@import url('./ds/mensagens-polish.css?v4.0.1');
@import url('./ds/home-premium.css?v3.5.45');
@import url('./ds/cultos-premium.css?v3.5.45');
@import url('./ds/lider-premium.css?v3.5.47');
@import url('./ds/lider-comunicacao.css?v2.0.0');
@import url('./ds/musicas-catalogo.css?v3.5.43');
@import url('./ds/musicas-form.css?v3.5.52');
@import url('./ds/musicas-cifra.css?v3.5.55');
@import url('./ds/musicas-player.css?v3.5.38');
@import url('./ds/print-kit.css?v3.5.10');
@import url('./ds/aovivo-premium.css?v3.5.56');
@import url('./ds/ensaio-premium.css?v3.5.53');
@import url('./ds/execution-controls.css?v1.0.5');
@import url('./ds/execution-ux.css?v1.1.8');
@import url('./ds/projecao-premium.css?v3.10.5');
@import url('./ds/module-headers.css?v3.5.5');
@import url('./ds/app-backgrounds.css?v1.0.1');

/* Hot-fixes Fase 8 — correções pontuais identificadas em validação ao vivo.
 * Carrega depois de tudo para sobrescrever o que for necessário. */
@import url('./ds/fase8-bugfixes.css?v3.5.3');
@import url('./ds/forms-modals.css?v1.0.0');
@import url('./ds/interactions.css?v1.0.0');
@import url('./ds/visual-primitives.css?v1.3.1');
@import url('./ds/musicas-viewer-polish.css?v1.0.2');
@import url('./ds/cultos-workspace.css?v1.4.8');
@import url('./ds/liturgia-editor-polish.css?v1.4.7');
@import url('./ds/ensaio-page.css?v1.0.2');
@import url('./ds/templates-editor.css?v1.0.0');
@import url('./ds/lider-final.css?v1.0.0');

/* Invariante final: acordes e letras precisam conservar a mesma grade. */
@import url('./ds/cifra-alignment.css?v1.1.0');

/* ============================================================
 * OVERRIDES do sistema (SPA multi-page)
 * ============================================================
 * O DS define `.page { flex:1; display:flex }` aplicando a TODAS as .page.
 * O Louvor IBO mantém múltiplas <section class="page"> no mesmo DOM e
 * alterna via .active pelo router. Sem este override, todas ficam visíveis.
*/
.help-icon-sm { font-size: 14px !important; }
.page:not(.active) { display: none !important; }
.page.active { display: block; }
.page-fullscreen {
  flex: 1;
  width: 100%;
  padding: 0 !important;
  overflow: hidden;
}
.fullscreen-root {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
.mobile-nav-live-icon {
  color: var(--theme-accent, var(--ibo-gold));
}
.skeleton-messages {
  height: 180px;
  border-radius: var(--r);
}
.skeleton-profile {
  height: 200px;
  border-radius: var(--r);
}
.app-loading-pad {
  padding: 60px;
  text-align: center;
}
