diff --git a/assets/css/wishlistAlert.css b/assets/css/wishlistAlert.css new file mode 100644 index 0000000..61f4d0e --- /dev/null +++ b/assets/css/wishlistAlert.css @@ -0,0 +1,37 @@ +.WishlistAlert { + border-radius: 8px; + padding: 48px 40px; + width: 100%; + max-width: 100%; + position: fixed; + bottom: 0; + left: 0; + z-index: 99; + background-color: var(--theme-lightest); + + @screen sm { + top: 30px; + right: 30px; + left: auto; + height: fit-content; + flex-direction: row; + flex-wrap: wrap; + align-items: center; + box-shadow: 0px 0px 8px 0px #5454544d; + max-width: 518px; + padding: 24px 20px; + width: calc(100vw - 60px); + } + + &-iconClose { + position: absolute; + top: 10px; + right: 10px; + width: 35px; + cursor: pointer; + } + + &-title { + @apply mb-0 paragraph-2; + } +} diff --git a/assets/css/wishlistModal.css b/assets/css/wishlistModal.css new file mode 100644 index 0000000..2110758 --- /dev/null +++ b/assets/css/wishlistModal.css @@ -0,0 +1,131 @@ +.WishListButton { + display: inline-flex; +} + +.WishListModal { + z-index: 30; + + &-body { + display: flex; + flex-direction: column; + gap: 1.5rem; + max-height: 70vh; + overflow-y: auto; + } + + &-section { + display: flex; + flex-direction: column; + gap: 0.75rem; + } + + &-title { + @apply block mb-6 text-center text-black; + } + + &-titleSection { + @apply paragraph-2; + font-weight: 700; + color: var(--black); + } + + &-form { + display: flex; + flex-direction: column; + gap: 0.5rem; + } + + &-formRow { + display: flex; + gap: rem-convert(8px); + align-items: stretch; + + .FieldInput-blockInput { + flex: 1 1 auto; + } + } + + &-grid { + display: grid; + gap: 0.5rem; + + @screen md { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + } + + &-card { + display: flex; + align-items: center; + gap: 0.5rem; + padding: 1.25rem; + border-radius: 12px; + background: var(--theme-lightest); + text-align: left; + cursor: pointer; + transition: border-color 0.15s ease; + + &:hover:not(.WishListModal--selected) { + background: var(--theme-lighter); + } + } + &-cardIcon { + width: rem-convert(18px); + height: rem-convert(18px); + flex: 0 0 auto; + } + + &-list { + display: flex; + flex-direction: column; + gap: rem-convert(8px); + margin: 0; + padding: 0; + list-style: none; + } + + &-item { + display: flex; + align-items: center; + justify-content: space-between; + gap: rem-convert(12px); + padding: rem-convert(10px) rem-convert(12px); + border: 1px solid var(--grey); + border-radius: rem-convert(12px); + } + + &-remove { + display: inline-flex; + align-items: center; + gap: rem-convert(6px); + flex: 0 0 auto; + margin-left: auto; + padding: 0.5rem 0.75rem; + + svg { + width: 1rem; + height: 1rem; + } + } +} + +@media (min-width: 1024px) { + .WishListModal.MobileDrawer { + top: 50%; + bottom: auto; + left: 50%; + right: auto; + width: min(560px, 92vw); + max-height: 85vh; + overflow-y: auto; + border-radius: rem-convert(20px); + } + + .WishListModal.MobileDrawer.is-open { + transform: translate(-50%, -50%); + } + + .WishListModal.MobileDrawer::before { + content: none; + } +} diff --git a/assets/icons/heart-fill.svg b/assets/icons/heart-fill.svg index 98e42b8..9884e7c 100644 --- a/assets/icons/heart-fill.svg +++ b/assets/icons/heart-fill.svg @@ -1,5 +1,4 @@ - + \ No newline at end of file diff --git a/assets/icons/heart.svg b/assets/icons/heart.svg index 4793afd..c4d8fbf 100644 --- a/assets/icons/heart.svg +++ b/assets/icons/heart.svg @@ -1,3 +1,4 @@ - + \ No newline at end of file diff --git a/base.html.twig b/base.html.twig index ab81b82..bfdd575 100644 --- a/base.html.twig +++ b/base.html.twig @@ -2,34 +2,33 @@ -
- - -