/* =============================================================================================
   Mapas e listagens (VB6 list*.frm): the Logins frame (filter bar + table under a fixed header) with the
   selection criteria of the VB6 maps (.ped-rel-* in pedidos.css). Here: the columns of each map.
   ============================================================================================= */

/* ---- Anomalias de ponto (list3_Combi.frm) ---- */
.ano-filtro {
    width: 4rem;
}

.ano-tabela .ano-pica {
    width: 3.6rem;
    text-align: center;
    background: rgba(15, 36, 64, 0.05);
}

.ano-tabela .ano-min {
    width: 4.6rem;
    text-align: right;
    background: rgba(196, 43, 59, 0.07);
}

.ano-tabela tr.ano-primeiro td {
    border-top: 2px solid var(--cr-line);
}

.ano-tabela tr.ano-subtotal td {
    font-weight: 700;
    color: var(--cr-blue-600);
}

/* ---- Mapa de marcações de ponto (Pic_dia.frm) ---- */
.mar-semana {
    margin-left: .35rem;
    color: var(--cr-text-2);
    font-size: .78rem;
}

.mar-terminal {
    margin-left: .2rem;
    color: var(--cr-text-2);
    font-size: .72rem;
}

@media print {
    .anomalias .barra-filtros,
    .anomalias .kpis {
        display: none;
    }
}

/* =============================================================================================
   Horários (horarios.frm), read-only: the card of one schedule, its periods as a 00h–24h strip and a table.
   ============================================================================================= */
.hor-corpo {
    flex: 1 1 0;
    min-height: 0;
    overflow: auto;
    display: grid;
    grid-template-columns: minmax(16rem, 1fr) minmax(0, 2.2fr);
    gap: .6rem;
    align-content: start;
}

.hor-faixa {
    position: relative;
    height: 1.5rem;
    border: 1px solid var(--cr-line);
    border-radius: 6px;
    background: #fff;
    overflow: hidden;
}

.hor-bloco {
    position: absolute;
    top: 0;
    bottom: 0;
    background: var(--cr-blue-600);
    border-right: 1px solid #fff;
}

.hor-escala {
    display: flex;
    justify-content: space-between;
    margin: .1rem 0 .5rem;
    color: var(--cr-text-2);
    font-size: .74rem;
}

.hor-tabela {
    width: 100%;
}

    .hor-tabela th {
        font-size: .8rem;
        color: var(--cr-text-2);
        font-weight: 600;
    }

    .hor-tabela td {
        padding: 1px 4px 1px 0;
    }

        .hor-tabela td:first-child {
            display: flex;
            align-items: center;
        }

        .hor-tabela td:not(:first-child) {
            width: 6rem;
        }

.hor-marca {
    flex: none;
    display: inline-block;
    width: .7rem;
    height: .7rem;
    margin-right: .35rem;
    border-radius: 2px;
    background: var(--cr-blue-600);
}

.hor-marca.hor-tipo- { background: transparent; }

/* Period kinds: 01–05 normal, 06–11 extra, 12–14 flexible, 15 / 99 variable pause. */
.hor-tipo-02 { background: #1f3f8f; }
.hor-tipo-06, .hor-tipo-08, .hor-tipo-10 { background: #e08a1e; }
.hor-tipo-07, .hor-tipo-09, .hor-tipo-11 { background: #a85d0a; }
.hor-tipo-12, .hor-tipo-13, .hor-tipo-14 { background: #2e9b4c; }
.hor-tipo-15, .hor-tipo-99 { background: #9aa4b2; }

@media (max-width: 1100px) {
    .hor-corpo {
        grid-template-columns: minmax(0, 1fr);
    }
}
