/* Custom styling for function/class headers */
.doc-heading {
  /* Full width box */
  margin-left: -1.6rem;
  margin-right: -1.6rem;
  padding: 0.8rem 1.6rem;
  
  /* Background and border */
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  border-left: 4px solid var(--md-primary-fg-color, #1976d2);
  border-radius: 0 8px 8px 0;
  
  /* Shadow for depth */
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  
  /* Typography */
  font-weight: 600;
  
  /* Spacing */
  margin-top: 2rem;
  margin-bottom: 1.5rem;
}

/* Code inside headers */
.doc-heading code {
  background: rgba(255, 255, 255, 0.8);
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  font-family: var(--md-code-font, "Roboto Mono", monospace);
  font-size: 70%;
  color: var(--md-primary-fg-color, #1976d2);
}

/* Dark mode support */
[data-md-color-scheme="slate"] .doc-heading {
  background: linear-gradient(135deg, #2d3748 0%, #1a202c 100%);
  border-left-color: var(--md-primary-fg-color, #42a5f5);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

[data-md-color-scheme="slate"] .doc-heading code {
  background: rgba(0, 0, 0, 0.3);
  border-color: rgba(255, 255, 255, 0.2);
  color: var(--md-primary-fg-color, #42a5f5);
}

/* Hover effect */
.doc-heading:hover {
  transform: translateX(4px);
  transition: transform 0.2s ease-in-out;
}

/* Different colors for different heading levels */
h2.doc-heading {
  border-left-color: #1976d2; /* Blue for classes/main functions */
}

h3.doc-heading {
  border-left-color: #388e3c; /* Green for methods */
  background: linear-gradient(135deg, #f1f8e9 0%, #e8f5e8 100%);
}

h4.doc-heading {
  border-left-color: #f57c00; /* Orange for properties */
  background: linear-gradient(135deg, #fff8e1 0%, #ffecb3 100%);
}

/* Dark mode variants */
[data-md-color-scheme="slate"] h3.doc-heading {
  background: linear-gradient(135deg, #1b5e20 0%, #2e7d32 100%);
}

[data-md-color-scheme="slate"] h4.doc-heading {
  background: linear-gradient(135deg, #e65100 0%, #ff9800 100%);
}

/* Classes - structural/container feel */
h2.doc-heading::before {
  content: "🤖"; /* Package - represents encapsulation */
  margin-right: 0.5rem;
  font-size: 1.1em;
}

/* Functions/Methods - action/process feel */
h3.doc-heading::before {
  content: "💎"; /* Lightning - represents execution/action */
  margin-right: 0.5rem;
  font-size: 1.1em;
}

/* Properties/Attributes */
h4.doc-heading::before {
  content: "⚡"; /* Label - represents attributes */
  margin-right: 0.5rem;
  font-size: 1em;
}
