@postnord/web-components
Version:
PostNord Web Components
108 lines (106 loc) • 2.71 kB
CSS
/* Global utility variables */
/* Input styles */
/* Transition variables */
pn-progress-indicator-step {
display: flex;
flex: 1 0 4em;
}
pn-progress-indicator-step:first-child {
flex: 0 0 auto;
}
pn-progress-indicator-step:first-child .progress-line {
display: none;
}
pn-progress-indicator-step:first-child .info-container {
transform: translateX(-50%);
left: 50%;
}
.pn-progress-indicator-step {
position: relative;
display: flex;
flex: 1 0 4em;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
-webkit-tap-highlight-color: transparent;
}
.pn-progress-indicator-step .circle {
width: 1.5em;
height: 1.5em;
padding: 0.3rem;
border-radius: 50%;
background-color: #f3f2f2;
transition: background-color 0.2s ease-in-out;
}
.pn-progress-indicator-step .info-container {
position: absolute;
bottom: -2.5em;
right: 0;
transform: translateX(50%) translateX(-1.2rem);
white-space: nowrap;
color: #f3f2f2;
display: flex;
align-items: center;
flex-direction: column;
transition: color 0.2s ease-in-out;
font-size: 1em;
font-weight: normal;
}
.pn-progress-indicator-step .info-container .pn-icon-svg {
height: 1.7em;
width: 1.7em;
margin-bottom: 0.1em;
}
.pn-progress-indicator-step .info-container .pn-icon-svg path,
.pn-progress-indicator-step .info-container .pn-icon-svg polygon {
fill: #f3f2f2;
transition: fill 0.2s ease-in-out;
}
.pn-progress-indicator-step .progress-line {
flex: 1 1 auto;
margin: auto 4px;
height: 0.8rem;
background-color: #f3f2f2;
position: relative;
overflow: hidden;
pointer-events: none;
border-radius: 10rem;
}
.pn-progress-indicator-step .progress-line:after {
content: "";
position: absolute;
top: 0;
left: 0;
height: 0.8rem;
width: 100%;
background-color: #005d92;
transition: transform 0.4s cubic-bezier(0.55, 0, 0.1, 1) 0.2s;
transform: translateX(-100%);
}
.pn-progress-indicator-step.active .info-container {
color: #000000;
}
.pn-progress-indicator-step.active .info-container .pn-icon-svg path {
fill: #000000;
}
.pn-progress-indicator-step.active .info-container .pn-icon-svg polygon {
fill: #000000;
}
.pn-progress-indicator-step.activated {
cursor: pointer;
}
.pn-progress-indicator-step.done .progress-line:after, .pn-progress-indicator-step.active .progress-line:after {
transform: translateX(0);
}
.pn-progress-indicator-step.done .circle, .pn-progress-indicator-step.active .circle {
background-color: #005d92;
}
.pn-progress-indicator-step.done .checkmark-path {
stroke-linecap: round;
stroke-dasharray: 27;
stroke-dashoffset: -23;
animation: dash 0.2s cubic-bezier(0.55, 0, 0.1, 1) both;
}
@keyframes dash {
to {
stroke-dashoffset: 0;
}
}