---
layout: default
---

<div class="page-content">
  <div class="wrapper">
    <article class="post">
      <header class="post-header">
        <h1 class="post-title">{{ page.title | escape }}</h1>
        {% if page.description %}
          <p class="post-description">{{ page.description }}</p>
        {% endif %}
      </header>

      <div class="post-content">
        {{ content }}
      </div>
      
      <!-- Page Navigation Footer -->
      <footer class="post-footer">
        <div class="post-navigation">
          <a href="{{ "/" | relative_url }}" class="btn btn-primary">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="currentColor" style="margin-right: 0.5rem;">
              <path d="M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm0 14c-3.3 0-6-2.7-6-6s2.7-6 6-6 6 2.7 6 6-2.7 6-6 6z"/>
              <path d="M7 4h2v6H7z"/>
              <path d="M4 7h6v2H4z"/>
            </svg>
            Back to Home
          </a>
        </div>
      </footer>
    </article>
  </div>
</div>

<!-- Back to Top Button -->
<button id="back-to-top" class="back-to-top" aria-label="Back to top">
  <svg width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
    <path d="M10 0L3 7h4v13h6V7h4L10 0z"/>
  </svg>
</button>

<style>
.page-content {
  padding: 2rem 0;
}

.wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}

.post {
  background: white;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  padding: 2rem;
}

.post-header {
  margin-bottom: 2rem;
  border-bottom: 2px solid #e1e4e8;
  padding-bottom: 1rem;
}

.post-title {
  color: #24292e;
  font-size: 2rem;
  margin: 0;
}

.post-description {
  color: #586069;
  font-size: 1.1rem;
  margin: 0.5rem 0 0 0;
}

.post-content {
  line-height: 1.6;
  color: #24292e;
}

.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6 {
  color: #24292e;
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.post-content h1 {
  font-size: 1.8rem;
  border-bottom: 2px solid #e1e4e8;
  padding-bottom: 0.5rem;
}

.post-content h2 {
  font-size: 1.5rem;
  border-bottom: 1px solid #e1e4e8;
  padding-bottom: 0.3rem;
}

.post-content h3 {
  font-size: 1.3rem;
}

.post-content code {
  background: #f6f8fa;
  padding: 0.2rem 0.4rem;
  border-radius: 3px;
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
}

.post-content pre {
  background: #f6f8fa;
  padding: 1rem;
  border-radius: 6px;
  overflow-x: auto;
  border: 1px solid #e1e4e8;
}

.post-content pre code {
  background: none;
  padding: 0;
}

.post-content blockquote {
  border-left: 4px solid #0366d6;
  padding-left: 1rem;
  margin: 1rem 0;
  color: #586069;
}

.post-content table {
  border-collapse: collapse;
  width: 100%;
  margin: 1rem 0;
}

.post-content th,
.post-content td {
  border: 1px solid #e1e4e8;
  padding: 0.5rem;
  text-align: left;
}

.post-content th {
  background: #f6f8fa;
  font-weight: 600;
}

.post-content ul,
.post-content ol {
  padding-left: 2rem;
}

.post-content li {
  margin: 0.5rem 0;
}

/* Post Footer Navigation */
.post-footer {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid #e1e4e8;
}

.post-navigation {
  display: flex;
  justify-content: center;
}

.btn {
  display: inline-flex;
  align-items: center;
  padding: 0.75rem 1.5rem;
  font-size: 1rem;
  font-weight: 500;
  text-decoration: none;
  border-radius: 6px;
  transition: all 0.2s;
  border: none;
  cursor: pointer;
}

.btn-primary {
  background: #0366d6;
  color: white;
}

.btn-primary:hover {
  background: #0256b3;
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

/* Back to Top Button */
.back-to-top {
  position: fixed;
  bottom: 2rem;
  left: 2rem;
  background: #0366d6;
  color: white;
  border: none;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  transition: all 0.2s;
  opacity: 0;
  visibility: hidden;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
}

.back-to-top.show {
  opacity: 1;
  visibility: visible;
}

.back-to-top:hover {
  background: #0256b3;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.2);
}

@media (max-width: 768px) {
  .wrapper {
    padding: 0 0.5rem;
  }
  
  .post {
    padding: 1rem;
  }
  
  .post-title {
    font-size: 1.5rem;
  }
  
  .back-to-top {
    bottom: 1rem;
    left: 1rem;
    width: 40px;
    height: 40px;
  }
}
</style>

<script>
// Back to Top Button
document.addEventListener('DOMContentLoaded', function() {
  const backToTop = document.getElementById('back-to-top');
  
  if (backToTop) {
    // Show/hide button based on scroll position
    window.addEventListener('scroll', function() {
      if (window.pageYOffset > 300) {
        backToTop.classList.add('show');
      } else {
        backToTop.classList.remove('show');
      }
    });
    
    // Smooth scroll to top when clicked
    backToTop.addEventListener('click', function() {
      window.scrollTo({
        top: 0,
        behavior: 'smooth'
      });
    });
  }
});
</script>
