diff --git a/basket/README.md b/basket/README.md new file mode 100644 index 0000000..919145a --- /dev/null +++ b/basket/README.md @@ -0,0 +1,5 @@ +## Licenses + +### Icons + +The used icons are from free icon pack of [icomoon](https://icomoon.io/) service. diff --git a/basket/css/style.css b/basket/css/style.css index 329651d..3b0380c 100644 --- a/basket/css/style.css +++ b/basket/css/style.css @@ -1,3 +1,664 @@ +@charset "UTF-8"; +/*------------------------------------*\ + #ABSTRACTS +\*------------------------------------*/ +/*------------------------------------*\ + #FONT +\*------------------------------------*/ +/*------------------------------------*\ + #BREAKPOINTS +\*------------------------------------*/ +/*------------------------------------*\ + #SPACES (padding & margin & gap) +\*------------------------------------*/ +/*------------------------------------*\ + #TRANSITION DURATION +\*------------------------------------*/ +/*------------------------------------*\ + #BOX SHADOW +\*------------------------------------*/ +/*------------------------------------*\ + #BORDER RADIUS +\*------------------------------------*/ +/*======================================================================================== +********* GRIDS BASE SUSY +******* MEDIA QUERY +***** +*** +*/ +/*-------------------------------- +*** GENERAL DIFINITIONS +** CSS3 , CLEARFIX +*/ +@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Mulish:ital,wght@0,200..1000;1,200..1000&display=swap"); +.container { + width: 90%; +} +/*========================================================================================*\ +*---------------------------- MEDIA QUERY ---------------------------- +\*========================================================================================*/ +/*-------------------------------- +*** 4K AND HIGH RESOULOTIONS +** MIN-WIDTH : 2560px OR 160em +*/ +/*-------------------------------- +*** LAPTOP OR DESKTOP +** MIN-WIDTH : 1400px OR 87.5em +*/ +/*-------------------------------- +*** FOR SOM OF THE DEVICES +** MIN-WIDTH : 1201px OR 75.0625em +*/ +/*-------------------------------- +*** FOR ANY DEVICE MAX SIZE UNTIL +** MAX-WIDTH : 1200px OR 75em +*/ +/*-------------------------------- +*** FOR ANY DEVICE MAX SIZE UNTIL +** MAX-WIDTH : 1024px OR 64em +*/ +/*-------------------------------- +*** FOR ANY DEVICE MAX SIZE UNTIL +** MAX-WIDTH : 992px OR 62em +*/ +/*-------------------------------- +*** FOR RETINA MOBILE AND LANSCAPE +** MIN : 500px / 31.25em | MAX : 767PX / 47.9375em +*/ +/*-------------------------------- +*** FOR MOBILE +** MAX : 640PX / 40em +*/ +/*-------------------------------- +*** FOR MINI MOBILE +** MAX : 400PX / 25em +*/ +/*------------------------------------*\ + #COLORS +\*------------------------------------*/ +/*------------------------------------*\ + #FONT +\*------------------------------------*/ +/*------------------------------------*\ + #SHADOW +\*------------------------------------*/ +/*------------------------------------*\ + #BORDER +\*------------------------------------*/ +/*------------------------------------*\ + #FORNT +\*------------------------------------*/ +body { + font-family: "Inter", sans-serif; +} + +/*------------------------------------*\ + #HEADINGS +\*------------------------------------*/ +.heading-primary, +.heading-secondary { + text-align: center; + font-weight: 500; +} + +.heading-primary { + font-size: 2.25em; +} + +.heading-secondary { + font-size: 1.875em; +} + +@media screen and (max-width: 40em) { + .heading-primary { + font-size: 1.875em; + } + .heading-secondary { + font-size: 1.5em; + } +} +/*------------------------------------*\ + #BASE +\*------------------------------------*/ +*, +*::before, +*::after { + box-sizing: border-box; +} + +* { + padding: 0; + margin: 0; + font: inherit; +} + +body { + min-height: 100vh; +} + +ol, +ul { + list-style: none; +} + +img, +picture, +svg, +video { + display: block; + width: 100%; +} + +a { + color: inherit; + text-decoration: none; +} + +.basket { + width: 100%; + z-index: -1; +} + +a { + text-decoration: none; + color: #000; + transition: all 0.6s; +} +a .icon { + transition: inherit; +} +a:hover { + background-color: rgb(245, 245, 245); + color: #2980b9; +} +a:hover .icon { + fill: #2980b9; +} + +.blur { + filter: blur(10px); +} + +.hidden { + display: none !important; +} + +.right-0 { + right: 0% !important; +} + +.left-0 { + left: 0% !important; +} + +body { + width: 100vw; + overflow-x: hidden; +} + +/*------------------------------------*\ + #COMPONENTS +\*------------------------------------*/ +/*========================================================= +********* Generic Button Component +******* +*/ +.button { + background: #fff; + color: #1dc973; + border-radius: 9999px; + border: 1px solid #1dc973; + padding: 0.75em 4em; + font-size: 1em; + font-weight: 600; + transition: 150ms; + text-align: center; + cursor: pointer; +} +.button:hover { + background-color: rgba(29, 201, 115, 0.1); +} + +.card { + display: flex; + flex-direction: column; + border-radius: 1em; + margin: 2em; + width: 27rem; + padding: 2em 2.5em; + box-shadow: 0px 0px 2rem 1rem rgba(0, 0, 0, 0.1); +} +@media screen and (max-width: 64em) { + .card { + width: 50%; + margin: 1em; + } +} +@media screen and (max-width: 40em) { + .card { + width: 100%; + margin: 1em auto; + border-radius: 0; + } +} +.card__image { + background-color: #fff; + width: 7rem; + height: 7rem; + margin: 1em auto; +} +.card__button { + margin: 0 auto 3em auto; +} +.card__button > a { + color: #1dc973; +} +.card__button > a:hover { + background-color: transparent; +} +.card__button:hover > a { + color: #000; +} +.card__text-section { + margin: 1.5em 0; + text-align: center; +} +.card__title { + margin-top: 0.75em; + margin-bottom: 1.5em; +} +.card__description { + text-align: center; + margin-bottom: 2.5em; + color: rgba(0, 0, 0, 0.8); +} +.card__bottom-link { + display: flex; + align-items: center; + justify-content: center; + gap: 0.25em; +} +.card__bottom-link .icon-notification { + width: 1rem; + height: 1rem; +} +.card a { + background-color: transparent; + text-align: center; +} + +.close-modal { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background-color: #fff; + color: #000; + box-shadow: 0px 0px 2rem 1rem rgba(0, 0, 0, 0.1); + border-radius: 0.25em; + padding: 2em; + width: 37em; + height: 18em; + position: absolute; + z-index: 999; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} +@media screen and (max-width: 40em) { + .close-modal { + width: 100%; + } +} +.close-modal__buttons-container { + display: flex; + margin: 2em; + font-size: 1.5em; + margin-bottom: 0; + gap: 1em; +} +.close-modal__button-yes { + background: #fff; + color: #000; + border-radius: 0.25em; + border: 1px solid rgba(0, 0, 0, 0.3); + padding: 0.5em 1em; + font-size: 1em; + font-weight: 400; + transition: 300ms; + text-align: center; + cursor: pointer; +} +.close-modal__button-yes:hover { + background-color: rgba(0, 0, 0, 0.1); +} +.close-modal__button-yes:hover { + color: #fff; +} +.close-modal__button-no { + background: #1dc973; + color: #000; + border-radius: 0.25em; + border: none; + padding: 0.5em 1em; + font-size: 1em; + font-weight: 400; + transition: 300ms; + text-align: center; + cursor: pointer; +} +.close-modal__button-no:hover { + background-color: rgba(29, 201, 115, 0.9); +} +.close-modal__button-yes:hover, .close-modal__button-no:hover { + transform: scale(1.1); +} + +.form { + display: flex; + flex-direction: column; + gap: 2em; + margin: 0 auto; + width: 80%; + text-align: left; + margin-top: 4em; +} +@media screen and (max-width: 40em) { + .form { + width: 90%; + } +} +.form__checkboxs-container { + display: flex; + flex-direction: column; + gap: 1em; +} +.form__checkbox-group { + display: flex; + align-items: center; + gap: 1em; + user-select: none; +} +.form__checkbox-input { + display: none; +} +.form__checkbox-button { + display: flex; + align-items: center; + justify-content: center; + height: 1.5rem; + width: 1.5rem; + background-color: #fff; + border: 0.1rem solid rgba(0, 0, 0, 0.2); + border-radius: 0.25em; + transition: 150ms; + cursor: pointer; + flex-shrink: 0; +} +.form__checkbox-button::after { + content: ""; + display: none; + width: 0.4rem; + height: 0.7rem; + border: solid #fff; + border-width: 0 0.2rem 0.2rem 0; + transform: rotate(45deg); +} +.form__checkbox-input:checked ~ .form__checkbox-button { + background-color: #ff5e57; + box-shadow: 0px 0px 5px 5px rgba(255, 94, 87, 0.5); + border-color: transparent; +} +.form__checkbox-input:checked ~ .form__checkbox-button::after { + display: block; +} +.form__checkbox-group:hover .form__checkbox-input:not(:checked) ~ .form__checkbox-button { + background-color: rgba(149, 165, 166, 0.2); +} +.form__input-groups-container { + display: flex; + justify-content: space-between; + gap: 1em; +} +@media screen and (max-width: 64em) { + .form__input-groups-container { + flex-direction: column; + } +} +.form__input-group { + display: flex; + flex-direction: column; + gap: 0.5em; + flex-grow: 1; +} +.form__input-label-star { + color: #ff5e57; +} +.form__input { + padding: 1em; + border: 0.1rem solid rgba(0, 0, 0, 0.2); + border-radius: 0.25em; +} +.form__textarea-group { + display: flex; + flex-direction: column; + gap: 0.5em; +} +.form__textarea { + width: 100%; + height: 8rem; + border-radius: 0.25em; + border: 0.1rem solid rgba(0, 0, 0, 0.2); + resize: none; + padding: 0.5em; +} +.form__button { + background: #fff; + color: #000; + border-radius: 0.25em; + border: 0.1rem solid rgba(0, 0, 0, 0.2); + padding: 0.75em 1.5em; + font-size: 1em; + font-weight: 400; + transition: 150ms; + text-align: center; + cursor: pointer; + align-self: flex-start; + margin-bottom: 1em; +} +.form__button:hover { + background-color: #ff5e57; +} +.form__button:hover { + color: #fff; + border-color: transparent; +} + +.platform { + width: 20em; + height: 7em; +} +@media screen and (max-width: 62em) { + .platform { + width: 19em; + } +} +@media screen and (max-width: 40em) { + .platform { + width: 22em; + } +} +.platform__radio-input { + display: none; +} +.platform__radio-label { + display: block; + height: 100%; + width: 100%; + background: #fff; + border: 0.1rem solid rgba(0, 0, 0, 0.2); + border-radius: 1.5em; + overflow: hidden; + box-shadow: 0px 0px 2rem 0px rgba(0, 0, 0, 0.2); + position: relative; + transition: 300ms; +} +.platform__radio-input:not(:disabled) ~ .platform__radio-label { + cursor: pointer; +} +.platform__radio-input:disabled ~ .platform__radio-label { + color: hsl(150, 5%, 75%); + border-color: hsl(150, 5%, 75%); + box-shadow: none; + cursor: not-allowed; +} +.platform__radio-input:checked ~ .platform__radio-label { + background: #1dc973; + color: #fff; + box-shadow: 0px 0px 2rem 1rem rgba(0, 0, 0, 0.1); +} +.platform__radio-input:checked ~ .platform__radio-label .platform__check-circle::after { + display: flex; +} +.platform__name { + font-size: 1.5em; + font-weight: 500; + position: absolute; + top: 50%; + left: 59%; + transform: translate(-50%, -50%); + white-space: pre; +} +.platform__check-circle { + display: flex; + align-items: center; + justify-content: center; + position: absolute; + top: 30%; + left: 5%; + height: 3rem; + width: 3rem; +} +.platform__check-circle::after { + content: "✓"; + position: absolute; + top: 0; + left: 0; + display: flex; + height: 3rem; + width: 3rem; + color: #000; + background: #fff; + font-size: 1.875em; + border-radius: 9999px; + display: none; + align-items: center; + justify-content: center; +} +.platform__front-image { + width: 85%; + height: 85%; + object-fit: contain; +} +.platform__bg-image { + width: 11em; + opacity: 0.2; + position: absolute; + top: -29%; + right: -17%; +} + +/*------------------------------------*\ + #LAYOUTS +\*------------------------------------*/ +.header { + width: 100%; + height: 5rem; + position: relative; + box-shadow: 0px 0px 2rem 0px rgba(0, 0, 0, 0.2); +} +.header__basket { + display: flex; + flex-direction: row; + margin: 0 auto; + align-items: center; + justify-content: space-between; + position: relative; + top: 30%; + width: 80%; +} +.header .icon { + display: inline-block; + width: 2rem; + height: 2rem; + fill: rgb(127.5, 127.5, 127.5); +} +.header__logo { + width: 7rem; + height: 3rem; + object-fit: cover; +} +.header a { + background: transparent; +} + +.basket-content { + background: #fff; +} +.basket-content h2 { + margin: 0.75em 0 1.5em; +} +@media screen and (max-width: 40em) { + .basket-content h2 { + margin: 0.75em 0; + } +} +.basket-content .cards-section { + display: flex; + justify-content: center; +} +@media screen and (max-width: 40em) { + .basket-content .cards-section { + flex-direction: column; + } +} + +.select-section { + width: 100%; + height: 100%; + background-color: #fff; + position: fixed; + overflow: auto; + z-index: 99; + transition: all 0.9s cubic-bezier(0.6, 0.05, 0.4, 1); +} +.select-section--left { + top: 0; + bottom: 0; + right: 105%; +} +.select-section--right { + top: 0; + bottom: 0; + left: 105%; +} + +.platform-options-container { + display: flex; + justify-content: center; + flex-flow: row wrap; + padding-bottom: 2em; + margin: 1em 0; + border-bottom: 0.1rem solid rgba(0, 0, 0, 0.2); + gap: 2.5em; + margin: 0 auto; + width: 80%; +} +@media screen and (max-width: 40em) { + .platform-options-container { + width: 90%; + } +} /*# sourceMappingURL=style.css.map */ diff --git a/basket/css/style.css.map b/basket/css/style.css.map index 4c9b008..84ac67a 100644 --- a/basket/css/style.css.map +++ b/basket/css/style.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":[],"names":[],"mappings":"","file":"style.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["../scss/main.scss","../../shared/scss/abstracts/_variables.scss","../../shared/scss/abstracts/_media-query.scss","../scss/_typography.scss","../scss/_variables.scss","../../shared/scss/base/_reset.scss","../scss/_base.scss","../../shared/scss/components/_button.scss","../scss/components/_button.scss","../scss/components/_card.scss","../scss/components/_close-modal.scss","../scss/components/_form.scss","../scss/components/_platform.scss","../scss/layout/_header.scss","../scss/layout/_basket-content.scss","../scss/layout/_select-section.scss","../scss/layout/_platform-options-container.scss"],"names":[],"mappings":"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","file":"style.css"} \ No newline at end of file diff --git a/product-details/img/favicon.png b/basket/images/favicon.png similarity index 100% rename from product-details/img/favicon.png rename to basket/images/favicon.png diff --git a/basket/images/laptop.png b/basket/images/laptop.png new file mode 100644 index 0000000..010338a Binary files /dev/null and b/basket/images/laptop.png differ diff --git a/basket/images/laravel-logo.png b/basket/images/laravel-logo.png new file mode 100644 index 0000000..788def6 Binary files /dev/null and b/basket/images/laravel-logo.png differ diff --git a/basket/images/magento-logo.png b/basket/images/magento-logo.png new file mode 100644 index 0000000..aee090c Binary files /dev/null and b/basket/images/magento-logo.png differ diff --git a/basket/images/notification-icon.png b/basket/images/notification-icon.png new file mode 100644 index 0000000..26ada49 Binary files /dev/null and b/basket/images/notification-icon.png differ diff --git a/basket/images/server.png b/basket/images/server.png new file mode 100644 index 0000000..7fc0984 Binary files /dev/null and b/basket/images/server.png differ diff --git a/basket/images/wordpress-logo.png b/basket/images/wordpress-logo.png new file mode 100644 index 0000000..049a9b0 Binary files /dev/null and b/basket/images/wordpress-logo.png differ diff --git a/basket/images/www-icon.png b/basket/images/www-icon.png new file mode 100644 index 0000000..5dd6b51 Binary files /dev/null and b/basket/images/www-icon.png differ diff --git a/basket/index.html b/basket/index.html index c1d72cb..070d5c8 100644 --- a/basket/index.html +++ b/basket/index.html @@ -7,6 +7,387 @@
+