* {
    margin: 0;
    padding: 0;
    list-style: none;
    border: 0;
    outline: 0;
    scroll-behavior: smooth;
    -webkit-tap-highlight-color: transparent;
    text-decoration: none;
    color: inherit;
    box-sizing: border-box;
}

*:focus {
    outline: 0;
}

body {
    overflow-x: hidden !important;
    position: relative;
    height: 100%;
    scroll-behavior: smooth;
    font-family: 'Roboto', sans-serif;
    background-color: #fafbfd;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    padding: 0;
    margin: 0;
    font-weight: 500;
}

p {
    padding: 0;
    margin: 0;
}

a {
    text-decoration: none;
    color: #495057;
}


ul {
    margin: 0;
    padding: 0;
}



/* colors  */
.main-color {
    color: #dca708;
}

.color-2 {
    color: #1e1b57;
}

.color-3 {
    color: #cbcbcb;
}

.color-4 {
    color: #e9e8e8;
}





/* input  */
input,
select {
    font-size: 14px !important;
}

input:focus,
select:focus,
textarea:focus {
    border-color: transparent !important;
    box-shadow: 0px 5px 20px 0px rgb(0 0 0 / 8%) !important;
}


input::placeholder,
select::placeholder,
textarea::placeholder {
    color: rgba(18, 17, 51, 0.295)
}






/* 000000000000000000 wrapper 000000000000000000  */
.wrapper {
    width: 100%;
    height: 100vh;
    min-height: 100vh;
}


/* 000000000000000000 login page 000000000000000000  */

.login-wrapper {
    height: 100vh;
    width: 100%;
    position: relative;
    background-image: url(../img/login-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    background-position: center;
}

.login-wrapper::after {
    position: absolute;
    content: '';
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: .4;
}



.login-wrapper .form {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    color: #fff;
    width: 500px;
    background-color: #ffffffd9;
    padding: 30px;
    border-radius: 10px;
}


.login-wrapper .head {
    margin-bottom: 30px;
    font-weight: 300;
    text-align: center;
    color: #212529;
}


.login-wrapper .head img {
    width: 180px;
    margin-bottom: 30px;
}

.login-wrapper .head h3 {
    font-weight: 330;
}

.login-wrapper input {
    background: transparent;
    border: none;
    height: 50px;
    color: #212529 !important;
    border-bottom: 1px solid #212529;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 0px;
    padding-left: 20px;
    padding-right: 20px;
    transition: 0.3s;
    margin-bottom: 20px;
}

.login-wrapper input:hover,
.login-wrapper input:focus {
    background: rgba(255, 255, 255, 0.167);
    outline: none;
    box-shadow: none;
}

.login-wrapper input:focus {
    box-shadow: 0px 4px 15px 0px rgba(81, 81, 81, 0.23) !important;
}

.login-wrapper input::placeholder {
    color: #212529;
}


.login-wrapper .sbmt-btn {
    background-color: #61BD00;
    color: #fff;
    border-radius: 6px;
    display: block;
    padding: 12px 0px;
    width: 100%;
    text-align: center;
    transition: .3s;
}

.login-wrapper .sbmt-btn:hover {
    opacity: .9;
    background-color: #212529;
    color: #fff;
}

.login-wrapper label {
    color: #fff;
    font-weight: 400;
}

.login-wrapper label input {
    margin-bottom: 0px;
}

/* checkbox */
.login-wrapper .checkbox-wrap {
    display: block;
    position: relative;
    margin-bottom: 20px;
    cursor: pointer;
    font-size: 13px;
    user-select: none;
    text-align: center;
    color: #212529;
}

.login-wrapper .checkbox-wrap input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.login-wrapper .checkmark {
    position: absolute;
    top: -1px;
    left: 165px;
}

.login-wrapper .checkmark:after {
    content: "\f0c8";
    font-family: "FontAwesome";
    position: absolute;
    color: #212529;
    font-size: 16px;
    margin-top: -1.5px;
    transition: 0.3s;
}

.login-wrapper .checkbox-wrap input:checked~.checkmark:after {
    display: block;
    content: "\f14a";
    font-family: "FontAwesome";
    color: rgba(0, 0, 0, 0.2);
}


.login-wrapper .checkbox-primary input:checked~.checkmark:after {
    color: #212529;
}


.login-wrapper .developed {
    text-align: center;
    margin-top: 20px;
    color: #212529;
}
















/* 000000000000000000 sidebar 000000000000000000  */
.sidebar {
    background-color: #212529;
    margin-top: 0;
    margin: 15px;
    border-radius: 20px;
    position: fixed;
    top: 0px;
    bottom: 0;
    left: 0;
    width: 100px;
    transition: all .2s ease;
    z-index: 1001;
    transform: translate(0px, 0px);
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, 0.05);
}

