﻿/* Spinner */
.idtlv2_spin { -webkit-animation: spin 2s infinite linear; animation: spin 2s infinite linear; }

@-webkit-keyframes idtlv2_spin {
    0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
    100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); }
}

@keyframes idtlv2_spin {
    0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
    100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); }
}

.idtlv2_spinner { z-index: 10; margin-top: 150px; position: absolute; left: 50%; margin-left: -30px; }
    .idtlv2_spinner i { text-rendering: auto; font-size: 60px; text-shadow: -2px 0 #fff, 0 2px #fff, 2px 0 #fff, 0 -2px #fff; }

/* Reset */
.ilv div { overflow: hidden; text-overflow: ellipsis; box-sizing: border-box; text-align: left; }
.ilv input[type="text"] { box-sizing: border-box; }
.ilv table { border-spacing: 0; width: 100%; table-layout: fixed; font-size: 12px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none }
.ilv col { min-width: 50px }

/* general table settings */
.ilv .nowrap div { white-space: nowrap; overflow: hidden; text-overflow: ellipsis }

/* Headers */
.ilv thead { position: sticky; top: 0px; z-index: 2; }
    .ilv thead th:first-child { position: sticky; left: 0px }

    /* Header Controls */
    .ilv thead th { background-color: #e3e8f3; vertical-align: top; }
        .ilv thead th div { padding: 0px 5px; }
        .ilv thead th.sc:hover { background-color: #a6b7d9; cursor: pointer }
        .ilv thead th div { display: inline-block; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; height: 22px; line-height: 22px }
    .ilv thead th { border-right: dotted 1px #ccc; }
        .ilv thead th:first-child { border-left: dotted 1px #ccc; }

        .ilv thead th.sc div:nth-child(1) { font-size: 12px; width: calc( 100% - 20px ); }
        .ilv thead th.sc div:nth-child(2) { width: 20px; padding: 0px; font-size: 18px; text-overflow: unset }

        .ilv thead th.cc div:nth-child(1) { font-size: 12px; width: calc( 100% - 25px ); }
        .ilv thead th.cc div:nth-child(2) { width: 25px; padding: 0px; text-overflow: unset }

    .ilv thead input[type="text"] { width: 100% }

    /* Header Title */
    .ilv thead .title th { border-left: 0px; background-color: #253d75; color: #fff; font-size: 14px; line-height: 24px; overflow-x: visible; font-weight: bold; padding: 0px 5px; border: none; border-bottom: 1px solid #fff; white-space: nowrap }

/* Data */
.ilv tbody td:first-child { background-color: #fff; position: sticky; left: 0px }
.ilv tbody tr:hover td { background-color: #eee }
.ilv .selectable tbody td:hover { cursor: pointer }
.ilv .selectable tbody tr.selected td { background-color: #ddd }
.ilv .selectable tbody tr.selected:hover td { background-color: #bbb }

.ilv tbody tr.sectionend td > div { border-bottom: dashed 1px #000 }

/* cells */
.ilv tbody tr td > div { padding: 3px 5px; }

.ilv .nowrap tbody div { height: 21px; }
.ilv tr td { border-right: dotted 1px #ccc; border-top: dotted 1px #ccc; padding: 0px }
    .ilv tr td:first-child { border-left: dotted 1px #ccc; }
.ilv tr:last-child td { border-bottom: dotted 1px #ccc; }
.ilv .ac { text-align: center }
.ilv .ar { text-align: right }
