   /* Global Colors */
:root { 
  --background-color: #ffffff;
  --default-color: #314862;
  --heading-color: #13447f;
  --accent-color: #004994;
  --accent-dark-color: #062c4f;  
  --accent-bg-color: #e8f3fe;
  --accent-bg-light-color: #f4f9fe;  
  --surface-color: #ffffff; 
  --contrast-color: #ffffff; 
}
   
   
   
   /* common */ 

body {
  color:var(--tc-neutral-700);
  font-size: 16px;
}

   footer {
        margin-top: 5rem;

        .copyright {
          padding: 1rem 0;

           p {
          font-size: 0.85rem;
          margin-top: 0;
          margin-bottom: 2px;
        }
        }

    }

    .navbar .navbar-nav .nav-item .nav-link {
      font-size: 1.15rem;
    }
    

    .navbar.style-3 {
      margin-top: 38px !important;
    }
    .navbar.style-3 .header .sign, .navbar.style-3 .header .logout {position: absolute; right: -5rem; top:-3.1rem; font-size: 14px;color: var(--accent-color);}
    .navbar.style-3 .header .sign:hover, .navbar.style-3 .header .logout:hover {
      color: var(--accent-dark-color);
    }
      .navbar.style-3 .header .my {position: absolute; right:2rem; top:-3.1rem; font-size: 14px; color: var(--accent-color);}
      .navbar.style-3 .header .my::before {
        position:absolute; right: -24px; top: 5px; content:""; width: 1px; height: 12px; background-color: var(--accent-color);;
      }
    .navbar.style-3 .header .my:hover {
      color: var(--accent-dark-color);
    }





    /* swiper */ 
    .swiper {
      width: 100%;
      height:100%;
      border-radius: 16px;
    }
    .swiper.dupel-main {
        height: 60vh;
    }

    .swiper-slide {
      text-align: center;
      font-size: 18px;
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .swiper-slide img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    .swiper-popup-search {
        height: auto;
    }


    .sec-visual {
        .custom-container {
          width: 1195px;
        height: 70px;
        background-size: cover;

        h2 {
          text-align: center;
          padding-top: 20px;
          color: #111;
          font-size: 40px;
          font-weight: 700;
        }
      }
      /* .member {
            background: url(../imgs/dupel/bg_menu1.jpg) no-repeat;
      }
      .Research {
            background: url(../imgs/dupel/bg_menu2.jpg) no-repeat;
      }
      .publication {
            background: url(../imgs/dupel/bg_menu3.jpg) no-repeat;
      }
      .board {
        background: url(../imgs/dupel/bg_menu4.jpg) no-repeat;
      } */
    }

    .main-visual {
      .custom-container {
        max-width: 1195px ;
      }
    }


    .cont-nav {
      display: flex;
      max-width: 1200px;
      padding: 24px 24px 0;
      align-items: flex-start;
      gap: 32px;
       a {
        display: inline-block;
        padding: 10px;
        font-size: 18px;
       }
       .active {
        border-bottom: 3px solid #000;
        font-weight: 600;
       }
    }

    .main-news {

      .article {

          .card-body {
            min-height: 306.34px !important;
          }


        &:hover {
          .arrow-box {
            border-color: var(--accent-color);
            background-color: var(--accent-color);
            transform: rotate(-45deg);

            svg {
              path {
                stroke: var(--tc-system-white) !important;
              }
            }
          }
        }

        .badge {
          color: var(--accent-color);
          font-size: 1rem;
          padding: 5px 18px;
        }
        .badge.bg-1 {
          background-color: var(--accent-bg-color) !important;
        }

        .hover-underline {
          h6 {
            font-size: 17px;
            font-weight: 500;

            .line-wrapper {

            &::after {
              content: '';
              background: linear-gradient(90deg, #004f99 0%, #6eb92b 100%);
            }
          }
          }

        }

      }

    }

    /* main gallery */
    .sec-2-about {
      .picture-insta {
        .rounded-16 {
          height: 195px;
        }
      }
    } 



    .sec-1-home-3 .bg .main-logo .swiper-slide {
      background-color: var(--background-color);
    }





    /*Professor*/
    .profile-image-wrapper {
      .profile-image {
      position: relative;
      width: 180px;
      height: auto;
      margin: 40px auto 40px;
      overflow: hidden;
      box-shadow: 0 3px 10px 
      }
      .profile-name {
        text-align: center;
        p {
          margin-top: 0;
          margin-bottom: 0;
        font-size: 1.5rem;
        color: var(--tc-neutral-800);
        font-weight: 500;
        &:first-child {
          font-size: 2rem;
          font-weight: 700;
        }
         &:last-child {
          color: var(--tc-neutral-400);
         }
        }
      }
    }


    .professor-info {
      .item {
        display: flex;
        padding: 15px;
        .title {
          position: relative;
          width: 150px;
          font-weight: 500;
          color: var(--accent-color);
          font-size: 17px;
          flex-shrink: 0;
          margin-right: 20px;
          padding-left: 12px;
           &::before {
            position: absolute;
            content: "";
            top:12px;
            left:0;
            width:4px;
            height:4px;
            border-radius: 50%;
            background-color: var(--accent-color);
          }
        }
        .desc {
          font-size: 16px;
          line-height: 1.5;
          white-space: normal; /* 줄바꿈 허용 */
          word-break: break-word;
          color:var(--tc-neutral-700);
          word-break: keep-all;
        }
      }
       a {
          display: inline-block;
          padding: 10px 20px 10px 20px;
          justify-content: center;
          align-items: center;
          gap: 10px;
          border-radius: 8px;
          background-color: var(--accent-color);
          color: var(--surface-color);
        }
    }

        .history-timeline-wrap {
          padding-top: 4rem;
          padding-left: 3rem;
          h3 {
            padding-left: 0;
            font-size: 1.7rem;
            color: var(--accent-color);
            font-weight: 700;
          }
          .history-timeline {
            position: relative;
            padding-left: 2rem;
    
            &::before {
              content: "";
              position: absolute;
              left: 0;
              top: 0;
              bottom: 0;
              width: 1px;
              background:
                color-mix(in srgb, var(--accent-color), transparent 80%);
            }
    
            .timeline-item {
              position: relative;
              margin-bottom: 2rem;
    
              .timeline-dot {
                position: absolute;
                left: -2.3rem;
                top: 0.5rem;
                width: 12px;
                height: 12px;
                background: var(--accent-color);
                border-radius: 50%;
                border: 3px solid var(--background-color);
                box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent-color), transparent 80%);
              }
              .timeline-content {
                display: flex;
                align-items: flex-start;
                gap: 8px;
                .date {
                  white-space: nowrap;
                  color: var(--accent-color);
                  padding-right: 0.3rem;
                }
              }
            }
    
          }
        }






      .student-tabs {
        .nav-pills {
          background: color-mix(in srgb, var(--accent-color), transparent 95%);
          border-radius: 50px;
          padding: 8px;
          display: inline-flex;
          gap: 5px;
          margin: 0 auto;
          width: 100%;
          --bs-nav-pills-border-radius: 0.375rem;
          --bs-nav-pills-link-active-color: #fff;
          --bs-nav-pills-link-active-bg: #0d6efd;
          .nav-item {
            .nav-link {
              display: inline-block;
              background: transparent;
              border: none;
              color: var(--default-color);
              padding: 12px 28px;
              border-radius: 40px;
              font-weight: 500;
              transition: all 0.3s ease;
              margin: 0;
            }
           .active {
                background: var(--accent-color);
                color: var(--contrast-color);
                box-shadow: 0 4px 15px 
            color-mix(in srgb, var(--accent-color), transparent 70%);
            }
          }
        }
        .nav-pills.bg-none {
          background: none;
        }
      }

        .student-list {
          .article.card-6 {
            padding:30px 10px 25px 50px;
            margin-bottom: 1.5rem;
            align-items: flex-start;
            gap: 36px;
            .card-img {
              flex-shrink: 0;
    
              .cover-image {
                width: 144px;
                height: 185px;
                border: 1px solid #eee;

              }
              p {
                text-align: center;
                color: #000;
                font-weight: 400;
                font-size: 1rem;
              }
            }
          }
        }

    .student-info {
      .item {
        display: flex;
        padding: 5px 15px;
        .title {
          position: relative;
          width: 132px;
          padding-left: 13px;
          font-weight: 500;
          color: var(--accent-color);
          font-size: 16px;
          flex-shrink: 0;
          margin-right: 20px;
          &::before {
            position: absolute;
            content: "";
            top:10px;
            left:0;
            width:3px;
            height:3px;
            border-radius: 50%;
            background-color: var(--accent-color);
          }
        }
        .desc {
          font-size: 16px;
          line-height: 1.5;
          white-space: normal;
          word-break: break-all;   
          color: var(--tc-neutral-700);    
          word-break: keep-all; 
        }
      }
    }



    /*Research*/
    /*topics*/
        .topics-wrap {
          justify-content: space-between;
    
          .col-lg-6 {
            width: 48%;
            h3 {
              padding: 10px 25px;
              border-radius: 100px;
              background: linear-gradient(to right, #005095, #76B82A);
              color: var(--contrast-color);
              font-size: 1.2rem;
              font-weight: 400;
            }
            .article.card-11 {
              margin-bottom: 4rem;
              .card-img-top {
                max-width:100%;
              }
              .card-text {
                color: var(--tc-neutral-800);
                font-size: 1.2rem;
              }
            }

          }
        }


  /*projects-logo*/
  .projects-logo {
    ul {
      li {
        width: 23.89%;
        padding: 5px 0;
        border: 1px solid var(--tc-neutral-400);
        border-radius: 10px;
        text-align: center;
      }
    }
  }

.board-wrap {

    .board-list-search {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding:0;

        .text-muted {
          
        }
    
        .sch-box {
         width: 17rem;
        max-width: 100%;
        border: 1px solid var(--tc-neutral-200);
        padding: 3px;
        border-radius: 8px;
        margin-bottom: 1rem;

          .sch-inp {
            flex: 0 0 auto;
            display: inline-flex;
    
            input {
              width: 100%;
              height: 100%;
              padding-left: 1rem;
              padding-right: 1rem;
              -webkit-appearance: none;
              -webkit-border-radius: 0;
              outline: none;
              border: none;
              padding-top: 10px;
              font-size: 14px;
              &::placeholder {
                font-size: 14px;
              }
            }
    
            button {
              padding: 4px 6px;
              background-color: var(--accent-bg-color);
              border-radius: 8px;

              svg {
              transition: fill 0.3s ease;
              height: 1.5em;
            }
            }

            .btn-clear {
              display: flex;
              padding: 4px 6px;
              background-color:#f7f7f7;
              border-radius: 8px;
              margin-left: 7px;

              svg {
              transition: fill 0.3s ease;
              height: 1.5em;
            }
            }
    
          }
        }
    
    
      }

      }

  .table {
    width: 100%;
    border-top: 1px solid var(--border-primary);
    border-bottom: 1px solid var(--border-secondary);
    text-align: left;

    .table__thead {
      display: flex;

      .table__thead-th {
        flex: 1;
        padding: 11px 0;
        font-size: 15px;
        font-weight: 500;
        line-height: 1.5;
        letter-spacing: -0.03125em;
        text-align: center;
        color: var(--accent-color);

        &:first-child {
          width: 100px;
          flex: 0 0 auto;
        }
        &:nth-child(3)  {
          width: 90px;
          flex: 0 0 auto;
        }
        &:nth-child(4)  {
          width: 90px;
          flex: 0 0 auto;
        }
        &:nth-child(5)  {
          width: 120px;
          flex: 0 0 auto;
        }

        &:nth-child(2) {
          width: calc(100% - 400px);
        }
      }
    }
    .table__tbody {
      padding-left: 0;
      margin-top: 0;

      .table__tr {
      display: flex;
      align-items: center;
      border-top: 1px solid var(--tc-neutral-300);

      div {
        flex: 1;
        padding: 16px 0;
        font-size: 16px;
        font-weight: 400;
        line-height: 1.625;
        letter-spacing: -0.03125em;
        text-align: center;

        &:first-child {
          width: 100px;
          flex: 0 0 auto;
        }
        &:nth-child(3)  {
          width: 90px;
          flex: 0 0 auto;
          font-size: 15px;
        }
        &:nth-child(4)  {
          width: 90px;
          flex: 0 0 auto;
          font-size: 15px;
        }
        &:nth-child(5)  {
          width: 120px;
          flex: 0 0 auto;
          font-size: 15px;
        }

        &:nth-child(2) {
          width: calc(100% - 400px);
          text-align: left;
          padding-left: 20px;
        }
      }
      }
    }
  }

    .board-view-wrap {
      padding-top: 4rem;
      .title {
        h3 {
          font-size: 1.5rem;
        }
        .border-top {
          border-top: 1px solid var(--tc-neutral-200);
        }
      }
      .board-view-detail  {
        padding-top: 2rem;
        padding-bottom: 2rem;
        p {
                  line-height: 1.8;
        }

      }

      .board-view-ui {
        border-top: 1px solid var(--border-secondary);
        display: flex;
        justify-content:end;
        padding: 40px 0;

        .right {
          flex:0 0 auto;
          display: inline-flex;

          a.btn-basic {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            height: 40px;
            padding: 0 26px;
            font-size: 16px;
            font-weight: 400;
            line-height: 1.571;
            letter-spacing: -0.0214em;
            white-space: nowrap;
            color: #fff;
            border: 1px solid var(--accent-color);
            border-radius: 6px;
            background: var(--accent-color);
            box-sizing: border-box;
            transition-property: background, border;
            transition-duration: .2s;
            transition-timing-function: var(--bon-ease-Out);
            gap: 6px;
            &:hover {
              background-color: var(--tc-neutral-700);
            }
          }

          }
        }

        .board-cont-list {

          li {

            border-top: 1px solid var(--tc-neutral-100);
            list-style: none;

            &:last-child {
              border-bottom: 1px solid var(--tc-neutral-100);
            }

            .cont-link {
              display: flex;
              justify-content: space-between;
              align-items: center;
              width: 100%;
              height: 100%;
              padding: 18px 32px 18px 0;

              .info-wrap {
                display: flex;
                align-items: center;
                width: 100%;
                width: calc(100% - 28px);
                padding-right: 32px;

                 .date-wrap {
                  width: 120px;
                  flex: 0 0 auto;
                  line-height: 28px;
                  font-weight: 300;
                  color: var(--tc-neutral-500);
                }

                .title {
                    font-weight: 500;
                }
                
              }

              .quick-link-button {
                width: 28px;
                height: 28px;
                text-indent: -9999px;
                background: var(--tc-neutral-600) url(../imgs/dupel/arrow-right-regular-full.svg) no-repeat center;
                background-size: 16px;
                border-radius: 6px;
                transition: background .3s;
              }
            }

            }

          }
        }


  







.blind, caption, caption span, legend {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 1px;
    font-size: 0;
    text-indent: -9999px;
    white-space: nowrap;
}


.pagination {
  .page-item {
    .pagination_item {
      color: var(--accent-color);
      &:hover {
        background-color: var(--accent-color) !important;
          svg {
          path {
            stroke: var(--contrast-color) !important;
          }
      }
      }
      &:focus {
        background-color: var(--accent-color) !important;
      }
      svg {
        path {
          stroke: var(--accent-color) !important;
        }
      }
    }
  }
} 


/* 모바일 카드 스타일 */
@media (max-width: 767px) {
  .table-row {
    border: 1px solid #eaeaea;
    margin-bottom: 10px;
    border-radius: 8px;
    padding: 0;

    .cell {
      display: flex;
      justify-content: space-between;
      border-right: none !important;
      padding: 10px 15px;
      border-bottom: 1px solid #f2f2f2;

      &:last-child {
        border-bottom: none;
      }

      &::before {
        content: attr(data-label);
        font-weight: 600;
        color: #555;
      }
    }
  }
}





  /*equipment*/
    .equipment-wrap {
      flex: 0 0 auto;
      width: 100%;
  
      .swiper-wrapper {
        flex-direction: row;
        flex-wrap: wrap;
  
        .swiper-slide {
          width: 22%;
          height: auto;
          margin-left: 1.5%;
          margin-right: 1.5%;
          margin-bottom: 70px;
  
          .thumbnail {
            border: 1px solid #ccc;
          }

          h4 {
            padding-top: 1rem;
            font-size: 1.15rem;
            font-weight: 500;

            span {
              display: block;
              padding-top: 0.4rem;
              color: #777;
              font-size: 0.9rem;
              font-weight: 300;
            }
          }
        }
      }
  
    }





/*paper*/
.hover-underline {
  .line-wrapper {

    &::after {
      content: '';
      background: linear-gradient(90deg, #004f99 0%, #6eb92b 100%) !important;
    }
  }
}

.paper-list {
  .article.card-11 {
    .card-body {
      display: block;
      padding: 25px 30px 25px;

      .card-info {
        .state {
          color: var(--accent-color);
          padding-right: 1rem;
        }
      }

      h5 {
        font-size: 1.1rem;
        font-weight: 500;
        line-height: 1.6;
      }
    }
  }
}






/*Board*/
      /*gallery*/
    .gallery-wrap {
      flex: 0 0 auto;
      width: 100%;
  
      .swiper-wrapper {
        flex-direction: row;
        flex-wrap: wrap;
  
        .swiper-slide {
          width: 17%;
          height: auto;
          margin-left: 1.5%;
          margin-right: 1.5%;
          margin-bottom: 2px;

          
          .article {
            &:hover {
                .arrow-box {
                    border-color: var(--accent-color);
                    background-color: var(--accent-color);
                    transform: rotate(-45deg);

                    svg {
                        path {
                            stroke: var(--tc-system-white) !important;
                        }
                    }
                }
            }
          }

          .post-link {
            width: 195px;
            border-radius: 1rem;

            .thumbnail {
            min-height: 146px;
            max-height: 146px;
            border-radius: 0;

            img {
              border-radius: 1rem;
            }
          }

            .card-corner {
              width: 50px;
              height: 50px;
              background-color: var(--surface-color);
              &::before {
                width: 90%;
                background-color: var(--surface-color);
              }
              .arrow-box {
                width: 40px;
                height: 40px;
                inset: 9px 0% 0% 9px;
                svg {
                  path {
                    stroke: var(--accent-color);
                  }
                }
              }
              .curve-one {
                box-shadow: 0.313rem 0.313rem 0 0.313rem #fff;
              }
              .curve-two {
                box-shadow: 0.313rem 0.313rem 0 0.313rem #fff;
              }
            }
          }
          
          h4 {
            padding-top:0.3rem;
            font-family: 'Pretendard', monospace;
            font-size: 1rem;
            font-weight: 500;
            line-height: 1.2;
            word-break: keep-all;
            min-height: 68px;
          }
          p {
              display: block;
              margin: 0;
              padding-top: 0.6rem;
              color: #666;
              font-size: 0.9rem;
              font-weight: 300;
            }
        }
      }
  
    }











    /*노트북 & 태블릿 가로 : 1024px-1279px*/
@media all and (min-width:1024px) and (max-width:1279px){
	style입력
}

/*태블릿 가로 : 769px-1023px*/
@media all and (min-width:768px) and (max-width:1023px){
	style입력
}

/*모바일 가로 & 태블릿 세로 : 480px-767px*/
@media all and (max-width:767px) {

  .navbar.style-3 {
    margin-top: 18px !important;
  }

  .navbar.style-3 .header {
    padding: 0 10px;
    justify-content: space-evenly;

    .dark-mode-invert {
      width: 90%;
    }

  }

  /* 2025-11-24  overwrite */
  .swiper.dupel-main {
    height: auto;
  }

  .professor-info {

    .item {
      display: block;
    }

  }

  .history-timeline-wrap {
    padding-left: 2rem;

    & .history-timeline {
      & .timeline-item {
        & .timeline-content {
          display: block;

          span {
            display: block;
          }

          .date {
            padding-bottom: 0.5rem;
          }
        }
      }
    }
  }

  .main-logo {
    .swiper-wrapper {
      display: inline;

      .swiper-slide {
        margin-bottom: 0.5rem;

      }
    }
  }

  footer {

    .section-footer-3 {

      padding: 1.5rem;

      .align-items-center {
        display: block !important;

        .pe-5 {
          padding-bottom: 1rem;
          display: block;
        }

      }
    }

  }

  .sec-visual {
    .custom-container {
        width: 100%;
        height: 40px;

        h2 {
          padding-top: 0;
          padding-bottom: 10px;
          font-size: 35px;
        }
    }
  }

  .author-card {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    padding: 30px 10px;
  }

  .student-list {
    .article.card-6 {
        padding: 30px 10px 25px 20px;
        margin-bottom: 1.5rem;

        .item {
          display: block;
          padding-left: 0;
        }
    }
}


.projects-logo {

    ul {
      justify-content: space-between;

      li {
        width: 47%;
      }
    }

}

.equipment-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;

    & .swiper-wrapper {

        .swiper-slide {
          width: 100%;
          margin-bottom: 40px;
        }
    }
  }


/*Board*/
  .board-wrap {
    .table {

      .table__thead {
        display: none;
      }

      .table__tbody {

        .table__tr {
          display: flex;
          align-items: flex-start;
          flex-direction: column;
          padding: 15px 0 15px 10px;
          border-top: 1px solid var(--tc-neutral-300);

          div {

            &:first-child {
              width: 100%;
              flex: 0 0 auto;
              order: 2;
              margin-top: 6px;
              font-size: 14px;
            }

            &:nth-child(2) {
              width: 100%;
              order: 1;
              font-weight: 400;

              a {
                font-weight: 400;
                font-family: 'Pretendard', monospace;
              }
            }

            &:nth-child(1),
            &:nth-child(3),
            &:nth-child(4),
            &:nth-child(5) {
              display: none;
            }
          }

          .table__tbody-td {
            padding: 0;
          }
        }
      }
    }

  }

  .board-view-wrap {
    padding-top: 2rem;

    .title {
      h3 {
        font-size: 1.2rem;
        font-weight: 700;
        line-height: 1.5;
      }
    }

    & .board-cont-list {
      & li {
        & .cont-link {
          padding-right: 0;

          & .info-wrap {
            display: block;

            .date-wrap {
              display: block;
            }
          }
        }
      }
    }
  }

  .board-cont-list {
    padding-left: 0;
  }

  .gallery-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;

    & .swiper-wrapper {

        .swiper-slide {
          width: 47%;

          .article {
            width: 100%;

            a {
              display: block;

              .post-link {
                width: 100%;

                .card-corner {
                  display: none;
                }
 
              }
            }
          }
        }

      }

    }


    

  .sidebar-copyright {
    position: fixed;
    bottom: 0;
  }

  /*Topic*/
  .topics-wrap {
    .col-lg-6 {
      width: 100%;
    }
  }

  .fs-8 {
    font-size: 13px;
  }

}




/*모바일 : -479px*/
@media all and (max-width:479px){
	
}