.sidebar.clicked {
    transform: translate(0px, 0px);
}

.sidebar>ul {
    font-size: 15px;
    padding: 0;
    margin: 0;
    padding: 10px;
    list-style: none;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    overflow-y: scroll;
}

.sidebar>ul::-webkit-scrollbar {
    display: none;
}



.sidebar>ul li a {
    display: block;
    padding: 10px;
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 300;
    color: #fff;
    text-align: center;
    transition: all .2s ease;
}

.sidebar>ul li a:hover,
.sidebar>ul li a.active {
    font-weight: 500;
    background: #61BD00;
    border-radius: 10px;
}

.sidebar>ul li a i {
    font-size: 18px;
}






/* dropdown li  */
.sidebar>ul li.dropdown ul {
    border-radius: 6px;
    background-color: #373b3e;
    position: relative;
    margin: 10px;
    display: none;
}

.sidebar>ul li.dropdown ul li {
    padding: 0px;
}

.sidebar>ul li.dropdown ul li a {
    padding: 6px 15px 6px 24px;
    font-size: 13px;
    position: relative;
}

.sidebar>ul li.dropdown ul li a::after {
    position: absolute;
    content: '';
    height: 5px;
    width: 5px;
    background-color: #fff;
    border-radius: 50px;
    left: 10px;
    top: 45%;
}

.sidebar>ul li.dropdown ul li a.active {
    color: #00bcff;
    background-color: transparent;
}

.sidebar>ul li.dropdown ul li a.active::after {
    background-color: #00bcff;
}


