@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
:root{
--aside-width: 240px;
--space-xs: 4px;
--space-s: 8px;
--space-base: 16px;
--space-m: 24px;
--color-black: #000000;
--color-neutral-3: #f3f3f3;
--color-neutral-0: #ffffff;

--ig-background-blur: rgba(248, 249, 249, .8);

--color-secondary: #0b57d0;

--radius-s: 8px;
--radius-circle: 100%;

    --transition-1: 0.25s ease;
    --transition-2: 0.5s ease-in-out;
}
body{
     font-family: "Poppins", sans-serif;
     font-size: 14px;
     margin:0px;
         background-color: #f8fafd;
}
a{
  text-decoration: none;
  color: var(--color-secondary);
}
.text-align-center{
  text-align: center;
}
.main-content{
  display: flex;
}
.theme-container{
    max-width: 90%;
    margin: 0px auto;
}
aside{
    width: var(--aside-width);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 96.5vh;
    padding: var(--space-base);
    position: sticky;
    top: 0px;
    background-color: #e9eef6;
}

main{
  flex:1;
  padding: var(--space-base);
}
.top-section{
  display: flex;
  justify-content: flex-end;
}
nav{
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.nav-links{
  color: var(--color-black);
  text-decoration: none;
  padding: var(--space-base);
  display: flex;
  gap: var(--space-s);
  align-items: center;
  border-radius: var(--radius-s);
}
.nav-links:hover, .nav-links.active{
  background-color: #d3e3fd;
  color: var(--color-secondary);
}
.nav-links:hover .ph, .nav-links.active .ph{
  font-family: "Phosphor-Fill" !important;
}
.login-info{
  display: flex;
  gap: var(--space-s);
  align-items: center;
}

.btn{
    text-decoration: none;
    padding: var(--space-s) var(--space-base);
    display: flex;
    gap: var(--space-s);
    align-items: center;
    border-radius: var(--radius-s);
    border: 0px;
    font-size: 16px;
    height: 32px;
}
button.btn{
      height: 45px;
}
button.btn.text-align-center{
  justify-content: center;
}
.btn-primary{
  background-color: var(--color-secondary);
  color: var(--color-neutral-0);
}
.btn-plain{
  background-color: transparent;
  color: var(--color-black);
}
.user-title{
  margin-top: 0px;
  font-size: 22px;
  margin-bottom: 0px;
}
.user-designation{
  margin-top: 8px;
  margin-bottom: 16px;
}
.user-info__action{
  display: flex;
  gap: var(--space-base);
}
.user-name-thumb{
  width: 32px;
  height: 32px;
  background-color: var(--color-secondary);
  color: var(--color-neutral-0);
  border-radius:50%;
  display:flex;
  justify-content:center;
  align-items: center;
}
.social-media-links{
  display: flex;
  gap: var(--space-s);
}
.social-media-links a {
    color: var(--color-secondary);
    font-size: 18px;
    background-color: var(--color-neutral-0);
    width: 32px;
    height: 32px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    transition:0.5s;
}
.social-media-links a:hover{
  background-color: var(--color-secondary);
  color:var(--color-neutral-0);
   transition:0.5s;
}
.breadcrumb{
  display:flex;
  list-style-type: none;
  margin-left: 0px;
  padding-inline-start: 0px;
  gap: 8px;
}
.breadcrumb i{
      font-size: 12px;
    color: #353535;
}
.display-flex{
  display: flex;
}
.gap-m{
  gap: var(--space-m)
}
.flex1{
  flex: 1;
}
.justify-content-end{
  justify-content: flex-end;
}
.padding-bottom-m{
  padding-bottom: var(--space-m);
}
.margin-bottom-m{
  margin-bottom: var(--space-m);
}
.full-width{
  width: 100%;
}
.iconCard__icon img {
    width: 32px;
}
.iconCard{
    display: flex;
    gap: var(--space-m);
    margin-bottom: 45px;
    background-color: var(--color-neutral-0);
    padding: var(--space-base);
    border-radius: 8px;
}
.iconCard__info{
  flex:1;
}
.iconCard__info__title{
  font-size: 16px;
  font-weight: 500;
  margin-bottom: var(--space-base);
}
.iconCard__info__description {
    font-size: 12px;
    color: #181818;
    margin-bottom: var(--space-base);
}
.timeline-list-item{
  list-style: none;
  position: relative;
  padding-bottom: 32px;;
}

.timeline-title {
    font-weight: 500;
    font-size: 16px;
}
.timeline-date {
    color: #5f5f5f;
    font-size: 12px;
}
.timeline-info {
    font-size: 14px;
}
.timeline-list-item:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 10px;
    left: -30px;
    width: 1px;
    height: 100%;
    background: hsl(0deg 0% 80.46%);
}
.timeline-list-item::after {content: "";position: absolute;top: 11px;left: -33px;height: 8px;width: 8px;background: var(--color-secondary);border-radius: 50%;box-shadow: 0 0 0 4px hsl(217.14deg 91.3% 90.98%);}
.font-size-s{
  font-size: 14px;
}
.font-size-xs{
  font-size: 12px;
}
.margin-bottom-base{
  margin-bottom: 16px;
}
/*
====================================
Blog
====================================
*/
.article {
    background-color: var(--color-neutral-0);
    border-radius: 8px;
}
.article figure {
    margin: 0px;
    position: relative;
    height: 220px;
    overflow: hidden;
        border-radius: 8px 8px 0px 0px;
}
.article figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: var(--transition-1);
  border-radius: 8px 8px 0px 0px;
}
a.article-title {
    font-size: 14px;
    font-weight: 500;
    padding-left: 8px;
    padding-right: 8px;
    display: block;
    padding-bottom: var(--space-base);
}
.article-category-date {
    font-size: 12px;
    font-weight: 500;
    color: #797676;
    margin-top: 8px;
    margin-bottom: 8px;
    padding-left: 8px;
    padding-right: 8px;
}

