.ui-collapsible {
  position: relative;
}

.ui-collapse-head {
  min-height: 44px;
}

.ui-collapse-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 112px;
  padding: 9px 14px;
  margin-left: auto;
  border: 1px solid rgba(17, 24, 39, .16);
  border-radius: 999px;
  background: #fff;
  color: #1f2937;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(15, 23, 42, .08);
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.ui-collapse-toggle:hover {
  background: #fff8d6;
  border-color: #d6ad00;
}

.ui-collapse-toggle:focus-visible {
  outline: 3px solid rgba(242, 195, 0, .35);
  outline-offset: 2px;
}

.ui-collapse-toggle .ui-collapse-arrow {
  display: inline-block;
  font-size: 16px;
  transition: transform .2s ease;
}

.ui-collapsible:not(.ui-collapsed) .ui-collapse-arrow {
  transform: rotate(180deg);
}

.ui-collapsible.ui-collapsed > :not(.ui-collapse-head) {
  display: none !important;
}

.ui-collapsible.ui-collapsed {
  padding-bottom: 14px;
}

details.ui-native-collapsible {
  overflow: hidden;
}

details.ui-native-collapsible > summary {
  cursor: pointer;
  font-weight: 800;
}

@media (max-width: 700px) {
  .ui-collapse-head {
    align-items: center !important;
  }

  .ui-collapse-toggle {
    min-width: auto;
    padding: 9px 11px;
  }

  .ui-collapse-toggle .ui-collapse-label {
    display: none;
  }
}

@media print {
  .ui-collapse-toggle {
    display: none !important;
  }

  .ui-collapsible.ui-collapsed > :not(.ui-collapse-head) {
    display: revert !important;
  }
}