/* 000000000000000000 header 000000000000000000  */
.header {
    height: 60px;
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.header .logo {
    transition: all .2s ease-in-out;
    width: 100px;
}


.header .logo img {
    width: 100px;
}

.header .main-nav {
    display: flex;
    justify-content: end;
    align-items: center;
    gap: 20px;
    padding: 10px;
    padding-left: 0px;
    padding-right: 0px;
    width: calc(100% - 100px);
    height: 100%;
    transition: all .2s ease-in-out;
}


.header .main-nav .sidebar-toggle {
    display: none;
    margin-right: 10px;
}



/* user nav  */
.header .main-nav .dropdown-menu {
    margin-top: 20px !important;
    left: unset !important;
    right: 0px !important;
}

.header .main-nav .user-nav button {
    font-size: 13px;
    width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.header .main-nav .user-nav .dropdown-menu a {
    font-size: 13px;
}







/* 000000000000000000 content 000000000000000000  */
.content {
    left: 0;
    position: relative;
    margin-left: 130px;
    padding: 15px;
    padding-bottom: 0px;
    transition: all .2s ease-in-out;
    height: calc(100lvh - 60px);
    overflow: hidden;
    overflow-y: scroll;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.content.clicked {
    margin-left: 0px;
}

.content .content-wrapper {
    flex: 1 0 auto;
}


/* page header  */
.content .content-wrapper .page-header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 35px;
}

.content .content-wrapper .page-header h3 {
    margin-bottom: 10px;
}





.content .content-wrapper .page-header .head-btns a {
    padding: 8px 12px;
    color: #fff;
    background-color: #61BD00;
    color: #fff;
    border-radius: 6px;
    font-size: 13px;
}

.content .content-wrapper .page-header .head-btns a i {
    rotate: 180deg;
    margin-right: 5px;
}


/* TOP BOX  */
.top-box {
    margin-bottom: 30px;
}

.top-box .single-box {
    padding: 30px 20px;
    margin-bottom: 20px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 20px;
    transition: .3s ease all;
    color: #fff;
}

.top-box .single-box.green {
    /* background-color: #9bce65; */
    background-color: #61BD00;
}

.top-box .single-box.blue {
    /* background-color: #7bc9d1; */
    background-color: #00ABBD;
}

.top-box .single-box.red {
    /* background-color: #FF5E4B; */
    background-color: #BF1400;
}

.top-box .single-box:hover {
    -webkit-transform: translateY(-4px) scale(1.02);
    -moz-transform: translateY(-4px) scale(1.02);
    -ms-transform: translateY(-4px) scale(1.02);
    -o-transform: translateY(-4px) scale(1.02);
    transform: translateY(-4px) scale(1.02);
    -webkit-box-shadow: 0 14px 24px rgba(0, 0, 0, 0.2);
    box-shadow: 0 14px 24px rgba(0, 0, 0, 0.2);
    z-index: 999;
}


.top-box .single-box .icon {
    height: 50px;
    width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.top-box .single-box .icon i {
    font-size: 40px;
}

.top-box .single-box .icon img {
    width: 50px;
    mix-blend-mode: lighten;
}


.top-box .single-box .text {
    text-align: end;
    width: calc(100% - 50px);
}

.top-box .single-box .text .number {
    font-size: 30px;
    font-weight: 500;
}







/* PROJECT LIST  */
.project-list .head {
    margin-bottom: 20px;
}

.project-list .list>.row .col-md-4 {
    margin-bottom: 30px;
}

.project-list .single-project {
    position: relative;
    margin-bottom: 20px;
    background-color: #ffffff;
    border-radius: 10px;
    padding: 30px 20px;
    transition: .25s ease all;
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, 0.05);
    height: 100%;
}

.project-list .single-project:hover {
    -webkit-transform: translateY(-4px) scale(1.02);
    -moz-transform: translateY(-4px) scale(1.02);
    -ms-transform: translateY(-4px) scale(1.02);
    -o-transform: translateY(-4px) scale(1.02);
    transform: translateY(-4px) scale(1.02);
    -webkit-box-shadow: 0 14px 24px rgba(0, 0, 0, 0.2);
    box-shadow: 0 14px 24px rgba(0, 0, 0, 0.2);
    z-index: 999;
}

.project-list .single-project .top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.project-list .single-project .top .date {
    font-size: 14px;
    padding-left: 15px;
    position: relative;
}

.project-list .single-project .top .date::after {
    position: absolute;
    content: '';
    top: 6px;
    left: -3px;
    height: 6px;
    width: 6px;
    border: 1px solid #212529;
    border-radius: 50px;
}

.project-list .single-project .top .view-btn a {
    font-size: 13px;
    color: #6a727a;
}

.project-list .single-project .lower .title {
    font-weight: 500;
    font-size: 17px;
    margin-bottom: .25rem;
}

.project-list .single-project .lower .type {
    color: #212529bf;
    font-size: 14px;
}


/* 000000000000000000 project manager 000000000000000000  */

.project-manager .list>.row .col-md-4 {
    margin-bottom: 30px;
}

.project-manager .manager {
    text-align: center;
    background-color: #ffffff;
    border-radius: 10px;
    padding: 20px;
    transition: .25s ease all;
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, 0.05);
    height: 100%;
}

.project-manager .manager img {
    padding: .25rem;
    background-color: #fff;
    border: 1px solid #dee2e6;
    border-radius: 50%;
    width: 70px;
    margin-bottom: 10px;
}

.project-manager .manager .name {
    font-size: 18px;
}

.project-manager .manager .project {
    font-size: 14px;
}

.project-manager .manager .btns {
    margin-top: 15px;
}

.project-manager .manager .btns a {
    font-size: 13px;
    color: #fff;
    border-radius: 10px;
    padding: 8px 12px;
    margin-right: 4px;
}

.project-manager .manager .btns a.whtspp {
    background-color: #00A31C;
}

.project-manager .manager .btns a.mail {
    background-color: #1392FF;
}

.project-manager .manager .btns a:last-child {
    margin: 0px;
}

.project-manager .manager .btns a i {
    margin-right: 3px;
}





/* 000000000000000000 payment history 000000000000000000  */
.notice-box {
    position: relative;
    margin-bottom: 30px;
    background-color: #ffffff;
    border-radius: 10px;
    padding: 20px;
    transition: .25s ease all;
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, 0.05);
}

.notice-box .head {
    font-weight: 500;
    font-size: 18px;
    margin-bottom: 10px !important;
}

.notice-box .points li {
    font-size: 14px;
    color: #212529bf;
}

.notice-box .points li span {
    width: 20px;
    display: inline-block;
}

/* all payments  */
.payment-list .head {
    margin-bottom: 20px;
}

.payment-list .list>.row .col-md-4 {
    margin-bottom: 30px;
}

.payment-list .single-payment {
    position: relative;
    margin-bottom: 20px;
    background-color: #ffffff;
    border-radius: 10px;
    padding: 30px 20px 20px;
    transition: .25s ease all;
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, 0.05);
    height: 100%;
}

.payment-list .single-payment:hover {
    -webkit-transform: translateY(-4px) scale(1.02);
    -moz-transform: translateY(-4px) scale(1.02);
    -ms-transform: translateY(-4px) scale(1.02);
    -o-transform: translateY(-4px) scale(1.02);
    transform: translateY(-4px) scale(1.02);
    -webkit-box-shadow: 0 14px 24px rgba(0, 0, 0, 0.2);
    box-shadow: 0 14px 24px rgba(0, 0, 0, 0.2);
    z-index: 999;
}

.payment-list .single-payment .top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.payment-list .single-payment .top .date {
    font-size: 14px;
    padding-left: 15px;
    position: relative;
}

