UNPKG

@postnord/web-components

Version:

PostNord Web Components

124 lines (121 loc) 3.63 kB
/* Global utility variables */ /* Input styles */ /* Transition variables */ pn-segmented-control { position: relative; display: inline-block; max-width: 100%; overflow: hidden; border-radius: 3em; transform: translateZ(0); transition-property: outline-color; transition-duration: 0.2s; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); outline: 0.2rem solid transparent; outline-offset: 0.2rem; } pn-segmented-control:focus-within, pn-segmented-control:active { outline-color: #005d92; } pn-segmented-control .pn-segmented-control { display: flex; align-items: center; border-radius: 3em; min-height: 3em; padding: 0.25em; background: #f3f2f2; position: relative; overflow-x: auto; scroll-snap-type: x mandatory; } pn-segmented-control .pn-segmented-control:hover .pn-sc-bg[data-hover] { opacity: 1; } pn-segmented-control .pn-segmented-control::-webkit-scrollbar { display: none; } pn-segmented-control .pn-segmented-control .pn-sc-bg { position: absolute; top: 50%; transform: translateY(-50%); will-change: transform; left: 0; border-radius: inherit; transition-property: width, transform, background-color, opacity, box-shadow; transition-duration: 0.2s; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); } pn-segmented-control .pn-segmented-control .pn-sc-bg[data-active] { box-shadow: 0px 0.3px 0.9px rgba(0, 0, 0, 0.1), 0px 1.6px 3.6px rgba(0, 0, 0, 0.13); border: 0.0625em solid #005d92; background-color: #ffffff; z-index: 1; } pn-segmented-control .pn-segmented-control .pn-sc-bg[data-hover] { background-color: #e0f8ff; opacity: 0; border: 0.25em solid transparent; z-index: 0; } pn-segmented-control .pn-segmented-control .pn-sc-bg[data-hover][data-disabled] { border-color: #e9e6e5; background-color: #e9e6e5; } pn-segmented-control .pn-segmented-control .pn-sc-bg[data-disabled] { border-color: #e9e6e5; background-color: #e9e6e5; } /*---------------------------------------ARROWS-------------------------------------------*/ pn-segmented-control .pn-sc-arrows { position: absolute; top: 50%; transform: translateY(-50%); left: 0; height: 100%; width: 100%; z-index: 3; display: flex; justify-content: space-between; align-items: center; pointer-events: none; } pn-segmented-control .pn-sc-arrows svg { width: 1.5em; } pn-segmented-control .pn-sc-arrows svg.pn-icon-svg path { fill: #005d92; } pn-segmented-control .pn-sc-arrows > .pn-sc-arrow { cursor: pointer; pointer-events: all; width: 2.5em; height: 2.5em; background: #ffffff; border: none; outline: none; display: flex; align-items: center; justify-content: center; opacity: 0; will-change: transform; -webkit-tap-highlight-color: transparent; transition-property: transform, opacity, background-color, box-shadow; transition-duration: 0.2s; transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1); } pn-segmented-control .pn-sc-arrows > .pn-sc-arrow.pn-sc-arrow-left { transform: translateX(-100%); border-radius: 0 50% 50% 0; padding: 0 0.3em 0 0; box-shadow: 0.2rem 0.3rem 0.2rem rgba(0, 0, 0, 0.4); } pn-segmented-control .pn-sc-arrows > .pn-sc-arrow.pn-sc-arrow-right { transform: translateX(100%); border-radius: 50% 0 0 50%; box-shadow: -0.2rem 0.3rem 0.2rem rgba(0, 0, 0, 0.4); } pn-segmented-control .pn-sc-arrows.pn-sc-left-visible .pn-sc-arrow-left, pn-segmented-control .pn-sc-arrows.pn-sc-right-visible .pn-sc-arrow-right { opacity: 1; transform: translateX(0); } /*---------------------------------------/ARROWS-------------------------------------------*/