.form-unit{width:15%;height:34px;padding:6px 12px;font-size:14px;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}
.separator {
    display: flex;
    align-items: center;
    text-align: center;
    margin: 10px 0;
}

.separator::before,
.separator::after {
    content: "";
    flex: 1;
    border-bottom: 2px solid #ccc;
}

.separator span {
    padding: 0 10px;
    color: #666;
    font-weight: bold;
    font-size: 16px;
}

.disabled-look {
    background-color: #e9ecef !important;
    pointer-events: none;
    opacity: 0.65;
}

select.empty-value {
    background-color: #fff9db; /* off-white/yellowish tint */
}

#infoTooltip {
    position: fixed;
    bottom: 10px;
    left: 10px;
    z-index: 9999;
}

.info-icon {
    font-size: 1.5rem;
    cursor: pointer;
}

.info-box {
    display: none;
    position: absolute;
    bottom: 30px;
    left: 0;
    width: 150px;
    background: rgba(0, 0, 0, 0.75);
    color: #fff;
    padding: 10px;
    border-radius: 8px;
    font-size: 1.2rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    opacity: 80%;
}

#infoTooltip:hover .info-box {
    display: block;
}

.dt-buttons { margin-bottom: 10px; }
.dataTables_wrapper .dataTables_filter {
    float: right;
    text-align: right;
}
.dt-button-collection {
    max-height: 70vh;
    overflow-y: auto;
    max-width: 90vw;
    white-space: normal;
    padding: 1rem;
}
.dataTables_scrollHeadInner table {
    margin-bottom: 0;
}