.payment-list .single-payment .top .date::after {
    position: absolute;
    content: '';
    top: 6px;
    left: -3px;
    height: 6px;
    width: 6px;
    border: 1px solid #212529;
    border-radius: 50px;
}

.payment-list .single-payment .top .view-btn a {
    font-size: 13px;
    color: #6a727a;
}

.payment-list .single-payment .lower {
    margin-bottom: 30px;
}

.payment-list .single-payment .lower .title {
    font-weight: 500;
    font-size: 17px;
    margin-bottom: .25rem;
}

.payment-list .single-payment .lower .type {
    color: #212529bf;
    font-size: 14px;
}

.payment-list .single-payment .bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
}

.payment-list .single-payment .bottom .status {
    border-radius: 6px;
    padding: 5px 10px;
}

.payment-list .single-payment .bottom .status.success {
    background-color: #dcfcdc;
    color: green;
}

.payment-list .single-payment .bottom .status.declined {
    background-color: #ffe4e4;
    color: red;
}



/* 000000000000000000  project reciept modal  000000000000000000  */
.reciept-modal .reciept-inner {
    width: 100%;
}

.reciept-inner {
    text-align: center;
    padding: 10px;
    padding-bottom: 20px;
}

.reciept-inner .head {
    border-bottom: 1px solid #aeaeae;
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.reciept-inner .head .icon {
    display: flex;
    justify-content: center;
    margin-bottom: 15px;
}

.reciept-inner .head .icon i {
    background-color: #61BD00;
    border: 6px solid #dcfcdc;
    font-size: 25px;
    display: flex;
    color: #fff;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    height: 54px;
    width: 54px;
}

.reciept-inner.declined .head .icon i {
    background-color: red;
    border: 6px solid #ffe4e4;
}


.reciept-inner .head h4 {
    text-transform: uppercase;
    font-size: 18px;
}

.reciept-inner .purpose {
    width: 100%;
    padding: 10px 15px;
    background-color: #c4c4c439;
    display: inline-block;
    border-radius: 10px;
    font-size: 14px;
}

.reciept-inner .amount .price {
    font-weight: 500;
    font-size: 15px;
}


.reciept-inner .detail {
    margin-top: 30px;
}



.reciept-inner .detail>div {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
}

.reciept-inner .detail>div span:last-child {
    font-weight: 500;
}



/* 000000000000000000  project details page (box/ head/ body)  000000000000000000  */
.mainbox {
    margin-bottom: 50px;
}

.boxhead {
    margin-bottom: 10px;
}

.boxhead h6 {
    font-size: 18px;
}

.boxbody {
    background-color: #ffffff;
    border-radius: 10px;
    padding: 20px;
    transition: .25s ease all;
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, 0.05);
}


/* 000000000000000000 PROJECT INFO 000000000000000000  */

.project-info .info .single-box {
    margin-bottom: 20px;
}

.project-info .info .single-box .head {
    margin-bottom: 0px !important;
    font-weight: 500;
    font-size: 15px;
}

.project-info .info .single-box .text {
    color: #212529;
    font-size: 14px;
}



/* 000000000000000000 project timeline  000000000000000000  */


.project-timeline .head {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.project-timeline .head .date {
    font-size: 14px;
}

.project-timeline .head .date span {
    font-weight: 500;
}



.timeline-progress {
    margin-bottom: 20px;
}

.timeline-progress .date {
    display: flex;
    justify-content: space-between;
    font-size: 13px;
}

.timeline-progress .date label {
    font-weight: 500;
    font-size: 11px;
}

.timeline-progress .date .end {
    text-align: end;
}

.timeline-progress .progress {
    background-color: #d8d8d8;
    border-radius: 10px;
    position: relative;
    margin: 15px 0;
    height: 18px;
}

.timeline-progress .progress-done {
    background: linear-gradient(to left, #F2709C, #FF9472);
    border-radius: 10px;
    color: #fff;
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    transition: 1s ease 0.3s;
}

.timeline-progress .msg p {
    color: red;
    font-size: 12px;
}



/* top bar  */
.project-timeline>.timeline .top-bar {
    margin-bottom: 20px;
}

.project-timeline>.timeline .top-bar .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
}


.project-timeline>.timeline .top-bar .inner .left {
    display: flex;
    gap: 8px;
    min-width: 50%;
    width: 50% !important;
}

.project-timeline>.timeline .top-bar .inner .right {
    display: flex;
    justify-content: end;
    min-width: 50%;
    width: 50% !important;
}

.project-timeline>.timeline .top-bar .inner .left>div {
    min-width: 48%;
    width: 48% !important;
}

.project-timeline>.timeline .top-bar .inner input,
.project-timeline>.timeline .top-bar .inner select {
    padding-top: 8px;
    padding-bottom: 8px;
    border-radius: 10px;
}

.project-timeline>.timeline .top-bar .inner>div a {
    background-color: #61BD00;
    color: #fff;
    padding: 10px 15px;
    font-size: 14px;
    text-align: center;
    border-radius: 10px;
    transition: .3s ease all;
}

.project-timeline>.timeline .top-bar .inner>div a:hover {
    background-color: #212529;
}

.project-timeline>.timeline .top-bar .inner>div a i {
    margin-right: 4px;
}





.project-timeline>.timeline .boxes>.row .col-sm-6 {
    margin-bottom: 30px;
}

.project-timeline>.timeline .boxes .single-box {
    background-color: #ffffff;
    border-radius: 10px;
    padding: 20px;
    transition: .25s ease all;
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, 0.05);
    height: 100%;
}

