.taxostack {
    --taxostack-gap: 8px;
    --taxostack-align: flex-start;
}

.taxostack,
.taxostack-list,
.taxostack-children,
.taxostack-collapse-rest {
    display: grid;
    row-gap: var(--taxostack-gap);
    justify-items: start;
    margin: 0;
    padding: 0;
}

.taxostack-item,
.taxostack-row {
    margin: 0;
    padding: 0;
}

.taxostack-row {
    display: flex;
    justify-content: var(--taxostack-align);
    align-items: flex-start;
    width: 100%;
}

.taxostack-row-layout-inline {
    flex-wrap: wrap;
    gap: var(--taxostack-gap);
}

.taxostack-row-layout-list {
    flex-wrap: nowrap;
    gap: 0;
}

.taxostack-term {
    display: inline-block;
    width: auto;
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    vertical-align: top;
}

.taxostack-chip-body {
    display: inline-flex;
    align-items: center;
    width: auto;
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: 0 solid transparent;
    box-sizing: border-box;
}

.taxostack-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
    line-height: 1;
    font-size: 1em;
}

.taxostack-icon i,
.taxostack-icon svg,
.taxostack-icon-shape {
    width: 1em;
    height: 1em;
}

.taxostack a,
.taxostack a:visited,
.taxostack a:hover,
.taxostack a:focus,
.taxostack a:active,
.taxostack .taxostack-link,
.taxostack .taxostack-link:visited,
.taxostack .taxostack-link:hover,
.taxostack .taxostack-link:focus,
.taxostack .taxostack-link:active {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit;
    line-height: inherit;
    text-decoration: none !important;
    text-decoration-line: none !important;
    text-decoration-color: currentColor !important;
    text-decoration-style: solid !important;
    text-decoration-thickness: 0 !important;
    text-underline-offset: 0 !important;
    border: 0 !important;
    border-bottom: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
}

.taxostack a::before,
.taxostack a::after,
.taxostack .taxostack-link::before,
.taxostack .taxostack-link::after,
.taxostack a:hover::before,
.taxostack a:hover::after,
.taxostack .taxostack-link:hover::before,
.taxostack .taxostack-link:hover::after {
    text-decoration: none !important;
    border: 0 !important;
    background: none !important;
    background-image: none !important;
    box-shadow: none !important;
}

.taxostack-list,
.taxostack-item,
.taxostack-children,
.taxostack-term,
.taxostack-chip-body,
.taxostack-link,
.taxostack-collapse-toggle,
.taxostack-collapse-toggle-body {
    white-space: normal;
}

.taxostack-collapse-rest[hidden] {
    display: none;
}

.taxostack-collapse-toggle {
    display: inline-block !important;
    width: auto !important;
    max-width: 100%;
    margin: 0;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: inherit;
    font: inherit;
    line-height: inherit;
    text-decoration: none !important;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    box-shadow: none !important;
}

.taxostack-collapse-toggle-body {
    display: inline-flex;
    align-items: center;
    width: auto;
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: 0 solid transparent;
    box-sizing: border-box;
}

.taxostack-collapse-rest {
    overflow: hidden;
    opacity: 1;
    transition: height 0.28s ease, opacity 0.22s ease;
    will-change: height, opacity;
}

.taxostack-collapse-rest.is-collapsed {
    opacity: 0;
}

.taxostack-collapse-rest.is-expanded {
    opacity: 1;
}

.taxostack--fallback {
    display: block;
}
