/*
 Theme Name: Astra Child
 Template: astra
 Version: 1.0.0
 Text Domain: astra-child
*/

.cpd-dashboard-section{
  padding:60px 0;
}

.cpd-dashboard-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:40px;
  margin-bottom:30px;
}

.cpd-title{
  margin:0 0 10px;
  font-size:54px;
  line-height:1.1;
  font-weight:800;
  text-transform:uppercase;
  color:#6b0015;
}

.cpd-subtitle{
  margin:0;
  font-size:18px;
  color:#666;
}

.cpd-stats-wrap{
  box-shadow:0;
}

.cpd-stat-card{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:140px;
}

.cpd-stat-icon{
  width:55px;
  height:55px;
  border-radius:50%;
  flex-shrink:0;
}

.cpd-stat-icon.total{
  background:#6b0015;
}

.cpd-stat-icon.target{
  background:#44b749;
}

.cpd-stat-icon.progress{
  background:#f0b323;
}

.cpd-stat-icon.attention{
  background:#e61919;
}
.cpd-stat-icon.completed {
  background: #a5a5a5;
}

.cpd-stat-number{
  display:block;
  font-size:32px;
  line-height:1;
  font-weight:700;
  color: #000;
}

.cpd-stat-label{
  display:block;
  font-size:14px;
  color:#666;
}

.cpd-filters-wrap{
  display:flex;
  gap:15px;
  align-items:center;
  margin-bottom:20px;
}

.cpd-search-field,
.cpd-filter-select{
  height:54px;
  border:1px solid #ddd;
  border-radius:8px;
  padding:0 18px;
  background:#fff;
  font-size:15px;
}

.cpd-search-field{
  width:320px;
}

.cpd-filter-select{
  width:220px;
}

.cpd-clear-btn{
  margin-left:auto;
  height:54px;
  padding:0 25px;
  border:1px solid #6b0015;
  background:#fff;
  color:#6b0015;
  font-weight:600;
  border-radius:8px;
  cursor:pointer;
}

.cpd-table-wrap{
  background:#fff;
  border:1px solid #e3e3e3;
  border-radius:12px;
  overflow:hidden;
}

.cpd-table-head{
  display:grid;
  grid-template-columns:2fr 2fr 1.2fr 1fr 170px;
  background:#6b0015;
  color:#fff;
  padding:18px 20px;
  font-size:14px;
  font-weight:700;
  text-transform:uppercase;
}

.cpd-project-row{
  display:grid;
  grid-template-columns:2fr 2fr 1.2fr 1fr 170px;
  gap:20px;
  align-items:center;
  padding:20px;
  border-bottom:1px solid #ececec;
}

.cpd-project-row:last-child{
  border-bottom:none;
}

.cpd-project-info{
  display:flex;
  align-items:center;
  gap:15px;
}

.cpd-project-icon{
  width:50px;
  height:50px;
  min-width:50px;
  border-radius:50%;
  background:#6b0015;
}


.cpd-project-info h4{
  margin:0 0 5px;
  font-size:20px;
  line-height:1.3;
  font-weight:700;
  color: #000;
}

.cpd-project-info span{
  color:#777;
  font-size:14px;
}

.cpd-project-details{
  color:#555;
  line-height:1.6;
}

.cpd-project-status{
  display:flex;
  align-items:flex-start;
  gap:10px;
}

.cpd-status-dot{
  width:12px;
  height:12px;
  border-radius:50%;
  margin-top:5px;
  flex-shrink:0;
}

.cpd-status-dot.green{
  background:#44b749;
}

.cpd-status-dot.yellow{
  background:#f0b323;
}

.cpd-status-dot.red{
  background:#e61919;
}

.cpd-project-status strong{
  display:block;
  margin-bottom:3px;
  color: #000;
}

.cpd-project-status span{
  display:block;
  font-size:14px;
  color:#666;
}

.cpd-project-date{
  font-size:15px;
  color:#555;
}

.cpd-project-action a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:12px 24px;
  border:1px solid #6b0015;
  border-radius:8px;
  color:#6b0015;
  text-decoration:none;
  font-weight:600;
}

.cpd-project-action a:hover{
  background:#6b0015;
  color:#fff;
}


.cpd-no-projects {
  color: #000;
}
@media(max-width:1200px){

  .cpd-dashboard-header{
      flex-direction:column;
  }

  .cpd-stats-wrap{
      width:100%;
      flex-wrap:wrap;
  }

}

@media(max-width:991px){

  .cpd-filters-wrap{
      flex-direction:column;
      align-items:stretch;
  }

  .cpd-search-field,
  .cpd-filter-select,
  .cpd-clear-btn{
      width:100%;
      margin:0;
  }

  .cpd-table-head{
      display:none;
  }

  .cpd-project-row{
      display:flex;
      flex-direction:column;
      align-items:flex-start;
      gap:15px;
  }

  .cpd-project-action{
      width:100%;
  }

  .cpd-project-action a{
      width:100%;
  }

}

@media(max-width:767px){

  .cpd-title{
      font-size:36px;
  }

/*   .cpd-stat-card{
      width:100%;
  } */

}




/* ---Signle page ---------*/

 .cpsd-wrapper{
padding:60px 0;
background:#fafafa;
}