.project-timeline>.timeline .boxes .single-box>div {
    margin-bottom: 10px;
}

.project-timeline>.timeline .boxes .single-box>div:last-child {
    margin-bottom: 0px;
}



.project-timeline>.timeline .boxes .single-box .date {
    font-size: 18px;
    font-weight: 500;
    color: #61BD00;
    margin-bottom: 10px;
}

.project-timeline>.timeline .boxes .single-box .details {
    color: #212529bf;
    font-size: 13px;
    min-height: 50px;
    margin-bottom: 15px;
}

.project-timeline>.timeline .boxes .single-box .details>div {
    position: relative;
    padding-left: 10px;
}

.project-timeline>.timeline .boxes .single-box .details>div::before {
    color: #212529bf;
    font-size: 13px;
    position: absolute;
    content: '';
    height: 6px;
    width: 6px;
    top: 6px;
    left: -3px;
    border: 1px solid #212529;
    border-radius: 50%;
}


/* approval */
.project-timeline>.timeline .boxes .single-box .all-approvals {
    font-size: 12px;
    margin-bottom: 20px;
}

.project-timeline>.timeline .boxes .single-box .all-approvals h6 {
    font-size: 16px;
}

.project-timeline>.timeline .boxes .single-box .all-approvals .approval {
    margin-bottom: 5px;
    color: #212529bf;
}

.project-timeline>.timeline .boxes .single-box .all-approvals .approval i {
    color: #212529;
    width: 16px;
    text-align: center;
}


.project-timeline>.timeline .boxes .single-box .all-approvals .approval i.check {
    color: #61BD00;
}



/* status */
.project-timeline>.timeline .boxes .single-box .status h6 {
    font-size: 15px;
}

.project-timeline>.timeline .boxes .single-box .status p {
    color: #61BD00;
}



/* payment */
.project-timeline>.timeline .boxes .single-box .btns a {
    background-color: #212529;
    color: #fff;
    border: 1px solid #212529;
    padding: 5px 10px;
    border-radius: 10px;
    margin-top: 10px;
    display: inline-block;
    font-size: 13px;
    transition: .3s ease all;
}

.project-timeline>.timeline .boxes .single-box .btns a:hover {
    background-color: #fff;
    color: #212529;
}





/* 000000000000000000 Gallery  000000000000000000  */
.gallery {
    padding-bottom: 0px;
}

.gallery .img-box {
    margin-bottom: 30px;
}

.gallery .img-box .image {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 5px;
}

.gallery .img-box .image a:not(.gallery .img-box a:first-child) {
    display: none;
}

.gallery .img-box .text {
    text-align: center;
    font-size: 15px;
}






/* 000000000000000000 overall timeline  000000000000000000  */
.overall-timeline .timeline .head {
    background-color: #212529;
    color: #fff;
    border-radius: 10px;
    font-size: 14px;
    padding: 7px;
    font-weight: normal !important;
    margin-bottom: 4px;
}

.overall-timeline .timeline .head ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.overall-timeline .timeline .head ul>li {
    width: 25%;
    padding: 5px;
    font-size: 14px;
}

.overall-timeline .timeline .head ul>li:first-child {
    width: 30%;
}

/* MAIN  */
.overall-timeline .timeline .cells ul.main {
    max-height: 300px;
    padding-right: 3px;
    overflow: hidden;
    overflow-y: scroll;
}


.overall-timeline .timeline .cells ul.main::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #F5F5F5;
}

.overall-timeline .timeline .cells ul.main::-webkit-scrollbar {
    width: 3px;
    background-color: #F5F5F5;
}

.overall-timeline .timeline .cells ul.main::-webkit-scrollbar-thumb {
    background-color: #212529;
}






