/* Botão gov.br no padrão do Design System do Governo (br-button primary).
   https://webcomponent-ds.estaleiro.serpro.gov.br/docs/components/button/
   Usado por templates/partials/govbr_botao.html ("Entrar com gov.br" /
   "Assinar com gov.br"). Tokens do DS: interactive #1351B4, focus #C2850C,
   densidade média 40px, formato pill, Rawline semibold. */
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@600&display=swap');

.br-button {
    align-items: center;
    background-color: transparent;
    border: 0;
    border-radius: 100em;
    box-sizing: border-box;
    color: #1351B4;
    cursor: pointer;
    display: inline-flex;
    font-family: Rawline, Raleway, sans-serif;
    font-size: 16.8px;
    font-weight: 600;
    gap: 8px;
    height: 40px;
    justify-content: center;
    line-height: 1;
    overflow: hidden;
    padding: 0 24px;
    position: relative;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    white-space: nowrap;
    width: auto;
}
.br-button.primary { background-color: #1351B4; color: #FFFFFF; }
.br-button.secondary { background-color: #FFFFFF; border: 1px solid #1351B4; color: #1351B4; }
.br-button.block { display: flex; width: 100%; }
.br-button svg { flex-shrink: 0; height: 1em; width: 1em; fill: currentColor; }

.br-button:not(:disabled):hover,
.br-button:not(:disabled):hover:visited { color: #FFFFFF; text-decoration: none; }
.br-button.primary:not(:disabled):hover {
    background-image: linear-gradient(rgba(0, 0, 0, .16), rgba(0, 0, 0, .16));
}
.br-button.primary:not(:disabled):active {
    background-image: linear-gradient(rgba(0, 0, 0, .45), rgba(0, 0, 0, .45));
}
.br-button.secondary:not(:disabled):hover,
.br-button.secondary:not(:disabled):hover:visited {
    color: #1351B4;
    background-image: linear-gradient(rgba(19, 81, 180, .16), rgba(19, 81, 180, .16));
}
.br-button.secondary:not(:disabled):active {
    background-image: linear-gradient(rgba(19, 81, 180, .45), rgba(19, 81, 180, .45));
}
/* Modo "Contraste" da barra de acessibilidade (templates/partials/_acessibilidade.html):
   body.alto-contraste força todo link para amarelo com !important, e o secondary ficava
   amarelo sobre branco, ilegível. No contraste ele segue o resto da tela: fundo preto,
   borda e texto amarelos (hover branco). O primary (gov.br) mantém o fundo azul. */
body.alto-contraste .br-button.secondary,
body.alto-contraste .br-button.secondary:visited {
    background-color: #000 !important;
    border-color: #ff0 !important;
    color: #ff0 !important;
}
body.alto-contraste .br-button.secondary:not(:disabled):hover {
    background-image: none;
    border-color: #fff !important;
    color: #fff !important;
}
/* logo do Google com as cores dele (o fill dos <path> vale sobre o currentColor) */
.br-button svg.logo-google { height: 1.1em; width: 1.1em; }
.br-button:focus { outline: none; }
.br-button:focus-visible {
    outline: 4px dashed #C2850C;
    outline-offset: 4px;
}
.br-button:disabled { cursor: not-allowed; opacity: .45; }