.article:hover figure img{
      transform: scale(1.1);
}

footer {
    text-align: center;
    padding-top: var(--space-base);
    padding-bottom: var(--space-base);
}
footer .disclaimer{
font-size: 12px;
    color: #717171;
    font-weight: 500;
    margin-top: 8px;
}

/*
=================================================
Isotop
================================================
*/
.filter-buttons {
  display: flex;
  gap: var(--space-s);
  flex-wrap: wrap;
}
.filter-buttons button{
      text-decoration: none;
      padding: var(--space-base);
      display: flex;
      gap: var(--space-s);
      align-items: center;
      border-radius: var(--radius-s);
      border: 0px;
      height: 50px;
      font-size: 16px;
      background-color: #e9eef6;
}
.filter-buttons button.active{
  background-color: var(--color-secondary);
  color: var(--color-neutral-0);
}

.portfolio-item figure{
  margin:0px;
  width: 100%;
  height: 220px;
  overflow: hidden;
  border-radius: var(--radius-s) var(--radius-s) 0px 0px;
}
.portfolio-item{
  padding-bottom: var(--space-base);
  background-color: var(--color-neutral-0);
  border-radius: 8px;
}

.portfolio-item figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--transition-1);
}

.portfolio-item:hover figure img {
    transform: scale(1.1);
}
a.portfolio-item__title {
    font-size: 16px;
    font-weight: 500;
    padding-left: var(--space-base);
    padding-right: var(--space-base);
}
.portfolio-item__category {
    font-size: 12px;
    font-weight: 500;
    color: #3a3a3a;
    margin-top: 8px;
    margin-bottom: 8px;
    padding-left: var(--space-base);
    padding-right: var(--space-base);
}
.grid{
      border: 1px solid #e9eef6;
      margin-bottom: 24px;
      margin-top: 24px;
      background-color: #e9eef6;
      border-radius: var(--radius-s);
}
.grid-item {
  width: 33.33%;
  box-sizing: border-box;
  padding: var(--space-base);
}

@media (max-width: 992px) {
  .grid-item {
    width: 33.33%;   /* 3 columns */
  }
}

@media (max-width: 768px) {
  .grid-item {
    width: 50%;      /* 2 columns */
  }
}

@media (max-width: 480px) {
  .grid-item {
    width: 100%;     /* 1 column */
  }
}


.blog-grid, .grid-column-four {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* Desktop - 4 columns */
  gap: 16px;
}