.overall-timeline .timeline .cells ul.main>li {
    padding: 3px 7px;
    margin-bottom: 4px;
    background-color: #ffffff;
    border: 1px solid #bababa;
    border-radius: 10px;
    transition: .25s ease all;
}

.overall-timeline .timeline .cells ul.inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.overall-timeline .timeline .cells ul.inner>li {
    width: 25%;
    padding: 5px;
    font-size: 13px;
}

.overall-timeline .timeline .cells ul.inner>li:first-child {
    width: 30%;
}


/* btn  */
.overall-timeline .timeline .cells ul.inner>li a {
    background-color: #212529;
    color: #fff;
    padding: 5px 10px;
    display: inline-block;
    border: 1px solid #212529;
    border-radius: 10px;
    transition: .3s ease all;
}

.overall-timeline .timeline .cells ul.inner>li a:hover {
    background-color: transparent;
    color: #212529;
}


/* status  */
.overall-timeline .timeline .cells ul.inner>li p {
    padding: 5px 0px;
    display: inline-block;
}

.overall-timeline .timeline .cells ul.inner>li p.pending {
    color: orange;
    font-weight: 500;
}

.overall-timeline .timeline .cells ul.inner>li p.approved,
.overall-timeline .timeline .cells ul.inner>li p.paid {
    color: #61BD00;
    font-weight: 500;
}










/* 000000000000000000 all contract 000000000000000000  */
.all-contracts .contains {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.all-contracts .contains>.row {
    width: 105%;
}

.all-contracts .contains .single-file {
    text-align: center;
    font-size: 13px;
    margin-bottom: 20px;
    background-color: #fff;
    padding: 6px;
    border-radius: 5px;
}

.all-contracts .contains .single-file .name {
    margin-bottom: 5px;
    font-weight: 500;
}

.all-contracts .contains .single-file .btns a {
    margin-right: 3px;
    background-color: #61BD00;
    padding: 5px 6px;
    font-size: 10px;
    color: #fff;
    border-radius: 5px;
}

.all-contracts .contains .single-file .btns a:last-child {
    margin-right: 0px;
    background-color: #212529;
}


.all-contracts .contains .head {
    background-color: #212529;
    color: #fff;
    border-radius: 10px;
    font-size: 14px;
    padding: 7px;
    font-weight: normal !important;
    margin-bottom: 4px;
}

.all-contracts .contains .head ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.all-contracts .contains .head ul>li {
    width: 25%;
    padding: 5px;
}

.all-contracts .contains .head ul>li:first-child {
    width: 75%;
}


.all-contracts .contains .head ul>li:last-child {
    text-align: end;
    padding-right: 15px !important;
}




/* MAIN  */
.all-contracts .contains .cells ul.main {
    max-height: 300px;
    padding-right: 3px;
    overflow: hidden;
    overflow-y: scroll;
}


.all-contracts .contains .cells ul.main::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #F5F5F5;
}

.all-contracts .contains .cells ul.main::-webkit-scrollbar {
    width: 3px;
    background-color: #F5F5F5;
}

.all-contracts .contains .cells ul.main::-webkit-scrollbar-thumb {
    background-color: #212529;
}

.all-contracts .contains .cells ul.main>li {
    padding: 3px 7px;
    margin-bottom: 4px;
    background-color: #ffffff;
    border: 1px solid #bababa;
    border-radius: 10px;
    transition: .25s ease all;
}



/* inner  */
.all-contracts .contains .cells ul.inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.all-contracts .contains .cells ul.inner>li {
    width: 25%;
    padding: 5px;
    font-size: 13px;
}

.all-contracts .contains .cells ul.inner>li:first-child {
    width: 75%;
}


.all-contracts .contains .cells ul.inner>li.action-btn {
    text-align: end;
}




/* btn  */
.all-contracts .contains .cells ul.inner>li a {
    background-color: #212529;
    color: #fff;
    padding: 5px 10px;
    display: inline-block;
    border: 1px solid #212529;
    border-radius: 10px;
    transition: .3s ease all;
}

.all-contracts .contains .cells ul.inner>li a:hover {
    background-color: transparent;
    color: #212529;
}


/* status  */
.all-contracts .contains .cells ul.inner>li p {
    padding: 5px 0px;
    display: inline-block;
}





