/*
    File: css/custom.css
    Author: Crece Consultores
*/

/* logo */
.logo-lg img {
    height: 50px;
    object-fit: contain;
    object-position: center center;
}
.logo-sm img {
    height: 36px;
    object-fit: contain;
    object-position: center center;
}

/* select2 */
.select2-container--default .select2-selection--single {
    height: calc(1.5em + 0.75rem + 2px) !important;
    padding: 0.375rem 0.75rem !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

/* table-sortable */
.table-sortable tr .btn-drag {
    opacity: 0;
}

.table-sortable tr:hover .btn-drag {
    opacity: 1;
}

/* thumbnails-sortable */
.thumbnails-sortable {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.thumbnails-sortable .sortable-thumbnail {
    margin: 3px 3px 3px 0;
    padding: 1px;
    float: left;
    width: 90px;
    height: 90px;
    text-align: center;
    position: relative;
}

.thumbnails-sortable .sortable-thumbnail .thumbnail-image {
    display: block;
    width: 90px;
    height: 90px;
    object-fit: cover;
    object-position: center center;
}

.thumbnails-sortable .sortable-thumbnail .thumbnail-badges {
    position: absolute;
    display: block;
    right: 5px;
    top: 5px;
}

/* column-sort */
.column-sort {
}

.column-sort .btn {
    padding: 0em;
    font-size: 12px;
    line-height: 0.4em;
}

.column-sort .btn:first-child {
    padding-top: 0.3em;
}

.column-sort .btn:last-child {
    padding-bottom: 0.3em;
}

.column-sort .btn .fa {
    line-height: 0em;
}

/* table-scrolleable */
.table-scrolleable table {
    display: flex;
    flex-flow: column;
    width: 100%;
}

.table-scrolleable thead, 
.table-scrolleable tfoot { 
    flex: 0 0 auto;
}

.table-scrolleable tbody {
    flex: 1 1 auto;
    display: block;
    height: 280px;       /* Just for the demo          */
    overflow-y: auto;    /* Trigger vertical scroll    */
    overflow-x: hidden;  /* Hide the horizontal scroll */
}

.table-scrolleable thead tr,
.table-scrolleable tbody tr,
.table-scrolleable tfoot tr {
    width: 100%;
    display: table;
}


/* fieldset */
fieldset {
}

fieldset > legend {
    display: inline-block;
    width: auto;
    padding: 0px 0.5rem;
    margin: -1.5rem -0.5rem 0 -0.5rem;
    background-color: white;
    font-family: var(--bs-body-font-family);
    font-size: 0.9em;
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    text-align: var(--bs-body-text-align);
    -webkit-text-size-adjust: 100%;
    text-transform: uppercase;
    font-weight: 600;
}

/* select2 */
.select2-container--default .select2-results__option[aria-disabled="true"] {
    display: none;
}

/* schedules-table */
table.schedules-table {
    table-layout: fixed;
    position: relative;
}

table.schedules-table tr {
    display: table-row-group;
}

table.schedules-table th {
    padding: 0;
    text-align: center;
    vertical-align: middle;
}

table.schedules-table td {
    padding: 5px;
    text-align: center;
}

table.schedules-table .schedules-tr td {
    height: 0px !important;
    padding: 0px !important;
}

table.schedules-table .schedules-wrapper {
    position: absolute;
    top: 0px;
    height: 100%;
}

table.schedules-table .schedules-wrapper .schedule-box {
    position: absolute;
    left:0px;
    width: 100%;
    z-index: 99;
    overflow: visible;
    
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out;
    
    font-size: 0.8em;
    white-space: normal;
}

table.schedules-table .schedules-wrapper .schedule-box .info {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

table.schedules-table .schedules-wrapper .schedule-box .btn {
    font-size: 12px;
    line-height: 12px;
    width: 20px;
    height: 20px;
    padding: 3px 2px;
}

table.schedules-table .schedules-wrapper .schedule-box .schedule-action  {
    font-size: 12px;
    line-height: 12px;
}

table.schedules-table .schedules-wrapper .schedule-box .schedule-action .dropdown-item {
    padding: .35rem .5rem;
}

table.schedules-table .schedules-wrapper .schedule-box .schedule-action .dropdown-item .fa {
    margin-right: .5rem;
}

table.schedules-table .schedules-wrapper .schedule-lock-box {
    position: absolute;
    left:0px;
    width: 100%;
    z-index: 99;
    overflow: visible;
    
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out;
    
    font-size: 0.8em;
    white-space: normal;
}

table.schedules-table .schedules-wrapper .schedule-lock-box .info {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

table.schedules-table .schedules-wrapper .schedule-lock-box .btn {
    font-size: 12px;
    line-height: 12px;
    width: 20px;
    height: 20px;
    padding: 3px 2px;
}

table.schedules-table .schedules-wrapper .schedule-lock-box .schedule-action  {
    font-size: 12px;
    line-height: 12px;
}

table.schedules-table .schedules-wrapper .schedule-lock-box .schedule-action .dropdown-item {
    padding: .35rem .5rem;
}

table.schedules-table .schedules-wrapper .schedule-lock-box .schedule-action .dropdown-item .fa {
    margin-right: .5rem;
}

/* schedule-add */
table.schedules-table .schedules-wrapper .schedule-add {
    position: absolute;
    left: 0px;
    width: 100%;
    z-index: 9;
    overflow: hidden;
    
    border: solid 1px lightgrey;
}

table.schedules-table .schedules-wrapper .schedule-add .btn {
    font-size: 12px;
    line-height: 12px;
    width: 20px;
    height: 20px;
    padding: 3px 2px;
}

/* package-list */
.package-list-numbered > li::before {
    font-size: 28px;
    color: #eceef1;
    content: "#" counters(section, ".");
    counter-increment: section;
}

/* package-list-detail */
.package-list-detail {
    min-height: 40px;
    margin-bottom: 18px;
}

.package-list-detail.activity-border::before {
    height: 75%;
}

/* drop-container */
.drop-container {
    position: relative;
    display: flex;
    gap: 10px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 200px;
    padding: 20px;
    border-radius: 10px;
    border: 2px dashed #555;
    color: #444;
    cursor: pointer;
    transition: background .2s ease-in-out, border .2s ease-in-out;
}

.drop-container:hover {
    background: #eee;
    border-color: #111;
}

.drop-container:hover .drop-title {
    color: #222;
}

.drop-title {
    color: #444;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    transition: color .2s ease-in-out;
}

.drop-container.drag-active {
    background: #eee;
    border-color: #111;
}

.drop-container.drag-active .drop-title {
    color: #222;
}

/* resource-thumbnail */
.resource-thumbnail {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    object-fit: contain;
    object-position: center center;
}

/* dropdown-toggle */
.dropdown-toggle::after {
  display: inline-block;
  margin-left: .255em;
  vertical-align: .255em;
  content: "";
  border-top: .3em solid;
  border-right: .3em solid transparent;
  border-bottom: 0;
  border-left: .3em solid transparent;
}
