/* JoaquAIm — Liquid glass shell (dark): estrelas full-viewport + header transparente */

html[data-theme="dark"],
html[data-theme="system"] {
    --shell-glass-header: transparent;
    --shell-glass-blur: blur(18px) saturate(140%);
    --shell-glass-blur-strong: blur(40px) saturate(165%);
    --shell-glass-border: rgba(255, 255, 255, 0.08);
    --header-bar-bg: transparent;
}

html[data-theme="dark"] body:has(.sidebar) {
    background:
        radial-gradient(ellipse 100% 70% at 50% -20%, rgba(0, 48, 96, 0.28) 0%, transparent 55%),
        radial-gradient(ellipse 80% 50% at 85% 100%, rgba(0, 32, 64, 0.18) 0%, transparent 50%),
        linear-gradient(180deg, #050810 0%, #020305 100%);
}

@media (prefers-color-scheme: dark) {
    html[data-theme="system"] body:has(.sidebar) {
        background:
            radial-gradient(ellipse 100% 70% at 50% -20%, rgba(0, 48, 96, 0.28) 0%, transparent 55%),
            radial-gradient(ellipse 80% 50% at 85% 100%, rgba(0, 32, 64, 0.18) 0%, transparent 50%),
            linear-gradient(180deg, #050810 0%, #020305 100%);
    }
}

/* Estrelas — viewport inteiro, atrás de sidebar + main */
html[data-theme="dark"] .app-stars-backdrop,
html[data-theme="system"] .app-stars-backdrop {
    position: fixed;
    inset: 0;
    top: 0 !important;
    z-index: 0;
    opacity: 0.36;
    pointer-events: none;
    transition: opacity 0.5s ease;
}

@media (prefers-color-scheme: dark) {
    html[data-theme="system"] .app-stars-backdrop {
        position: fixed;
        inset: 0;
        top: 0 !important;
        z-index: 0;
        opacity: 0.36;
    }
}

html[data-theme="dark"] body:has(.main-content.chat-empty) .app-stars-backdrop,
html[data-theme="system"] body:has(.main-content.chat-empty) .app-stars-backdrop {
    opacity: 0.54;
}

@media (prefers-color-scheme: dark) {
    html[data-theme="system"] body:has(.main-content.chat-empty) .app-stars-backdrop {
        opacity: 0.54;
    }
}

@media (prefers-color-scheme: light) {
    html[data-theme="system"] .app-stars-backdrop {
        display: none !important;
    }
}

html[data-theme="light"] .app-stars-backdrop,
html[data-theme="glass"] .app-stars-backdrop {
    display: none !important;
}

/* Override legacy chat-empty-bg placement (era só abaixo do header) */
html[data-theme="dark"] .main-content.chat-empty .chat-empty-bg,
html[data-theme="system"] .main-content.chat-empty .chat-empty-bg {
    opacity: inherit;
}

/* Sidebar — mantém estilos originais em style.css (--bg-sidebar + glow azul) */

html[data-theme="dark"] body:has(.sidebar) .main-content,
html[data-theme="system"] body:has(.sidebar) .main-content {
    background: transparent !important;
}

html[data-theme="dark"] body:has(.sidebar) .header,
html[data-theme="dark"] body:has(.sidebar) .main-content > .header.header-v3,
html[data-theme="system"] body:has(.sidebar) .header,
html[data-theme="system"] body:has(.sidebar) .main-content > .header.header-v3 {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    isolation: auto;
}

html[data-theme="dark"] body:has(.sidebar) .main-content > .header.header-v3 .logo-text,
html[data-theme="dark"] body:has(.sidebar) .main-content > .header.header-v3 .header-btn,
html[data-theme="dark"] body:has(.sidebar) .main-content > .header.header-v3 .chat-context-btn,
html[data-theme="system"] body:has(.sidebar) .main-content > .header.header-v3 .logo-text,
html[data-theme="system"] body:has(.sidebar) .main-content > .header.header-v3 .header-btn,
html[data-theme="system"] body:has(.sidebar) .main-content > .header.header-v3 .chat-context-btn {
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
}

html[data-theme="dark"] body:has(.sidebar) .chat-view,
html[data-theme="dark"] body:has(.sidebar) .chat-workspace,
html[data-theme="dark"] body:has(.sidebar) .app-content-pane,
html[data-theme="system"] body:has(.sidebar) .chat-view,
html[data-theme="system"] body:has(.sidebar) .chat-workspace,
html[data-theme="system"] body:has(.sidebar) .app-content-pane {
    background: transparent;
}

html[data-theme="dark"] body.mode-dev .dev-right-panel,
html[data-theme="dark"] body.mode-claims #claimsRightPanel,
html[data-theme="system"] body.mode-dev .dev-right-panel,
html[data-theme="system"] body.mode-claims #claimsRightPanel {
    background: rgba(8, 12, 22, 0.58);
    backdrop-filter: var(--shell-glass-blur);
    -webkit-backdrop-filter: var(--shell-glass-blur);
    border-color: var(--shell-glass-border);
}

html[data-theme="dark"] .app-stars-backdrop .star,
html[data-theme="system"] .app-stars-backdrop .star {
    opacity: 0.42;
}

html[data-theme="dark"] body:has(.main-content.chat-empty) .app-stars-backdrop .star,
html[data-theme="system"] body:has(.main-content.chat-empty) .app-stars-backdrop .star {
    opacity: 0.58;
}

html[data-theme="dark"] .app-stars-backdrop::before,
html[data-theme="system"] .app-stars-backdrop::before {
    opacity: 0.85;
}

/* Conversa activa (/chat com mensagens): desfocar estrelas — foco na leitura */
html[data-theme="dark"] body:has(.main-content:not(.chat-empty)) .app-stars-backdrop,
html[data-theme="system"] body:has(.main-content:not(.chat-empty)) .app-stars-backdrop {
    opacity: 0.2;
    filter: blur(12px) brightness(0.88);
    transform: scale(1.05);
    transition: opacity 0.45s ease, filter 0.45s ease;
}

html[data-theme="dark"] body:has(.main-content:not(.chat-empty)) .app-stars-backdrop .star,
html[data-theme="system"] body:has(.main-content:not(.chat-empty)) .app-stars-backdrop .star {
    animation-play-state: paused !important;
    opacity: 0.28;
}

html[data-theme="dark"] body:has(.main-content:not(.chat-empty)) .app-stars-backdrop .shooting-star,
html[data-theme="system"] body:has(.main-content:not(.chat-empty)) .app-stars-backdrop .shooting-star {
    display: none !important;
}

html[data-theme="dark"] body:has(.main-content:not(.chat-empty)) .main-content,
html[data-theme="system"] body:has(.main-content:not(.chat-empty)) .main-content {
    position: relative;
    isolation: isolate;
}

html[data-theme="dark"] body:has(.main-content:not(.chat-empty)) .main-content::before,
html[data-theme="system"] body:has(.main-content:not(.chat-empty)) .main-content::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: rgba(5, 8, 16, 0.58);
    backdrop-filter: blur(28px) saturate(120%);
    -webkit-backdrop-filter: blur(28px) saturate(120%);
}

html[data-theme="dark"] body:has(.main-content:not(.chat-empty)) .chat-view,
html[data-theme="system"] body:has(.main-content:not(.chat-empty)) .chat-view {
    background: rgba(5, 8, 16, 0.22);
}

html[data-theme="dark"] body:has(.main-content:not(.chat-empty)) .main-content > *,
html[data-theme="system"] body:has(.main-content:not(.chat-empty)) .main-content > * {
    position: relative;
    z-index: 1;
}