.cpsd-grid{
display:grid;
grid-template-columns:2fr 400px;
gap:35px;
}

.cpsd-header{
display:flex;
gap:25px;
margin-bottom:25px;
}

.cpsd-icon{
width:90px;
height:90px;
background:#6b0015;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
overflow:hidden;
}

.cpsd-icon img{
width:50px;
height:50px;
object-fit:contain;
}

.cpsd-category{
color:#6b0015;
font-weight:700;
margin-bottom:10px;
}

.cpsd-title{
font-size:52px;
line-height:1.1;
font-weight:800;
margin:0 0 10px;
text-transform:uppercase;
}

.cpsd-subtitle{
font-size:18px;
color:#666;
margin:0;
}
.cpsd-tabs{
  display:flex;
  gap:40px;
  border-bottom:1px solid #ddd;
  margin-bottom:30px;
}

.cpsd-tab-link{
  border:none;
  background:none;
  padding:15px 0;
  font-size:15px;
  font-weight:700;
  color:#555;
  cursor:pointer;
  position:relative;
}

.cpsd-tab-link.active{
  color:#6b0015;
}

.cpsd-tab-link.active:after{
  content:'';
  position:absolute;
  left:0;
  bottom:-1px;
  width:100%;
  height:3px;
  background:#6b0015;
}

.cpsd-tab-content{
  display:none;
}

.cpsd-tab-content.active{
  display:block;
}

.cpsd-content-box h2{
  margin-bottom:15px;
}

.cpsd-overview-features{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:25px;
  margin-top:35px;
  padding-top:25px;
  border-top:1px solid #e5e5e5;
}

.cpsd-feature-item{
  display:flex;
  gap:15px;
}

.cpsd-feature-icon{
  width:60px;
  height:60px;
  min-width:60px;
  border-radius:50%;
  background:#f7f3ee;
  display:flex;
  align-items:center;
  justify-content:center;
}

.cpsd-feature-icon img{
  width:28px;
  height:28px;
  object-fit:contain;
}

.cpsd-feature-text h4{
  margin:0 0 6px;
  font-size:14px;
  text-transform:uppercase;
}

.cpsd-feature-text p{
  margin:0;
  font-size:14px;
  color:#666;
}

@media(max-width:991px){

  .cpsd-overview-features{
      grid-template-columns:repeat(2,1fr);
  }

}

@media(max-width:767px){

  .cpsd-overview-features{
      grid-template-columns:1fr;
  }

}

.cpsd-content-box,
.cpsd-timeline-box,
.cpsd-card{
background:#fff;
border:1px solid #e5e5e5;
border-radius:12px;
padding:30px;
margin-bottom:25px;
} 



.cpsd-current-status{
display:flex;
gap:12px;
}

.cpsd-status-dot{
width:14px;
height:14px;
border-radius:50%;
margin-top:6px;
}

.cpsd-status-dot.green{
background:#34b233;
}

.cpsd-status-dot.yellow{
background:#f2b126;
}

.cpsd-status-dot.red{
background:#d61f1f;
}

.cpsd-details{
list-style:none;
padding:0;
margin:0;
}

.cpsd-details li{
display:flex;
justify-content:space-between;
padding:12px 0;
border-bottom:1px solid #eee;
}

.cpsd-details li:last-child{
border-bottom:none;
}

.cpsd-timeline{
display:flex;
justify-content:space-between;
position:relative;
margin-top:25px;
}

.cpsd-timeline .cpsd-step:nth-child(-n+3) span{
    background:#4CAF50;
    color:#fff;
}

.cpsd-timeline .cpsd-step:nth-child(n+4) span{
    background:#9e9e9e;
    color:#fff;
}
	.cpsd-timeline:before{
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 18px;
    height: 3px;
    width: 95%;
    margin: 0 auto;
    border-radius: 50px;
    background: linear-gradient(
        to right,
        #8BC34A 0%,
        #4CAF50 55%,
        #d9d9d9 55%,
        #d9d9d9 100%
    );
}

.cpsd-step{
position:relative;
z-index:2;
text-align:center;
}

.cpsd-step span{
width:36px;
height:36px;
background:#bdbdbd;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-weight:700;
margin:0 auto 10px;
}

.cpsd-step.active span{
background:#39a845;
}

.cpsd-subscribe-btn{
display:block;
background:#6b0015;
color:#fff;
text-align:center;
padding:16px;
border-radius:8px;
text-decoration:none;
font-weight:700;
}

@media(max-width:991px){

.cpsd-grid{
grid-template-columns:1fr;
}

.cpsd-title{
font-size:34px;
}

}

@media(max-width:767px){

.cpsd-header{
flex-direction:column;
}

.cpsd-tabs{
overflow:auto;
gap:20px;
}

.cpsd-timeline{
flex-wrap:wrap;
gap:20px;
}

}



.cpsd-breadcrumbs{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:25px;
  font-size:14px;
  color:#777;
}

.cpsd-breadcrumbs a{
  color:#777;
  text-decoration:none;
}

.cpsd-breadcrumbs a:hover{
  color:#7a0d19;
}

.cpsd-breadcrumbs .current{
  color:#555;
  font-weight:500;
}

.cpsd-breadcrumbs span{
  line-height:1;
}
 