{{ $parent := .Parent }}
{{ $separated := false }}
{{ if $parent }}
  {{ $separated = $parent.Get "separated" | default false }}
{{ end }}
{{ $isSeparated := or (eq $separated true) (eq $separated "true") }}

{{ $title := .Get "title" | default (.Get "header") }}
{{ $icon := .Get "icon" }}
{{ $md := .Get "md" | default true }}
{{ $open := .Get "open" | default false }}
{{ $isOpen := or (eq $open true) (eq $open "true") }}
{{ $align := .Get "align" }}

<details
  class="group {{ if $isSeparated }}rounded-lg border border-neutral-200 dark:border-neutral-700 overflow-hidden{{ else }}border-none{{ end }}"
  data-accordion-item
  {{ if $isOpen }}open{{ end }}
>
  <summary class="flex w-full cursor-pointer items-center justify-between gap-4 px-4 py-3 text-left text-lg font-semibold text-neutral-900 dark:text-neutral-100">
    <span class="flex items-center gap-2">
      {{ with $icon }}
        {{ partial "icon.html" . }}
      {{ end }}
      <span>{{ $title }}</span>
    </span>
    <span class="accordion-chevron ms-auto flex h-5 w-5 items-center justify-center print:hidden">
      {{ partial "icon.html" "chevron-down" }}
    </span>
  </summary>
<div class="px-4 pb-4 text-neutral-700 dark:text-neutral-300{{ if $align }} text-{{ $align }}{{ end }}">
    {{ if $md }}
      {{- .Inner | markdownify -}}
    {{ else }}
      {{- .Inner -}}
    {{ end }}
  </div>
</details>
