UNPKG

soft-components

Version:

Simple soft flexible set of web components

67 lines (65 loc) 2.88 kB
:host { display: block; } :host .heading { display: flex; align-items: center; justify-content: space-between; width: 100%; box-shadow: calc(var(--sc-highlight-dist-x) * 0.2) calc(var(--sc-highlight-dist-y) * 0.2) calc(30px * 0.2) 0 var(--sc-highlight-color, rgba(255, 255, 255, 0.2)), calc(var(--sc-shadow-dist-x) * 0.2) calc(var(--sc-shadow-dist-y) * 0.2) calc(30px * 0.2) 0 var(--sc-shadow-color, rgba(0, 0, 0, 0.2)); box-shadow: calc(var(--sc-highlight-dist-x) * 0.2) calc(var(--sc-highlight-dist-y) * 0.2) calc(1.875rem * 0.2) 0 var(--sc-highlight-color, rgba(255, 255, 255, 0.2)), calc(var(--sc-shadow-dist-x) * 0.2) calc(var(--sc-shadow-dist-y) * 0.2) calc(1.875rem * 0.2) 0 var(--sc-shadow-color, rgba(0, 0, 0, 0.2)); border-radius: var(--sc-border-radius, 1em); border: none; text-align: left; padding: var(--sc-accordion-item-heading-padding-y) var(--sc-accordion-item-heading-padding-x); cursor: pointer; transition: border-radius var(--sc-accordion-animation-duration) ease var(--sc-accordion-animation-duration); background: var(--sc-accordion-item-heading-bg-color); } :host .heading .heading-text { color: var(--sc-accordion-item-heading-text-color); margin: 0; flex: 1; } :host .heading .arrow { color: var(--sc-text-color); transition: transform var(--sc-accordion-animation-duration) var(--sc-accordion-animation-timing-function); } :host .heading .arrow svg { width: calc(var(--sc-root-spacing, 8px) * 4); width: calc(var(--sc-root-spacing, 0.5rem) * 4); height: calc(var(--sc-root-spacing, 8px) * 4); height: calc(var(--sc-root-spacing, 0.5rem) * 4); } :host .heading .arrow svg path { fill: currentColor; } :host .body-container { overflow: hidden; max-height: 0; transition: max-height var(--sc-accordion-animation-duration) var(--sc-accordion-animation-timing-function); background: var(--sc-accordion-item-body-bg-color); } :host .body-container .body { border-radius: var(--sc-border-radius, 1em); box-shadow: inset calc(var(--sc-highlight-dist-x) * 0.2) calc(var(--sc-highlight-dist-y) * 0.2) calc(30px * 0.2) 0 var(--sc-highlight-color, rgba(255, 255, 255, 0.2)), inset calc(var(--sc-shadow-dist-x) * 0.2) calc(var(--sc-shadow-dist-y) * 0.2) calc(30px * 0.2) 0 var(--sc-shadow-color, rgba(0, 0, 0, 0.2)); border-top-left-radius: 0; border-top-right-radius: 0; overflow: hidden; padding: var(--sc-accordion-item-body-padding-y) var(--sc-accordion-item-body-padding-x); } :host(.autoHeight) .body-container { overflow: hidden; } :host(.active) .heading { border-bottom-left-radius: 0; border-bottom-right-radius: 0; transition: border-radius 0s ease; border-bottom: var(--sc-accordion-item-heading-border-bottom); } :host(.active) .heading .arrow { transform: rotate(180deg); } :host(.active) .body-container { max-height: var(--sc-accordion-item-body-max-height); }