/*
 * Override dos ícones de ordenação do DataTables — variante 2 do layout.
 *
 * O tema `vendor/datatables-bootstrap/dataTables.bootstrap.css` (linhas 87-97) desenha
 * as setas de ordenação por `content:` + `font-family: "Glyphicons Halflings"`, com os
 * codepoints U+E150 / U+E155 / U+E156 gravados como CARACTERE LITERAL no arquivo.
 *
 * Esse é um uso que NENHUMA busca por `class="glyphicon"` encontra — foi como o
 * glyphicons passou por morto na poda. Sem o @font-face, o browser cai no fallback e
 * desenha o codepoint da Private Use Area como lixo (aparecia um ";" no cabeçalho).
 *
 * Reapontado para Font Awesome, que a variante 2 já carrega logo acima deste arquivo.
 * Custo: zero byte novo de fonte, e os 237 KB do glyphicons seguem fora do grafo.
 *
 * Precisa vir DEPOIS do font-awesome-6/css/all.min.css no _cssPadrao2.gsp.
 */
table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after,
table.dataTable thead .sorting_asc_disabled:after,
table.dataTable thead .sorting_desc_disabled:after {
    /* Font Awesome 6: a familia deixou de se chamar 'FontAwesome' e o peso virou
       obrigatorio (900 = Solid). Os codepoints abaixo sobreviveram a migracao. */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

table.dataTable thead .sorting:after          { content: "\f0dc"; } /* fa-sort      (era U+E150) */
table.dataTable thead .sorting_asc:after      { content: "\f0de"; } /* fa-sort-asc  (era U+E155) */
table.dataTable thead .sorting_desc:after     { content: "\f0dd"; } /* fa-sort-desc (era U+E156) */

/*
 * CONTROLE DE DETALHE DO RESPONSIVE (a `td.dtr-control::before`): volta ao (+)/(-).
 *
 * O Responsive 2.2.7 (`vendor/datatables-responsive/`, variante 1 historica) desenhava
 * um circulo com "+" na linha retraida e "-" na expandida. O 2.5.0 trocou por setas
 * (U+25BA / U+25C4 / U+25BC), e a equipe do albatroz pediu o modelo antigo de volta.
 * As regras abaixo sao as do 2.2.7, copiadas de
 * `vendor/datatables-responsive/responsive.bootstrap.css`.
 *
 * Os sinais sao ASCII: nao dependem do charset com que o servidor entregar o CSS. O
 * 2.5.0 grava as setas como caractere literal UTF-8 sem `@charset`, e um Tomcat que
 * anexe `ISO-8859-1` faz o browser desenhar `â–¼` (relatado em /integradorPadrao).
 *
 * As cores seguem vindo do `custom.css` (verde) e do `webner-tema/datatable-theme.css`
 * (`--wn-dt-accent`), carregados depois deste arquivo, como no 2.2.7.
 *
 * Precisa vir DEPOIS dos dois CSS do Responsive no _cssPadrao2.gsp.
 */
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
}

