/* Minimal Bootstrap 5 Accordion/Collapse CSS extracted for accordion component only */
:root {
  --bs-body-color: #212529;
  --bs-body-bg: #fff;
  --bs-border-color: #dee2e6;
  --bs-border-width: 1px;
  --bs-border-radius: 0.375rem;
  --bs-accordion-color: #212529;
  --bs-accordion-bg: #fff;
  --bs-accordion-border-color: var(--bs-border-color);
  --bs-accordion-border-width: var(--bs-border-width);
  --bs-accordion-border-radius: 0.375rem;
  --bs-accordion-inner-border-radius: calc(var(--bs-accordion-border-radius) - (var(--bs-border-width)));
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 1rem;
  --bs-accordion-btn-color: var(--bs-accordion-color);
  --bs-accordion-btn-bg: var(--bs-accordion-bg);
  --bs-accordion-btn-focus-border-color: #86b7fe;
  --bs-accordion-btn-focus-box-shadow: 0 0 0 .25rem rgba(13,110,253,.25);
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23333'%3e%3cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform .2s ease-in-out;
  --bs-accordion-active-color: #0c63e4;
  --bs-accordion-active-bg: #e7f1ff;
}

.accordion { --bs-accordion-color: var(--bs-body-color); --bs-accordion-bg: var(--bs-body-bg); --bs-accordion-border-color: var(--bs-border-color); --bs-accordion-border-width: var(--bs-border-width); --bs-accordion-border-radius: var(--bs-border-radius); --bs-accordion-inner-border-radius: calc(var(--bs-accordion-border-radius) - var(--bs-accordion-border-width)); --bs-accordion-btn-padding-x: 1.25rem; --bs-accordion-btn-padding-y: 1rem; --bs-accordion-btn-color: var(--bs-accordion-color); --bs-accordion-btn-bg: var(--bs-accordion-bg); --bs-accordion-btn-icon: var(--bs-accordion-btn-icon); --bs-accordion-btn-icon-width: 1.25rem; --bs-accordion-btn-icon-transform: rotate(-180deg); --bs-accordion-btn-icon-transition: transform .2s ease-in-out; --bs-accordion-active-color: var(--bs-accordion-active-color); --bs-accordion-active-bg: var(--bs-accordion-active-bg);}
.accordion-item { background-color: var(--bs-accordion-bg); border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);}
.accordion-item:first-of-type { border-top-left-radius: var(--bs-accordion-border-radius); border-top-right-radius: var(--bs-accordion-border-radius);}
.accordion-item:last-of-type { border-bottom-left-radius: var(--bs-accordion-border-radius); border-bottom-right-radius: var(--bs-accordion-border-radius);}
.accordion-header { margin: 0; }
.accordion-button { position: relative; display: flex; align-items: center; width: 100%; padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x); font-size: 1rem; color: var(--bs-accordion-btn-color); background-color: var(--bs-accordion-btn-bg); border: 0; border-top-left-radius: var(--bs-accordion-inner-border-radius); border-top-right-radius: var(--bs-accordion-inner-border-radius); overflow-anchor: none; transition: color .15s ease-in-out, background-color .15s ease-in-out, box-shadow .15s ease-in-out, border-color .15s ease-in-out;}
.accordion-button:not(.collapsed) { color: var(--bs-accordion-active-color); background-color: var(--bs-accordion-active-bg); box-shadow: inset 0 -1px 0 var(--bs-accordion-border-color);}
.accordion-button::after { flex-shrink: 0; width: var(--bs-accordion-btn-icon-width); height: var(--bs-accordion-btn-icon-width); margin-left: auto; content: ""; background-image: var(--bs-accordion-btn-icon); background-repeat: no-repeat; background-size: var(--bs-accordion-btn-icon-width); transition: var(--bs-accordion-btn-icon-transition);}
.accordion-button:not(.collapsed)::after { transform: var(--bs-accordion-btn-icon-transform); }
.accordion-button:focus { z-index: 3; border-color: var(--bs-accordion-btn-focus-border-color); outline: 0; box-shadow: var(--bs-accordion-btn-focus-box-shadow);}
.accordion-body { padding: 1rem 1.25rem; }
.accordion-collapse { border: 0; }

/* Collapse base (needed for accordion animation) */
.collapse:not(.show) { display: none; }
.collapsing { height: 0; overflow: hidden; transition: height .35s ease; }
.collapsing.collapse-horizontal { width: 0; height: auto; transition: width .35s ease; }

/* Utility classes used by accordion */
.mb-0 { margin-bottom: 0; }
