UNPKG

@oslokommune/punkt-css

Version:

CSS-rammeverket til Punkt, et designsystem laget av Oslo Origo

135 lines (134 loc) 3.01 kB
/* * Loader component */ .pkt-loader { width: fit-content; text-align: center; } .pkt-loader--inline { display: inline-block; } .pkt-loader > p { margin: 1rem 0; } .pkt-loader .pkt-loader__shapes svg { aspect-ratio: 600/165; } .pkt-loader--small > p { letter-spacing: -0.2px; font-weight: 300; font-size: 0.75rem; line-height: 1.25rem; } .pkt-loader--small .pkt-loader__svg svg { height: 1rem; } .pkt-loader--small .pkt-loader__svg:not(.pkt-loader__shapes) svg { width: 1rem; } .pkt-loader--medium > p { letter-spacing: -0.2px; font-weight: 300; font-size: 1rem; line-height: 1.5rem; } .pkt-loader--medium .pkt-loader__svg svg { height: 2.5rem; } .pkt-loader--medium .pkt-loader__svg:not(.pkt-loader__shapes) svg { width: 2.5rem; } .pkt-loader--large > p { letter-spacing: -0.2px; font-weight: 300; font-size: 1.125rem; line-height: 1.75rem; } .pkt-loader--large .pkt-loader__svg svg { height: 3.5rem; } .pkt-loader--large .pkt-loader__svg:not(.pkt-loader__shapes) svg { width: 3.5rem; } .pkt-loader .egg-loader { position: relative; display: flex; justify-content: center; align-items: center; margin-top: 8em; font-size: 0.4rem; width: 25em; height: 5em; } .pkt-loader--small .egg-loader { font-size: 0.2rem; } .pkt-loader--large .egg-loader { font-size: 0.6rem; } .pkt-loader .egg { position: absolute; width: 5em; height: 6.5em; left: 0em; background: repeating-linear-gradient(#ff8274, #ff8274 1em, #f9c66b 1em, #f9c66b 2em); border-radius: 50% 50% 50% 50%/55% 55% 45% 45%; transform: translate3d(0, 0, 0); animation-name: eggroll; animation-duration: 2s; animation-iteration-count: infinite; animation-timing-function: linear; animation-delay: 0; opacity: 0; } .pkt-loader .egg.two { background: repeating-linear-gradient(#6fe9ff, #6fe9ff 1em, #ff8274 1em, #ff8274 2em); animation-delay: 0.5s; } .pkt-loader .egg.three { background: repeating-linear-gradient(#43f8b6, #43f8b6 1em, #f9c66b 1em, #f9c66b 2em); animation-delay: 1s; } .pkt-loader .egg.four { background: repeating-linear-gradient(#43f8b6, #43f8b6 1em, #ff8274 1em, #ff8274 2em); animation-delay: 1.5s; } @keyframes eggroll { 0% { transform: translate3d(0, 0, 0) rotate(0deg); opacity: 0; } 12.5% { transform: translate3d(50%, 1em, 0) rotate(90deg); } 25% { transform: translate3d(100%, 0, 0) rotate(180deg); } 37.5% { transform: translate3d(150%, 1em, 0) rotate(270deg); } 46% { transform: translate3d(200%, 0, 0) rotate(380deg); } 50% { transform: translate3d(200%, 0, 0) rotate(360deg); opacity: 1; } 54% { transform: translate3d(200%, 0, 0) rotate(340deg); } 62.5% { transform: translate3d(250%, 1em, 0) rotate(450deg); } 70% { transform: translate3d(300%, 0, 0) rotate(540deg); } 75% { transform: translate3d(350%, 1em, 0) rotate(630deg); opacity: 1; } 100% { transform: translate3d(400%, 0, 0) rotate(720deg); opacity: 0; } }