/* =============================================================================
   FAQ Schema Generator — Front-end Accordion CSS
   Version: 2.1.1
   ============================================================================= */

.fsg-accordion {
    margin: 2.5em 0;
    clear: both;
}

/* ── Item — layout container only, no visual styling ────────────────────────── */
.fsg-accordion__item {
    margin-bottom: .875em;
    border: none !important;
    outline: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* ── Trigger (button) — standalone block with its own border/radius ──────────── */
.fsg-accordion__trigger {
    width: 100%;
    background: none;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 1.1em 1.25em;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1em;
    text-align: left;
    font-weight: 600;
    line-height: 1.4;
    color: inherit;
    transition: background .15s ease, box-shadow .2s ease;
    box-sizing: border-box;
}
.fsg-accordion__trigger:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,.08);
}
.fsg-accordion__trigger:focus {
    outline: none;
}
.fsg-accordion__trigger:focus-visible {
    outline: none;
}

/* ── Question text ───────────────────────────────────────────────────────────── */
.fsg-accordion__question {
    flex: 1;
}

/* ── Icon ────────────────────────────────────────────────────────────────────── */
.fsg-accordion__icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform .25s ease;
    line-height: 1;
}

/* Open state — rotate icon when panel is open */
.fsg-accordion__trigger[aria-expanded="true"] .fsg-accordion__icon {
    transform: rotate(180deg);
}

/* ── Panel — standalone block below trigger, own border/radius ───────────────── */
.fsg-accordion__panel {
    overflow: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    margin-top: 16px;
    box-sizing: border-box;
}
.fsg-accordion__panel[hidden] {
    display: none;
}

/* ── Body ────────────────────────────────────────────────────────────────────── */
.fsg-accordion__body {
    padding: .875em 1.25em 1.25em;
    line-height: 1.65;
    opacity: .85;
}
.fsg-accordion__body p:last-child { margin-bottom: 0; }

/* ── Chevron icon variant ────────────────────────────────────────────────────── */
.fsg-icon-chevron::before {
    content: '›';
    font-style: normal;
    font-weight: 700;
}
.fsg-accordion__trigger[aria-expanded="true"] .fsg-icon-chevron {
    transform: rotate(90deg);
}

/* ── Arrow icon variant ──────────────────────────────────────────────────────── */
.fsg-icon-arrow::before {
    content: '↓';
    font-style: normal;
}
.fsg-accordion__trigger[aria-expanded="true"] .fsg-icon-arrow {
    transform: rotate(180deg);
}
