Files
mm.com.tm-frontend/src/pages/Category/CategoryPage.module.scss
@jcarymuhammedow 6ef7aa3c47 fixed some bugs
2026-04-17 18:38:16 +05:00

410 lines
8.0 KiB
SCSS

.sortingContainer {
display: flex;
align-items: center;
gap: 8px;
margin-left: 16px;
}
.sortingLabel {
font-size: 14px;
color: #888;
}
.sortingSelect {
padding: 6px 12px;
border-radius: 6px;
border: 1px solid #d1d5db;
font-size: 15px;
background: #fff;
color: #222;
outline: none;
transition: border-color 0.2s;
}
.sortingSelect:focus {
border-color: #6c63ff;
}
.mobilePhoneGrid {
display: flex !important;
flex-direction: column;
gap: 0;
}
// Price Filter Styles
.priceFilterContainer {
display: flex;
align-items: center;
gap: 8px;
border-radius: 8px;
margin-bottom: 16px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.priceInputGroup {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 4px;
}
.priceLabel {
font-size: 13px;
color: #888;
margin-bottom: 2px;
}
.priceInput {
width: 90px;
padding: 6px 10px;
border: 1px solid #d1d5db;
border-radius: 6px;
font-size: 15px;
background: #fff;
transition: border-color 0.2s;
}
.priceInput:focus {
border-color: #6c63ff;
outline: none;
}
.priceDivider {
font-size: 18px;
color: #aaa;
font-weight: bold;
margin: 0 6px;
}
.filtersContainer{
.filterSection {
margin-bottom: 20px;
display: flex;
flex-direction: column;
h3 {
margin-bottom: 10px;
font-size: 18px;
font-weight: 600;
color: #000000;
}
ul {
list-style: none;
padding: 0;
li {
margin-bottom: 8px;
color: #000000;
font-size: 14px;
cursor: pointer;
transition: all 0.2s ease-in-out;
padding: 4px 8px;
border-radius: 6px;
&:hover {
background-color: #f3f4f6;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
transform: translateX(4px);
color: #d32824;
}
}
label {
display: flex;
align-items: center;
gap: 8px;
}
}
input[type="text"] {
width: auto;
padding: 8px;
margin-bottom: 10px;
border: 1px solid #ddd;
border-radius: 4px;
}
input[type="radio"] {
display: none;
}
.customRadio {
display: inline-block;
width: 12px;
height: 12px;
border: 2px solid #d1d5db;
border-radius: 50%;
margin-right: 8px;
background-color: #d1d5db;
transition:
background-color 0.2s,
border-color 0.2s;
}
input[type="radio"]:checked + .customRadio {
background-color: #888888;
}
input[type="checkbox"] {
display: none;
}
input[type="checkbox"] {
display: none;
}
.customCheckbox {
width: 18px;
height: 18px;
margin-right: 8px;
border-radius: 4px;
background-color: #d1d5db;
position: relative;
transition:
background-color 0.2s,
border-color 0.2s;
display: flex;
align-items: center;
justify-content: center;
}
.checkIcon {
display: none;
width: 18px;
height: 18px;
fill: #888888;
}
input[type="checkbox"]:checked + .customCheckbox {
background-color: #d1d5db;
}
input[type="checkbox"]:checked + .customCheckbox .checkIcon {
display: block;
}
}
}
.categoryPage {
display: flex;
gap: 10px;
max-width: 1366px;
margin: auto;
padding: 20px 1.375rem;
box-sizing: border-box;
flex-direction: column;
h2 {
font-size: 24px;
font-weight: 700;
margin: 15px 0 0px 0;
@media screen and (max-width: 1024px) {
font-size: 20px;
font-weight: 500;
}
}
p {
font-size: 14px;
margin-top: 0;
}
// .sum {
// @media screen and (min-width: 1024px) {
// display: none;
// }
// }
.breadcrumb {
color: #666;
font-size: 14px;
cursor: pointer;
.separator {
margin: 0 8px;
color: #999;
}
}
.bars {
@media screen and (min-width: 1024px) {
display: none;
}
.filterButton {
position: fixed;
bottom: 80px;
right: 20px;
z-index: 1000;
background-color: #d32824;
border-radius: 12px;
font-size: 16px;
border: none;
padding: 10px 24px;
font-weight: 700;
color: #ffffff;
display: flex;
align-items: center;
gap: 10px;
cursor: pointer;
svg {
font-size: 20px;
}
&:active {
transform: scale(0.95);
}
}
}
.subCategories {
display: flex;
gap: 10px;
margin-bottom: 15px;
overflow-x: auto;
scrollbar-width: none;
scroll-behavior: smooth;
button {
color: #6b7280;
background-color: #fff;
padding: 4px 16px;
font-size: 14px;
border-radius: 0.5rem;
border: none;
width: max-content;
height: max-content;
white-space: nowrap;
}
@media screen and (min-width: 1024px) {
display: none;
}
}
.Container {
display: flex;
gap: 20px;
margin-bottom: 15px;
}
.sidebar {
width: 250px;
position: sticky;
top: 5rem;
background-color: #ffff;
padding: 20px;
border-radius: 8px;
overflow-y: auto;
height: calc(-8.25rem + 100vh);
@media screen and (max-width: 1280px) {
width: 200px;
}
@media screen and (max-width: 1100px) {
width: 180px;
}
@media screen and (max-width: 1023px) {
display: none;
}
h2 {
margin-bottom: 10px;
font-size: 24px;
}
&::-webkit-scrollbar {
width: 6px;
}
&::-webkit-scrollbar-track {
background: #e5e7eb;
}
&::-webkit-scrollbar-thumb {
background: #d1d5db;
border-radius: 3px;
}
}
.productGrid::-webkit-scrollbar {
display: none !important;
width: 0 !important;
height: 0 !important;
}
.productsContainer {
flex: 1;
.productGrid {
-ms-overflow-style: none !important;
scrollbar-width: none !important;
overflow: hidden !important;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(238px, 1fr));
gap: 20px;
@media screen and (max-width: 1230px) {
grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
gap: 10px;
}
@media screen and (max-width: 1023px) {
grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
}
@media screen and (max-width: 774px) {
grid-template-columns: repeat(auto-fill, minmax(228px, 1fr));
}
@media screen and (max-width: 519px) {
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}
@media screen and (max-width: 510px) {
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}
}
.productCard {
background-color: #fff;
border: 1px solid #ddd;
border-radius: 8px;
padding: 15px;
text-align: center;
img {
width: 100%;
height: auto;
margin-bottom: 10px;
border-radius: 4px;
}
.discount {
position: absolute;
// top: 10px;
// left: 10px;
background-color: #ff4d4f;
color: #fff;
padding: 5px 10px;
border-radius: 4px;
}
h4 {
margin: 10px 0;
font-size: 16px;
}
.price {
display: flex;
justify-content: center;
gap: 10px;
font-size: 14px;
.oldPrice {
text-decoration: line-through;
color: #999;
}
}
.addToCart {
margin-top: 10px;
background-color: #ff7f50;
color: #fff;
border: none;
padding: 10px 20px;
border-radius: 4px;
cursor: pointer;
&:hover {
background-color: #ff4500;
}
}
}
}
}