/* FAQ Question Style
 *
 * Supports two formats:
 * 1. Collapsible: <details class="faq-item"><summary class="faq-question">Q</summary><p>A</p></details>
 * 2. Simple: <p class="faq-question">Q</p><p>A</p>
 *
 * Using <summary class="faq-question"> or <p class="faq-question"> instead of <h4>
 * avoids heading level jump errors (H2 → H4) in SEO validators.
 *
 * Required: Add this CSS link in HTML <head>:
 *   <link rel="stylesheet" href="/assets/css/faq-question.css">
 */

/* ── Override article-detail center alignment for FAQ ── */

.ar-article .faq-question,
.article-detail .faq-question,
.ar-article details.faq-item,
.article-detail details.faq-item {
    text-align: left;
}

/* ── Simple FAQ (non-collapsible) ── */

.ar-article p.faq-question,
.article-detail p.faq-question {
    font-size: 16px;
    color: #000;
    font-weight: 700;
    margin-top: 40px;
    margin-bottom: 8px;
}

.ar-article p.faq-question::before,
.article-detail p.faq-question::before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 14px;
    background: #1d70ec;
    border-radius: 16px;
    margin-right: 8px;
    vertical-align: -2px;
}

/* ── Collapsible FAQ (<details>/<summary>) ── */

.ar-article details.faq-item,
.article-detail details.faq-item {
    border-bottom: 1px solid #e6e8e9;
    padding: 0;
    margin: 0;
}

.ar-article details.faq-item:first-child,
.article-detail details.faq-item:first-child {
    border-top: 1px solid #e6e8e9;
}

.ar-article details.faq-item summary.faq-question,
.article-detail details.faq-item summary.faq-question {
    font-size: 16px;
    color: #000;
    font-weight: 700;
    cursor: pointer;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 16px 0;
    margin: 0;
    text-align: left;
    transition: color 0.2s ease;
}

/* Hide default disclosure triangle */
.ar-article details.faq-item summary.faq-question::-webkit-details-marker,
.article-detail details.faq-item summary.faq-question::-webkit-details-marker {
    display: none;
}

/* Blue left bar for summary */
.ar-article details.faq-item summary.faq-question::before,
.article-detail details.faq-item summary.faq-question::before {
    content: "";
    display: inline-block;
    width: 4px;
    height: 14px;
    background: #1d70ec;
    border-radius: 16px;
    margin-right: 8px;
    vertical-align: -2px;
    flex-shrink: 0;
}

/* Custom expand/collapse icon */
.ar-article details.faq-item summary.faq-question::after,
.article-detail details.faq-item summary.faq-question::after {
    content: "+";
    font-size: 20px;
    font-weight: 300;
    color: #1d70ec;
    transition: transform 0.2s ease;
    flex-shrink: 0;
    margin-left: auto;
}

.ar-article details.faq-item[open] summary.faq-question::after,
.article-detail details.faq-item[open] summary.faq-question::after {
    content: "−";
}

/* Hover effect */
.ar-article details.faq-item summary.faq-question:hover,
.article-detail details.faq-item summary.faq-question:hover {
    color: #1d70ec;
}

/* Answer content */
.ar-article details.faq-item > p:last-child,
.article-detail details.faq-item > p:last-child {
    margin-top: 0;
    margin-bottom: 16px;
    padding-left: 12px;
    color: #555;
    line-height: 1.8;
}
