/**
 * GOV.UK Accordion Component Styles
 * Based on GOV.UK Design System patterns
 */

.govuk-accordion {
  border: 0;
  margin: 0;
  padding: 0;
}

.govuk-accordion__section {
  border-top: 1px solid #b1b4b6;
}

.govuk-accordion__section:first-child {
  border-top: 0;
}

.govuk-accordion__section-header {
  position: relative;
  margin: 0;
  padding: 0;
}

.govuk-accordion__section-heading {
  font-family: "GDS Transport", arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.2;
  margin: 0;
  padding: 0;
}

.govuk-accordion__section-button {
  background: none;
  border: 0;
  border-bottom: 1px solid transparent;
  color: #0b0c0c;
  cursor: pointer;
  display: block;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  margin: 0;
  padding: 15px 0;
  position: relative;
  text-align: left;
  text-decoration: none;
  width: 100%;
}

.govuk-accordion__section-button:hover {
  border-bottom-color: #0b0c0c;
  color: #0b0c0c;
  text-decoration: underline;
}

.govuk-accordion__section-button:focus {
  border-bottom-color: #0b0c0c;
  color: #0b0c0c;
  outline: 3px solid #ffbf47;
  outline-offset: 0;
  text-decoration: underline;
}

.govuk-accordion__section-button:focus:not(:focus-visible) {
  outline: none;
}

.govuk-accordion__section-button:focus-visible {
  border-bottom-color: #0b0c0c;
  color: #0b0c0c;
  outline: 3px solid #ffbf47;
  outline-offset: 0;
  text-decoration: underline;
}

.govuk-accordion__section-button::after {
  background: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 12l-8-8h16z' fill='%230b0c0c'%3E%3C/path%3E%3C/svg%3E") no-repeat 0 0;
  content: "";
  display: inline-block;
  height: 16px;
  margin-left: 10px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
}

.govuk-accordion__section--expanded .govuk-accordion__section-button::after {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 4l8 8h-16z' fill='%230b0c0c'%3E%3C/path%3E%3C/svg%3E");
}

.govuk-accordion__section-content {
  display: none;
  overflow: hidden;
  padding: 0 0 15px 0;
}

.govuk-accordion__section--expanded .govuk-accordion__section-content {
  display: block;
}

.govuk-accordion__section-content-text {
  color: #0b0c0c;
  font-family: "GDS Transport", arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
}

.govuk-accordion__section-content-text p {
  margin: 0 0 15px 0;
}

.govuk-accordion__section-content-text p:last-child {
  margin-bottom: 0;
}

.govuk-accordion__section-content-text ul,
.govuk-accordion__section-content-text ol {
  margin: 0 0 15px 0;
  padding-left: 20px;
}

.govuk-accordion__section-content-text li {
  margin-bottom: 5px;
}

.govuk-accordion__section-content-text li:last-child {
  margin-bottom: 0;
}

/* JavaScript disabled fallback */
.govuk-accordion[data-module="govuk-accordion"] .govuk-accordion__section-content {
  display: block;
}

.govuk-accordion[data-module="govuk-accordion"] .govuk-accordion__section-button::after {
  display: none;
}

/* High contrast mode support */
@media (forced-colors: active) {
  .govuk-accordion__section-button::after {
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 12l-8-8h16z' fill='ButtonText'%3E%3C/path%3E%3C/svg%3E");
  }
  
  .govuk-accordion__section--expanded .govuk-accordion__section-button::after {
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 4l8 8h-16z' fill='ButtonText'%3E%3C/path%3E%3C/svg%3E");
  }
}
