/* Common styles for Windsurf website */

/* Icon font setup */
@font-face {
  font-family: 'LucideIcons';
  src: url(https://cdn.jsdelivr.net/npm/lucide-static@latest/font/Lucide.ttf) format('truetype');
}

.lucide {
  font-family: 'LucideIcons';
  font-size: 1.25rem;
  line-height: 1;
  vertical-align: middle;
  display: inline-block;
}

/* Section headers */
.section-title {
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
  color: rgb(17, 24, 39);
  margin-bottom: 2rem;
  text-align: center;
}

/* Transitions */
.smooth-transition {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

/* Blog post specific styles */
.post-section-title {
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 600;
  color: rgb(31, 41, 55);
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.post-tag {
  display: inline-block;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  line-height: 1;
  font-weight: 500;
}

/* Blog post content styles */
blockquote {
  border-left-width: 4px;
  border-color: rgb(37, 99, 235);
  padding-left: 1rem;
  font-style: italic;
  color: rgb(75, 85, 99);
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

pre {
  background-color: rgb(243, 244, 246);
  padding: 1rem;
  border-radius: 0.375rem;
  overflow-x: auto;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

code:not(pre code) {
  background-color: rgb(229, 231, 235);
  color: rgb(31, 41, 55);
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  border-radius: 0.25rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

/* Blog filter buttons */
.filter-btn {
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  border-radius: 9999px;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 200ms;
  border-width: 1px;
}

.filter-btn.active {
  background-color: rgb(37, 99, 235);
  color: rgb(255, 255, 255);
  border-color: rgb(37, 99, 235);
}

.filter-btn:not(.active) {
  background-color: rgb(243, 244, 246);
  color: rgb(55, 65, 81);
  border-color: rgb(229, 231, 235);
}

.filter-btn:not(.active):hover {
  background-color: rgb(229, 231, 235);
  border-color: rgb(209, 213, 219);
}

/* Active navigation link */
.active-nav {
  color: rgb(37, 99, 235);
  font-weight: 500;
}

/* Blog post article styles */
.blog-post {
  background-color: rgb(255, 255, 255);
  padding: 1.5rem;
  border-radius: 0.5rem;
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  margin-bottom: 1.5rem;
}

/* Mobile menu styles - removed conflicting rules */
/* Mobile menu is now handled entirely by JavaScript and header.html styles */
