@font-face {
    font-family: "Rubik";
    font-style: normal;
    font-weight: 300;
    src: url(https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-WYiFV0Uw.ttf)
        format("truetype");
}
@font-face {
    font-family: "Rubik";
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-B4iFV0Uw.ttf)
        format("truetype");
}
@font-face {
    font-family: "Rubik";
    font-style: normal;
    font-weight: 500;
    src: url(https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-NYiFV0Uw.ttf)
        format("truetype");
}
@font-face {
    font-family: "Rubik";
    font-style: normal;
    font-weight: 700;
    src: url(https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-4I-FV0Uw.ttf)
        format("truetype");
}
@font-face {
    font-family: "Rubik";
    font-style: normal;
    font-weight: 900;
    src: url(https://fonts.gstatic.com/s/rubik/v28/iJWZBXyIfDnIV5PNhY1KTN7Z-Yh-ro-FV0Uw.ttf)
        format("truetype");
}
/*Theme Colors*/
/*bootstrap Color*/
/*Normal Color*/
/*Border radius*/
/*Preloader*/
.preloader {
    width: 100%;
    height: 100%;
    top: 0px;
    position: fixed;
    z-index: 99999;
    background: var(--bg-base);
}
.preloader .cssload-speeding-wheel {
    position: absolute;
    top: calc(50% - 3.5px);
    left: calc(50% - 3.5px);
}
/*Font weight*/
/* This is for popins font for firefox */
@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/poppins/v1/2fCJtbhSlhNNa6S2xlh9GyEAvth_LlrfE80CYdSH47w.woff2)
        format("woff2");
    unicode-range:
        U+02BC, U+0900-097F, U+1CD0-1CF6, U+1CF8-1CF9, U+200B-200D, U+20A8,
        U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FB;
}
/* This is for popins font for firefox */
@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/poppins/v1/UGh2YG8gx86rRGiAZYIbVyEAvth_LlrfE80CYdSH47w.woff2)
        format("woff2");
    unicode-range:
        U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F,
        U+A720-A7FF;
}
/* This is for popins font for firefox */
@font-face {
    font-family: "Poppins";
    font-style: normal;
    font-weight: 400;
    src: url(https://fonts.gstatic.com/s/poppins/v1/yQWaOD4iNU5NTY0apN-qj_k_vArhqVIZ0nv9q090hN8.woff2)
        format("woff2");
    unicode-range:
        U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F,
        U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
body {
    font-family: Montserrat, "Nunito", sans-serif;
    font-size: 16px;
    color: var(--text-primary);
    font-weight: normal;
}
h1,
h2,
h3,
h4,
h5,
p,
a {
    font-family: Montserrat, "Nunito", sans-serif;
}
h5 {
    font-size: 19px;
}
h4 {
    font-size: 21px;
    font-weight: 400;
}
h3 {
    font-size: 24px;
    font-weight: 500;
}
h2 {
    font-size: 27px;
    font-weight: bold;
}
h1 {
    font-size: 40px;
    font-weight: bold;
}
a {
    color: var(--text-primary);
}
span.counter {
    font-size: 25px;
}
.bg-cyan {
    background-color: #70b7bb;
}
.bg-dark-cyan {
    background-color: #25a5b1;
}
.bg-pink {
    background-color: #fa627b;
}
.bg-dark-blue {
    background-color: #116286;
}
.bg-blue {
    background-color: #2078dc;
}
.bg-green {
    background-color: #79b473;
}
.bg-violet {
    background-color: #586ba4;
}
.bg-red {
    background-color: #e15554;
}
.service-1-text {
    color: #5dc1cc !important;
}
.service-2-text {
    color: #df7158 !important;
}
.service-3-text {
    color: #ef994e !important;
}
.service-4-text {
    color: #6abee9 !important;
}
.service-5-text {
    color: #efb950 !important;
}
.service-6-text {
    color: #244c7e !important;
}
.service-7-text {
    color: #9723e9 !important;
}
.service-8-text {
    color: #d5537c !important;
}
.service-9-text {
    color: #0099a8 !important;
}
.service-10-text {
    color: #40818c !important;
}
.service-11-text {
    color: #990d36 !important;
}
.service-12-text {
    color: #c59f70 !important;
}
.service-help-text {
    color: #6b03ba !important;
}
.service-white-text {
    color: #f5f5f5 !important;
}
.service-halo-text {
    color: #676cd5 !important;
}
.service-1-background {
    background-color: #5dc1cc !important;
}
.service-2-background {
    background-color: #df7158 !important;
}
.service-3-background {
    background-color: #ef994e !important;
}
.service-4-background {
    background-color: #6abee9 !important;
}
.service-5-background {
    background-color: #efb950 !important;
}
.service-6-background {
    background-color: #244c7e !important;
}
.service-7-background {
    background-color: #9723e9 !important;
}
.service-8-background {
    background-color: #d5537c !important;
}
.service-9-background {
    background-color: #0099a8 !important;
}
.service-10-background {
    background-color: #40818c !important;
}
.service-11-background {
    background-color: #990d36 !important;
}
.service-12-background {
    background-color: #c59f70 !important;
}
.service-help-background {
    background-color: #6b03ba !important;
}
.service-halo-background {
    background-color: #676cd5 !important;
}
.standard-background {
    background-color: #116286 !important;
}
.font-15 {
    font-size: 15px;
}
/* Page */
/* Flex column on #wrapper pins the footer to the viewport bottom on
   empty pages; on long pages the viewport scrolls normally.

   `min-height: 0` on #page-wrapper overrides style.css's legacy
   `#page-wrapper { min-height: 568px }` which was forcing the page
   area to 568px regardless of the flex allocation — on shorter
   empty pages that extra height pushed the wrapper past 100dvh and
   produced the hairline scrollbar even when there was no content. */
#wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100dvh;
}
#page-wrapper {
    padding: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}
