Artberry-web/static/css/styles.scss
2025-04-18 17:03:53 +03:00

1195 lines
22 KiB
SCSS

$dark-violet: #0D0C1C;
$violet: #3C3882;
$light-violet: #8784C9;
@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&family=Playwrite+IT+Moderna:wght@100..400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
body {
background-color: #05040A;
font-family: Nunito, sans-serif;
}
html, body {
overflow: auto;
scrollbar-width: none;
-ms-overflow-style: none;
}
html::-webkit-scrollbar,
body::-webkit-scrollbar {
display: none;
}
.container {
position: absolute;
display: flex;
flex-wrap: wrap;
gap: 20px;
background-color: #05040A;
padding: 10px;
box-sizing: border-box;
}
.new-content {
width: 1502px;
height: 340px;
top: 257px;
left: 50%;
transform: translateX(-50%);
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 20px;
position: absolute;
padding: 0;
box-sizing: border-box;
}
.img-new-content {
width: 1502px;
height: 423px;
top: 257px;
left: 50%;
transform: translateX(-50%);
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 20px;
position: absolute;
padding: 0;
box-sizing: border-box;
}
.popular-content {
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 0px;
gap: 20px;
width: 1502px;
height: 631px;
top: 653px;
left: 50%;
transform: translateX(-50%);
position: absolute;
box-sizing: border-box;
}
.img-popular-content {
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 0px;
gap: 20px;
width: 1502px;
height: 817px;
left: 209px;
position: absolute;
top: 740px;
}
.viewed-content {
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 0px;
gap: 20px;
width: 1502px;
height: 631px;
top: 1340px;
left: 50%;
transform: translateX(-50%);
position: absolute;
box-sizing: border-box;
}
.img-viewed-content {
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 0px;
gap: 20px;
width: 1502px;
height: 631px;
left: 209px;
position: absolute;
top: 1617px;
}
.popular-categories {
display: flex;
justify-content: space-between;
align-items: center;
width: 1500px;
height: 277px;
padding: 0;
box-sizing: border-box;
position: absolute;
top: 2095px;
left: 50%;
transform: translateX(-50%);
gap: 20px;
}
.img-popular-categories {
display: flex;
justify-content: space-between;
align-items: center;
width: 1500px;
height: 277px;
padding: 0;
box-sizing: border-box;
position: absolute;
top: 2494px;
left: 210px;
gap: 20px;
}
.new-content-text {
width: 123px;
height: 33px;
font-weight: 500;
font-size: 24px;
line-height: 100%;
letter-spacing: 0%;
position: absolute;
top: 10px;
color: $light-violet;
}
.popular-content-text {
width: 123px;
height: 33px;
font-weight: 500;
font-size: 24px;
line-height: 100%;
letter-spacing: 0%;
position: absolute;
top: 10px;
color: $light-violet;
}
.viewed-content-text {
width: 123px;
height: 33px;
font-weight: 500;
font-size: 24px;
line-height: 100%;
letter-spacing: 0%;
position: absolute;
top: 10px;
color: $light-violet;
}
.popular-categories-text {
width: 321px;
height: 33px;
font-weight: 500;
font-size: 24px;
line-height: 100%;
letter-spacing: 0%;
position: absolute;
top: 10px;
color: $light-violet;
}
.view-more-button {
width: 1500px;
height: 40px;
border-radius: 10px;
gap: 10px;
padding-top: 10px;
padding-right: 679px;
padding-bottom: 10px;
padding-left: 679px;
background-color: $light-violet;
border: none;
color: #fff;
font-weight: 500;
font-size: 16px;
cursor: pointer;
white-space: nowrap;
position: absolute;
bottom: -22px;
left: 50%;
transform: translateX(-50%);
}
.view-more-button:hover {
background-color: $violet;
transition: background-color 0.3s ease, color 0.3s ease;
}
.view-more-button:hover .new-context-button-text {
color: $light-violet;
transition: color 0.3s ease;
}
.img-view-more-button {
width: 1500px;
height: 40px;
border-radius: 10px;
gap: 10px;
padding-top: 10px;
padding-right: 679px;
padding-bottom: 10px;
padding-left: 679px;
background-color: $light-violet;
border: none;
color: #fff;
font-weight: 500;
font-size: 16px;
cursor: pointer;
white-space: nowrap;
position: absolute;
bottom: -22px;
left: 50%;
transform: translateX(-50%);
}
.img-view-more-button:hover {
background-color: $violet;
transition: background-color 0.3s ease, color 0.3s ease;
}
.img-view-more-button:hover .new-context-button-text {
color: $light-violet;
transition: color 0.3s ease;
}
.new-context-button-text {
width: 134px;
height: 22px;
font-weight: 500;
font-size: 16px;
line-height: 100%;
letter-spacing: 0%;
color: $violet;
}
/* navbar */
.navbar {
width: 100%;
max-width: 1500px;
height: 120px;
background: $dark-violet;
display: flex;
align-items: center;
padding: 0 20px;
gap: 20px;
}
.navbar-wrapper {
width: 100%;
background: $dark-violet;
display: flex;
justify-content: center;
}
.logo {
width: 307px;
height: 60px;
}
.search-container {
display: flex;
align-items: center;
width: 452.5px;
height: 27px;
border: 1px solid $light-violet;
border-radius: 20px;
padding: 15px;
background: $dark-violet;
position: relative;
transition: border-color 0.3s ease;
}
.search-icon-container {
position: relative;
width: 24px;
height: 24px;
margin-right: 10px;
}
.search-icon,
.search-hover-icon {
width: 24px;
height: 24px;
position: absolute;
top: 0;
left: 0;
transition: opacity 0.3s ease;
}
.search-hover-icon {
opacity: 0;
}
.search-container:hover .search-hover-icon,
.search-container:focus-within .search-hover-icon {
opacity: 1;
}
.search-container:hover .search-icon,
.search-container:focus-within .search-icon {
opacity: 0;
}
.search-input {
border: none;
outline: none;
flex-grow: 1;
font-size: 16px;
height: 24px;
color: $light-violet;
background-color: $dark-violet;
}
.search-container:hover {
border-color: $violet;
}
.search-container:focus-within {
border-color: $violet;
}
.icon-container {
display: flex;
align-items: center;
margin-left: 10px;
}
.video-icon {
width: 24px;
height: 24px;
margin-left: 10px;
}
.tray-icon {
width: 11px;
height: 7px;
margin-left: 5px;
}
.translate-btn {
position: relative;
width: 23px;
height: 27px;
border: 1px solid $light-violet;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
background: $dark-violet;
cursor: pointer;
padding: 15px;
transition: border-color 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
}
.translate-icon,
.translate-hover-icon {
width: 24px;
height: 24px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
transition: opacity 0.3s ease;
}
.translate-hover-icon {
opacity: 0;
}
.translate-btn:hover .translate-hover-icon {
opacity: 1;
}
.translate-btn:hover .translate-icon {
opacity: 0;
}
.translate-btn:hover {
border-color: $violet;
}
.overlay-icon {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 20px;
height: 20px;
opacity: 0.7;
}
.menu {
display: flex;
gap: 22px;
width: 519.5px;
height: 22px;
justify-content: space-between;
padding-left: 60px;
padding-right: 60px;
}
.menu a {
text-decoration: none;
color: $light-violet;
font-size: 16px;
transition: color 0.3s ease;
}
.menu a:hover {
color: $violet;
}
.auth-container {
display: flex;
align-items: center;
margin-left: auto;
}
.discord-icon-container {
position: relative;
width: 42px;
height: 42px;
}
.discord-icon,
.discord-hover-icon {
width: 42px;
height: 42px;
position: absolute;
top: 0;
left: 0;
transition: opacity 0.3s ease;
}
.discord-hover-icon {
opacity: 0;
}
.discord-icon-container:hover .discord-hover-icon {
opacity: 1;
}
.discord-icon-container:hover .discord-icon {
opacity: 0;
}
.login-btn {
width: 87px;
height: 42px;
border-radius: 20px;
background: $light-violet;
border: 1px solid $light-violet;
padding: 10px 15px;
font-size: 16px;
font-weight: 500;
line-height: 21.82px;
letter-spacing: 0%;
color: $dark-violet;
cursor: pointer;
margin-left: 10px;
transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
.login-btn:hover {
background-color: $violet;
color: $dark-violet;
border-color: $violet;
}
.dropdown-menu {
position: absolute;
top: 100%;
right: 0;
background: $dark-violet;
border: 1px solid $violet;
border-radius: 8px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
display: none;
flex-direction: column;
width: 150px;
z-index: 10;
}
.dropdown-item {
padding: 10px 15px;
font-size: 14px;
border-radius: 4px;
color: $light-violet;
cursor: pointer;
transition: background 0.3s ease, color 0.3s ease;
}
.dropdown-item:hover {
background: $violet;
color: white;
}
/* tags-list */
.tags-container {
width: 1500px;
height: 35px;
position: absolute;
top: 192px;
left: 50%;
transform: translateX(-50%);
display: flex;
justify-content: flex-start;
align-items: center;
gap: 10px;
border: none;
background-color: #05040A;
overflow: hidden;
> .list-button {
position: absolute;
right: 0;
z-index: 2;
}
}
.tag {
height: 35px;
border-radius: 5px;
padding: 6px 10px;
display: inline-flex;
align-items: center;
justify-content: center;
background-color: $violet;
border: none;
color: $light-violet;
margin: 0;
visibility: visible;
transition: visibility 0.3s ease;
}
.list-button {
width: 35px;
height: 35px;
border-radius: 10px;
padding: 5px;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid $light-violet;
background-color: transparent;
color: $violet;
margin-left: 10px;
gap: 5px;
position: relative;
z-index: 2;
}
.taglist-shadow {
width: 64px;
height: 35px;
position: absolute;
right: 0;
background: linear-gradient(to right, rgba(5, 4, 10, 0) 30%, rgba(5, 4, 10, 0.5) 60%, #05040A 100%);
}
/* cards */
.img-cards-grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
grid-gap: 30px;
width: 1500px;
height: 708px;
margin-top: 60px;
}
.img-card {
width: 225px;
height: 344px;
display: flex;
flex-direction: column;
gap: 5px;
}
.img-card-cover {
width: 100%;
height: 280px;
background: #1D1C2E;
}
.cards-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-gap: 30px;
width: 1500px;
height: 518px;
margin-top: 60px;
}
.card {
width: 100%;
height: 244px;
display: flex;
flex-direction: column;
gap: 5px;
overflow: hidden;
}
.card-cover {
width: 100%;
height: 180px;
background: #1D1C2E;
position: relative;
overflow: hidden;
}
.card-cover img {
width: 100%;
height: 100%;
object-fit: cover;
position: absolute;
top: 0;
left: 0;
}
.card-cover video.preview-video {
width: 100%;
height: 100%;
object-fit: cover;
position: absolute;
top: 0;
left: 0;
display: none;
z-index: 1;
}
.card-info {
width: 100%;
height: 59px;
display: flex;
flex-direction: column;
gap: 5px;
}
.card-header {
display: flex;
justify-content: space-between;
align-items: center;
}
.card-stats {
display: flex;
gap: 10px;
}
.stat {
display: flex;
align-items: center;
gap: 5px;
}
.card-text {
font-size: 14px;
color: $light-violet;
}
.img-small-cards-grid {
display: grid;
grid-template-columns: repeat(7, 1fr);
grid-gap: 30px;
width: 100%;
margin-top: 60px;
}
.img-small-card-cover {
width: 189px;
height: 250px;
background: #1D1C2E;
}
.img-small-card {
width: 189px;
height: 314px;
display: flex;
flex-direction: column;
gap: 5px;
}
.small-cards-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
grid-gap: 30px;
width: 100%;
margin-top: 60px;
}
.small-card {
width: 100%;
height: 227px;
display: flex;
flex-direction: column;
gap: 5px;
overflow: hidden;
}
.small-card-cover {
width: 100%;
height: 163px;
background: #1D1C2E;
position: relative;
overflow: hidden;
}
.small-card-cover img {
width: 100%;
height: 100%;
object-fit: cover;
position: absolute;
top: 0;
left: 0;
}
.small-card-cover video.preview-video {
width: 100%;
height: 100%;
object-fit: cover;
position: absolute;
top: 0;
left: 0;
display: none;
z-index: 1;
}
.small-card-info {
width: 100%;
height: 59px;
display: flex;
flex-direction: column;
gap: 5px;
}
.small-card-header {
display: flex;
justify-content: space-between;
align-items: center;
}
.small-card-stats {
display: flex;
gap: 10px;
}
.small-stat {
display: flex;
align-items: center;
gap: 5px;
}
.small-card-text {
font-size: 14px;
color: $light-violet;
}
.pc-card {
width: 233px;
height: 164px;
gap: 5px;
}
.pc-card-cover {
width: 100%;
height: 140px;
background-color: #1D1C2E;
}
.pc-card-stats {
width: 100%;
height: 19px;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 2px;
box-sizing: border-box;
}
.category-name-text {
width: auto;
max-width: 58px;
font-weight: 400;
font-size: 14px;
line-height: 100%;
letter-spacing: 0%;
color: $light-violet;
margin-left: -2px;
}
.categories-number {
width: auto;
max-width: 34px;
font-weight: 400;
font-size: 14px;
line-height: 100%;
letter-spacing: 0%;
color: $violet;
text-align: right;
position: relative;
right: 5px;
}
.ac-img-small-cards-grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
grid-gap: 30px;
width: 100%;
margin-top: 60px;
}
.ct-img-card {
width: 225px;
height: 344px;
display: flex;
flex-direction: column;
gap: 5px;
}
.ct-img-card-cover {
width: 100%;
height: 280px;
background: #1D1C2E;
}
.ct-small-card-info {
width: 100%;
height: 59px;
display: flex;
flex-direction: column;
gap: 5px;
}
.ct-small-card-header {
display: flex;
justify-content: space-between;
align-items: center;
}
.ct-small-card-stats {
display: flex;
gap: 10px;
}
.ct-small-stat {
display: flex;
align-items: center;
gap: 5px;
}
.ct-small-card-text {
font-size: 14px;
color: $light-violet;
}
.ac-img-small-cards-grid {
display: grid;
grid-template-columns: repeat(6, 1fr);
grid-gap: 30px;
width: 100%;
margin-top: 60px;
}
.most-new-button {
width: 276px;
height: 40px;
border-radius: 10px;
background-color: $violet;
color: white;
border: none;
cursor: pointer;
display: flex;
justify-content: center;
align-items: center;
font-size: 14px;
text-align: center;
margin-left: -298px;
}
.most-new-button-text {
font-weight: 500;
font-size: 16px;
line-height: 100%;
letter-spacing: 0%;
white-space: nowrap;
}
/* pagination */
.pagination-container {
width: 626px;
height: 50px;
display: flex;
align-items: center;
gap: 10px;
position: absolute;
bottom: -180%;
left: 50%;
transform: translateX(-50%);
.swipe-button {
width: 128px;
height: 50px;
border-radius: 5px;
padding: 7px 45px;
background-color: $violet;
border: none;
color: #fff;
font-weight: 500;
font-size: 16px;
cursor: pointer;
transform: rotate(0deg);
}
.page-buttons-container {
width: 350px;
height: 50px;
display: flex;
gap: 10px;
.page-button {
width: 50px;
height: 50px;
border-radius: 5px;
padding: 1px 6px;
background-color: $violet;
border: none;
color: white;
font-weight: 500;
size: 16px;
cursor: pointer;
font-family: Inter;
}
}
}
#modal-container {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
background-color: rgba(13, 12, 28, 0.5);
display: flex;
align-items: center;
justify-content: center;
z-index: 9999;
}
.modal {
width: 312px;
height: 400px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border-radius: 10px;
border-width: thin;
border-color: #3C3882;
border-style: solid;
padding: 30px 40px;
position: fixed;
background-color: #0D0C1C;
display: none;
z-index: 1000;
}
.modal.active {
display: block;
}
.form-inner-container {
width: 312px;
height: 400px;
gap: 10px;
display: flex;
flex-direction: column;
align-items: center;
margin: 0 auto;
}
.reg-form-title {
width: 100%;
text-align: center;
margin: 0;
font-family: 'Nunito', sans-serif;
font-weight: 500;
font-size: 16px;
text-transform: uppercase;
color: #8784C9;
padding: 10px 0;
}
.modal-register-input-container {
width: 100%;
height: 39px;
border-radius: 10px;
border: 1px solid #8784C9;
opacity: 0.6;
position: relative;
background-color: transparent;
}
.modal-register-text-input {
width: calc(100% - 31px);
height: 16px;
position: absolute;
top: 11px;
left: 15.5px;
border: none;
outline: none;
background: transparent;
color: #8784C9;
font-family: 'Nunito', sans-serif;
font-size: 14px;
}
.modal-text-input::placeholder {
color: #8784C9;
opacity: 0.6;
}
.password-input {
-webkit-text-security: disc;
}
.modal-register-button {
width: 100%;
height: 38px;
border-radius: 10px;
background-color: #8784C9;
border: none;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: background-color 0.3s ease;
}
.modal-register-button:hover {
background-color: #3C3882;
}
.modal-register-button-text {
font-family: 'Nunito', sans-serif;
font-weight: 500;
font-size: 16px;
color: #3C3882;
text-align: center;
transition: background-color 0.3s ease;
}
.modal-register-button:hover .modal-register-button-text {
color: #8784C9;
}
.login-link-container {
width: 312px;
height: 16px;
margin-bottom: 10px;
}
.login-prompt {
display: block;
width: 100%;
height: 16px;
font-family: 'Nunito', sans-serif;
font-weight: 400;
font-size: 12px;
line-height: 30px;
letter-spacing: 0;
color: #8784C9;
}
.login-link {
text-decoration: underline solid 0px;
text-decoration-skip-ink: auto;
color: #8784C9;
}
.login-form-title {
width: 100%;
text-align: center;
margin: 0;
font-family: 'Nunito', sans-serif;
font-weight: 500;
font-size: 16px;
text-transform: uppercase;
color: #8784C9;
padding: 10px 0;
}
.modal-login-input-container {
width: 100%;
height: 39px;
border-radius: 10px;
border: 1px solid #8784C9;
opacity: 0.6;
position: relative;
background-color: transparent;
}
.modal-login-text-input {
width: calc(100% - 31px);
height: 16px;
position: absolute;
top: 11px;
left: 15.5px;
border: none;
outline: none;
background: transparent;
color: #8784C9;
font-family: 'Nunito', sans-serif;
font-size: 14px;
}
.modal-text-input::placeholder {
color: #8784C9;
opacity: 0.6;
}
.password-input {
-webkit-text-security: disc;
}
.modal-login-button {
width: 100%;
height: 38px;
border-radius: 10px;
background-color: #8784C9;
border: none;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: background-color 0.3s ease;
}
.modal-login-button:hover {
background-color: #9d9ad4;
}
.modal-login-button-text {
font-family: 'Nunito', sans-serif;
font-weight: 500;
font-size: 16px;
color: #3C3882;
text-align: center;
}
.login-link-container {
width: 312px;
height: 16px;
margin-bottom: 10px;
}
.login-prompt {
display: block;
width: 100%;
height: 16px;
font-family: 'Nunito', sans-serif;
font-weight: 400;
font-size: 12px;
line-height: 30px;
letter-spacing: 0;
color: #8784C9;
}
.login-link {
text-decoration: underline solid 0px;
text-decoration-skip-ink: auto;
color: #8784C9;
}