/* 000000000000000000 all document 000000000000000000  */
.all-documents .contains {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.all-documents .contains>.row {
    width: 105%;
}

.all-documents .contains .single-file {
    text-align: center;
    font-size: 13px;
    margin-bottom: 20px;
    background-color: #fff;
    padding: 6px;
    border-radius: 5px;
}

.all-documents .contains .single-file .name {
    margin-bottom: 5px;
    font-weight: 500;
}

.all-documents .contains .single-file .btns a {
    margin-right: 3px;
    background-color: #61BD00;
    padding: 5px 6px;
    font-size: 10px;
    color: #fff;
    border-radius: 5px;
}

.all-documents .contains .single-file .btns a:last-child {
    margin-right: 0px;
    background-color: #212529;
}



.all-documents .contains .head {
    background-color: #212529;
    color: #fff;
    border-radius: 10px;
    font-size: 14px;
    padding: 7px;
    font-weight: normal !important;
    margin-bottom: 4px;
}

.all-documents .contains .head ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.all-documents .contains .head ul>li {
    width: 25%;
    padding: 5px;
}

.all-documents .contains .head ul>li:first-child {
    width: 75%;
}

.all-documents .contains .head ul>li:last-child {
    text-align: end;
    padding-right: 15px !important;
}

/* MAIN  */
.all-documents .contains .cells ul.main {
    max-height: 300px;
    padding-right: 3px;
    overflow: hidden;
    overflow-y: scroll;
}


.all-documents .contains .cells ul.main::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #F5F5F5;
}

.all-documents .contains .cells ul.main::-webkit-scrollbar {
    width: 3px;
    background-color: #F5F5F5;
}

.all-documents .contains .cells ul.main::-webkit-scrollbar-thumb {
    background-color: #212529;
}


.all-documents .contains .cells ul.main>li {
    padding: 3px 7px;
    margin-bottom: 4px;
    background-color: #ffffff;
    border: 1px solid #bababa;
    border-radius: 10px;
    transition: .25s ease all;
}





/* inner  */
.all-documents .contains .cells ul.inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.all-documents .contains .cells ul.inner>li {
    width: 25%;
    padding: 5px;
    font-size: 13px;
}

.all-documents .contains .cells ul.inner>li:first-child {
    width: 75%;
}


.all-documents .contains .cells ul.inner>li.action-btn {
    text-align: end;
}


/* btn  */
.all-documents .contains .cells ul.inner>li a {
    background-color: #212529;
    color: #fff;
    padding: 5px 10px;
    display: inline-block;
    border: 1px solid #212529;
    border-radius: 10px;
    transition: .3s ease all;
}

.all-documents .contains .cells ul.inner>li a:hover {
    background-color: transparent;
    color: #212529;
}


/* status  */
.all-documents .contains .cells ul.inner>li p {
    padding: 5px 0px;
    display: inline-block;
}



/* 000000000000000000 reset password 000000000000000000  */

.reset-password .head {
    margin-bottom: 20px;
}


.reset-password form {
    background-color: #ffffff;
    border-radius: 10px;
    padding: 20px;
    transition: .25s ease all;
    box-shadow: 0 0 30px 0 rgba(82, 63, 105, 0.05);
}

.reset-password form .form-group {
    margin-bottom: 12px;
}

.reset-password form .form-group input {
    padding: 10px;
}

.reset-password form .form-group .sbmt-btn {
    padding: 8px 16px;
    font-size: 14px;
    color: #fff;
    background-color: #61BD00;
    border: 1px solid #61BD00;
    border-radius: 6px;
    transition: .3s ease all;
}

.reset-password form .form-group .sbmt-btn:hover {
    background-color: #424649;
    border: 1px solid #424649;
}


/* 000000000000000000 footer 000000000000000000  */
footer {
    padding: 20px 0px;
    font-size: 14px;
}

footer .inner ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

footer .inner ul li {
    width: 50%;
}

footer .inner ul li .developed {
    text-align: end;
}

footer .inner ul li .developed a {
    color: #61BD00;
}


@media (max-width:1300px) {
    /* .project-timeline>.timeline .top-bar .inner>div {
        min-width: 48%;
        width: 48% !important;
    } */
}


@media (max-width:1200px) {
    .project-timeline>.timeline .top-bar .inner .left {
        min-width: 65%;
        width: 65% !important;
    }

    .project-timeline>.timeline .top-bar .inner .right {
        min-width: 35%;
        width: 35% !important;
    }

    .project-manager .manager .btns a {
        padding: 9px;
        font-size: 12px;

    }

}

@media (max-width:1085px) {
    .top-box .single-box .text .number {
        font-size: 25px;
    }

    .top-box .single-box .text .name p {
        font-size: 12px !important;
    }
}

@media (max-width:991px) {
    .wrapper {
        position: relative;
    }

    .header .main-nav .sidebar-toggle {
        display: block;
    }

    .sidebar {
        transform: translate(-140px, 0px);
        border-radius: 0px;
        margin: 0px;
    }

    .content {
        margin-left: 0px;
    }

    footer {
        width: 100%;
    }

}

