:root {
    --bulma-primary-h: 139deg;
    --bulma-primary-s: 65%;
    --bulma-primary-l: 38%;
    --bulma-link-h: var(--bulma-primary-h);
    --bulma-link-s: var(--bulma-primary-s);
    --bulma-link-l: var(--bulma-primary-l);
}

.navbar-item:hover,
.navbar-item:focus,
.navbar-link:hover,
.navbar-link:focus {
    background-color: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.08) !important;
}

a.navbar-item:focus-within {
    background-color: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.08) !important;
}

a.navbar-item:active {
    background-color: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.14) !important;
}

table.dataTable.display tbody tr:hover,
table.dataTable.display tbody tr.odd:hover,
table.dataTable.display tbody tr.even:hover {
    background-color: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.06) !important;
}

table.dataTable>tbody>tr.selected>* {
    box-shadow: inset 0 0 0 9999px hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.12);
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: hsl(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l)) !important;
    border-color: hsl(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l)) !important;
    color: #fff !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.08) !important;
    border-color: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.2) !important;
}

div.dt-container div.dt-paging button.dt-paging-button.current,
div.dt-container div.dt-paging button.dt-paging-button.current:hover,
div.dt-container div.dt-paging button.dt-paging-button.current:focus {
    background: hsl(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l)) !important;
    border-color: hsl(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l)) !important;
    color: #fff !important;
}

div.dt-container div.dt-paging button.dt-paging-button:hover {
    background: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.08) !important;
    border-color: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.2) !important;
}

a.pagination-link.is-current,
a.pagination-link.is-current:hover {
    background: hsl(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l)) !important;
    border-color: hsl(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l)) !important;
    color: #fff !important;
}

.pagination-link:hover {
    background: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.08) !important;
    border-color: hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.2) !important;
}

.select:not(.is-multiple):not(.is-loading)::after {
    border-color: hsl(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l));
}

.select select:focus,
.select select.is-active,
.select select:active {
    border-color: hsl(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l));
    box-shadow: 0 0 0 0.125em hsla(var(--bulma-primary-h), var(--bulma-primary-s), var(--bulma-primary-l), 0.25);
}

@media screen and (max-width: 1215px) {
    .table.is-responsive thead {
        display: none;
    }

    .table.is-responsive tr {
        display: block;
        margin-bottom: 1rem;
        border: 1px solid var(--bulma-table-cell-border);
        border-radius: var(--bulma-radius);
        padding: 0.5rem;
    }

    .table.is-responsive td {
        display: flex;
        gap: 0.5rem;
        padding: 0.25rem 0;
        border: none;
    }

    .table.is-responsive td::before {
        content: attr(data-label);
        font-weight: 600;
        flex-shrink: 0;
    }
}

@media screen and (max-width: 768px) {
    div.dt-container>div.columns:not(.dt-layout-table) {
        display: flex !important;
        flex-wrap: nowrap !important;
    }

    div.dt-container>div.columns:not(.dt-layout-table)>div.column {
        display: flex !important;
        flex: none !important;
    }

    div.dt-buttons {
        float: none !important;
        width: auto !important;
        text-align: left !important;
        margin-bottom: 0 !important;
    }

    div.dt-container div.dt-search input {
        width: auto !important;
    }
}

@media screen and (max-width: 576px) {
    div.dt-container div.dt-search input {
        width: 40vw !important;
    }

    .dt-layout-start,
    .dt-layout-end {
        padding: 2px !important;
    }

    div.dt-buttons {
        display: flex !important;
        gap: 0 !important;
    }

    .dt-buttons .button {
        padding: 0.3em 0.5em !important;
        font-size: 0.8rem !important;
    }
}

.buttons-colvis .icon.is-small {
    display: none;
}

.dt-search {
    position: relative;
}

.dt-search label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.dt-search-input-wrap {
    position: relative;
    display: inline-block;
}

.dt-search-icon {
    position: absolute;
    left: calc(0.3em + 1px);
    top: 50%;
    transform: translateY(-50%);
    width: 1em;
    height: 1em;
    pointer-events: none;
    z-index: 1;
}

.dt-search-icon svg {
    display: block;
    width: 100%;
    height: 100%;
}

div.dt-container div.dt-search input {
    width: 25em;
    padding-left: 1.5em;
    margin-left: 0 !important;
}
