diff --git a/src/app/components/footer/footer.component.html b/src/app/components/footer/footer.component.html index 579b62e..c8b304d 100644 --- a/src/app/components/footer/footer.component.html +++ b/src/app/components/footer/footer.component.html @@ -5,92 +5,11 @@
diff --git a/src/app/components/footer/footer.component.scss b/src/app/components/footer/footer.component.scss index 303783c..5213b63 100644 --- a/src/app/components/footer/footer.component.scss +++ b/src/app/components/footer/footer.component.scss @@ -1,84 +1,24 @@ +@import '../../../styles'; + .footer { - background-color: #494b92; - padding: 0.5rem 1rem; display: flex; - flex-direction: row; - justify-content: space-between; -} - -/* Logo and copyrights*/ -.rights { - display: grid; - grid: 'logo title' auto 'copyright copyright' / auto 1fr; + flex-direction: column; + align-items: center; gap: 0.5rem; - color: #ffffff; + padding: 0 4rem 4rem; + text-align: center; - .sandkasten-logo { - grid-area: logo; - width: 4rem; - height: auto; - aspect-ratio: 1; + &--rights { + font-size: 0.875rem; + color: $color-gray; } - .title { - grid-area: title; - display: flex; - align-items: flex-end; - - font-family: 'Podkova', sans-serif; - font-size: 1.25rem; - font-weight: 600; - text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25); - } - - .copyright { - grid-area: copyright; - font-size: 1rem; - } -} - -/*Navigation*/ -.navigation { - display: flex; - flex-direction: row; - gap: 3rem; - color: #818181; - - .about, - .legals { - display: flex; - flex-direction: column; - gap: 0.5rem; + &__links { + font-size: 0.75rem; + color: $color-gray; - .title { - color: #ffffff; - text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25); + a { + cursor: pointer; } - - .links { - display: flex; - flex-direction: column; - gap: 0.25rem; - - > a { - color: #818181; - text-decoration: none; - transition: color 0.3s ease; - } - - :hover { - color: #ffffff; - } - } - } -} - -.socials { - .image { - grid-area: logo; - width: 3rem; - height: auto; - aspect-ratio: 1; - padding-right: 10px; } } diff --git a/src/app/components/header/header.component.scss b/src/app/components/header/header.component.scss index c49e2aa..e405958 100644 --- a/src/app/components/header/header.component.scss +++ b/src/app/components/header/header.component.scss @@ -39,6 +39,7 @@ $color-stars: #fcfcfc; transform: rotateZ($deg); background-color: $color-cloud-inner; } + //endregion $theme-transition: all 0.3s ease-in-out; @@ -59,341 +60,352 @@ $theme-transition: all 0.3s ease-in-out; &__logo { &--container { - display: flex; - flex-direction: row; - gap: 2rem; - } - - &--sandkasten { - width: 4rem; - height: auto; - aspect-ratio: 1; - } - } - } - - .right_part, - .mobile_menu { - // Dark mode button - .wrapper { - text-align: center; - - .toggle { - position: relative; - display: inline-block; - width: 100px; - padding: 4px; - border-radius: 40px; - } - - &:before, - &:after { - content: ''; - display: table; - } - - &:after { - clear: both; - } - - .toggle-bg { - position: absolute; - top: -4px; - left: -4px; - width: 100%; - height: 100%; - background-color: $color-parent-inner; - border-radius: 40px; - border: 4px solid $color-parent-outer; - transition: all 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94); - } - - .toggle-input { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - border: 1px solid red; - border-radius: 40px; - z-index: 2; - opacity: 0; - - &:checked ~ .toggle-switch { - margin-left: 0; - border-color: $color-moon-outer; - background-color: $color-moon-inner; + &--container { + display: flex; + flex-direction: row; + gap: 2rem; } - &:checked ~ .toggle-bg { - background-color: #484848; - border-color: #202020; - } - - &:checked ~ .toggle-switch .toggle-switch-figure { - margin-left: 40px; - opacity: 0; - transform: scale(0.1); - } - - &:checked ~ .toggle-switch .toggle-switch-figureAlt { - transform: scale(1); + &--sandkasten { + &--sandkasten { + width: 4rem; + height: auto; + aspect-ratio: 1; + } } } - .toggle-switch { - position: relative; - width: 30px; - height: 30px; - margin-left: 60px; - background-color: #f5eb42; - border: 4px solid $color-sun; - border-radius: 50%; - transition: all 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94); - - .toggle-switch-figure { - position: absolute; - bottom: -14px; - left: -50px; - display: block; - width: 80px; - height: 30px; - border: 8px solid $color-cloud-outer; - border-radius: 20px; - background-color: #fff; - transform: scale(0.4); - transition: all 0.12s cubic-bezier(0.25, 0.46, 0.45, 0.94); - &:after { - @include cloudBubble(-65px, -42px, 15px, 15px, 70deg); - } - &:before { - @include cloudBubble(-25px, -10px, 30px, 30px, 30deg); + .right_part, + .mobile_menu { + // Dark mode button + .wrapper { + text-align: center; + display: flex; + align-items: center; + + .toggle { + position: relative; + display: inline-block; + width: 100px; + padding: 4px; + border-radius: 40px; + scale: 0.75; } - } - .toggle-switch-figureAlt { - @include crater(5px, 2px, 2px); + &:before, + &:after { + content: ''; + display: table; + } - box-shadow: - 42px -7px 0 -3px $color-stars, - 75px -10px 0 -3px $color-stars, - 54px 4px 0 -4px $color-stars, - 83px 7px 0 -2px $color-stars, - 63px 18px 0 -4px $color-stars, - 44px 23px 0 -2px $color-stars, - 78px 21px 0 -3px $color-stars; + &:after { + clear: both; + } - transition: all 0.12s cubic-bezier(0.25, 0.46, 0.45, 0.94); - transform: scale(0); + .toggle-bg { + position: absolute; + top: -4px; + left: -4px; + width: 100%; + height: 100%; + background-color: $color-parent-inner; + border-radius: 40px; + border: 4px solid $color-parent-outer; + transition: all 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94); + } - &:before { - @include crater(-6px, 12px, 7px); + .toggle-input { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border: 1px solid red; + border-radius: 40px; + z-index: 2; + opacity: 0; + + &:checked ~ .toggle-switch { + margin-left: 0; + border-color: $color-moon-outer; + background-color: $color-moon-inner; + } + + &:checked ~ .toggle-bg { + background-color: #484848; + border-color: #202020; + } + + &:checked ~ .toggle-switch .toggle-switch-figure { + margin-left: 40px; + opacity: 0; + transform: scale(0.1); + } + + &:checked ~ .toggle-switch .toggle-switch-figureAlt { + transform: scale(1); + } } - &:after { - @include crater(10px, 6px, 2px); + .toggle-switch { + position: relative; + width: 30px; + height: 30px; + margin-left: 60px; + background-color: #f5eb42; + border: 4px solid $color-sun; + border-radius: 50%; + transition: all 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94); + + .toggle-switch-figure { + position: absolute; + bottom: -14px; + left: -50px; + display: block; + width: 80px; + height: 30px; + border: 8px solid $color-cloud-outer; + border-radius: 20px; + background-color: #fff; + transform: scale(0.4); + transition: all 0.12s cubic-bezier(0.25, 0.46, 0.45, 0.94); + + &:after { + @include cloudBubble(-65px, -42px, 15px, 15px, 70deg); + } + + &:before { + @include cloudBubble(-25px, -10px, 30px, 30px, 30deg); + } + } + + .toggle-switch-figureAlt { + @include crater(5px, 2px, 2px); + + box-shadow: + 42px -7px 0 -3px $color-stars, + 75px -10px 0 -3px $color-stars, + 54px 4px 0 -4px $color-stars, + 83px 7px 0 -2px $color-stars, + 63px 18px 0 -4px $color-stars, + 44px 23px 0 -2px $color-stars, + 78px 21px 0 -3px $color-stars; + + transition: all 0.12s cubic-bezier(0.25, 0.46, 0.45, 0.94); + transform: scale(0); + + &:before { + @include crater(-6px, 12px, 7px); + } + + &:after { + @include crater(10px, 6px, 2px); + } + } } } } - } - } - .right_part { - display: flex; - flex-direction: row; - align-items: center; - gap: 2rem; + .right_part { + display: flex; + flex-direction: row; + align-items: center; + gap: 2rem; - &--menu { - display: flex; - flex-direction: row; - flex-wrap: wrap; - gap: 1rem; + &--menu { + display: flex; + flex-direction: row; + flex-wrap: wrap; + gap: 1rem; - a { - color: $color-black; - text-decoration: none; - white-space: nowrap; + a { + color: $color-black; + text-decoration: none; + white-space: nowrap; - transition: $theme-transition; - } - } + transition: $theme-transition; + } + } - &--menu_mobile { - cursor: pointer; - display: none; - z-index: 100; - } + &--menu_mobile { + cursor: pointer; + display: none; + z-index: 100; + } - &--bottom { - display: flex; - flex-direction: row; - gap: 2rem; - align-items: center; - } + &--bottom { + display: flex; + flex-direction: row; + gap: 2rem; + align-items: center; + } - &--toggles { - display: flex; - flex-direction: row; - gap: 2rem; - align-items: center; - } + &--toggles { + display: flex; + flex-direction: row; + gap: 2rem; + align-items: center; + } - &__lang { - height: fit-content; - } + &__lang { + height: fit-content; + } - &__connexion { - display: flex; - flex-direction: row; - gap: 1rem; + &__connexion { + display: flex; + flex-direction: row; + gap: 1rem; - &--login { - cursor: pointer; - display: flex; - align-items: center; - gap: 0.5rem; + &--login { + cursor: pointer; + display: flex; + align-items: center; + gap: 0.5rem; - color: $color-purple; - white-space: nowrap; - } + color: $color-purple; + white-space: nowrap; + } - &--register { - cursor: pointer; - border: 1px solid $color-black; - border-radius: 10px; - padding: 0.75rem 2rem; - white-space: nowrap; + &--register { + cursor: pointer; + border: 1px solid $color-black; + border-radius: 10px; + padding: 0.75rem 2rem; + white-space: nowrap; - transition: border 0.3s ease-in-out; + transition: border 0.3s ease-in-out; + } + } } - } - } - .mobile_menu { - position: absolute; - top: 0; - right: 0; - width: 50%; - height: 100vh; - background: $color-white; - transform: translateX(100%); - z-index: 99; - - transition: - transform 0.3s ease-in-out, - box-shadow 0.3s ease-in-out, - background 0.3s ease-in-out; - - &.opened { - transform: translateX(0); - box-shadow: $color-black 0 0 5px 0; - } + .mobile_menu { + position: absolute; + top: 0; + right: 0; + width: 50%; + height: 100vh; + background: $color-white; + transform: translateX(100%); + z-index: 99; + + transition: + transform 0.3s ease-in-out, + box-shadow 0.3s ease-in-out, + background 0.3s ease-in-out; + + &.opened { + transform: translateX(0); + box-shadow: $color-black 0 0 5px 0; + } - &--wrapper { - //padding-top: 6rem; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - gap: 3rem; + &--wrapper { + //padding-top: 6rem; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 3rem; - height: 100%; - } + height: 100%; + } - &--toggles { - display: flex; - flex-direction: column; - align-items: center; - gap: 2rem; - } + &--toggles { + display: flex; + flex-direction: column; + align-items: center; + gap: 2rem; + } - &--menu { - display: flex; - flex-direction: column; - align-items: center; - gap: 1rem; + &--menu { + display: flex; + flex-direction: column; + align-items: center; + gap: 1rem; - a { - color: $color-black; - text-decoration: none; - white-space: nowrap; + a { + color: $color-black; + text-decoration: none; + white-space: nowrap; - transition: $theme-transition; + transition: $theme-transition; + } + } + + &__connexion { + display: flex; + flex-direction: column; + align-items: center; + gap: 1rem; + } } } - &__connexion { - display: flex; - flex-direction: column; - align-items: center; - gap: 1rem; - } - } -} + .dark-theme { + .right_part { + &--menu { + a { + color: $color-white; + } + } -.dark-theme { - .right_part { - &--menu { - a { - color: $color-white; - } - } - &__connexion { - &--register { - border-color: $color-white; + &__connexion { + &--register { + border-color: $color-white; + } + } } - } - } - .mobile_menu { - background: $color-light-black; + .mobile_menu { + background: $color-light-black; - &.opened { - box-shadow: $color-white 0 0 5px 0; - } + &.opened { + box-shadow: $color-white 0 0 5px 0; + } - &--menu { - a { - color: $color-white; - } - } - &__connexion { - &--register { - border-color: $color-white; + &--menu { + a { + color: $color-white; + } + } + + &__connexion { + &--register { + border-color: $color-white; + } + } } } - } -} -@media (max-width: 1024px) { - .header { - .right_part { - flex-direction: column-reverse; + @media (max-width: 1024px) { + .header { + .right_part { + flex-direction: column-reverse; - &--menu_mobile { - display: flex; - } + &--menu_mobile { + display: flex; + } - &--menu { - display: none; - } + &--menu { + display: none; + } - &__connexion { - display: none; - } + &__connexion { + display: none; + } - &--toggles { - display: none; + &--toggles { + display: none; + } + } } } - } -} -@media (max-width: 767px) { - .header { - .mobile_menu { - width: 75%; + @media (max-width: 767px) { + .header { + .mobile_menu { + width: 75%; + } + } } } } diff --git a/src/app/components/landing-page/landing-page.component.html b/src/app/components/landing-page/landing-page.component.html index 4685efb..c1f1f91 100644 --- a/src/app/components/landing-page/landing-page.component.html +++ b/src/app/components/landing-page/landing-page.component.html @@ -1,86 +1,120 @@