#page-wrapper .container-fluid {
    width: 100%;
}
#footer {
    margin-top: auto;
}
/* Elements */
.bg-title h4 {
    color: var(--text-primary);
}
tbody {
    color: var(--text-primary);
}
#side-menu li a {
    color: var(--text-primary);
}
/* Header */
.logo b {
    width: 70px;
}
.navbar-header .navbar-toggle {
    padding: 0 9px;
}
/* Search box */
.app-search .form-control,
.app-search .form-control {
    min-width: 300px;
}
.search-box-item {
    border-bottom: 1px solid var(--accent);
    min-width: 300px;
}
/* Zero-size scroll reference point. customer-details.js scrollToElement
   computes the sticky offset dynamically (page chrome + sticky quicknav),
   so the anchor itself doesn't need the legacy 60px negative-margin spacer. */
.anchor {
    display: block;
    height: 0;
    visibility: hidden;
}
.input-group-addon select {
    border: none;
}
/* Boxes */
.colored-box {
    padding: 25px;
    margin-bottom: 15px;
    border-radius: var(--radius-md);
}
.colored-box p {
    font-size: 14px;
}
.white-box {
    min-height: 210px;
    border-radius: var(--radius-md);
}
.chart {
    margin-top: 0;
    margin-bottom: 0;
}
.white-box .box-title {
    background-color: #116286;
    padding: 0 15px;
    border-radius: 0 5px 25px 0;
    color: #ffffff;
}
/* Forms */
.form-material .form-control,
.form-material .form-control.focus,
.form-material .form-control:focus {
    background-image:
        linear-gradient(var(--accent), var(--accent)),
        linear-gradient(rgba(120, 130, 140, 0.21), rgba(120, 130, 140, 0.21));
}
.form-material .form-control {
    background-position:
        left bottom,
        center calc(99%);
}
/* Buttons */
.btn {
    border-radius: 5px;
    box-shadow:
        0 3px 4px 0 rgba(0, 0, 0, 0.14),
        0 3px 3px -2px rgba(0, 0, 0, 0.2),
        0 1px 8px 0 rgba(0, 0, 0, 0.12);
    min-width: 100px;
    font-size: 12px;
    font-weight: 600;
    padding: 5px;
}
.btn-primary {
    background: #244c7e;
    border: 1px solid #244c7e;
}
.btn-info,
.btn-info.disabled {
    background: #2078dc;
    border: 1px solid #2078dc;
}
.btn-primary.disabled.focus,
.btn-primary.disabled:focus,
.btn-primary.disabled:hover,
.btn-primary.focus,
.btn-primary:focus,
.btn-primary:hover {
    opacity: 0.8;
}
.btn.dropdown-toggle {
    font-size: 14px;
    line-height: 22px;
    background-color: white;
    box-shadow: unset;
    border-radius: 3px;
    padding: 7px 12px;
}
/* Tables */
table {
    width: 100%;
}
.table > tbody > tr > td,
.table > tbody > tr > th,
.table > tfoot > tr > td,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > thead > tr > th {
    padding: 5px 10px;
    font-size: 13px;
    vertical-align: middle;
}
.table > thead > tr > th {
    font-weight: bold;
    color: var(--text-primary);
}
/* Errors */
.error-message {
    color: var(--danger);
    text-align: center;
    font-weight: bold;
}
.error-border {
    border: 2px solid var(--danger);
}
/* Footer */
.footer-container {
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
    background-color: var(--text-primary);
}
.footer-description {
    text-align: center;
    color: #ffffff;
}
.footer-logo {
    height: 50px;
}
/* Login page */
.login-register {
    background: url(../../plugins/images/bnesim-wallpaper-01.jpg?1.2) center
        center / cover no-repeat !important;
}
.login-box {
    margin: 6% auto 0;
}
/* Plugin - Toast */
.jq-toast-wrap.top-right {
    top: 90px;
    right: 20px;
}
.jq-toast-wrap {
    width: 282px;
}
.jq-toast-loader {
    border-radius: 0;
}
.jq-toast-single {
    font-family: Montserrat, "Nunito", sans-serif;
    font-size: 14px;
}
.jq-toast-single h2 {
    font-size: 17px;
}
/* Plugin - BackGrid */
.backgrid .descending .sort-caret {
    border-top: 4px solid #ffffff;
}
.backgrid .ascending .sort-caret {
    border-bottom: 4px solid #ffffff;
}
/* Plugin - dataTable */
table.dataTable thead th,
table.dataTable thead td {
    border-bottom: none;
}
table.dataTable.no-footer {
    border-bottom: none;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    color: #ffffff !important;
    border: 0;
    background: var(--accent-secondary);
    border-radius: var(--radius-pill);
}
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: var(--accent-hover);
    border: 0;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
    color: #ffffff !important;
    border: 0;
    background: var(--accent);
    padding: 0 10px;
    font-size: 15px;
    border-radius: var(--radius-pill);
}
/* Breathing room between the search box / length menu and the table below. */
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_length {
    margin-bottom: 8px;
}
/* Only the table scrolls horizontally — not the DataTables search/pagination.
   js/datatables-hscroll.js wraps each DataTable's <table> in this element so the
   themed horizontal scrollbar sits directly under the table, while the search
   box and pagination (which stay inside .dataTables_wrapper) keep their styling
   and never drift. Full width means tables that already fit show no scrollbar. */
.dt-hscroll {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
}
/* Override responsive elements */
@media (max-width: 2560px) {
    .table-responsive {
        width: 100%;
        margin-bottom: 15px;
        overflow-y: hidden;
    }
}
@media (max-width: 767px) {
    .table-responsive {
        border: none;
    }
}
@media (max-width: 425px) {
    .table > tbody > tr > td,
    .table > tbody > tr > th,
    .table > tfoot > tr > td,
    .table > tfoot > tr > th,
    .table > thead > tr > td,
    .table > thead > tr > th {
        font-size: 13px;
    }
}
@media (max-width: 375px) {
    td,
    th {
        padding: 10px;
    }
    .table > tbody > tr > td,
    .table > tbody > tr > th,
    .table > tfoot > tr > td,
    .table > tfoot > tr > th,
    .table > thead > tr > td,
    .table > thead > tr > th {
        font-size: 10px;
    }
}
/*# sourceMappingURL=custom.css.map */