@media (max-width:850px) {
    .top-box .single-box .text .number {
        font-size: 20px;
    }

    .boxbody {
        padding: 15px;
    }

    .overall-timeline .timeline .head ul>li,
    .overall-timeline .timeline .cells ul.inner>li,
    .all-contracts .contains .head ul>li,
    .all-documents .contains .head ul>li,
    .all-contracts .contains .cells ul.inner>li,
    .all-documents .contains .cells ul.inner>li {
        font-size: 10px;
    }

    .overall-timeline .timeline .head ul>li:first-child,
    .overall-timeline .timeline .cells ul.inner>li:first-child {
        width: 25%;
    }

    .project-timeline .boxhead h6,
    .project-timeline .boxhead .date {
        font-size: 17px;
    }

    .project-manager .manager .btns a {
        padding: 9px 9.2px;
        font-size: 10px;
    }
}

@media (max-width:767px) {
    .header .main-nav .notification {
        margin: 0px 14px;
    }

    .row-reverse {
        flex-direction: column-reverse;
    }

    .top-box .single-box .text .number {
        font-size: 25px;
    }

    .overall-timeline .timeline .cells ul.main {
        max-height: 200px;
    }
}


@media (max-width:575px) {
    .header .main-nav {
        padding-right: 0px;
    }

    .login-wrapper .form {
        width: 350px;
    }

    .project-timeline>.timeline .top-bar .inner .left {
        min-width: 65%;
        width: 65% !important;
    }

    .project-timeline>.timeline .top-bar .inner .right {
        min-width: 35%;
        width: 35% !important;
    }

    .project-timeline .boxhead h6,
    .project-timeline .boxhead .date {
        font-size: 12px;
    }

    .project-timeline>.timeline .top-bar .inner .right .print,
    .project-timeline>.timeline .top-bar .inner .right a {
        display: block;
        width: 100%;
    }

}

@media (max-width:375px) {
    .login-wrapper .form {
        width: 300px;
    }

    .project-timeline>.timeline .top-bar .inner {
        flex-direction: column;
    }

    .project-timeline>.timeline .top-bar .inner .left {
        min-width: 100%;
        width: 100% !important;
    }

    .project-timeline>.timeline .top-bar .inner .right {
        min-width: 100%;
        width: 100% !important;
    }

    .project-timeline>.timeline .top-bar .inner .right .print,
    .project-timeline>.timeline .top-bar .inner .right a {
        display: block;
        width: 100%;
    }
}

/* Card container */
.offer {
    text-align: left !important;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 10px 25px rgba(15, 23, 42, 0.08);
    padding: 16px 16px 18px;
    margin-bottom: 24px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Offer image – fixed landscape ratio */
.offer .offer-image-wrapper {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    margin-bottom: 14px;
}

.offer .offer-image-wrapper .offer-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    /* approximate 16:9 ratio */
    aspect-ratio: 16 / 9;
}

/* Offer text area */
.offer .offer-title {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 4px;
}

.offer .offer-description {
    font-size: 0.9rem;
    color: #6c757d; /* similar to .text-muted */
    margin-bottom: 6px;
    height: 44px;
}

.offer .offer-expiry {
    font-size: 0.85rem;
    color: #6c757d;
    margin-bottom: 12px;
}

/* Affiliate block */
.offer .affiliate {
    display: flex;
    align-items: center;
    margin-top: 4px;
    padding-top: 10px;
    border-top: 1px solid #e9ecef;
    margin-bottom: 14px;
}

/* Round logo */
.offer .affiliate-logo {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    overflow: hidden;
    background: #e9ecef;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 0.95rem;
    font-weight: 600;
    color: #6c757d;
}

.offer .affiliate-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Affiliate text */
.offer .affiliate-info {
    margin-left: 10px;
    min-width: 0;
}

.offer .affiliate-name {
    font-size: 0.95rem;
    font-weight: 600;
    margin-bottom: 2px;
}

.offer .affiliate-subtitle {
    font-size: 0.82rem;
    color: #6c757d;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Button area – reuse existing .btn styles from Bootstrap */
.offer .btns {
    margin-top: auto; /* push button to bottom for equal-height cards */
}

.offer .btns .mail {
    display: inline-block;
    width: 100%;
    text-align: center;
    padding: 0.55rem 1rem;
    border-radius: 999px;
    border: none;
    text-decoration: none;
    font-weight: 500;
    /* mimic .btn-primary */
    background-color: #0d6efd;
    color: #ffffff;
}

.offer .btns .mail:hover,
.offer .btns .mail:focus {
    background-color: #0b5ed7;
    color: #ffffff;
    text-decoration: none;
}

/* Small tweak for mobile spacing */
@media (max-width: 575.98px) {
    .offer {
        padding: 14px;
    }
}
