
.layout {
  display: flex;
  min-height: 100vh;
  font-family: 'IBM Plex Sans', sans-serif;
  color: #f0f0f0;
  background-color: #1e1e1e;
}

html, body {
  margin: 0;
  padding: 0;
  background-color: #1e1e1e;
}

.sidebar {
  position: fixed;
  width: 200px;
  background-color: #222;
  padding: 2rem 1rem;
  flex-shrink: 0;
  height: 100vh;
}

.sidebar .logo {
  color: #c3e8cc;
  text-align: center;
  margin-bottom: 2rem;
}

.layout {
  display: flex;
}

.main-content {
  margin-left: 220px;  /* 사이드바만큼 오른쪽으로 밀기 */
  padding: 20px;
  flex: 1;
}

.side-link {
  display: block;
  color: #88c999;
  text-decoration: none;
  padding: 0.5rem 0;
  font-size: 1.1rem;
  text-align: left;
}

.side-link:hover {
  text-decoration: underline;
}

a {
  color: #88c999; /* 예: 짙은 녹색 */
  text-decoration: none; /* 밑줄 제거 (선택사항) */
}

a:hover {
  text-decoration: underline; /* 마우스 올렸을 때 */
}

a:visited {
  color: #88c999;  /* 방문한 링크도 같은 색 유지 */
}

.main-content {
  flex-grow: 1;
  padding: 2rem;
}

.paper-list li {
  position: relative;
  padding-bottom: 1.5rem;
}

.paper-list li::after {
  content: "";
  position: absolute;
  left: 0; /* 번호보다 약간 오른쪽에서 시작 */
  bottom: 0;
  width: calc(80% - 1.5em); /* 오른쪽 끝까지 */
  height: 1px;
  background-color: #ccc;
}

.paper-list li::marker {
  color: #b0e298;
}

.paper-list li {
  margin-bottom: 2em;
}

.paper-list a {
  text-decoration: underline;
  color: inherit;
  font-weight: inherit;
  font-style: inherit;
}

.paper-list hr {
  border: none;
  border-top: 1px solid #ccc;
  margin-top: 0.5em;
  margin-bottom: 1.5em;
  margin-left: 1.2em;
  width: calc(100% - 1.2em);
}


