html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}

a {
    text-decoration: none;
}

    a.inline {
        cursor: pointer !important;
        text-decoration-line: underline !important;
        text-decoration-style: dotted !important;
    }

:root {
    --gold: #D1BB44;
    --light-gold: #FCE252;
    --gray: #A8A9AD;
    --light-gray: #C0C0C0;
    --green: #00A257;
    --dark-green: #006637;
    --orange: #FFA500;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

body {
    margin-bottom: 60px;
    background-color: #eee;
}

.bg-light-gold {
    background-color: var(--light-gray);
}

.bg-gold {
    background-color: var(--gold);
}

.text-green, h1, h2, h3, h4, h5, h6, th {
    color: var(--green);
}

.text-light-gray {
    color: var(--light-gray);
}

.text-orange {
    color: var(--orange);
}

.text-gold {
    color: var(--gold);
}

.text-gray {
    color: var(--gray);
}

.bg-gray {
    background-color: var(--gray);
}

.bg-green {
    background-color: var(--green);
}
/*Bootstrap*/
.popover {
    max-width: 100%;
}
/*Province map chart*/
.mapChart {
    width: 100%;
    height: 100%;
}

/* Tooltip styling */
.custom-tooltip {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 5px 7px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.15);
    font-family: system-ui, sans-serif;
    font-size: 13px;
    line-height: 1.5em;
    border-left: 4px solid #004d40;
    width: 260px; /* Fixed width */
    max-width: 500px; /* Prevent it from growing too much */
}

    .custom-tooltip i {
        font-size: 52px;
        color: #00796b;
        flex-shrink: 0;
        margin-top: 3px;
    }

    .custom-tooltip .tooltip-content h3 {
        margin: 0 0 5px 0;
        color: #004d40;
        font-size: 15px;
        font-weight: 600;
    }

    .custom-tooltip .tooltip-content p {
        margin: 0;
        color: #333;
        font-size: 13px;
    }

/*Advance Payment Plus-Minus Widget*/
.input-lg {
    font-size: 1.5em;
}

.btn-number {
    width: 70px;
    touch-action: manipulation;
}

.plus-minus {
    font-size: 32px;
}

/*Google Maps Autocomplete*/
.pac-container {
    z-index: 10000 !important;
}
/*Dropzone*/
#previews .template {
    background-color: var(--light-gold);
    padding-bottom: 10px;
    border: solid 5px #fff;
    border-radius: 10px;
    text-align: center;
}

    #previews .template .progress {
        height: 30px;
        margin-bottom: 10px;
    }

#total-progress {
    height: 40px;
    margin-bottom: 10px;
}

    #total-progress .progress-bar-striped {
        text-align: center;
        border-color: var(--green);
        padding: 10px 0;
        font-weight: 700;
        color: white;
    }

form.dropzone {
    border: dashed 4px var(--light-gray);
}
/*Multiple select*/
.multiselect-container > li > a > label {
    padding-left: 5px !important;
}

ul.multiselect-container {
    width: 100%;
}

button.multiselect {
    text-align: left;
}

li.multiselect-all a {
    color: var(--green);
}

/*Datatables*/

div.dataTables_wrapper {
    width: 100% !important;
}

table.table thead tr th.text-right {
    text-align: right;
    margin: 0;
    padding: 0;
}

.dt-paging-button.page-item.active {
    background-color: var(--green);
}

.dt-info {
    color: var(--green);
    font-weight: 500;
}

.dt-buttons.btn-group {
    margin: 10px 0;
}
/*Home Page*/
.supplier-register, .recycler-register, .compliance-dashboard {
    border: solid 1px var(--green);
    padding: 20px 0;
}

    .supplier-register i.icon, .recycler-register i.icon , .compliance-dashboard i.icon {
        font-size: 10em;
        color: var(--green);
    }

@media only screen and (max-width: 430px) {
    .recycler-register {
        border-top: 0;
    }
}

@media only screen and (min-width: 431px) {
    .recycler-register {
        border-left: 0;
    }
}

/*Schedule*/
ul.ul_deliveries li {
    list-style-type: none;
}

    ul.ul_deliveries li a {
        text-decoration: none;
    }

table.calendar-table i.bi-alarm, table.calendar-table strong.time {
    font-size: 1.65em;
}

