/* ====== FAQ / Help Center ====== */
.faq-search-input { width: 100%; padding: 16px 20px 16px 48px; border: 2px solid #e5e7eb; border-radius: 16px; font-size: 16px; font-family: 'Inter', sans-serif; background: white; transition: border-color 0.2s ease, box-shadow 0.2s ease; outline: none; }
.faq-search-input:focus { border-color: #4f46e5; box-shadow: 0 0 0 4px rgba(79, 70, 229, 0.1); }
.faq-search-icon { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; color: #9ca3af; pointer-events: none; }
.faq-filter-btn { padding: 8px 16px; border-radius: 9999px; border: 1px solid #e5e7eb; background: white; font-size: 14px; font-weight: 500; color: #4b5563; cursor: pointer; transition: all 0.2s ease; }
.faq-filter-btn:hover { border-color: #4f46e5; color: #4f46e5; }
.faq-filter-btn.active { background: #4f46e5; color: white; border-color: #4f46e5; }
.faq-category-title { font-size: 24px; font-weight: 800; margin-bottom: 16px; padding-top: 24px; }
.faq-category:first-child .faq-category-title { padding-top: 0; }
.faq-category[hidden] { display: none; }
.faq-item { background: white; border-radius: 16px; margin-bottom: 8px; border: 1px solid #f3f4f6; overflow: hidden; transition: box-shadow 0.2s ease; }
.faq-item:hover { box-shadow: 0 4px 12px -4px rgba(0, 0, 0, 0.08); }
.faq-item[open] { box-shadow: 0 4px 16px -4px rgba(0, 0, 0, 0.1); border-color: #e5e7eb; }
.faq-item[hidden] { display: none; }
.faq-question { padding: 20px 24px; font-weight: 600; font-size: 16px; cursor: pointer; list-style: none; display: flex; align-items: center; gap: 12px; color: #111827; user-select: none; }
.faq-question::-webkit-details-marker { display: none; }
.faq-question::before { content: '\25B8'; color: #4f46e5; font-size: 14px; transition: transform 0.2s ease; flex-shrink: 0; }
.faq-item[open] .faq-question::before { transform: rotate(90deg); }
.faq-answer { padding: 0 24px 20px 24px; color: #4b5563; line-height: 1.7; font-size: 15px; }
.faq-answer p { margin-bottom: 12px; }
.faq-answer p:last-child { margin-bottom: 0; }
.faq-answer ul, .faq-answer ol { padding-left: 24px; margin-bottom: 12px; }
.faq-answer li { margin-bottom: 6px; list-style-type: disc; }
.faq-answer strong { color: #111827; }
.faq-tip { background: #ecfdf5; border-left: 4px solid #10b981; padding: 12px 16px; border-radius: 0 12px 12px 0; margin-top: 12px; font-size: 14px; color: #065f46; }
.faq-warning { background: #fef3c7; border-left: 4px solid #f59e0b; padding: 12px 16px; border-radius: 0 12px 12px 0; margin-top: 12px; font-size: 14px; color: #78350f; }
.faq-no-results { text-align: center; padding: 48px 24px; color: #9ca3af; font-size: 16px; }
.faq-no-results[hidden] { display: none; }
.academy-search-container { max-width: 600px; margin: 40px auto 0; position: relative; }
