@layer GOVBREstilosComponentes {
    .govbr-plataforma-dialog {
        --z-index-dialog-backdrop: 999998;
        --z-index-dialog: 999999;

        position: fixed;
        z-index: var(--z-index-dialog);
        display: flex;
        align-items: center;
        justify-content: center;
        background: none;
        outline: none;
        border: none;
        margin: 0;
        padding: 0;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
    }

    .govbr-plataforma-dialog-base {
        position: relative;
        z-index: var(--z-index-dialog);
        display: flex;
        flex-direction: column;
        background: var(--colors_databackgroundcolor);
        max-width: 90vw;
        max-height: 95vh;
        overflow: auto;
        padding: 10px;
        border: 1px solid var(--colors_gray07);
        border-radius: 4px;
        min-height: 100px;
        min-width: 200px;
        animation: govbr-plataforma-suggest-surgir 0.5s 1 both;
    }

    .govbr-plataforma-dialog::before {
        content: '';
        position: fixed;
        display: block;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        z-index: var(--z-index-dialog-backdrop);
        background: #00000022;
    }

    .govbr-plataforma-dialog-conteudo {
        overflow: auto;
        border: 1px solid var(--colors_gray05);
        border-radius: 4px;
        padding: 10px;
    }

    .govbr-plataforma-dialog-conteudo .govbr-plataforma-visualizacao {
        width: calc(90vw - 60px) !important;
    }

    .govbr-plataforma-dialog-cabecalho {
        margin: 0 0 10px 0;
        font-size: 2rem;
        font-weight: bold;
        color: var(--colors_gray08);
    }

    .govbr-plataforma-dialog-rodape {
        text-align: end;
        margin-top: 10px;
    }

    .govbr-plataforma-dialog-botao {
        user-select: none;
        background: var(--colors_basecolor);
        padding: 6px 12px;
        color: var(--colors_baseforecolor);
        border: 1px solid var(--colors_actionborder_and_focuscolor);
        border-radius: 4px;
        margin-right: 4px;
        font-weight: bold;
    }

    .govbr-plataforma-dialog-botao.govbr-plataforma-dialog-botao-fechar {
        background: var(--colors_gray07);
        border-color: var(--colors_gray08);
    }

    .govbr-plataforma-dialog-grid-configurar-lista {
        display: flex;
        flex-direction: column;
        width: 640px;
        max-width: 100%;
        min-height: 20px;
        border: 1px solid var(--colors_gray02);
        background: var(--colors_gray01);
        border-radius: 4px;
    }

    .govbr-plataforma-dialog-grid-configurar-lista-itens {
        overflow: auto;
        min-height: 30px;
        max-height: 300px;
        border-bottom: 1px solid var(--colors_gray04);
        margin: 0 5px 10px 5px;
    }

    .govbr-plataforma-dialog-grid-linha {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        padding: 6px 12px;
    }

    .govbr-plataforma-dialog-grid-linha > label {
        margin: 0 6px;
    }

    .govbr-plataforma-dialog-grid-linha > label::after {
        content: ':';
    }

    .govbr-plataforma-dialog-grid-linha > label:not(:first-child) {
        margin-left: 20px;
    }

    .govbr-plataforma-dialog-grid-linha > input {
        flex: 1 0 0;
        height: 34px;
        padding: 6px 12px;
        border-radius: 4px;
        background: var(--colors_databackgroundcolor);
        border: 1px solid var(--colors_gray05);
        color: var(--colors_gray08);
        box-sizing: border-box;
    }

    .govbr-plataforma-dialog-botao.govbr-plataforma-dialog-botao-grid-adicionar-item {
        align-self: flex-end;
    }

    .govbr-plataforma-dialog-botao.govbr-plataforma-dialog-botao-grid-remover-item {
        background: var(--colors_danger);
        border-color: var(--colors_danger_condform);
        margin-left: 12px;
    }

    .govbr-plataforma-progress {
        background: var(--colors_databackgroundcolor);
        color: var(--colors_actionborder_and_focuscolor);
        border-radius: 0.5rem;
        box-shadow: 2px 2px 4px #00000044;
        width: 40rem;
        max-width: calc(100vw - 2rem);
        padding: 1rem;
        display: grid;
        grid-template-rows: auto auto;
    }

    body > .govbr-plataforma-progress {
        position: fixed;
        bottom: calc(4rem + (6rem * var(--idx)));
        right: 1rem;
        transition: bottom 0.25s;
    }

    .govbr-plataforma-progress-titulo {
        font-size: 1.8rem;
        margin: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .govbr-plataforma-progress-barra-container {
        position: relative;
        width: 100%;
        height: 2rem;
        grid-column: 1;
        grid-row: 2;
        border: 2px solid var(--colors_actionborder_and_focuscolor);
        border-radius: 0.5rem;
        overflow: hidden;
    }

    .govbr-plataforma-progress-barra {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: repeating-linear-gradient(
            -45deg,
            var(--colors_actionborder_and_focuscolor),
            var(--colors_basecolor) 0rem,
            var(--colors_basecolor) 2rem,
            var(--colors_actionborder_and_focuscolor) 2rem,
            var(--colors_actionborder_and_focuscolor) 4rem
        );
        animation: govbr-plataforma-progress-barra-animacao 1s infinite linear both;
        background-size: 200% 100%;
    }

    .govbr-plataforma-progress-barra-sobrepoe {
        --escala: min(calc(var(--progresso) / var(--total)), 1);

        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        transition: transform 0.25s;
        transform-origin: right;
        transform: scaleX(calc(1 - var(--escala)));
        z-index: 1;
        background: var(--colors_info_condform_row_background);
    }

    .govbr-plataforma-progress-progresso {
        grid-column: 1;
        grid-row: 2;
        text-align: center;
        color: var(--colors_databackgroundcolor);
        font-weight: bold;
        text-shadow:
            1px 1px var(--colors_actionborder_and_focuscolor),
            1px -1px var(--colors_actionborder_and_focuscolor),
            -1px 1px var(--colors_actionborder_and_focuscolor),
            -1px -1px var(--colors_actionborder_and_focuscolor);
        z-index: 2;
    }

    .govbr-plataforma-loader {
        position: absolute;
        top: calc(50% - 100px);
        left: calc(50% - 100px);
        width: 200px;
        height: 200px;
        z-index: 1000;

        animation: govbr-plataforma-surgir 0.5s 1 0s both;
    }

    @keyframes govbr-plataforma-surgir {
        0% {
            opacity: 0;
        }
        100% {
            opacity: 1;
        }
    }

    @keyframes govbr-plataforma-progress-barra-animacao {
        0% {
            background-position: -5.5rem 0;
        }
        100% {
            background-position: 0 0;
        }
    }
}
