/** * * phpBB Studio - Advanced Shop System. An extension for the phpBB Forum Software package. * * @copyright (c) 2019, phpBB Studio, https://www.phpbbstudio.com * @license GNU General Public License, version 2 (GPL-2.0) * */ .icon-aps-blue { color: #12a3eb; } .icon-aqua { color: #18a39b; } .icon-yellow { color: #f8b739; } .icon-pink { color: #ed2861; } .icon-violet { color: #c12680; } .icon-purple { color: #5d3191; } .icon-gold { color: #d6af36; } .icon-silver { color: #a7a7ad; } .icon-bronze { color: #824a02; } .icon-white { color: #ffffff; } .icon-lighten { color: rgba(255, 255, 255, 0.75); } .icon-darken { color: rgba(0, 0, 0, 0.5); } .shop-padding { padding: 8px 10px; } .shop-pad-half { padding: 0 0.375rem; } .shop-no-pad { padding: 0 !important; } .shop-no-pad-top { padding-top: 0 !important; } .shop-no-pad-left { padding-left: 0 !important; } .shop-no-pad-right { padding-right: 0 !important; } .shop-no-pad-bot { padding-bottom: 0 !important; } .shop-mar-bot { margin-bottom: 16px; } .shop-block { display: block !important; } .shop-inline { display: inline-block !important; } .shop-relative { position: relative; } .shop-cursor-ban { cursor: not-allowed; } .shop-cursor-normal { cursor: auto; } .shop-cursor-pointer { cursor: pointer; } .shop-bold { font-weight: bold; } .shop-text-small { font-size: 13px; } .shop-text-med { font-size: 16px; } .shop-text-large { font-size: 20px; } .shop-text-left { text-align: left; } .shop-text-right { text-align: right; } .shop-text-indent-3 { text-indent: 3px; } .shop-text-indent-10 { text-indent: 10px; } .shop-text-blue { color: #12a3eb; } .shop-text-black { color: #000000; } .shop-text-darkgray { color: #313131; } .shop-text-lightgray { color: #999999; } .shop-darken-span span { color: #313131; } .shop-text-ellipsis { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; } .shop-overflow { overflow-x: visible !important; overflow-y: visible !important; } .shop-fake-min-width { min-width: 0; } .shop-fake-width { width: 1px; max-width: 100%; } @media all and (min-width: 601px) { .shop-fake-width.m6 { max-width: 50%; } } .shop-dropdown { left: calc(50% - 24px); } .shop-category-dropdown { z-index: 11; } .shop-category-dropdown fieldset { max-width: 450px; } .shop-category-dropdown .pointer { left: 5%; } @media all and (min-width: 1024px) { .shop-category-dropdown .pointer { left: 67px; } } @media all and (min-width: 800px) { .shop-category-dropdown .dropdown-contents { max-height: 400px; } } .shop-category-dropdown .dropdown-contents::-webkit-scrollbar { background: rgba(0, 0, 0, 0.1); border-radius: 4px; width: 6px; height: 6px; -webkit-appearance: none; } .shop-category-dropdown .dropdown-contents::-webkit-scrollbar-thumb { background: rgba(0, 0, 0, 0.25); border-radius: 4px; } .shop-vertical { display: flex !important; align-items: center; height: 100%; } .shop-vertical > * { flex: 1 0 100%; } .aps-bool { display: none; } .aps-bool:checked + .aps-button-red, .aps-bool:checked + .aps-button-blue, .aps-bool:checked + .aps-button-green { color: #ffffff; } .aps-bool:checked + .aps-button-red { background: #d31141; } .aps-bool:checked + .aps-button-blue { background: #12a3eb; } .aps-bool:checked + .aps-button-green { background: #28a745; } .aps-nav .aps-list-active { border-bottom: 2px solid #0076b1; } .shop-panel-header-link { text-decoration: none !important; letter-spacing: 0.1em; color: #313131; } .shop-panel-bottom .shop-panel-header-link { color: #f9f9f9; } .shop-panel-header-link:before { color: #12a3eb; opacity: 0; position: absolute; content: attr(data-item-title); -webkit-transition: -webkit-transform 0.3s, opacity 0.3s; -moz-transition: -moz-transform 0.3s, opacity 0.3s; transition: transform 0.3s, opacity 0.3s; -webkit-transform: scale(1.1) translateX(10px) translateY(-10px) rotate(4deg); -moz-transform: scale(1.1) translateX(10px) translateY(-10px) rotate(4deg); transform: scale(1.1) translateX(10px) translateY(-10px) rotate(4deg); pointer-events: none; } .shop-panel-header-link:hover:before, .shop-panel-header-link:focus:before { opacity: 1; -webkit-transform: scale(1) translateX(0) translateY(0) rotate(0deg); -moz-transform: scale(1) translateX(0) translateY(0) rotate(0deg); transform: scale(1) translateX(0) translateY(0) rotate(0deg); } .shop-carousel-footer { min-height: 43px; } .shop-carousel-images { max-width: 100%; max-height: 480px; margin: 0 auto; } .shop-carousel-nav-img { margin: 0 25px; } @media all and (max-width: 800px) { .shop-carousel-nav-img { margin: 0 4px; } } .shop-panel-footer-button { border-top-left-radius: 0; border-top-right-radius: 0; border-bottom-right-radius: 0; height: 35px; margin: -8px 0 -8px -10px; } .shop-panel-background { background-repeat: no-repeat; background-size: cover; } .shop-panel-bottom { background: rgba(49, 49, 49, 0.75); position: absolute; right: 0; bottom: 0; left: 0; display: block; padding: 12px 16px 8px; } .shop-panel-icon { text-align: center; position: absolute; z-index: 10; top: 0; right: 16px; width: 36px; } .shop-panel-icon:before { font-size: 20px; line-height: 30px; position: relative; z-index: 1; } .shop-panel-icon-small:before { font-size: 16px; line-height: 22px; } .shop-panel-icon-tiny:before { font-size: 13px; line-height: 18px; } .shop-panel-icon:after { font-family: FontAwesome, sans-serif; font-size: 48px; text-shadow: -2px 1px 4px rgba(0, 0, 0, 0.4); color: #12a3eb; position: absolute; top: -4px; left: 0; content: "\f02e"; } .shop-panel-icon-small:after, .shop-panel-icon-tiny:after { text-shadow: -1px 1px 3px rgba(0, 0, 0, 0.4); } .shop-panel-icon-small { width: 30px; } .shop-panel-icon-tiny { width: 25px; } .shop-panel-icon-small:after { font-size: 40px; } .shop-panel-icon-tiny:after { font-size: 32px; } .shop-panel-icon-red:after { color: #d31141; } .shop-panel-icon-green:after { color: #28a745; } .shop-panel-icon-orange:after { color: #f06045; } .shop-panel-icon-aqua:after { color: #18a39b; } .shop-panel-icon-yellow:after { color: #f8b739; } .shop-panel-icon-pink:after { color: #ed2861; } .shop-panel-icon-violet:after { color: #c12680; } .shop-panel-icon-purple:after { color: #5d3191; } .shop-panel-icon-gold:after { color: #d6af36; } .shop-panel-icon-silver:after { color: #a7a7ad; } .shop-panel-icon-bronze:after { color: #824a02; } .shop-inventory-stack { position: relative; z-index: 1; margin-left: -2px; } .shop-sale-tag { position: absolute; top: 0; left: 0; } .shop-sale-tag .fa-thumb-tack { font-size: 24px; background: -webkit-linear-gradient(#d31141 18px, #7b7e8a 18px); -webkit-background-clip: text; color: #d31141; position: absolute; z-index: 1; top: 5px; left: 15px; transform: rotate(30deg); -webkit-text-fill-color: transparent; } .shop-sale-tag .fa-tag { font-size: 64px; text-shadow: 0 3px 3px rgba(0, 0, 0, 0.4); color: rgba(248, 183, 57, 0.75); position: absolute; top: 10px; left: 0; } .shop-sale-tag span { font-size: 13px; font-weight: bold; color: #ffffff; position: absolute; z-index: 2; top: 34px; left: 24px; display: inline-block; transform: rotate(43deg); } .shop-title { background: #fefefe; border: 1px solid #12a3eb; border-radius: 4px; color: #12a3eb; padding: 8px 16px; } .shop-button-disabled { background: #fefefe; border-color: #999999; color: #999999; opacity: 1; } .shop-button-disabled:hover { background: #f9f9f9; color: #666666; cursor: not-allowed; } .shop-button-active:focus { outline: none; } .aps-button-blue.shop-button-active { background: #12a3eb; color: #ffffff; } .aps-button-green.shop-button-active { background: #28a745; color: #ffffff; } .aps-button-red.shop-button-active { background: #d31141; color: #ffffff; } .aps-button-alert { margin: 0 8px; padding-right: 32px; padding-left: 32px; } .shop-pagination { display: flex; margin: 0; list-style: none; user-select: none; flex-flow: row nowrap; } .shop-pagination > li { font-weight: bold; flex: 1 1 0; } .shop-pagination > li:not(:first-child) .aps-button-blue { border-top-left-radius: 0; border-bottom-left-radius: 0; } .shop-pagination > li:not(:last-child) .aps-button-blue { border-top-right-radius: 0; border-bottom-right-radius: 0; } .shop-pagination > li:first-child .aps-button-blue i, .shop-pagination > li:last-child .aps-button-blue i, .shop-pagination > li .shop-button-disabled i { transition: transform ease-in-out 0.25s, opacity ease-in-out 0.25s; } .shop-pagination > li:first-child .aps-button-blue:hover i { transform: translateX(-16px); } .shop-pagination > li:last-child .aps-button-blue:hover i { transform: translateX(16px); } .shop-pagination > li .shop-button-disabled:hover i { opacity: 0; } .shop-pagination-text { color: #888888; padding: 7px; } /* Carousel */ .nojs [data-shop-carousel="true"] > *:not(:first-child) { display: none; } .shop-carousel-dots { text-align: center; display: block; width: 100%; margin: 0; padding: 0; list-style: none; } .shop-carousel-dots li { position: relative; display: inline-block; width: 24px; height: 24px; margin: 0 5px; padding: 0; cursor: pointer; } .shop-carousel-dots li button { font-size: 0; line-height: 0; background: transparent; border: 0; outline: none; color: transparent; display: block; width: 24px; height: 24px; padding: 5px; cursor: pointer; } .shop-carousel-dots li button:hover, .shop-carousel-dots li button:focus { outline: none; } .shop-carousel-dots li button:hover:before { opacity: 1; } .shop-carousel-dots li button:before { font-size: 16px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; line-height: 20px; text-align: center; color: #000000; opacity: 0.25; position: absolute; top: 0; left: 0; width: 24px; height: 24px; content: "•"; } .shop-carousel-dots .slick-active button:before { color: #12a3eb; opacity: 0.75; } .aps-button-blue.shop-carousel-next, .aps-button-blue.shop-carousel-prev { text-align: center; border-color: transparent; border-radius: 0; box-shadow: none; position: absolute; z-index: 1; top: 0; bottom: 0; height: auto; } .aps-button-blue.shop-carousel-prev { border-bottom-left-radius: inherit; left: 0; } .aps-button-blue.shop-carousel-next { border-bottom-right-radius: inherit; right: 0; } .aps-button-blue.shop-carousel-next:focus, .aps-button-blue.shop-carousel-prev:focus { outline: none; } .shop-carousel-next i:before, .shop-carousel-prev i:after { padding: 0 0 0 2px; } /* Panel heights */ @media only screen and (max-width: 600px) { .aps-body { margin: 0; padding: 0; } .aps-col { padding: 0; } } .aps-col.s3 .shop-panel-height { height: calc(((100vw / 4) - 10px) / 3 * 2); } .aps-col.s4 .shop-panel-height { height: calc(((100vw / 3) - 10px) / 3 * 2); } .aps-col.s6 .shop-panel-height { height: calc(((100vw / 2) - 10px) / 3 * 2); } .aps-col.s12 .shop-panel-height { height: calc((100vw - 10px) / 3 * 2); } @media only screen and (min-width: 601px) { .aps-col.m3 .shop-panel-height { height: calc(((100vw - 56px - (12px * 8)) / 4) / 3 * 2); } .aps-col.m4 .shop-panel-height { height: calc(((100vw - 56px - (12px * 6)) / 3) / 3 * 2); } .aps-col.m6 .shop-panel-height { height: calc(((100vw - 56px - (12px * 4)) / 2) / 3 * 2); } .aps-col.m12 .shop-panel-height { height: calc((100vw - 56px - (12px * 2)) / 3 * 2); } } @media only screen and (min-width: 1153px) { .aps-col.m3 .shop-panel-height { height: calc(((1152px - 32px - (12px * 8)) / 4) / 3 * 2); } .aps-col.m4 .shop-panel-height { height: calc(((1152px - 32px - (12px * 6)) / 3) / 3 * 2); } .aps-col.m6 .shop-panel-height { height: calc(((1152px - 32px - (12px * 4)) / 2) / 3 * 2); } .aps-col.m12 .shop-panel-height { height: calc((1152px - 32px - (12px * 2)) / 3 * 2); } } .studio-spinner { background: #fefefe; border: 1px solid #cccccc; border-radius: 4px; position: fixed; top: 50%; left: 50%; display: none; width: 200px; height: 190px; transform: translate(-50%, -50%); } .studio-spinner span { border: solid 6px transparent; border-bottom: none; position: absolute; top: 50%; left: 50%; display: inline-block; -moz-transform-origin: 50% 100% 0; -webkit-transform-origin: 50% 100% 0; transform-origin: 50% 100% 0; -moz-animation: rotate 3s infinite cubic-bezier(0.09, 0.6, 0.8, 0.03); -webkit-animation: rotate 3s infinite cubic-bezier(0.09, 0.6, 0.8, 0.03); animation: rotate 3s infinite cubic-bezier(0.09, 0.6, 0.8, 0.03); } .studio-spinner span:nth-child(1) { border-color: #2172b8; border-top-left-radius: 36px; border-top-right-radius: 36px; width: 44px; height: 22px; margin-top: -22px; margin-left: -22px; -moz-animation-timing-function: cubic-bezier(0.09, 0.3, 0.12, 0.03); -webkit-animation-timing-function: cubic-bezier(0.09, 0.3, 0.12, 0.03); animation-timing-function: cubic-bezier(0.09, 0.3, 0.12, 0.03); } .studio-spinner span:nth-child(2) { border-color: #18a39b; border-top-left-radius: 42px; border-top-right-radius: 42px; width: 58px; height: 29px; margin-top: -29px; margin-left: -29px; -moz-animation-timing-function: cubic-bezier(0.09, 0.6, 0.24, 0.03); -webkit-animation-timing-function: cubic-bezier(0.09, 0.6, 0.24, 0.03); animation-timing-function: cubic-bezier(0.09, 0.6, 0.24, 0.03); } .studio-spinner span:nth-child(3) { border-color: #82c545; border-top-left-radius: 48px; border-top-right-radius: 48px; width: 72px; height: 36px; margin-top: -36px; margin-left: -36px; -moz-animation-timing-function: cubic-bezier(0.09, 0.9, 0.36, 0.03); -webkit-animation-timing-function: cubic-bezier(0.09, 0.9, 0.36, 0.03); animation-timing-function: cubic-bezier(0.09, 0.9, 0.36, 0.03); } .studio-spinner span:nth-child(4) { border-color: #f8b739; border-top-left-radius: 54px; border-top-right-radius: 54px; width: 86px; height: 43px; margin-top: -43px; margin-left: -43px; -moz-animation-timing-function: cubic-bezier(0.09, 1.2, 0.48, 0.03); -webkit-animation-timing-function: cubic-bezier(0.09, 1.2, 0.48, 0.03); animation-timing-function: cubic-bezier(0.09, 1.2, 0.48, 0.03); } .studio-spinner span:nth-child(5) { border-color: #f06045; border-top-left-radius: 60px; border-top-right-radius: 60px; width: 100px; height: 50px; margin-top: -50px; margin-left: -50px; -moz-animation-timing-function: cubic-bezier(0.09, 1.5, 0.6, 0.03); -webkit-animation-timing-function: cubic-bezier(0.09, 1.5, 0.6, 0.03); animation-timing-function: cubic-bezier(0.09, 1.5, 0.6, 0.03); } .studio-spinner span:nth-child(6) { border-color: #ed2861; border-top-left-radius: 66px; border-top-right-radius: 66px; width: 114px; height: 57px; margin-top: -57px; margin-left: -57px; -moz-animation-timing-function: cubic-bezier(0.09, 1.8, 0.72, 0.03); -webkit-animation-timing-function: cubic-bezier(0.09, 1.8, 0.72, 0.03); animation-timing-function: cubic-bezier(0.09, 1.8, 0.72, 0.03); } .studio-spinner span:nth-child(7) { border-color: #c12680; border-top-left-radius: 72px; border-top-right-radius: 72px; width: 128px; height: 64px; margin-top: -64px; margin-left: -64px; -moz-animation-timing-function: cubic-bezier(0.09, 2.1, 0.84, 0.03); -webkit-animation-timing-function: cubic-bezier(0.09, 2.1, 0.84, 0.03); animation-timing-function: cubic-bezier(0.09, 2.1, 0.84, 0.03); } .studio-spinner span:nth-child(8) { border-color: #5d3191; border-top-left-radius: 78px; border-top-right-radius: 78px; width: 142px; height: 71px; margin-top: -71px; margin-left: -71px; -moz-animation-timing-function: cubic-bezier(0.09, 2.4, 0.96, 0.03); -webkit-animation-timing-function: cubic-bezier(0.09, 2.4, 0.96, 0.03); animation-timing-function: cubic-bezier(0.09, 2.4, 0.96, 0.03); } @keyframes rotate { to { -moz-transform: rotate(360deg); -ms-transform: rotate(360deg); -webkit-transform: rotate(360deg); transform: rotate(360deg); } } /* Inventory */ .shop-inventory-list, .shop-inventory-list > .aps-panel-content { padding-top: 0; padding-left: 0; } .shop-inventory-list > .aps-panel-content { height: 550px; max-height: 550px; } .shop-inventory-row { justify-content: flex-start; } .shop-inventory-row > .aps-col { padding: 0 4px; } .shop-inventory-link { display: block; user-select: none; } .shop-inventory-link, .shop-inventory-link:hover, .shop-inventory-link:focus, .shop-inventory-link:active { text-decoration: none; } .shop-inventory-link > .aps-panel-content { border-radius: 4px 4px 0 0; opacity: 0.75; height: 80px; } .shop-inventory-link, .shop-inventory-link > .aps-panel-content { transition: border-color 0.3s ease-in-out, opacity 0.3s ease-in-out; } .shop-inventory-link:hover { border-color: #12a3eb; cursor: inherit; } .shop-inventory-link:hover > .aps-panel-content { opacity: 1; } .ui-draggable-dragging .shop-inventory-item, .shop-inventory-list .shop-inventory-item { display: none; } .shop-inventory-info .shop-inventory-link { display: none; } .nojs .shop-inventory-list, .nojs .shop-inventory-with-item + .aps-col { flex-basis: 100%; } .nojs .shop-inventory-with-item { display: none; } .nojs .shop-inventory-list:not(.shop-inventory-with-item) + .aps-col { display: none; } .nojs .shop-inventory-list .shop-inventory-link > .aps-panel-content { height: 100px; } @media all and (min-width: 1000px) { .nojs .shop-inventory-list .shop-inventory-link > .aps-panel-content { height: 150px; } } @media all and (max-width: 600px) { .shop-inventory-list, .shop-inventory-with-item + .aps-col { flex-basis: 100%; } .shop-inventory-with-item { display: none; } .shop-inventory-list:not(.shop-inventory-with-item) + .aps-col { display: none; } .shop-inventory-list .shop-inventory-link > .aps-panel-content { height: 100px; } } .shop-inventory-item-animate { animation: show 2.5s; } @keyframes show { from { opacity: 0.25; margin-top: 125px; transform: scale(0.25); } to { opacity: 1; margin-top: 0; transform: scale(1); } } .shop-inventory-item .shop-panel-background, .shop-inventory-item .shop-vertical { border-radius: 4px 4px 0 0; height: 74px; } .shop-inventory-item-img { align-self: stretch; } .shop-inventory-item-img .aps-panel, .shop-inventory-item-img .aps-panel-content { border-radius: 4px; height: 100%; } .ui-draggable { cursor: grab; } .ui-draggable.ui-draggable-dragging { z-index: 2; width: 150px; height: 100px; cursor: grabbing; } .shop-inventory-overlay { position: fixed; z-index: 1; top: 0; left: 0; display: block; width: 100vw; height: 100vh; pointer-events: none; } .shop-inventory-proxy { position: relative; display: none; width: 100%; height: 550px; } .shop-inventory-proxy:only-child { display: block; } .shop-inventory-card { background: #ebebeb; border: 1px dashed rgba(18, 163, 235, 0.75); border-radius: 4px; position: absolute; top: calc(50% - 50px); left: calc(50% - 75px); width: 150px; height: 116px; transition: background-color 0.25s ease-in-out; } .shop-inventory-card-active { background: #eeeeee; } .shop-inventory-card-paused { background: #f9f9f9; } .shop-inventory-card-active:before { background: linear-gradient(90deg, #12a3eb 50%, transparent 50%), linear-gradient(90deg, #12a3eb 50%, transparent 50%), linear-gradient(0deg, #12a3eb 50%, transparent 50%), linear-gradient(0deg, #12a3eb 50%, transparent 50%); background-repeat: repeat-x, repeat-x, repeat-y, repeat-y; background-size: 15px 2px, 15px 2px, 2px 15px, 2px 15px; border-radius: 4px; position: absolute; z-index: -1; top: -4px; left: -4px; width: calc(100% + 8px); height: calc(100% + 8px); content: ""; animation: border-rotate 6s infinite linear; } .shop-inventory-card-paused:before { background: linear-gradient(90deg, #70c7f3 50%, transparent 50%), linear-gradient(90deg, #70c7f3 50%, transparent 50%), linear-gradient(0deg, #70c7f3 50%, transparent 50%), linear-gradient(0deg, #70c7f3 50%, transparent 50%); background-repeat: repeat-x, repeat-x, repeat-y, repeat-y; background-size: 15px 2px, 15px 2px, 2px 15px, 2px 15px; animation-play-state: paused; } .shop-inventory-card > i { font-size: 48px; background: linear-gradient(-90deg, #12a3eb, #41b5ef, #41b5ef, #12a3eb, #0e82bc, #0e82bc, #12a3eb); -webkit-background-clip: text; background-size: 400%; text-shadow: 2px 2px 3px rgba(255, 255, 255, 0.5); color: transparent; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); animation-name: glowing; animation-duration: 15s; animation-timing-function: linear; animation-iteration-count: infinite; animation-direction: normal; } @keyframes glowing { 0% { background-position: 0 0; } 50% { background-position: 300% 300%; } 100% { background-position: 0 0; } } @keyframes border-rotate { 0% { background-position: 0 0, 132px 120px, 0 136px, 154px 4px; } 100% { background-position: 136px 0, -4px 120px, 0 0, 154px 156px; } } .shop-inventory-gift { position: relative; display: block; } .shop-inventory-gift-icon { font-size: 172px; line-height: 172px; color: #313131; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); animation-name: explode; animation-duration: 2s; animation-delay: 3s; animation-iteration-count: 1; animation-fill-mode: both; } .shop-inventory-gift-icon .fa-gift { animation-name: rubberBand; animation-duration: 1s; animation-delay: 1s; animation-iteration-count: 2; animation-fill-mode: both; } .shop-zoom-out { animation-name: zoomOut; animation-duration: 1.5s; animation-delay: 3.5s; animation-fill-mode: both; } .shop-zoom-hide { animation-name: hideOut; animation-duration: 0.1s; animation-delay: 5s; animation-fill-mode: both; } .shop-zoom-in { animation-name: zoomIn; animation-duration: 1s; animation-delay: 5.1s; animation-fill-mode: both; } @keyframes rubberBand { from { transform: scale3d(1, 1, 1); } 30% { transform: scale3d(1.25, 0.75, 1); } 40% { transform: scale3d(0.75, 1.25, 1); } 50% { transform: scale3d(1.15, 0.85, 1); } 65% { transform: scale3d(0.95, 1.05, 1); } 75% { transform: scale3d(1.05, 0.95, 1); } to { transform: scale3d(1, 1, 1); } } @keyframes explode { from { opacity: 1; z-index: 1; transform: translate(-50%, -50%) scale(1); } 99% { opacity: 1; visibility: visible; width: auto; height: auto; transform: translate(-50%, -50%) scale(4); } to { opacity: 0; z-index: 0; visibility: hidden; width: 0; height: 0; } } @keyframes zoomIn { from { opacity: 0; width: 0; height: 0; transform: scale3d(0, 0, 0); } 1% { width: auto; height: auto; } 50% { opacity: 1; } } @keyframes zoomOut { from { opacity: 1; } 50% { opacity: 0; width: 100%; height: auto; transform: scale3d(0.3, 0.3, 0.3); } to { opacity: 0; visibility: hidden; width: 0; height: 0; } } @keyframes hideOut { from { visibility: visible; width: 100%; height: 500px; } to { visibility: hidden; overflow: hidden; width: 0; height: 0; } } .shop-inventory-gift .shop-stars { font-size: 12px; text-align: center; color: #313131; position: absolute; left: 0; display: inline-block; width: 100%; } .shop-inventory-gift .shop-stars-top { top: 20%; } .shop-inventory-gift .shop-stars-bottom { bottom: 20%; } .shop-inventory-gift .shop-stars .fa-star:nth-child(1) { transform: rotate(-40deg) translate(-40%, 75%); } .shop-inventory-gift .shop-stars .fa-star:nth-child(2) { transform: rotate(-20deg) translate(0, 20%); } .shop-inventory-gift .shop-stars .fa-star:nth-child(4) { transform: rotate(20deg) translate(0, 20%); } .shop-inventory-gift .shop-stars .fa-star:nth-child(5) { transform: rotate(40deg) translate(40%, 75%); } .shop-inventory-gift .shop-stars-bottom .fa-star:nth-child(1) { transform: rotate(220deg) translate(40%, 75%); } .shop-inventory-gift .shop-stars-bottom .fa-star:nth-child(2) { transform: rotate(200deg) translate(0, 20%); } .shop-inventory-gift .shop-stars-bottom .fa-star:nth-child(3) { transform: rotate(180deg); } .shop-inventory-gift .shop-stars-bottom .fa-star:nth-child(4) { transform: rotate(160deg) translate(0, 20%); } .shop-inventory-gift .shop-stars-bottom .fa-star:nth-child(5) { transform: rotate(140deg) translate(-40%, 75%); } .shop-inventory-gift svg { width: 100%; height: 100%; } .shop-inventory-gift svg path { -webkit-transform: translate3d(0, 0, 0); -webkit-transform-origin: 200px 200px; animation: rotate-left 20s linear 0s infinite; fill: none; stroke-width: 2px; } .shop-inventory-gift svg path:nth-child(1) { stroke: #5d3191; } .shop-inventory-gift svg path:nth-child(2) { stroke: #c12680; } .shop-inventory-gift svg path:nth-child(3) { stroke: #ed2861; } .shop-inventory-gift svg path:nth-child(4) { stroke: #f06045; } .shop-inventory-gift svg path:nth-child(5) { stroke: #f8b739; } .shop-inventory-gift svg path:nth-child(6) { stroke: #82c545; } .shop-inventory-gift svg path:nth-child(7) { stroke: #18a39b; } .shop-inventory-gift svg path:nth-child(8) { stroke: #2172b8; } .shop-inventory-gift svg path:nth-child(7) { animation: rotate-left 15s linear 0s infinite; } .shop-inventory-gift svg path:nth-child(3n) { animation: rotate-right 10s linear 0s infinite; } @keyframes rotate-right { from { -webkit-transform: rotate(0deg); } to { -webkit-transform: rotate(360deg); } } @keyframes rotate-left { from { -webkit-transform: rotate(0deg); } to { -webkit-transform: rotate(-360deg); } }