From 4238d59fc68ea289a6ecf9f08cdf13fd4521c629 Mon Sep 17 00:00:00 2001 From: sdarbinyan Date: Sat, 14 Feb 2026 02:34:11 +0400 Subject: [PATCH] style changes --- .gitignore | 1 + public/assets/images/hero-bg.png | Bin 96854 -> 0 bytes .../components/header/header.component.html | 10 +- .../components/header/header.component.scss | 78 +- .../items-carousel.component.scss | 68 +- .../language-selector.component.scss | 4 +- src/app/models/category.model.ts | 1 + src/app/pages/cart/cart.component.scss | 261 ++-- .../pages/category/category.component.scss | 169 ++- .../category/subcategories.component.html | 24 +- .../category/subcategories.component.scss | 289 ++--- src/app/pages/home/home.component.html | 8 +- src/app/pages/home/home.component.scss | 90 +- src/app/pages/home/home.component.ts | 26 + .../item-detail/item-detail.component.html | 233 ++-- .../item-detail/item-detail.component.scss | 1098 ++++++++++------- src/app/pages/search/search.component.html | 14 +- src/app/pages/search/search.component.scss | 57 +- src/styles.scss | 41 +- src/styles/themes/dexar.theme.scss | 8 +- 20 files changed, 1448 insertions(+), 1032 deletions(-) delete mode 100644 public/assets/images/hero-bg.png diff --git a/.gitignore b/.gitignore index cc7b141..0139063 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ /tmp /out-tsc /bazel-out +/files # Node /node_modules diff --git a/public/assets/images/hero-bg.png b/public/assets/images/hero-bg.png deleted file mode 100644 index d9f9142f01c3931d37010bb860aa42ad5f874777..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96854 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 - +
+ + +
diff --git a/src/app/components/header/header.component.scss b/src/app/components/header/header.component.scss index 5be41c2..af8877c 100644 --- a/src/app/components/header/header.component.scss +++ b/src/app/components/header/header.component.scss @@ -78,12 +78,12 @@ &:hover { color: var(--primary-hover); - background: rgba(85, 104, 211, 0.05); + background: rgba(73, 118, 113, 0.05); } &.active { color: var(--primary-hover); - background: rgba(85, 104, 211, 0.1); + background: rgba(73, 118, 113, 0.1); font-weight: 600; } } @@ -183,11 +183,11 @@ } &:hover { - background: rgba(85, 104, 211, 0.05); + background: rgba(73, 118, 113, 0.05); } &.active { - background: rgba(85, 104, 211, 0.1); + background: rgba(73, 118, 113, 0.1); } } @@ -458,6 +458,7 @@ top: 0; z-index: 1000; backdrop-filter: blur(10px); + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; } .dexar-header-container { @@ -585,14 +586,14 @@ .dexar-actions { display: flex; align-items: center; - gap: 4px; + gap: 8px; flex-shrink: 0; } .dexar-cart-btn { position: relative; - width: 32px; - height: 24px; + width: 36px; + height: 28px; display: flex; align-items: center; justify-content: center; @@ -601,8 +602,8 @@ transition: opacity 0.3s ease; svg { - width: 32px; - height: 24px; + width: 36px; + height: 28px; } &:hover { @@ -616,18 +617,21 @@ .dexar-cart-badge { position: absolute; - top: -6px; - right: -6px; - background: linear-gradient(135deg, #ff4757 0%, #ff6b81 100%); - color: white; + top: -8px; + right: -10px; + background: #497671; + color: #ffffff; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-weight: 700; - font-size: 0.75rem; - padding: 2px 6px; - border-radius: 10px; - min-width: 18px; - text-align: center; - box-shadow: 0 2px 6px rgba(255, 71, 87, 0.4); - border: 2px solid white; + font-size: 10px; + line-height: 1; + width: 18px; + height: 18px; + display: flex; + align-items: center; + justify-content: center; + border-radius: 50%; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2); } .dexar-lang-selector { @@ -667,6 +671,23 @@ } } +// Mobile Search Icon +.dexar-search-mobile { + display: none; + align-items: center; + justify-content: center; + background: none; + border: none; + cursor: pointer; + padding: 6px; + margin-left: auto; + transition: opacity 0.2s ease; + + &:hover { + opacity: 0.7; + } +} + // Responsive Design @media (max-width: 1200px) { .dexar-header-container { @@ -777,22 +798,11 @@ } .dexar-search-wrapper { - flex: 1; - max-width: none; - margin-left: 0; + display: none; } - .dexar-search-box { - height: 40px; - } - - .dexar-search-icon { - width: 20px; - height: 20px; - } - - .dexar-search-input { - font-size: 16px; + .dexar-search-mobile { + display: flex; } .dexar-menu-toggle { diff --git a/src/app/components/items-carousel/items-carousel.component.scss b/src/app/components/items-carousel/items-carousel.component.scss index 9c37b57..cbf67fe 100644 --- a/src/app/components/items-carousel/items-carousel.component.scss +++ b/src/app/components/items-carousel/items-carousel.component.scss @@ -3,6 +3,7 @@ padding: 2rem 0; max-width: 1400px; margin: 0 auto; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; ::ng-deep { // PrimeNG carousel wrapper @@ -21,8 +22,8 @@ height: 3rem; border-radius: 50%; background: white; - border: 2px solid #e5e7eb; - color: #374151; + border: 2px solid #d3dad9; + color: #1e3c38; transition: all 0.3s ease; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); align-self: center; @@ -31,13 +32,13 @@ &:hover { background: #f9fafb; - border-color: #d1d5db; + border-color: #d3dad9; transform: scale(1.05); } &:not(:disabled):hover { - background: var(--primary-color, #5568d3); - border-color: var(--primary-color, #5568d3); + background: var(--primary-color, #497671); + border-color: var(--primary-color, #497671); color: white; } } @@ -63,7 +64,7 @@ flex-shrink: 0; } - // Pagination dots - using actual PrimeNG rendered classes + // Pagination dots .p-carousel-indicator-list { display: flex !important; justify-content: center !important; @@ -79,20 +80,20 @@ width: 12px !important; height: 12px !important; border-radius: 50% !important; - background-color: #d1d5db !important; + background-color: #d3dad9 !important; border: 0 !important; padding: 0 !important; cursor: pointer !important; transition: all 0.3s ease !important; &:hover { - background-color: #9ca3af !important; + background-color: #a1b4b5 !important; transform: scale(1.2); } } &.p-carousel-indicator-active .p-carousel-indicator-button { - background-color: var(--primary-color, #5568d3) !important; + background-color: var(--primary-color, #497671) !important; width: 32px !important; border-radius: 6px !important; } @@ -106,14 +107,14 @@ .carousel-empty { text-align: center; padding: 3rem 1rem; - color: #666; + color: #697777; .spinner { width: 40px; height: 40px; margin: 0 auto 1rem; border: 4px solid #f3f3f3; - border-top: 4px solid var(--primary-color, #5568d3); + border-top: 4px solid var(--primary-color, #497671); border-radius: 50%; animation: spin 1s linear infinite; } @@ -124,12 +125,13 @@ 100% { transform: rotate(360deg); } } -// Item card styles matching your existing design +// Item card styles .item-card { background: white; - border-radius: 12px; + border-radius: 13px; + border: 1px solid #d3dad9; overflow: hidden; - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); + box-shadow: 0 3px 4px rgba(0, 0, 0, 0.08); transition: all 0.3s ease; position: relative; height: 100%; @@ -140,7 +142,7 @@ margin: 0 auto; &:hover { - box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15); + box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12); transform: translateY(-4px); } } @@ -159,7 +161,7 @@ height: 140px; overflow: hidden; background: #f5f5f5; - border-radius: 12px; + border-radius: 13px; img { width: 100%; @@ -181,10 +183,10 @@ position: absolute; top: 12px; right: 12px; - background: #e74c3c; + background: #ef4444; color: white; padding: 0.4rem 0.8rem; - border-radius: 6px; + border-radius: 20px; font-size: 0.875rem; font-weight: 700; z-index: 10; @@ -211,11 +213,11 @@ line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; - color: #1a1a1a; + color: #1e3c38; transition: color 0.2s; &:hover { - color: var(--primary-color, #5568d3); + color: var(--primary-color, #497671); } } @@ -226,12 +228,12 @@ font-size: 0.75rem; .rating-stars { - color: #fbbf24; + color: #497671; font-weight: 600; } .rating-count { - color: #6b7280; + color: #697777; } } @@ -253,26 +255,26 @@ .discounted-price { font-size: 0.9375rem; font-weight: 700; - color: #1a1a1a; + color: #1e3c38; } .discounted-price { - color: #e74c3c; + color: #ef4444; } .original-price { font-size: 0.8125rem; - color: #9ca3af; + color: #697777; text-decoration: line-through; } } .cart-icon-btn { padding: 0.5rem; - background: var(--primary-color, #5568d3); + background: var(--primary-color, #497671); color: white; border: none; - border-radius: 8px; + border-radius: 10px; cursor: pointer; transition: all 0.3s ease; display: flex; @@ -285,7 +287,7 @@ } &:hover { - background: var(--primary-hover, #4456b3); + background: var(--primary-hover, #3d635f); transform: scale(1.05); } @@ -301,14 +303,14 @@ .p-carousel-prev, .p-carousel-next { &:not(:disabled):hover { - background: var(--primary-color, #5568d3); - border-color: var(--primary-color, #5568d3); + background: var(--primary-color, #497671); + border-color: var(--primary-color, #497671); } } .p-carousel-indicators { .p-carousel-indicator.p-highlight button { - background: var(--primary-color, #5568d3); + background: var(--primary-color, #497671); } } } @@ -319,10 +321,10 @@ } .cart-icon-btn { - background: var(--primary-color, #5568d3); + background: var(--primary-color, #497671); &:hover { - background: var(--primary-hover, #4456b3); + background: var(--primary-hover, #3d635f); } } } diff --git a/src/app/components/language-selector/language-selector.component.scss b/src/app/components/language-selector/language-selector.component.scss index 0ea6443..35b280c 100644 --- a/src/app/components/language-selector/language-selector.component.scss +++ b/src/app/components/language-selector/language-selector.component.scss @@ -155,8 +155,8 @@ // Dexar header specific styles :host-context(.dexar-header) { .language-selector { - width: 52px; - height: 26px; + width: 56px; + height: 28px; } .language-button { diff --git a/src/app/models/category.model.ts b/src/app/models/category.model.ts index 764eca1..230096f 100644 --- a/src/app/models/category.model.ts +++ b/src/app/models/category.model.ts @@ -3,4 +3,5 @@ export interface Category { name: string; parentID: number; icon?: string; + wideBanner?: string; } diff --git a/src/app/pages/cart/cart.component.scss b/src/app/pages/cart/cart.component.scss index 9e57c5c..38040e2 100644 --- a/src/app/pages/cart/cart.component.scss +++ b/src/app/pages/cart/cart.component.scss @@ -2,8 +2,9 @@ .cart-container.dexar { max-width: 1200px; margin: 0 auto; - padding: 20px; + padding: 24px; min-height: calc(100vh - 200px); + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; } // Novo theme - Modern green design @@ -16,38 +17,44 @@ } .cart-container.dexar .cart-header { - margin-bottom: 24px; + margin-bottom: 28px; display: flex; justify-content: space-between; align-items: center; h1 { - font-size: 1.75rem; - font-weight: 600; - color: #1a1a1a; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 2rem; + font-weight: 700; + color: #1e3c38; margin: 0; } .clear-cart-btn { - padding: 8px 16px; - background: #ef4444; - color: white; - border: none; - border-radius: 8px; + padding: 10px 20px; + background: transparent; + color: #697777; + border: 1px solid #d3dad9; + border-radius: 13px; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-size: 0.9rem; - font-weight: 500; + font-weight: 600; cursor: pointer; transition: all 0.2s; display: flex; align-items: center; - gap: 6px; + gap: 8px; svg { - display: none; + display: block; + width: 16px; + height: 16px; } &:hover { - background: #dc2626; + background: #fef2f2; + border-color: #ef4444; + color: #ef4444; transform: translateY(-1px); } @@ -114,41 +121,51 @@ justify-content: center; padding: 80px 20px; text-align: center; + background: #f5f3f9; + border-radius: 13px; + border: 1px solid #d3dad9; .empty-icon { - margin-bottom: 24px; + margin-bottom: 28px; svg { - width: 80px; - height: 80px; + width: 90px; + height: 90px; + opacity: 0.7; } } h2 { - font-size: 1.5rem; - font-weight: 600; - color: #1a1a1a; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 1.6rem; + font-weight: 700; + color: #1e3c38; margin: 0 0 12px 0; } p { - font-size: 0.95rem; - color: #6b7280; - margin: 0 0 24px 0; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 1rem; + color: #697777; + margin: 0 0 28px 0; } .shop-btn { - padding: 12px 24px; - background: #a855f7; + padding: 14px 32px; + background: #497671; color: white; text-decoration: none; - border-radius: 8px; - font-weight: 500; + border-radius: 13px; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-weight: 600; + font-size: 1rem; transition: all 0.2s; + box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15); &:hover { - background: #9333ea; - transform: translateY(-1px); + background: #3a5f5b; + transform: translateY(-2px); + box-shadow: 0 6px 12px rgba(73, 118, 113, 0.3); } } } @@ -256,26 +273,30 @@ // Dexar cart item .cart-container.dexar .cart-item { display: flex; - gap: 16px; + gap: 20px; background: white; - border: 1px solid #e5e7eb; - border-radius: 12px; - padding: 16px; - transition: all 0.3s ease; + border: 1px solid #d3dad9; + border-radius: 13px; + padding: 20px; + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); position: relative; z-index: 1; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04); &:hover { - border-color: #d1d5db; + border-color: #a1b4b5; + box-shadow: 0 4px 12px rgba(73, 118, 113, 0.1); + transform: translateY(-1px); } .item-image { flex-shrink: 0; - width: 80px; - height: 80px; - border-radius: 8px; + width: 100px; + height: 100px; + border-radius: 13px; overflow: hidden; - background: #f3f4f6; + background: #f5f3f9; + border: 1px solid #d3dad9; img { width: 100%; @@ -283,6 +304,12 @@ object-fit: contain; background: white; display: block; + padding: 6px; + transition: transform 0.3s ease; + } + + &:hover img { + transform: scale(1.05); } } @@ -302,25 +329,26 @@ } .item-name { - font-size: 1rem; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 1.05rem; font-weight: 600; - color: #1a1a1a; + color: #1e3c38; text-decoration: none; transition: color 0.2s; &:hover { - color: #a855f7; + color: #497671; } } .remove-btn { flex-shrink: 0; - padding: 4px; + padding: 6px; background: transparent; border: none; - color: #9ca3af; + color: #a1b4b5; cursor: pointer; - border-radius: 6px; + border-radius: 8px; transition: all 0.2s; &:hover { @@ -330,8 +358,9 @@ } .item-description { + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-size: 0.875rem; - color: #6b7280; + color: #697777; line-height: 1.5; } @@ -462,9 +491,10 @@ } .current-price { - font-size: 1.1rem; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 1.15rem; font-weight: 700; - color: #1a1a1a; + color: #497671; } } @@ -473,16 +503,17 @@ display: flex; align-items: center; gap: 12px; - background: #f3f4f6; - border-radius: 20px; - padding: 4px 8px; + background: #f5f3f9; + border-radius: 13px; + padding: 4px 10px; + border: 1px solid #d3dad9; .qty-btn { - width: 28px; - height: 28px; + width: 30px; + height: 30px; border: none; background: transparent; - color: #a855f7; + color: #497671; cursor: pointer; display: flex; align-items: center; @@ -491,7 +522,7 @@ transition: all 0.2s; &:hover:not(:disabled) { - background: #a855f7; + background: #497671; color: white; } @@ -502,10 +533,11 @@ } .qty-value { - font-size: 0.95rem; - font-weight: 600; - color: #1a1a1a; - min-width: 20px; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 1rem; + font-weight: 700; + color: #1e3c38; + min-width: 24px; text-align: center; } } @@ -582,19 +614,21 @@ // Dexar Cart Summary .cart-container.dexar .cart-summary { position: sticky; - top: 20px; - background: white; - border: 1px solid #e5e7eb; - border-radius: 16px; - padding: 24px; + top: 90px; + background: #f5f3f9; + border: 1px solid #d3dad9; + border-radius: 13px; + padding: 28px; display: flex; flex-direction: column; gap: 16px; + box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15); .summary-header h3 { - font-size: 1.25rem; - font-weight: 600; - color: #1a1a1a; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 1.4rem; + font-weight: 700; + color: #1e3c38; margin: 0 0 16px 0; } @@ -602,8 +636,9 @@ display: flex; justify-content: space-between; align-items: center; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-size: 0.95rem; - color: #6b7280; + color: #697777; &.delivery { display: flex; @@ -611,35 +646,38 @@ &.total { padding-top: 16px; - border-top: 1px solid #e5e7eb; - font-size: 1.1rem; - font-weight: 600; - color: #1a1a1a; + border-top: 1px solid #d3dad9; + font-size: 1.15rem; + font-weight: 700; + color: #1e3c38; margin-top: 8px; .total-price { - font-size: 1.25rem; - color: #1a1a1a; + font-size: 1.35rem; + color: #497671; } } } .checkout-btn { width: 100%; - padding: 14px; - background: linear-gradient(135deg, #a855f7 0%, #9333ea 100%); + padding: 16px; + background: #497671; color: white; border: none; - border-radius: 12px; - font-size: 1rem; - font-weight: 600; + border-radius: 13px; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 1.05rem; + font-weight: 700; cursor: pointer; transition: all 0.2s; margin-top: 8px; + box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15); &:hover:not(:disabled) { - transform: translateY(-1px); - box-shadow: 0 8px 16px rgba(168, 85, 247, 0.3); + background: #3a5f5b; + transform: translateY(-2px); + box-shadow: 0 6px 16px rgba(73, 118, 113, 0.3); } &:active { @@ -790,7 +828,7 @@ line-height: 1.4; a { - color: #a855f7; + color: var(--primary-color); text-decoration: none; &:hover { @@ -804,13 +842,36 @@ // Dexar checkbox colors .cart-container.dexar .terms-agreement .checkbox-container { input[type="checkbox"]:checked ~ .checkmark { - background: #a855f7; - border-color: #a855f7; + background: #497671; + border-color: #497671; &::after { display: block; } } + + .checkmark { + border: 2px solid #d3dad9; + border-radius: 4px; + } + + .terms-text { + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 0.85rem; + color: #697777; + line-height: 1.5; + + a { + color: #497671; + text-decoration: none; + font-weight: 600; + + &:hover { + text-decoration: underline; + color: #3a5f5b; + } + } + } } // Novo checkbox colors - green @@ -861,13 +922,15 @@ .payment-modal { background: white; - border-radius: 20px; + border-radius: 13px; max-width: 500px; width: 100%; padding: 40px; position: relative; max-height: 90vh; overflow-y: auto; + border: 1px solid #d3dad9; + box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12); } .close-modal-btn { position: absolute; @@ -980,8 +1043,8 @@ .spinner-small { width: 50px; height: 50px; - border: 4px solid #f3f3f3; - border-top: 4px solid #a855f7; + border: 4px solid #d3dad9; + border-top: 4px solid #497671; border-radius: 50%; animation: spin 1s linear infinite; margin: 0 auto; @@ -1032,9 +1095,9 @@ left: 16px; right: 16px; height: 2px; - background: linear-gradient(90deg, transparent, #a855f7, transparent); + background: linear-gradient(90deg, transparent, #497671, transparent); animation: scan 2s linear infinite; - box-shadow: 0 0 10px #a855f7; + box-shadow: 0 0 10px #497671; } @keyframes scan { @@ -1084,7 +1147,7 @@ .pulse-dot { width: 8px; height: 8px; - background: #a855f7; + background: #497671; border-radius: 50%; animation: pulse 1.5s ease-in-out infinite; } @@ -1132,12 +1195,12 @@ display: flex; align-items: center; justify-content: center; - box-shadow: 0 4px 12px rgba(102, 126, 234, 0.25); + box-shadow: 0 4px 12px rgba(73, 118, 113, 0.25); &:hover { background: var(--primary-hover); transform: translateY(-2px); - box-shadow: 0 6px 16px rgba(102, 126, 234, 0.35); + box-shadow: 0 6px 16px rgba(73, 118, 113, 0.35); } &:active { @@ -1198,8 +1261,8 @@ transition: all 0.2s; &:focus { - border-color: #a855f7; - box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.1); + border-color: #497671; + box-shadow: 0 0 0 3px rgba(73, 118, 113, 0.1); } &.valid { @@ -1225,12 +1288,13 @@ .submit-email-btn { padding: 14px; - background: linear-gradient(135deg, #a855f7 0%, #9333ea 100%); + background: #497671; color: white; border: none; - border-radius: 8px; + border-radius: 13px; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-size: 1rem; - font-weight: 600; + font-weight: 700; cursor: pointer; display: flex; align-items: center; @@ -1239,8 +1303,9 @@ transition: all 0.2s; &:hover:not(:disabled) { + background: #3a5f5b; transform: translateY(-1px); - box-shadow: 0 4px 12px rgba(168, 85, 247, 0.3); + box-shadow: 0 4px 12px rgba(73, 118, 113, 0.3); } &:disabled { diff --git a/src/app/pages/category/category.component.scss b/src/app/pages/category/category.component.scss index 6d15d1e..f810fe4 100644 --- a/src/app/pages/category/category.component.scss +++ b/src/app/pages/category/category.component.scss @@ -1,7 +1,8 @@ .category-container { max-width: 1200px; margin: 0 auto; - padding: 20px; + padding: 24px; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; } .error, @@ -14,42 +15,54 @@ flex-direction: column; align-items: center; justify-content: center; + color: #697777; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; } .error button { margin-top: 20px; padding: 10px 24px; - background: var(--primary-color); + background: #497671; color: white; border: none; - border-radius: 6px; + border-radius: 8px; cursor: pointer; font-size: 1rem; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-weight: 500; + transition: all 0.2s ease; &:hover { - background: var(--primary-hover); + background: #3a5f5b; + transform: translateY(-1px); + box-shadow: 0 4px 12px rgba(73, 118, 113, 0.3); } } .items-grid { display: grid; - grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); - gap: 24px; + grid-template-columns: repeat(4, 1fr); + gap: 30px; margin-bottom: 40px; + width: 100%; } .item-card { - background: white; - border-radius: 12px; - box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); - overflow: hidden; - transition: transform 0.2s, box-shadow 0.2s; + width: 100%; display: flex; flex-direction: column; + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); &:hover { transform: translateY(-4px); - box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15); + + .item-image { + box-shadow: 0 6px 8px 0 rgba(0, 0, 0, 0.2); + } + + .item-details { + box-shadow: 0 6px 8px 0 rgba(0, 0, 0, 0.2); + } } } @@ -64,27 +77,27 @@ .item-image { position: relative; width: 100%; - padding-top: 75%; // 4:3 aspect ratio - background: #f5f5f5; + aspect-ratio: 4 / 3; + border: 1px solid #d3dad9; + border-radius: 13px 13px 0 0; + box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15); overflow: hidden; - border-radius: 12px; + display: flex; + align-items: center; + justify-content: center; + background: #f5f5f5; img { - position: absolute; - top: 0; - left: 0; width: 100%; height: 100%; object-fit: contain; background: white; padding: 12px; - transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), filter 0.4s ease; - filter: drop-shadow(0 2px 6px rgba(0,0,0,0.06)); + transition: transform 0.3s ease; } &:hover img { - transform: scale(1.06) translateY(-2px); - filter: drop-shadow(0 12px 24px rgba(0,0,0,0.15)) brightness(1.03); + transform: scale(1.05); } } @@ -98,33 +111,47 @@ border-radius: 20px; font-weight: 600; font-size: 0.9rem; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + z-index: 1; } .item-details { - padding: 16px; + width: 100%; + border: 1px solid #d3dad9; + border-top: none; + border-radius: 0 0 13px 13px; + padding: 12px 16px; + box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15); + background: #f5f3f9; flex: 1; display: flex; flex-direction: column; - gap: 8px; + gap: 6px; + transition: background 0.3s ease; } .item-name { - font-size: 1.1rem; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-weight: 600; + font-size: clamp(14px, 1.4vw, 18px); + color: #1e3c38; margin: 0; - color: #333; + line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; - line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; + text-overflow: ellipsis; + min-height: calc(2 * 1.3em); } .item-rating { display: flex; align-items: center; - gap: 8px; - font-size: 0.9rem; - color: #333; + gap: 6px; + font-size: 0.85rem; + color: #697777; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; .rating-stars { color: #ffa502; @@ -142,15 +169,17 @@ .original-price { text-decoration: line-through; - color: #555; - font-size: 0.9rem; + color: #697777; + font-size: 0.85rem; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; } .discounted-price, .current-price { - font-size: 1.3rem; + font-size: clamp(16px, 1.6vw, 22px); font-weight: 700; - color: var(--primary-color); + color: #497671; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; } .item-stock { @@ -162,16 +191,16 @@ .bar-segment { width: 20px; height: 6px; - background: #e0e0e0; + background: #d3dad9; border-radius: 3px; transition: background 0.2s; &.filled.high { - background: #2ed573; + background: #497671; } &.filled.medium { - background: #ffa502; + background: #a1b4b5; } &.filled.low { @@ -184,16 +213,19 @@ .add-to-cart-btn { width: 100%; padding: 12px; - background: var(--primary-color); + background: #497671; color: white; border: none; - font-size: 1rem; + border-radius: 0 0 13px 13px; + font-size: 0.95rem; font-weight: 600; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; cursor: pointer; - transition: background 0.2s; + transition: all 0.2s ease; + margin-top: -1px; &:hover { - background: var(--primary-hover); + background: #3a5f5b; } &:active { @@ -209,8 +241,8 @@ .spinner { width: 40px; height: 40px; - border: 4px solid #f3f3f3; - border-top: 4px solid var(--primary-color); + border: 4px solid #d3dad9; + border-top: 4px solid #497671; border-radius: 50%; animation: spin 1s linear infinite; margin: 0 auto 12px; @@ -222,22 +254,65 @@ } .no-more { - color: #555; + color: #697777; padding: 40px 20px; } +// Responsive +@media (max-width: 1200px) { + .items-grid { + grid-template-columns: repeat(3, 1fr); + gap: 24px; + } +} + +@media (max-width: 992px) { + .items-grid { + grid-template-columns: repeat(3, 1fr); + gap: 20px; + } +} + @media (max-width: 768px) { .items-grid { - grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); + grid-template-columns: repeat(2, 1fr); gap: 16px; } .item-name { - font-size: 0.95rem; + font-size: clamp(12px, 3vw, 16px); } .discounted-price, .current-price { - font-size: 1.1rem; + font-size: clamp(14px, 3.5vw, 18px); + } + + .item-details { + padding: 10px 12px; + } +} + +@media (max-width: 480px) { + .category-container { + padding: 12px; + } + + .items-grid { + grid-template-columns: repeat(2, 1fr); + gap: 12px; + } + + .item-details { + padding: 8px 10px; + } + + .item-card:hover { + transform: translateY(-2px); + } + + .add-to-cart-btn { + padding: 10px; + font-size: 0.85rem; } } diff --git a/src/app/pages/category/subcategories.component.html b/src/app/pages/category/subcategories.component.html index 26d6142..6d6a359 100644 --- a/src/app/pages/category/subcategories.component.html +++ b/src/app/pages/category/subcategories.component.html @@ -20,18 +20,18 @@ } diff --git a/src/app/pages/category/subcategories.component.scss b/src/app/pages/category/subcategories.component.scss index d45901f..7d033bf 100644 --- a/src/app/pages/category/subcategories.component.scss +++ b/src/app/pages/category/subcategories.component.scss @@ -1,9 +1,9 @@ .subcategories-container { - max-width: 1100px; + max-width: 1200px; margin: 0 auto; padding: 24px; - // Loading состояние + // Loading state .loading { display: flex; flex-direction: column; @@ -15,20 +15,21 @@ .spinner { width: 48px; height: 48px; - border: 4px solid #f3f4f6; - border-top-color: #3b82f6; + border: 4px solid #d3dad9; + border-top-color: #497671; border-radius: 50%; animation: spin 0.8s linear infinite; } p { - color: #6b7280; + color: #697777; font-size: 1rem; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; margin: 0; } } - // Error состояние + // Error state .error { display: flex; flex-direction: column; @@ -41,25 +42,27 @@ p { color: #dc2626; font-size: 1rem; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; text-align: center; margin: 0; } button { padding: 10px 24px; - background: #3b82f6; + background: #497671; color: white; border: none; border-radius: 8px; font-size: 0.95rem; font-weight: 500; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; cursor: pointer; transition: all 0.2s ease; &:hover { - background: #2563eb; + background: #3a5f5b; transform: translateY(-1px); - box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3); + box-shadow: 0 4px 12px rgba(73, 118, 113, 0.3); } &:active { @@ -69,144 +72,134 @@ } .sub-header { - margin-bottom: 24px; - position: relative; - padding-bottom: 12px; - - &::after { - content: ''; - position: absolute; - bottom: 0; - left: 0; - width: 60px; - height: 3px; - background: linear-gradient(90deg, #3b82f6, #8b5cf6); - border-radius: 2px; - } + margin-bottom: 28px; h2 { - font-size: 1.75rem; - color: #1f2937; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-size: 2rem; + color: #1e3c38; margin: 0; - font-weight: 600; + font-weight: 700; letter-spacing: -0.02em; } } .categories-grid { display: grid; - grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); - gap: 20px; + grid-template-columns: repeat(4, 1fr); + gap: 30px; + width: 100%; } .category-card { - background: white; - border-radius: 12px; - box-shadow: 0 2px 8px rgba(0,0,0,0.06); - height: 100%; + width: 100%; display: flex; flex-direction: column; - overflow: hidden; - transition: all 0.3s ease; - animation: fadeInUp 0.5s ease backwards; - cursor: pointer; - - // Анимация появления с задержкой для каждой карточки - @for $i from 1 through 20 { - &:nth-child(#{$i}) { - animation-delay: #{$i * 0.05}s; - } - } + text-decoration: none; + transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); &:hover { transform: translateY(-4px); - box-shadow: 0 8px 20px rgba(0,0,0,0.12); - } - .category-link { - display: flex; - flex-direction: column; - flex: 1; - text-decoration: none; - color: inherit; - position: relative; - min-height: 200px; - - .category-media { - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 0; - display: flex; - align-items: center; - justify-content: center; - overflow: hidden; - background: linear-gradient(135deg, #f6f7fb 0%, #e9ecf5 100%); - transition: transform 0.3s ease; + .category-image { + box-shadow: 0 6px 8px 0 rgba(0, 0, 0, 0.2); } - &:hover .category-media { - transform: scale(1.05); - } - - .category-media img { - width: 100%; - height: 100%; - object-fit: contain; - background: white; - transition: opacity 0.3s ease; - } - - .category-fallback { - text-align: center; - font-weight: 600; - font-size: 1.1rem; - padding: 20px; - color: #6b7280; - } - - h3 { - position: absolute; - bottom: 0; - left: 0; - right: 0; - text-align: center; - margin: 0; - font-size: 0.95rem; - color: white; - padding: 12px 14px; - background: linear-gradient(to top, rgba(0, 0, 0, 0.85), rgba(0, 0, 0, 0.4) 70%, transparent); - z-index: 1; - font-weight: 500; - transition: all 0.3s ease; - text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); - } - - &:hover h3 { - padding: 16px 14px; - background: linear-gradient(to top, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.5) 70%, transparent); + .category-info { + box-shadow: 0 6px 8px 0 rgba(0, 0, 0, 0.2); } } } - // Keyframes для анимаций + .category-image { + width: 100%; + aspect-ratio: 4 / 3; + border: 1px solid #d3dad9; + border-radius: 13px 13px 0 0; + box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15); + overflow: hidden; + display: flex; + align-items: center; + justify-content: center; + background: #f5f5f5; + + img { + width: 100%; + height: 100%; + object-fit: cover; + transition: transform 0.3s ease; + } + + &:hover img { + transform: scale(1.05); + } + } + + .category-fallback { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + font-size: 5rem; + font-weight: 700; + color: #497671; + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + background: linear-gradient(135deg, #f5f5f5 0%, #e0e0e0 100%); + } + + .category-info { + width: 100%; + border: 1px solid #d3dad9; + border-top: none; + border-radius: 0 0 13px 13px; + padding: 12px 16px; + box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15); + background: #f5f3f9; + display: flex; + flex-direction: column; + justify-content: center; + gap: 2px; + transition: background 0.3s ease; + } + + .category-name { + font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; + font-weight: 600; + font-size: clamp(14px, 1.4vw, 18px); + color: #1e3c38; + margin: 0; + line-height: 1.3; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; + overflow: hidden; + text-overflow: ellipsis; + min-height: calc(2 * 1.3em); + } + + // Keyframes @keyframes spin { to { transform: rotate(360deg); } } - @keyframes fadeInUp { - from { - opacity: 0; - transform: translateY(20px); - } - to { - opacity: 1; - transform: translateY(0); + // Responsive + @media (max-width: 1200px) { + padding: 24px; + + .categories-grid { + grid-template-columns: repeat(3, 1fr); + gap: 24px; + } + } + + @media (max-width: 992px) { + .categories-grid { + grid-template-columns: repeat(3, 1fr); + gap: 20px; } } - // Мобильная версия @media (max-width: 768px) { padding: 16px; @@ -220,24 +213,14 @@ .categories-grid { grid-template-columns: repeat(2, 1fr); - gap: 12px; + gap: 16px; } - .category-card { - border-radius: 10px; - - .category-link { - min-height: 140px; - - h3 { - font-size: 0.85rem; - padding: 10px 8px; - } - } + .category-info { + padding: 10px 12px; } } - // Очень маленькие экраны @media (max-width: 480px) { padding: 12px; @@ -250,52 +233,16 @@ } .categories-grid { - gap: 10px; + grid-template-columns: repeat(2, 1fr); + gap: 12px; } - .category-card { - .category-link { - min-height: 120px; - - h3 { - font-size: 0.8rem; - padding: 8px 6px; - } - - .category-fallback { - font-size: 0.95rem; - padding: 12px; - } - } - } - } - - // Большие экраны - @media (min-width: 1200px) { - padding: 32px; - - .sub-header { - margin-bottom: 28px; - - h2 { - font-size: 2rem; - } + .category-info { + padding: 8px 10px; } - .categories-grid { - gap: 24px; - grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); - } - - .category-card { - .category-link { - min-height: 220px; - - h3 { - font-size: 1rem; - padding: 14px 16px; - } - } + .category-card:hover { + transform: translateY(-2px); } } } diff --git a/src/app/pages/home/home.component.html b/src/app/pages/home/home.component.html index a3db151..a47824a 100644 --- a/src/app/pages/home/home.component.html +++ b/src/app/pages/home/home.component.html @@ -126,9 +126,13 @@ } @else {
@for (category of getTopLevelCategories(); track category.categoryID) { - +
- @if (category.icon) { + @if (isWideCategory(category.categoryID) && category.wideBanner) { + + } @else if (category.icon) { } @else {
{{ category.name.charAt(0) }}
diff --git a/src/app/pages/home/home.component.scss b/src/app/pages/home/home.component.scss index 5fa6663..f0fbedf 100644 --- a/src/app/pages/home/home.component.scss +++ b/src/app/pages/home/home.component.scss @@ -741,10 +741,10 @@ } .dexar-hero-content { - max-width: 660px; + max-width: 600px; display: flex; flex-direction: column; - gap: 18px; + gap: 12px; animation: fadeInUp 0.8s ease-out; } @@ -762,7 +762,7 @@ .dexar-hero-title { font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-weight: 500; - font-size: 57px; + font-size: 42px; color: #1e3c38; line-height: 1.2; margin: 0; @@ -772,7 +772,7 @@ .dexar-hero-subtitle { font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-weight: 500; - font-size: 34px; + font-size: 24px; color: #1e3c38; line-height: 1.3; margin: 0; @@ -782,7 +782,7 @@ .dexar-hero-tagline { font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-weight: 500; - font-size: 34px; + font-size: 24px; color: #1e3c38; line-height: 1.3; margin: 0; @@ -791,8 +791,8 @@ .dexar-hero-actions { display: flex; - gap: 20px; - margin-top: 20px; + gap: 16px; + margin-top: 12px; animation: fadeInUp 0.8s ease-out 0.4s both; } @@ -800,14 +800,14 @@ display: flex; align-items: center; justify-content: center; - width: 337px; - height: 60px; + width: 280px; + height: 48px; background: linear-gradient(360deg, #497671 0%, #a7ceca 100%); border: 1px solid #d3dad9; border-radius: 13px; font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-weight: 500; - font-size: 27px; + font-size: 20px; color: #ffffff; text-decoration: none; letter-spacing: 1.08px; @@ -831,14 +831,14 @@ align-items: center; justify-content: center; gap: 9px; - width: 264px; - height: 60px; + width: 220px; + height: 48px; background: #f5f5f5; border: 1px solid #d3dad9; border-radius: 13px; font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; font-weight: 500; - font-size: 27px; + font-size: 20px; color: #1e3c38; letter-spacing: 1.08px; cursor: pointer; @@ -1037,6 +1037,7 @@ margin: 0; line-height: 1.3; display: -webkit-box; + line-clamp: 2; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; @@ -1053,10 +1054,23 @@ line-height: 1.2; } +// Wide category card (spans 2 columns) +.dexar-category-card--wide { + grid-column: span 2; + + .dexar-category-image { + aspect-ratio: 8 / 3; + + img { + object-fit: cover; + } + } +} + // Responsive Design @media (max-width: 1200px) { .dexar-hero { - height: 500px; + height: 380px; } .dexar-hero-overlay { @@ -1064,12 +1078,12 @@ } .dexar-hero-title { - font-size: 48px; + font-size: 38px; } .dexar-hero-subtitle, .dexar-hero-tagline { - font-size: 28px; + font-size: 22px; } .dexar-categories { @@ -1084,7 +1098,7 @@ @media (max-width: 992px) { .dexar-hero { - height: 450px; + height: 340px; } .dexar-hero-overlay { @@ -1092,24 +1106,24 @@ } .dexar-hero-title { - font-size: 42px; + font-size: 34px; } .dexar-hero-subtitle, .dexar-hero-tagline { - font-size: 24px; + font-size: 20px; } .dexar-btn-primary { - width: 280px; - height: 54px; - font-size: 22px; + width: 240px; + height: 44px; + font-size: 18px; } .dexar-btn-secondary { - width: 220px; - height: 54px; - font-size: 22px; + width: 200px; + height: 44px; + font-size: 18px; } .dexar-categories { @@ -1124,7 +1138,7 @@ @media (max-width: 768px) { .dexar-hero { - height: 400px; + height: 320px; background-position: right center; } @@ -1138,26 +1152,26 @@ } .dexar-hero-title { - font-size: 36px; + font-size: 28px; } .dexar-hero-subtitle, .dexar-hero-tagline { - font-size: 20px; + font-size: 17px; } .dexar-hero-actions { flex-direction: column; - gap: 16px; + gap: 12px; width: 100%; } .dexar-btn-primary, .dexar-btn-secondary { width: 100%; - max-width: 320px; - height: 50px; - font-size: 20px; + max-width: 280px; + height: 42px; + font-size: 17px; } .dexar-categories { @@ -1182,26 +1196,26 @@ @media (max-width: 480px) { .dexar-hero { - height: 350px; + height: 280px; } .dexar-hero-title { - font-size: 28px; + font-size: 24px; } .dexar-hero-subtitle, .dexar-hero-tagline { - font-size: 18px; + font-size: 15px; } .dexar-hero-actions { - gap: 12px; + gap: 10px; } .dexar-btn-primary, .dexar-btn-secondary { - height: 46px; - font-size: 18px; + height: 40px; + font-size: 16px; } .dexar-categories { diff --git a/src/app/pages/home/home.component.ts b/src/app/pages/home/home.component.ts index 25c009d..5042ce6 100644 --- a/src/app/pages/home/home.component.ts +++ b/src/app/pages/home/home.component.ts @@ -20,6 +20,7 @@ export class HomeComponent implements OnInit { isnovo = environment.theme === 'novo'; categories = signal([]); itemCounts = signal>(new Map()); + wideCategories = signal>(new Set()); loading = signal(true); error = signal(null); @@ -55,6 +56,7 @@ export class HomeComponent implements OnInit { this.categories.set(categories); this.loading.set(false); this.loadItemCounts(); + this.detectWideImages(categories); }, error: (err) => { this.error.set('Failed to load categories'); @@ -97,6 +99,30 @@ export class HomeComponent implements OnInit { return this.subcategoriesCache().get(parentID) || []; } + isWideCategory(categoryID: number): boolean { + return this.wideCategories().has(categoryID); + } + + private detectWideImages(categories: Category[]): void { + const topLevel = categories.filter(c => c.parentID === 0); + topLevel.forEach(cat => { + const src = cat.wideBanner || null; + if (!src) return; + const img = new Image(); + img.onload = () => { + const ratio = img.naturalWidth / img.naturalHeight; + if (ratio > 2) { + this.wideCategories.update(set => { + const next = new Set(set); + next.add(cat.categoryID); + return next; + }); + } + }; + img.src = src; + }); + } + navigateToSearch(): void { this.router.navigate(['/search']); } diff --git a/src/app/pages/item-detail/item-detail.component.html b/src/app/pages/item-detail/item-detail.component.html index d725ca3..b170079 100644 --- a/src/app/pages/item-detail/item-detail.component.html +++ b/src/app/pages/item-detail/item-detail.component.html @@ -192,201 +192,240 @@ }
} @else { - -
+ +
@if (loading()) { -
-
+
+

Загрузка товара...

} @if (error()) { -
+ } @if (item() && !loading()) { -
-