/**
 * Aurora — tokens e receitas compartilhadas (site público, autenticação e painéis).
 * Carregar ANTES de aurora-site.css / aurora-panel.css / aurora-auth.css.
 * A cor de ação vem de --au-indigo; o whitelabel pode sobrescrevê-la.
 */
:root {
    /* Tinta e superfícies */
    --au-ink: #0F0E2A;
    --au-ink-2: #55536F;
    --au-ink-3: #77758F;
    --au-surface: #FFFFFF;
    --au-bg: #FAFAFD;
    --au-bg-2: #F4F3FA;
    --au-line: #E6E5F0;
    --au-line-2: #F0EFF6;

    /* Marca */
    --au-indigo: #4F46E5;
    --au-indigo-hover: #4338CA;
    --au-indigo-soft: #F1F0FF;
    --au-indigo-softer: #EEEDFF;
    --au-violet: #A855F7;
    --au-cyan: #22D3EE;
    --au-gradient: linear-gradient(90deg, #6366F1, #22D3EE);

    /* Estado */
    --au-ok: #12805C;
    --au-ok-soft: #E6F5EE;
    --au-warn: #9A6100;
    --au-warn-soft: #FFF4D6;
    --au-bad: #C2362B;
    --au-bad-soft: #FDECEA;

    /* Forma */
    --au-r-sm: 8px;
    --au-r: 10px;
    --au-r-lg: 14px;
    --au-r-xl: 18px;

    /* Profundidade: contorno de 1px + sombra longa tingida de índigo */
    --au-ring: 0 0 0 1px var(--au-line);
    --au-shadow-sm: 0 0 0 1px var(--au-line), 0 1px 2px rgba(16, 14, 48, .05);
    --au-shadow: 0 0 0 1px var(--au-line), 0 1px 2px rgba(16, 14, 48, .04), 0 12px 32px -20px rgba(16, 14, 48, .18);
    --au-shadow-lg: 0 0 0 1px rgba(15, 14, 42, .07), 0 2px 4px rgba(15, 14, 42, .04), 0 40px 80px -40px rgba(49, 46, 129, .55);
    --au-shadow-btn: 0 1px 0 rgba(255, 255, 255, .25) inset, 0 1px 2px rgba(29, 23, 120, .4), 0 6px 16px -6px rgba(79, 70, 229, .6);
    --au-focus: 0 0 0 3px rgba(79, 70, 229, .28);

    /* Tipo */
    --au-font: 'Geist', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --au-mono: 'Geist Mono', ui-monospace, 'Cascadia Mono', Consolas, monospace;

    /* Movimento */
    --au-ease: cubic-bezier(.16, 1, .3, 1);
}

/* Aurora: só atrás da janela do produto e no canto do cabeçalho das telas */
.au-aurora {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(620px 460px at 78% 22%, rgba(99, 102, 241, .30), transparent 70%),
        radial-gradient(520px 420px at 96% 62%, rgba(34, 211, 238, .20), transparent 70%),
        radial-gradient(520px 380px at 58% 78%, rgba(168, 85, 247, .16), transparent 70%);
}

.au-dots {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(15, 14, 42, .14) 1px, transparent 1.4px);
    background-size: 22px 22px;
    -webkit-mask-image: radial-gradient(700px 520px at 76% 46%, #000 20%, transparent 75%);
    mask-image: radial-gradient(700px 520px at 76% 46%, #000 20%, transparent 75%);
}

/* Estado: ponto com halo + texto */
.au-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font: 600 13px/1 var(--au-font);
    white-space: nowrap;
}

.au-status::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 18%, transparent);
}

.au-status--ok { color: var(--au-ok); }
.au-status--run { color: var(--au-indigo); }
.au-status--bad { color: var(--au-bad); }
.au-status--wait { color: var(--au-ink-3); }
.au-status--warn { color: var(--au-warn); }

/* Citação de fonte */
.au-cite {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 9px;
    border-radius: 7px;
    background: var(--au-surface);
    box-shadow: var(--au-ring);
    font: 500 12.5px/1 var(--au-font);
    color: var(--au-indigo);
}

/* Progresso em degradê */
.au-progress {
    height: 4px;
    border-radius: 9px;
    background: #E7E6F2;
    overflow: hidden;
}

.au-progress > i {
    display: block;
    height: 100%;
    border-radius: 9px;
    background: var(--au-gradient);
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }
}