@media only screen and (max-width: 767px) {
    table#tbl_Schedule tbody tr td:first-child {
        width: 40%;
    }
}

@media only screen and (min-width: 768px) {
    table#tbl_Schedule tbody tr td:first-child {
        width: 15%;
    }
}

/*Step Wizard*/
.stepwizard-step p {
    margin-top: 10px;
    font-weight: 600;
}

.stepwizard-row {
    display: flex;
}

.stepwizard {
    display: table;
    width: 100%;
    position: relative;
    background-color: white;
    margin: 10px 0;
}

.stepwizard-step button[disabled] {
    opacity: 1 !important;
}

.stepwizard-row:before {
    top: 34px;
    bottom: 0;
    position: absolute;
    content: " ";
    width: 100%;
    height: 5px;
    background-color: #bbb;
    z-index: 0;
}

.stepwizard-step {
    margin: 10px 0;
    text-align: center;
    width: 100%;
    position: relative;
}

.btn-circle {
    width: 50px;
    height: 50px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.428571429;
    border-radius: 50%;
}

/*Dashboard customisation*/
.bottom-buffer {
    margin-bottom: 10px;
}

.top-buffer {
    margin-top: 10px;
}

.maximumPercent {
    width: 100%;
    height: 100%;
}

#mainChart {
    height: 396px;
}

.filter {
    margin-bottom: 8px;
    font-weight: 800;
    width: 100%;
}

    .filter .icon {
        font-size: 1.2em;
    }

#topRightChart {
    margin-bottom: 20px;
}

#bottomRightChart {
    width: 100%;
    padding-top: 3px;
    padding-left: 50px;
}

.smallChart {
    height: 150px;
    background-color: white;
}

span.icon {
    font-size: 2em;
}

.info-box {
    display: block;
    min-height: 90px;
    background: #fff;
    width: 100%;
    box-shadow: 0 1px 1px rgba(0,0,0,0.1);
    border-radius: 2px;
    margin-bottom: 8px;
}

.info-box-icon {
    border-top-left-radius: 2px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 2px;
    display: block;
    float: left;
    height: 90px;
    width: 90px;
    text-align: center;
    font-size: 3.2em;
    line-height: 90px;
    opacity: 0.6;
    /*background: rgba(0,0,0,0.2);*/
}

.info-box-content {
    padding: 5px 5px;
    margin-left: 90px;
}

.info-box-text {
    text-align: center;
    text-transform: uppercase;
}