/* Tablet */
@media (max-width: 1024px) {
  .blog-grid, .grid-column-four {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile */
@media (max-width: 600px) {
 .blog-grid, .grid-column-four {
    grid-template-columns: repeat(1, 1fr);
  }
}

.grid-column-two{
  display: grid;
  grid-template-columns: 3fr 1fr;
  gap: 24px;
}

/* Mobile layout */
@media (max-width: 768px){
  .grid-column-two{
    grid-template-columns: 1fr;
  }
}

.flex-wrap{
  flex-wrap: wrap;;
}
@media (max-width: 1024px) {
  aside{
    position: fixed;
    left: 0;
  }
}
.menu-icon{
  display: none;
}
@media (max-width: 1024px) {
    aside {
        position: fixed;
        left: -280px;
        background-color: var(--color-neutral-0);
        top: 0;
        z-index: 9;
        box-shadow: 0px 0px 13px -10px;
    }
     .main-content.aside-collapse aside{
      left: 0px;
     }
    .menu-icon {
        display: flex;
        width: 32px;
        height: 32px;
        position: absolute;
        right: -39px;
        background-color: var(--color-neutral-0);
        border-radius: 4px;
        justify-content: center;
        align-items: center;
        top: 30px;
        cursor: pointer;
    }
}
.form-group{
  margin-bottom: var(--space-m);
}
.form-group label{
  display: block;
  margin-bottom: 4px;
}
.form-control{
    box-sizing: border-box;
    padding: var(--space-base);
    border: 1px solid var(--color-neutral-0);
    border-radius: 4px;
    display: block;
    width: 100%;
    background-color: var(--color-neutral-0);
}
.form{
    max-width: 420px;
    background-color: #e9eef6;
    padding: var(--space-m);
    border-radius: 8px;
}
.btn-login{
    min-height: 52px;
    width: 100%;
    text-align: center;
    justify-content: center;
}

/*
=======================================
Counter Card
=======================================
*/
.counter-card{
  border-radius: var(--radius-s);
  padding: var(--space-base);
  background-color: var(--color-neutral-0);
  display: flex;
  gap: var(--space-base);
}
.counter-card__icon{
  --icon-width: 42px;
  width: var(--icon-width);
  height: var(--icon-width);
  background-color: var(--color-neutral-3);
  border-radius: 6px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 26px;
}
.counter-card__counter{
  font-size: 22px;
  font-weight: 500;
}
.counter-card__counter_label{
  color: #333333;
}
.counter-card__icon--voilet{background-color: #fce8ff;color: #9C27B0;}
.counter-card__icon--red{
  background-color: #ffe2e0;
  color: #F44336;
}
.counter-card__icon--green{
  background-color: #eaffd2;
  color: #4CAF50;
}
.counter-card__icon--yellow{
  background-color: #fff7e0;
  color: #ffbf00;
}
.counter-card__icon--sky {
    background-color: #d6faff;
    color: #00BCD4;
}

.counter-card__icon--blue {
    background-color: #d3ebff;
    color: #2196F3;
}
.counter-card__icon--cyan {
    background-color: #d3fffb;
    color: #009688;
}

/*
==============================================
Text Editor
==============================================
*/

.toolbar{background:white;border-bottom: 1px solid #e6f0ff;padding:10px;display:flex;flex-wrap:wrap;gap:5px;border-radius: 8px 8px 0px 0px;}

.toolbar button,
.toolbar select{padding:6px 10px;cursor:pointer;border: 1px solid #ffffff;background-color: #fff;}

#editor{background:white;min-height:350px;padding:15px;outline:none;border-radius: 0px 0px 8px 8px;margin-bottom: 16px;}

#editor img{
display:block;
margin:10px 0;
cursor:pointer;
}

pre{
background:#eee;
padding:10px;
overflow:auto;
}


input[type=file]::file-selector-button {
  margin-right: 20px;
  border: none;
  background: #084cdf;
  padding: 10px 20px;
  border-radius: 10px;
  color: #fff;
  cursor: pointer;
  transition: background .2s ease-in-out;
}

input[type=file]::file-selector-button:hover {
  background: #0d45a5;
}

.flex-direction-column{
  flex-direction: column;
}
.justify-content-center{
  justify-content: center;
}
.align-items-center{
  align-items: center;
}
.login-wrap{
  min-height: 84vh;
}
.login-form{
    min-width: 320px;
}

/*=========================================
Table
===========================================*/
.table-wrap{
background: var(--color-neutral-0);
border-radius:8px;
overflow:hidden;
box-shadow:0 2px 8px rgba(0,0,0,0.05);
}

table{
width:100%;
border-collapse:collapse;
font-family:Arial, sans-serif;
}

thead{
background:var(--color-neutral-0);
}

th{
text-align:left;
padding:14px 16px;
font-size:14px;
color:#444;
border-bottom:1px solid #eee;
}

td{
padding:14px 16px;
border-bottom:1px solid #f1f1f1;
font-size:14px;
color:#555;
}

tbody tr{
transition:0.2s;
}

tbody tr:hover{
background:#f9fbff;
}


.post-detail{
  background-color: var(--color-neutral-0);
  padding: var(--space-base);
  border-radius: 8px;
}
.post-image{
  border-radius: 8px;
  margin-bottom: var(--space-base);
}
.post-image {
    border-radius: 8px;
    margin-bottom: var(--space-base);
    max-height: 320px;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}

.skill-tag-list{
  list-style-type: none;
  display: flex;
  gap:4px;
  flex-wrap: wrap;
  margin-block-start: 0px;
  padding: 0px;
}

.skill-tag-list li{
    padding: 5px 10px;
    border-radius: 30px;
    background-color: #000000;
    color: #fff;
}

 .gallery {
    max-width: 900px;
    background-color: #e9eef6;
    padding: 30px;
    border-radius: 8px;
}

.main-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: 8px;
}

.thumbnails {
    display: flex;
    gap: 10px;
    margin-top: 10px;
    flex-wrap: wrap;
    justify-content: center;
}

.thumb {
    width: 100px;
    height: 80px;
    object-fit: cover;
    cursor: pointer;
    border-radius: 6px;
    transition: 0.3s;
    border: 1px solid #ddd;
    opacity: 0.5;
}

.thumb:hover {
    opacity: 1;
}

.thumb.active {
    opacity: 1;
    box-shadow: 0px 0px 0px 2px #0b57d0;
}
.zoom-modal {
    display: none;
    position: fixed;
    z-index: 9999;
    padding: 20px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.9);
    text-align: center;
}

.zoom-modal img {
    max-width: 90%;
    max-height: 90%;
    margin-top: 3%;
    border-radius: 8px;
    animation: zoomIn 0.3s ease;
}

@keyframes zoomIn {
    from {
        transform: scale(0.7);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}