/**
 * Sorting Educational Content — Bordered Heading Boxes
 * Matches DS section pattern: transparent fill, theme-adaptive borders
 * @layer Extensions
 */

/* ===== EDUCATIONAL CONTENT BOX ===== */
.edu-content-box {
  background: transparent;
  border: 1px solid var(--border-soft);
  border-radius: 10px;
  padding: 1.25rem 1.5rem;
  margin-bottom: 1rem;
  position: relative;
  transition: border-color 0.3s ease, background 0.3s ease;
}

.edu-content-box:hover {
  border-color: var(--text-muted);
  background: rgba(255, 255, 255, 0.02);
}

[data-theme="dark"] .edu-content-box:hover {
  background: rgba(255, 255, 255, 0.03);
}

/* Left accent stripe variants */
.edu-content-box.accent-primary {
  border-left: 3px solid var(--accent-primary, #3b82f6);
}

.edu-content-box.accent-warning {
  border-left: 3px solid var(--accent-warning, #f59e0b);
}

.edu-content-box.accent-coral {
  border-left: 3px solid var(--accent-coral, #ef4444);
}

.edu-content-box.accent-forest {
  border-left: 3px solid var(--accent-forest, #10b981);
}

.edu-content-box.accent-sky {
  border-left: 3px solid var(--accent-sky, #06b6d4);
}

.edu-content-box.accent-sage {
  border-left: 3px solid var(--accent-sage);
}

.edu-content-box.accent-amber {
  border-left: 3px solid var(--accent-amber);
}

.edu-content-box.accent-plum {
  border-left: 3px solid var(--accent-plum);
}

/* ===== SECTION TITLE INSIDE BOX ===== */
.edu-section-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-main, var(--text-dark));
  margin: 0 0 0.75rem 0;
  letter-spacing: -0.01em;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.edu-section-title .title-icon {
  font-size: 1.1rem;
  flex-shrink: 0;
}

/* Light mode refinement */
:root:not([data-theme="dark"]) .edu-content-box {
  background: rgba(255, 255, 255, 0.4);
  border-color: #e2e8f0;
}

:root:not([data-theme="dark"]) .edu-content-box:hover {
  background: rgba(255, 255, 255, 0.7);
  border-color: #cbd5e1;
}

/* ===== VISUAL DIAGRAM CONTAINER ===== */
.edu-visual-container {
  background: var(--bg-card);
  border: 1px solid var(--border-soft);
  border-radius: 12px;
  padding: 1.5rem;
  margin: 1.5rem 0;
  text-align: center;
  overflow: hidden;
}

.edu-visual-container img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
  margin: 0 auto;
}

.edu-visual-caption {
  font-size: 0.8rem;
  color: var(--text-muted);
  margin-top: 0.75rem;
  font-style: italic;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
  .edu-content-box {
    padding: 1rem;
  }
}

/* ===== ANIMATIONS ===== */
/* Note: SVGs now use static "filmstrip" designs (Step 1 -> Step 2 -> Step 3) 
   instead of continuous CSS animations for better educational clarity. 
*/