table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control.arrow-right::before,
table.dataTable.dtr-inline.collapsed > tbody > tr > th.dtr-control.arrow-right::before {
    top: 50%;
    left: 5px;
    height: 1em;
    width: 1em;
    margin-top: -9px;
    margin-right: 0;
    display: block;
    position: absolute;
    color: white;
    border: 0.15em solid white;
    border-radius: 1em;
    box-shadow: 0 0 0.2em #444;
    box-sizing: content-box;
    text-align: center;
    text-indent: 0 !important;
    font-family: "Courier New", Courier, monospace;
    line-height: 1em;
    content: "+";
    background-color: #46be8a;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th.dtr-control:before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td.dtr-control.arrow-right::before,
table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th.dtr-control.arrow-right::before {
    content: "-";
    background-color: #d33333;
}

table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td.dtr-control,
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th.dtr-control {
    padding-left: 27px;
}

table.dataTable.dtr-inline.collapsed.compact > tbody > tr > td.dtr-control:before,
table.dataTable.dtr-inline.collapsed.compact > tbody > tr > th.dtr-control:before {
    left: 4px;
    height: 14px;
    width: 14px;
    border-radius: 14px;
    line-height: 14px;
    text-indent: 3px;
}

table.dataTable.dtr-column > tbody > tr > td.dtr-control,
table.dataTable.dtr-column > tbody > tr > th.dtr-control,
table.dataTable.dtr-column > tbody > tr > td.control,
table.dataTable.dtr-column > tbody > tr > th.control {
    position: relative;
    cursor: pointer;
}

table.dataTable.dtr-column > tbody > tr > td.dtr-control:before,
table.dataTable.dtr-column > tbody > tr > th.dtr-control:before,
table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before,
table.dataTable.dtr-column > tbody > tr > td.dtr-control.arrow-right::before,
table.dataTable.dtr-column > tbody > tr > th.dtr-control.arrow-right::before,
table.dataTable.dtr-column > tbody > tr > td.control.arrow-right::before,
table.dataTable.dtr-column > tbody > tr > th.control.arrow-right::before {
    top: 50%;
    left: 50%;
    height: 0.8em;
    width: 0.8em;
    margin-top: -0.5em;
    margin-left: -0.5em;
    display: block;
    position: absolute;
    color: white;
    border: 0.15em solid white;
    border-radius: 1em;
    box-shadow: 0 0 0.2em #444;
    box-sizing: content-box;
    text-align: center;
    text-indent: 0 !important;
    font-family: "Courier New", Courier, monospace;
    line-height: 1em;
    content: "+";
    background-color: #337ab7;
}

table.dataTable.dtr-column > tbody > tr.parent td.dtr-control:before,
table.dataTable.dtr-column > tbody > tr.parent th.dtr-control:before,
table.dataTable.dtr-column > tbody > tr.parent td.control:before,
table.dataTable.dtr-column > tbody > tr.parent th.control:before,
table.dataTable.dtr-column > tbody > tr.parent td.dtr-control.arrow-right::before,
table.dataTable.dtr-column > tbody > tr.parent th.dtr-control.arrow-right::before,
table.dataTable.dtr-column > tbody > tr.parent td.control.arrow-right::before,
table.dataTable.dtr-column > tbody > tr.parent th.control.arrow-right::before {
    content: "-";
    background-color: #d33333;
}

/* ---------------------------------------------------------------------------
 * CHECK DE LINHA SELECIONADA DO DATATABLES SELECT (`td.select-checkbox::after`)
 *
 * Mesmo defeito das setas acima: o `select.bootstrap.css` do Select 1.7.0 grava
 * o visto como caractere literal UTF-8. Aparece em /titulo, a unica tela que
 * usa a coluna de checkbox do Select. Reescrito como escape (ASCII puro), que
 * independe do charset com que o servidor entregar o arquivo.
 * ------------------------------------------------------------------------- */
table.dataTable > tbody > tr.selected > td.select-checkbox:after,
table.dataTable > tbody > tr.selected > th.select-checkbox:after {
  content: "\2713";
}

/*
 * INDICADOR "PROCESSANDO" DO DATATABLES: so o circulo girando.
 *
 * O DataTables 1.13 injeta em `div.dataTables_processing` o HTML de `sProcessing`
 * (Portuguese-Brasil.json: o `<i class="fa fa-circle-o-notch fa-spin">`, que e o circulo)
 * e, logo depois, `<div><div></div><div></div><div></div><div></div></div>`: as bolinhas
 * animadas do `dataTables.bootstrap.css` (seletor `> div:last-child > div`). Esconder
 * esse ultimo div tira os 3 pontos e mantem o circulo. O `<i>` e o `<span>` nao sao
 * `div`, entao nao sao afetados.
 */
div.dataTables_processing > div:last-child {
    display: none;
}