.progress-description, .info-box-text {
    display: block;
    font-size: 14px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.info-box-number {
    display: block;
    font-weight: bold;
    font-size: 26px;
    text-align: center;
}

.bg-rejected {
    color: #fff;
    background-color: #d63384;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

tr.odd {
    background-color: var(--lightest-green);
}

span.export-icon {
    font-size: 1.6em;
    -webkit-text-stroke: 0.2px;
}

div.dt-buttons .btn-secondary {
    background-color: #a0a0a0;
    width: 64px;
    border-color: #b0b0b0;
    border-radius: 5px;
}

    div.dt-buttons .btn-secondary:hover {
        background-color: var(--light-green);
    }

.page-item .page-link {
    color: var(--lighter-green);
}

.page-item.active .page-link {
    background-color: var(--light-green);
    border-color: var(--light-green);
}

nav.navbar i.bi {
    color: var(--green);
    font-weight: 700;
}
/*Blank state*/
.blank-state {
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    -moz-box-shadow: 0 3px 4px -3px rgba(102, 102, 102, 0.25);
    -webkit-box-shadow: 0 3px 4px -3px rgba(102, 102, 102, 0.25);
    box-shadow: 0 3px 4px -3px rgba(102, 102, 102, 0.25);
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 40px 20px;
    font-size: 100%;
    color: #737373;
    text-align: center;
    border: 1px solid #ddd;
    background-color: #fefefe;
}

    .blank-state h1, .blank-state p {
        font-weight: 300;
    }

    .blank-state p {
        margin-bottom: 15px;
    }

    .blank-state.blank-state-lg {
        padding: 90px 45px;
        font-size: 150%;
    }

    .blank-state.blank-state-sm {
        width: 60%;
        margin-left: auto;
        margin-right: auto;
        padding: 20px 10px;
        font-size: 85%;
    }

    .blank-state i.icon {
        font-size: 6rem;
    }
/*Dropzone*/
.dropzone {
    border: 3px dashed #808080;
    margin: 20px 0;
    padding: 10px 0;
}
/*Bootstrap*/
fieldset, legend {
    all: revert;
}

fieldset {
    padding: 10px;
    margin-bottom: 15px;
    border: dashed 2px var(--gold);
    text-align: left;
}

legend {
    font-weight: 600;
    color: var(--dark-green);
}

.form-floating {
    margin-bottom: 7px;
}

nav.breadcrumb-nav {
    --bs-breadcrumb-divider: '>';
    background-color: white;
    font-weight: 500;
}

    nav.breadcrumb-nav ol.breadcrumb {
        padding: 5px;
    }

@media only screen and (max-width: 767px) {
    .btn-sm-bottom-buffer {
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 767px) {
    .mobile-hide {
        display: none !important;
    }

    #myFooter {
        text-align: center;
    }

    .panel-body .form-horizontal {
        padding: 5px;
    }

    .no-more-tables table {
        margin-top: 10px;
        width: 100% !important;
    }

    /* Force table to not be like tables anymore */
    .no-more-tables table,
    .no-more-tables thead,
    .no-more-tables tbody,
    .no-more-tables tfoot,
    .no-more-tables th,
    .no-more-tables td,
    .no-more-tables tr {
        display: block;
    }

        /* Hide table headers (but not display: none;, for accessibility) */
        .no-more-tables thead tr {
            position: absolute;
            top: -9999px;
            left: -9999px;
        }

    .no-more-tables tr {
        border: 1px solid #ccc;
        margin-bottom: 10px;
    }

    .no-more-tables td {
        /* Behave  like a "row" */
        white-space: normal;
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 50% !important;
        text-align: left;
        min-height: 30px;
        word-wrap: break-word;
    }

        .no-more-tables td[data-title=""] {
            padding: 5px !important;
        }

        .no-more-tables td:before {
            /* Now like a table header */
            position: absolute;
            /* Top/left values mimic padding */
            top: 6px;
            left: 6px;
            width: 4%;
            padding-right: 10px;
            white-space: nowrap;
            text-align: left;
            font-weight: bold;
        }

        /*
	Label the data
	*/
        .no-more-tables td:before {
            content: attr(data-title);
        }

    .footer {
        position: absolute;
        bottom: 0;
        width: 100%;
        white-space: nowrap;
        line-height: 60px; /* Vertically center the text there */
    }
}
/* Footer */
#myFooter {
    background-color: #008145;
    color: white;
    padding: 30px 0 0 0;
}

    #myFooter .footer-copyright {
        background-color: var(--green);
        padding-top: 5px;
        padding-bottom: 5px;
        text-align: center;
    }

    #myFooter .row {
        margin-bottom: 60px;
    }

    #myFooter .navbar-brand {
        margin-top: 45px;
        height: 65px;
    }

    #myFooter .footer-copyright p {
        margin: 10px;
    }

    #myFooter ul {
        list-style-type: none;
        padding-left: 0;
        line-height: 1.7;
    }

    #myFooter h5 {
        font-size: 18px;
        color: white;
        font-weight: bold;
        margin-top: 30px;
    }

    #myFooter h2 a {
        font-size: 50px;
        text-align: center;
        color: #fff;
    }

    #myFooter a {
        color: #eee;
        text-decoration: none;
    }

        #myFooter a:hover,
        #myFooter a:focus {
            text-decoration: none;
            color: var(--gold);
        }

    #myFooter .social-networks {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 16px;
    }

        #myFooter .social-networks a {
            font-size: 32px;
            color: #f9f9f9;
            padding: 10px;
            transition: 0.2s;
        }

            #myFooter .social-networks a:hover {
                text-decoration: none;
            }

    #myFooter .whatsapp:hover {
        color: #34B7F1;
    }

    #myFooter .facebook:hover {
        color: #3b5998;
    }

    #myFooter .twitter:hover {
        color: #00acee;
    }

    #myFooter .linkedin:hover {
        color: #0077b5;
    }
