:root {
    --i: 1;
}

:root[data-theme="dark"] {
    --i: -1;
}

:root[data-theme="light"] {
    --i: 1;
}

@media (prefers-color-scheme: dark) {
    :root {
        --i: -1;
    }
}

:root {

    /* Cores de destaque */
    /* --color-emphasis: #0b3162; */
    --color-emphasis-over: hsl(from var(--color-emphasis) calc(h + 10) calc(s + 30) calc(l + 60) / 1);

    /* --color-link: #4120af; */
    --color-link-over: hsl(from var(--color-link) calc(h + 10) calc(s + 30) calc(l + 60) / 1);

    /* --color-differentiate: #B2005E; */
    --color-differentiate-over: hsl(from var(--color-differentiate) calc(h + 10) calc(s + 30) calc(l + 60) / 1);

    /* Tipografia é definida em fonts.css */

    /* Estilos globais */
    --border-radius: 0.5rem;
    --border-radius-inside: 0.3rem;
    --border-radius-outside: 0.75rem;
    --transition-duration: 0.3s;
    --shadow-filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
    --open-popup-animation: fadeIn 0.3s ease-out;
    --close-popup-animation: fadeOut 0.3s ease-out;

    /* Derivadas da cor de fundo */
    /* --background-color: #eef1fc; */
    --surface-color: hsl(from var(--background-color) h s calc(l - 50) / 0.15);
    --input-background-color: hsl(from var(--background-color) h s calc(l + 10) / 0.8);
    --input-background-disabled: hsl(from var(--background-color) h calc(s - 20) calc(l - 7) / 0.9);
    --border-color: hsl(from var(--background-color) h calc(s - 5) calc(l - 30 * var(--i)) / 0.75);
    --border-color-disabled: hsl(from var(--background-color) h calc(s - 50) calc(l - 30) / 0.5);

    /* Propriedades de fundo */
    --background-image: url('../../assets/custom/background-image.png');
    --background: var(--background-color) var(--background-image) no-repeat center center / cover;
    --background-gradient: linear-gradient(135deg, var(--color-link) 0%, var(--color-emphasis) 100%);

    /* Cores de texto */
    /* --text-color: #272442; */
    --text-color-weak: hsl(from var(--text-color) h calc(s - 10) calc(l + 10) / 0.8);
    --text-color-title: var(--color-emphasis);
    --text-color-link: var(--color-link);

    /* Cores do header */
    --header-background: var(--background-gradient);
    --header-link-color: var(--color-link-over);
    --header-link-active: var(--color-emphasis-over);

    /* Cores de status */
    --color-status-normal: #d3dbf7;
    --color-status-normal-text: hsl(from var(--text-color) h s calc(l + 20) / 1);
    --color-status-normal-background: hsl(from var(--background-color) h s calc(l + 3) / 1);

    --color-status-atencao: #ffe964;
    --color-status-atencao-text: hsl(from var(--color-status-atencao) h s calc(l - 50) / 1);
    --color-status-atencao-background: hsl(from var(--color-status-atencao) h s calc(l + 10) / 1);

    --color-status-alerta: #fa971f;
    --color-status-alerta-text: hsl(from var(--color-status-alerta) h s calc(l - 40) / 1);
    --color-status-alerta-background: hsl(from var(--color-status-alerta) h s calc(l + 20) / 1);

    --color-status-critico: #d11a1c;
    --color-status-critico-text: hsl(from var(--color-status-critico) h s calc(l + 50) / 1);
    --color-status-critico-background: hsl(from var(--color-status-critico) h s calc(l + 20) / 1);

    --color-status-positivo: #67d76d;
    --color-status-positivo-text: hsl(from var(--color-status-positivo) h calc(s + 50) calc(l - 45) / 1);
    --color-status-positivo-background: hsl(from var(--color-status-positivo) h s calc(l + 10) / 1);

    /* Cores de mensagens */
    --color-success: #40bf6a;
    --color-success-text: hsl(from var(--color-success) calc(h + 10) s calc(l - 50) / 1);
    --color-success-background: hsl(from var(--color-success) calc(h + 2) s calc(l + 10) / 1);
    --color-success-inverse: hsl(from var(--color-success) calc(h + 10) s calc(l - 55) / 1);
    --color-success-border: hsl(from var(--color-success) calc(h + 2) s calc(l - 20) / 1);

    --color-error: #bf4055;
    --color-error-text: hsl(from var(--color-error) calc(h + 10) s calc(l - 50) / 1);
    --color-error-background: hsl(from var(--color-error) calc(h + 2) s calc(l + 10) / 1);
    --color-error-inverse: hsl(from var(--color-error) calc(h + 10) s calc(l - 55) / 1);
    --color-error-border: hsl(from var(--color-error) calc(h + 2) s calc(l - 20) / 1);

    --color-warning: #b5bf40;
    --color-warning-text: hsl(from var(--color-warning) calc(h + 0) s calc(l - 60) / 1);
    --color-warning-background: hsl(from var(--color-warning) calc(h + 2) s calc(l + 10) / 1);
    --color-warning-inverse: hsl(from var(--color-warning) calc(h + 0) s calc(l - 60) / 1);
    --color-warning-border: hsl(from var(--color-warning) calc(h + 2) s calc(l - 20) / 1);

    --color-info: #408abf;
    --color-info-text: hsl(from var(--color-info) calc(h + 10) s calc(l - 50) / 1);
    --color-info-background: hsl(from var(--color-info) calc(h + 2) s calc(l + 10) / 1);
    --color-info-inverse: hsl(from var(--color-info) calc(h + 10) s calc(l - 55) / 1);
    --color-info-border: hsl(from var(--color-info) calc(h + 2) s calc(l - 20) / 1);

    /* Cores das premiações */
    --agencias:      hsl( 26, 45%, 40%);
    --profissionais: hsl(220, 45%, 40%);
    --fornecedores:  hsl(129, 45%, 40%);
    --estudantes:    hsl(280, 45%, 40%);
    
    --agencias-background: hsl(from var(--agencias) h calc(s - (40 * var(--i))) calc(l + (50 * var(--i))) / 1);
    --profissionais-background: hsl(from var(--profissionais) h calc(s - (40 * var(--i))) calc(l + (50 * var(--i))) / 1);
    --fornecedores-background: hsl(from var(--fornecedores) h calc(s - (40 * var(--i))) calc(l + (50 * var(--i))) / 1);
    --estudantes-background: hsl(from var(--estudantes) h calc(s - (40 * var(--i))) calc(l + (50 * var(--i))) / 1);
    
    --agencias-surface: hsl(from var(--agencias) h calc(s - (10 * var(--i))) calc(l - (10 * var(--i))) / 0.1);
    --profissionais-surface: hsl(from var(--profissionais) h calc(s - (10 * var(--i))) calc(l - (10 * var(--i))) / 0.1);
    --fornecedores-surface: hsl(from var(--fornecedores) h calc(s - (10 * var(--i))) calc(l - (10 * var(--i))) / 0.1);
    --estudantes-surface: hsl(from var(--estudantes) h calc(s - (10 * var(--i))) calc(l - (10 * var(--i))) / 0.1);

    --agencias-border: hsl(from var(--agencias) h s calc(l + (5 * var(--i))) / 1);
    --profissionais-border: hsl(from var(--profissionais) h s calc(l + (5 * var(--i))) / 1);
    --fornecedores-border: hsl(from var(--fornecedores) h s calc(l + (5 * var(--i))) / 1);
    --estudantes-border: hsl(from var(--estudantes) h s calc(l + (5 * var(--i))) / 1);

    --agencias-text: hsl(from var(--agencias) h s calc(l - (15 * var(--i))) / 1);
    --profissionais-text: hsl(from var(--profissionais) h s calc(l - (15 * var(--i))) / 1);
    --fornecedores-text: hsl(from var(--fornecedores) h s calc(l - (15 * var(--i))) / 1);
    --estudantes-text: hsl(from var(--estudantes) h s calc(l - (15 * var(--i))) / 1);

}