/* =========================================================
   파일명: /assets/css/sidebar.css
   역할: PC 서브페이지 좌측 사이드바 공통 스타일
   기준: sidebar 출력 여부는 PHP layout.php, 모바일 숨김은 mobile.css에서만 관리
========================================================= */
.sidebar{
  position:sticky;
  top:118px;
  align-self:start;
  overflow:hidden;
  background:#fff;
  border:1px solid #d5e2f0;
  border-radius:0;
  box-shadow:0 10px 24px rgba(31,49,76,.07);
}

.sidebar-title{
  min-height:56px;
  display:flex;
  align-items:center;
  padding:0 18px;
  background:linear-gradient(180deg,#146fc9 0%,#0f5fb5 100%);
  color:#fff;
  font-size:18px;
  font-weight:900;
  letter-spacing:-.5px;
}

.sidebar-list{
  background:#fff;
}

.sidebar-section-title{
  padding:18px 18px 8px;
  font-size:13px;
  font-weight:900;
  color:#0f5fb5;
  letter-spacing:-.3px;
}

.sidebar a{
  position:relative;
  display:flex;
  align-items:center;
  min-height:47px;
  padding:0 18px 0 20px;
  border-bottom:1px solid #e8edf4;
  color:#2d3b4f;
  font-size:14px;
  font-weight:800;
  line-height:1.35;
  background:#fff;
  transition:background .15s ease,color .15s ease,padding-left .15s ease;
}

.sidebar a::before{
  content:"";
  width:4px;
  height:4px;
  margin-right:9px;
  border-radius:0;
  background:#9aaec3;
  flex:0 0 auto;
}

.sidebar a:hover,
.sidebar a.is-active{
  background:#f0f7ff;
  color:#0f5fb5;
  padding-left:24px;
}

.sidebar a:hover::before,
.sidebar a.is-active::before{
  background:#0f66bb;
}

.sidebar a.sub{
  padding-left:28px;
  font-size:13px;
  color:#506176;
  background:#fbfdff;
}

.sidebar a.sub.is-active,
.sidebar a.sub:hover{
  background:#f0f7ff;
  color:#0f5fb5;
}

.sidebar a:last-child{
  border-bottom:0;
}

@media(min-width:769px){
  .main-layout.has-sidebar{
    grid-template-columns:220px minmax(0,1fr);
  }

  .main-layout.has-sidebar > .sidebar{
    display:block;
    visibility:visible;
    min-width:0;
  }
}


/* =========================================================
   [99] 제품소개 하위 메뉴
========================================================= */
.sidebar-sub-list{
  padding:8px 0 10px;
  background:linear-gradient(180deg,#f7fbff 0%,#fbfdff 100%);
  border-bottom:1px solid #e4edf7;
}

.sidebar-sub-link{
  position:relative;
  display:flex;
  align-items:center;
  min-height:38px;
  margin:0 10px 6px;
  padding:0 12px 0 30px;
  border:1px solid transparent;
  border-radius:0;
  background:transparent;
  color:#52677d;
  font-size:13px;
  font-weight:800;
  line-height:1.35;
  text-decoration:none;
  transition:background .15s ease,color .15s ease,padding-left .15s ease,border-color .15s ease;
}

.sidebar-sub-link::before{
  content:"";
  position:absolute;
  left:15px;
  width:5px;
  height:5px;
  border-radius:0;
  background:#b6c8dc;
}

.sidebar-sub-link:hover,
.sidebar-sub-link.is-active{
  background:#fff;
  border-color:#cfe2f6;
  color:#0f5fb5;
  padding-left:34px;
  box-shadow:0 6px 14px rgba(15,65,120,.04);
}

.sidebar-sub-link:hover::before,
.sidebar-sub-link.is-active::before{
  background:#0f66bb;
}
